第11章 YAML を使用したアプリケーションネットワーク上のサービスの公開
サイトをリンクしてアプリケーションネットワークを作成した後、コネクターを使用して 1 つのサイトからサービスを公開し、リスナーを使用して他のサイトでそれらのサービスを利用できます。ルーティングキー は、1 つ以上のコネクターと 1 つ以上のリスナーを照合する文字列です。たとえば、ルーティングキー backend を使用してコネクターを作成する場合、そのサービスを利用するには、ルーティングキー backend を使用してリスナーを作成する必要があります。
このセクションでは、少なくとも 2 つのサイトを作成してリンクしていることを前提としています。
11.1. YAML を使用したコネクターの作成 リンクのコピーリンクがクリップボードにコピーされました!
コネクターは、ローカルのワークロードをリモートサイトのリスナーにバインドします。リスナーとコネクターはルーティングキーを使用して照合されます。
YAML を使用してコネクターを作成するときに考慮すべきオプションは多数あります。コネクターリソース を参照してください。
手順
ネットワーク上で公開するワークロードを作成します。以下に例を示します。
kubectl create deployment backend --image quay.io/skupper/hello-world-backend --replicas 3コネクターリソース YAML ファイルを作成します。
apiVersion: skupper.io/v2alpha1 kind: Connector metadata: name: backend namespace: east spec: routingKey: backend selector: app=backend port: 8080これにより、
東サイトにコネクターが作成され、ポート 8080 のネットワーク上でbackendのデプロイメントが公開されます。一致するルーティングキーのbackendを使用して、別のサイトでリスナーを作成し、このサービスに対処できます。コネクターリソースを作成するには以下を実行します。
kubectl apply -f <filename><filename>は、ローカルファイルシステムに保存されている YAML ファイルの名前に置き換えます。コネクターのステータスを確認します。
kubectl get connector以下に例を示します。
NAME STATUS ROUTING-KEY SELECTOR HOST PORT HAS MATCHING LISTENER MESSAGE backend Pending backend app=backend 8080 false No matching listeners📌 注意 デフォルトでは、ルーティングキー名はコネクターの名前に設定されています。カスタムルーティングキーを使用する場合は、
--routing-keyをカスタム名に設定します。
YAML を使用してコネクターを作成するときに考慮すべきオプションは多数あります。よく使用される オプションなどは、CLI リファレンス を参照してください。