領事-ノードのクエリ

この章では、次の関数を使用してノードにクエリを実行する方法を学習します。

  • digを使用する
  • 監視コマンドの使用
  • ウォッチコマンドの使用
  • 外部サービスを登録することにより

これらの各機能を詳しく理解しましょう。

Digを使用する

領事は127.0.0.1:8600で領事のDNSクエリをリッスンします。サービスを提供するために使用できるノードを決定する方法は、次のいずれかのチェックを使用することです。

  • 実行され、それが返すスクリプト nagios compliant code

  • HTTP応答コードを返すHTTPチェック。

  • ポートが開いているかどうかをチェックするTCPチェック。

試すための一般的なコマンド dig は−

$ dig @127.0.0.1 -p <port> <service-name>.consul

それでは、サンプルを試してみましょう dig コマンド-

$ dig @127.0.0.1 -p 8600 web.service.consul

出力は、次のスクリーンショットに示すようになります。

監視コマンドの使用

これは、実行中のConsulエージェントのログに接続して表示するために使用されます。このコマンドは、最近のログを表示します。また、比較的高いログレベルでエージェントをログに記録することもできます。これは、トレース、デバッグ、情報、警告、エラーなど、さまざまなログレベルで構成されています。

次のコマンドを試してみましょう-

$ consul monitor

出力は、次のスクリーンショットに示すようになります。

-log-levelや-rpc-addressなどのサブコマンドを使用してmonitorコマンドを設定することもできます。デフォルトでは、RPCのアドレスは127.0.0.1:8400です。詳細については、ここをクリックしてください。

ウォッチコマンドの使用

このコマンドは、ノード、サービスメンバー、キー値などのリストの変更を監視するメカニズムを提供します。また、ビューの最新の値を使用してプロセスを呼び出します。プロセスが指定されていない場合、現在の値は次のように処理されます。STDOUT、これは領事館のデータを検査するのに便利な方法です。次のスクリーンショットに示すように、Consul WatchCommandヘルプにはさまざまなオプションがあります-

でデモを試してみましょう -type = service 次のコマンドに示すように。

$ consul watch -type = service -service = consul

このトピックの詳細については、ここをクリックしてください。

外部サービスを登録することにより

登録されると、DNSインターフェイスはサービスの適切な「Aレコード」またはCNAMEレコードを返すことができます。次のコードブロックとスクリーンショットに示すように、Amazonなどの外部サービスを登録しましょう。

$ sudo curl -X PUT -d '{"Datacenter": "dc1", "Node": "amazon",
"Address": "www.amazon.com",
"Service": {"Service": "shop", "Port": 80}}'
http://127.0.0.1:8500/v1/catalog/register

上記のコマンドは、shopと呼ばれるサービスを指定します。このノードはamazonと呼ばれ、そのURLはポート80のwww.amazon.comで入手できます。領事館の出力をチェックして、このサービスが正しくインストールされていることを確認しましょう。このためには、localhost:8500でブラウザウィンドウを開いてください。

サービスを削除するには、次のコマンドを使用するだけです。

$ curl -X PUT -d '{"Datacenter": "dc1", "Node": "amazon"}'
http://127.0.0.1:8500/v1/catalog/deregister

次のスクリーンショットに示すように、UIを確認してみましょう。