見出し画像

ゼロから始める自動化マスター④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ファイルへ記載していきましょう。書き方が分からないのであればサンプルを真似ればすぐできます。
以下のサイトに記載のある補足見ればある程度内容理解できると思います。

ここから先は

5,092字 / 1画像
このマガジンがお得な理由 ・過去のSegment Routingに関する有料記事をすべて公開!(2022/3 現在100記事以上) ・新規に記載するSR関連記事もすべて公開! ・関連する技術ネタも公開!(※) ※関連する技術ネタは、その月に加入した人だけ定期購読料で閲覧可能ですので、購読期間が長ければ長いほどお得になります。

Segment Routing

¥600 / 月

このマガジンは主にSegment Routingについて書いています。 Segment Routingがよく分からんけど仕事で使うという…

この記事が気に入ったらサポートをしてみませんか?