10.14. 外部 FQDN を使用した仮想マシンへのアクセス
完全修飾ドメイン名 (FQDN) を使用して、クラスターの外部からセカンダリーネットワークインターフェイスに接続されている仮想マシン (VM) にアクセスできます。
FQDN を使用してクラスター外から VM へのアクセスは、テクノロジープレビューのみの機能です。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
10.14.1. セカンダリーネットワーク用の DNS サーバーの設定 リンクのコピーリンクがクリップボードにコピーされました!
Cluster Network Addons Operator (CNAO) は、HyperConverged
カスタムリソース (CR) で deployKubeSecondaryDNS
機能ゲートを有効にすると、ドメインネームサーバー (DNS) サーバーと監視コンポーネントをデプロイします。
前提条件
-
OpenShift CLI (
oc
) がインストールされている。 - クラスターのロードバランサーを設定しました。
-
cluster-admin
パーミッションを使用してクラスターにログインしました。
手順
以下のコマンドを実行して、デフォルトエディターで
HyperConverged
CR を編集します。oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次の例に従って、DNS サーバーと監視コンポーネントを有効にします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- DNS サーバーを有効にする
- ファイルを保存して、エディターを終了します。
次の例に従って
oc expose
コマンドを実行して、クラスターの外部に DNS サーバーを公開するロードバランサーサービスを作成します。oc expose -n openshift-cnv deployment/secondary-dns --name=dns-lb \ --type=LoadBalancer --port=53 --target-port=5353 --protocol='UDP'
$ oc expose -n openshift-cnv deployment/secondary-dns --name=dns-lb \ --type=LoadBalancer --port=53 --target-port=5353 --protocol='UDP'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、外部 IP アドレスを取得します。
oc get service -n openshift-cnv
$ oc get service -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE dns-lb LoadBalancer 172.30.27.5 10.46.41.94 53:31829/TCP 5s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE dns-lb LoadBalancer 172.30.27.5 10.46.41.94 53:31829/TCP 5s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow HyperConverged
CR を再度編集します。oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以前に取得した外部 IP アドレスを、エンタープライズ DNS サーバーレコードの
kubeSecondaryDNSNameServerIP
フィールドに追加します。以下に例を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- ロードバランサーサービスによって公開される外部 IP アドレスを指定します。
- ファイルを保存して、エディターを終了します。
次のコマンドを実行して、クラスターの FQDN を取得します。
oc get dnses.config.openshift.io cluster -o jsonpath='{.spec.baseDomain}'
$ oc get dnses.config.openshift.io cluster -o jsonpath='{.spec.baseDomain}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
openshift.example.com
openshift.example.com
Copy to Clipboard Copied! Toggle word wrap Toggle overflow DNS サーバーを指します。そのためには、
kubeSecondaryDNSNameServerIP
値とクラスター FQDN をエンタープライズ DNS サーバーレコードに追加します。以下に例を示します。vm.<FQDN>. IN NS ns.vm.<FQDN>.
vm.<FQDN>. IN NS ns.vm.<FQDN>.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ns.vm.<FQDN>. IN A <kubeSecondaryDNSNameServerIP>
ns.vm.<FQDN>. IN A <kubeSecondaryDNSNameServerIP>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.14.2. クラスター FQDN を使用したセカンダリーネットワーク上の仮想マシンへの接続 リンクのコピーリンクがクリップボードにコピーされました!
クラスターの完全修飾ドメイン名 (FQDN) を使用して、セカンダリーネットワークインターフェイスに接続された実行中の仮想マシンにアクセスできます。
前提条件
-
OpenShift CLI (
oc
) がインストールされている。 - QEMU ゲストエージェントを仮想マシンにインストールしました。
- 仮想マシンの IP アドレスはパブリックです。
- セカンダリーネットワーク用の DNS サーバーを設定しました。
クラスターの完全修飾ドメイン名 (FQDN) を取得しました。
FQDN を取得するには、次のように
oc get
コマンドを使用します。oc get dnses.config.openshift.io cluster -o json | jq .spec.baseDomain
$ oc get dnses.config.openshift.io cluster -o json | jq .spec.baseDomain
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
手順
次のコマンドを実行して、仮想マシン設定からネットワークインターフェイス名を取得します。
oc get vm -n <namespace> <vm_name> -o yaml
$ oc get vm -n <namespace> <vm_name> -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- ネットワークインターフェイスの名前を書き留めます。
ssh
コマンドを使用して仮想マシンに接続します。ssh <user_name>@<interface_name>.<vm_name>.<namespace>.vm.<cluster_fqdn>
$ ssh <user_name>@<interface_name>.<vm_name>.<namespace>.vm.<cluster_fqdn>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow