ゼロから始める自動化マスター④pyATSを使ってみよう
pyATSの利用
事前準備
自分の開発環境を整えましょう~!
詳細はこれまで説明してきたNoteを参照してください。
この辺りのツールを使ってる人からすると当たり前すぎるのですが、私の様な初心者はこのハードルが高すぎました。
調べればすぐできるようになるのですが、時間なかなか取れないですよね。
テスト環境の準備
pyATSの特徴は検証するルータも参照可能なモデルとして(オブジェクト)として定義する事です。
参照可能なモデルとして定義することにより、何のメリットがあるでしょうか?
答えは、parse(必要情報の切り抜き)がめちゃやりやすくなるです!
+--------------------------------------------------------------------------+
| Testbed Object |
| |
| +-----------------------------+ +-----------------------------+ |
| | Device Object - myRouterA | | Device Object - myRouterB | |
| | | | | |
| | device interfaces | | device interfaces | |
| | +----------+ +----------+ | | +----------+ +----------+ | |
| | | intf Obj | | intf Obj | | | | intf Obj| | intf Obj | | |
| | | Eth1/1 | | Eth1/2 *-----------*----------* Eth1/1| | Eth1/2 | | |
| | +----------+ + ---------+ | | | +----------+ +----------+ | |
| +-----------------------------+ | +-----------------------------+ |
| | |
| +-----*----+ |
| | Link Obj | |
| |rtrA-rtrB | |
| +----------+ |
+--------------------------------------------------------------------------+
上記はpyATS内のドキュメントに記載のあった検証環境をオブジェクトにしたイメージになります。
私達が検証時に確認するポイントはある程度決まってますよね?
IFのUP/DOWN、ネイバーのUP/DOWN、特定のルートが来ているか等々ログの中でも確認したい項目はある程度決まっています。
検証ログを確認するときは、検証失敗時は他のログもいりますが、基本的には上記のように決まった個所しかみません。
そして、自動化させるならparseによって、この「値」だけを抜き取ってこなければならないです。
私は知ってる自動化ツールはnetmiko(しかもググってチラ見した程度)しか知らないですが、pyATSと比べると少なくても検証環境をオブジェクトと
してとらえるような概念はなさそうでした。
検証環境をyamlファイルに記載
さて、では今回のテスト環境をyamlファイルへ記載していきましょう。書き方が分からないのであればサンプルを真似ればすぐできます。
以下のサイトに記載のある補足見ればある程度内容理解できると思います。
ここから先は
Segment Routing
このマガジンは主にSegment Routingについて書いています。 Segment Routingがよく分からんけど仕事で使うという…
この記事が気に入ったらチップで応援してみませんか?