OSS編~オーケストレーションツール Consul 08 Watches編~


前回は『OSS編~オーケストレーションツール Consul 07 ACLs編~』と題して、オーケストレーションのConsulでACLsを試してみました。

今回は『OSS編~オーケストレーションツール Consul 08 Watches編~』と題して、オーケストレーションのConsulでWatchesを試してみたいと思います。

Watchesとは

Watches は Consul が参照しているデータで変更を検出したときにハンドラを実行する機能です。
利用出来るデータは以下になります。

・key – KVのキー
・keyprefix – KVストアのPrefix
・services – サービスのリスト
・nodes – ノードリスト
・service- インスタンスのサービス
・checks – ヘルスチェックのバリュー
・event – カスタムユーザーイベント

試してみる

1.nodes
先ずはnodesを試してみます。
Consulサーバを立ち上げておきます。

次にHandlerを記述しておきます。
nodes情報を取得してログを残します。

別ターミナルからwatchを起動します。

ログの最初の状態を確認してみます。

それでは2台目をjoinしてみましょう。

watchが動作しているかログを確認してみます。
更新されているのが分かります。

2.keyとkeyprefix
次はkeyとkeyprefixを試してみます。
KV用のHandlerを作成します。

keyでwatchを実行します。

空なのを確認します。

KVをPutしてみます。

確認してみます。

削除してみます。

更新されて空になるのが確認出来ます。

keyprefixを試してみます。
keyprefix でwatchを起動します。

試してみます。

確認してみます。

削除でも確認してみます。

3.event
最後にeventも試してみます。
event用のHandlerを作成します。

event でwatchを起動します。

確認します。

別ターミナルからeventを実行します。

更新されているのが分かります。

いかがでしたでしょうか?
次回もお楽しみに!!!