ネットワークを操作するためのモバイルツールを作成する際の興味深い経験を皆さんと共有します。
はじめに
私は、小規模から連邦政府まで、プロバイダーで数年間働いてきました。私が連邦政府に来たとき、私は多くのルーチンに直面しました、そしてその非常にルーチンのプロセスを自動化したいという願望がありました。
2013年。 「連邦政府」の1つで働いていて、クライアントを接続している友人がいます。彼が私に電話をくれて、スイッチで何かをするために屋根裏部屋に登ったという話がありました。私は、さまざまな興味深いスクリプトを含むWebページが開かれた電話を持って一番下に立っていました。これらのスクリプトは、スイッチのポートのチェック、エラーのクリアなどを実行しました。
つまり、そのアドレスに来たエンジニアは、管理者に迷惑をかけませんでした。彼自身、ネットワークを操作するためのツールを持っていました。
2018年6月ですが、「コア、アグリゲーション、アクセスなど、さまざまなレベルの機器をチェックするボットを書いてみませんか?」という思いに悩まされました。問題は、私だけがルーチンを取り除きたいということでした、残りは今日のために生きました。
プログラミング言語とプラットフォームの選択
みんな、もちろんPython。アイデアの時点で、私はすでにいくつかのスキルとスクリプトの少しの経験を持っていました。 -プラットフォームは優しい一人として選ばれた電報ので、すべてのITシュニックはそこに住んでいます。
ボットを作成するためのライブラリの選択1.Telegramを操作するためのライブラリ
。pyTelegramBotAPIは衰退していました。特にブロックしている間、私はプロキシなどとすぐに友達を作りたかったのです。私はpython-telegram-botを選び、会話を基礎として取りました。
2.機器を操作するためのライブラリ。作業が簡単なため、私の選択は-python3-netsnmpになりました。
基礎が築かれました、それは書く時です。
運転した
ネットワークは鉄の動物園であり、別のベンダーを利用して作業する必要がありました。もう1つの重要な条件は、タスクを実行するためのMIBの存在でした。
タスクの1つは、ケーブルの長さとペアのステータスを確認し、ポートのステータスとポートのエラーの存在を確認することでした。
今では多くの人が「SNMPなしでは何ができないのか」と書いています。私の答えは、「はい、通常の人間の方法でデータをキャプチャしたい場合はできません。それならSNMPだけです」ということです。
今、誰かがすでに1つの場所を燃やしていて、彼はそれをNETCONFだけと書いています。
アクセス機器を通過してボットで作業を実装した後、実際、SNMPプロトコルで解決されない特定のタスクについては、機器に行かなければならない場合があるという事実に直面しました。netmiko
ライブラリが私の助けになりました-そして私はまだ彼女に満足しています。彼女はボットとは関係のない多くの問題を解決しました。サポートされている機器の量はただの火です。
また、ipaddressライブラリはIPアドレスのチェックに非常に役立つことがわかりました。
一般に、プログラミングでは、ボット内のユーザーの承認からさまざまな権限の付与まで、さまざまなニュアンスを考慮しました。
機能性が
向上しましたはい、機能性は向上し、それに伴って特定の機器のサポートも向上しました。無線アクセス機器、光KTV受信機を追加しました。
どういうわけか人々が私のところに来て、私たちはインターコムをつけると言いました。設定が私の肩や同僚の肩にもかかることを頭で理解しています。
私は感じ始めました、見てください。 APIを読みましたが、そこでは良かったです。 HTTPとHTTPSを操作するための最も単純なライブラリを選択しました-リクエスト。
すでにインターコムでの作業を開始しているので、データベースが必要でしたが、いつものように怠惰な*オペラはあまり緊張したくありませんでした。したがって、選択はsqlite3に落ちました。ライブラリも可能な限り単純に選択されました-それはデータセットです。
雲が集まっている
ある時点で、仕事はめちゃくちゃになり、私の頭脳は実際、一人で生きていました。たくさんの仕事があり、お金はほとんどありません-まあ、あなたはメモをとったと思います。私はこの施設を去ることにしました。連邦政府で数年間働いてきたので、プログラミング言語を扱うスキルが向上しました。とても嬉しかったです。
エピローグ
おそらく、これは大きな話であるか、それほど話が終わっていないかのどちらかです。私の意見では、特に鉄の動物園で、どこにもプログラミングせずにネットワーク担当者。その結果、サポートされる機器のフリートは次のようになりました 。-
アクセススイッチの23モデル
-光KTVレシーバーの3モデル
-シャーシスイッチの4モデル
-シャーシルーターの1モデル
-無線アクセス機器の3モデル