参加してきたのでいつものメモです。ページを参照してください。パラメータをWebから入力してフローをキックとかもできる。毎回同じような手順書書かないといけない。実際の作業は手作業なので入力ミスや誤設定とかのリスクがある。スクリプト実行で自動化だ!作業担当とかみんなノンプログラマ簡単なスクリプトと行ってもプログラム書くハードルが高い。責任者もノンプログラマなので、プログラム見ても判断が難しい。YAML手順書を自動実施する。実行の流れparseパラメータのチェックとか手順書の内容が意味的に合っているかどうかをいまの設定情報を元にチェック。今のコンフィグ情報を取ってきて、YAML手順書のパラメータの整合性チェック。存在しないオブジェクトの参照や二重登録など。側にだけコマンド入れるモノがある。どっちがActiveなのかを判断して動かないといけない。間違えたときに切り替えたい、というのが発生する。実行したコマンドの結果とプロンプトの区別がない。コマンドが終わってプロンプトが出てからコマンド入れないといけない。コマンドによってはプロンプトが変わるプロンプトが出る前にエラーメッセージが出ることがある。エラーメッセージハンドリングは地道にやるしかない。秘伝のタレ化...冗長構成の壁Activeにだけコマンドを来る。ログインした上で状態チェックをする。誤投入に対して元に戻したいけど、リブートするのはいやだ逆コマンド実行をする。投入したコマンドから逆コマンドが特定できるとは限らない設定差分(diff)から逆コマンドを生成する。NW運用自動化システムを実際に現場で使うには、細かい処理を入れ込まないと行けなくて非常に面倒くさい。今のところ銀の弾丸はない地道にやるしかない自動化することで、手作業より確実にオペレータ工数削減はできる。QA構成管理YAMLのモデル、スキーマ?つくってない。入れられるパラメタは決めてあるけど。機械のバージョンによって文字列パースが違ったりする。DB内とつらいんじゃない?たぶんきつくなる。いまのところ、新しい機器に対してやるときは事前に動作チェックを屋って、処理追加を入れていって対応させる、という方向。?平たく言うとL2スイッチがある。各社がBGPルータをつないで、経路交換をして、トラフィックを交換する。プロビジョニング、開通作業、バックボーン作業(影響がある・ない)いままで手作業コンフィグファイルが非常にわかりにくい。開通作業に5時間かかる...とか。DBから自動生成したい。Other(Excel?)自分たちの運用方法や文化にあった技術を選ばないと、現場が崩壊してしまう。各ステップのコンフィグは前日までに確認・承認しておきたい全体の作業内容は変化があるので、コンフリクトが起こる可能性がある。衝突が起きたら回避できるような仕組みじゃないといけない。DBがRDBだったとすると...コンフリクトに気づけないといけないし、気づいたら担当者が変えられないといけない。SQLとかまでやるのはハードルが高い。生SQLとかやらないでしょう。モデルやインタフェースのオブジェクトをどう考えるか?WebUI?WebUIの手順書は書くのが大変。その通りに行われる保証がない。console?つらいGitならなんとかなるんじゃない?運用者が読み書きしやすい・機械処理ができる・バージョン管理できる。ファイルなので誰でもいじれる。差分確認、コマンドの確認を担当者がやれる。入力するコマンドのチェック。カンするトラブルは特になし。どっちかというと人為ミス。命名規則やルール、フォーマットの統一...QAデプロイを早くすることはやらない?いまのところやってない。デーモンリロードとかを伴うというのもある。MRTGが5分間隔で動く。バックアップ側デプロイ→確認→メイン側デプロイ。過去、MRTGデプロイでバグを踏んでCPU食って死ぬ、というのがあって、サーバ側正常性の確認を入れている。そこの運用をあきらめられるのであれば2秒デプロイみたいなのも検討したいが。LT例によってLTについてはメモを取っていません。いくつか思うところや感想などを。振った方向へ経路を切り替える。方とちょっと話をしたんだけど、感じている課題感や直面している課題はもうそのままですね。いろんなアプローチでどうにかできないかを試していけると良いと思います。connpass感想どれも何かしらの実装やコーディングの話が出てきて、具体的な話に突っ込んできているのが良かったなあと。その分泥臭い話も多めではありました...。話ともそうなんだけど、このCLIベース自動化の話の泥沼からどうにか抜けたいところだなあ、と。2016というツイートをしてしまいました。いろんなツールややり方がいろいろ試してみるのはイイと思うんだけど、ちょっと気になるのは、こういうのをやるための地道な作り込みをどうもみんな何かしら再発明しているような気がするところかな...。いや、自分も最近ちょっとやってたというのもあるからなんだけど。APIで操作可能なガワを用意しても結局中身のCLI処理回すところの仕掛けやナレッジは自分で頑張らないといけないのがつらいなあ......とかね。プロンプトの正規表現作るとか、エラーメッセージ調べるとかのあれこれが超しんどい。何かこの辺をもうちょっと共有する・共通化するようなものがあればなあ、と思いました。参加してきたのでいつものメモです。