Salt for Junos OSの概要
Salt(SaltStack Platform)は、Pythonベースのオープンソースのリモート実行および構成管理ツールです。Salt を使用して、システムの状態を定義して適用したり、デバイス上でアドホック コマンドを実行したりできます。Saltは拡張性が高く、Junos OSを実行するデバイスを含む数千台のデバイスを管理できます。
Salt マスターは、1 つ以上のノード (Salt ミニオン) を管理するメイン制御サーバーです。Salt マスターは、Salt プロキシ ミニオンを介して Junos OS を実行しているデバイスを管理できます。プロキシ ミニオンを使用すると、Salt ミニオンを直接実行しないが、ネットワーク構成プロトコル(NETCONF)など、別のプロトコルを使用して管理できるデバイスを管理できます。
Salt のインストールには、以下のコンポーネントとモジュールが含まれており、Salt を使用して Junos OS を実行しているデバイスを管理できます。
Junosプロキシ—Salt操作をJunos OS固有の命令に変換し、Salt SystemがJunos OSを実行しているデバイスを接続して管理できるようにします。
Junos実行モジュール:Salt MasterコマンドラインからJunos OSを実行しているデバイスでアドホックタスクを実行できるようにする実行機能を定義します。
Junos 状態モジュール—Junos OS を実行するデバイスの望ましい状態を宣言して適用できる状態関数を定義します。
Junos Syslogエンジン:Junos OSを実行しているデバイスから送信されるシステムログメッセージを監視し、イベント情報を抽出して、SaltイベントバスにSalt形式で公開します。
Junosプロキシは、ZeroMQイベントバスを使用してSalt Masterに接続し、ジュニパーの Junos PyEZ ライブラリを使用して、Junos OSを実行しているデバイスとのSSH経由のNETCONFセッションを確立します。 Junos PyEZは、Junos OSを実行しているデバイスの管理と自動化を可能にするPython用のマイクロフレームワークです。 図 1 は、Junos OS を実行するデバイスでの一般的な Salt セットアップを示しています。