萬由無事覚書

不知物故萬由無事覚書仕候也。

リモートでの設定管理について (NETCONF)

とあるサーバを作っているんだけど、その設定をネットワーク越しに実行して管理できれば便利だなー、と思った (というか設定管理系を自分で作るのが面倒……)。

SNMPはどっちかって言うと監視用な気がするし、MIBはそれなりに複雑だ。

そこでリモートで設定を構成・管理するためのプロトコルについて簡単にサーベイにしたので、覚書。

NETCONF (NETwork CONFiguration protocol)

実装

Netopeer2
  • NETCONFサーバ。libnetconf2に基づく。
  • Netoppeer2はNETCONFによるサービスの提供だけを行い、実際の設定はsysrepoを通じて管理する。
  • 具体的な構成は、sysrepoで提供されている図がとてもわかりやすい。
sysrepo
  • YANGで定義された設定と状態を保存するためのデータストア。
  • NETCONFで設定を公開したいサーバは、sysrepoに対してアクセスすることで設定を保存できる。
  • sysrepoに対するアクセスのために、クライアントライブラリが用意されている。
  • sysrepoとのプロトコルGoogle Protocol Buffersで定義されている。