8.12. クラスター FQDN を使用した仮想マシンへのアクセス
クラスターの完全修飾ドメイン名 (FQDN) を使用して、クラスターの外部からセカンダリーネットワークインターフェイスに接続されている仮想マシン (VM) にアクセスできます。
クラスター FQDN を使用した VM へのアクセスは、テクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品サポートのサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではない場合があります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
8.12.1. セカンダリーネットワーク用の DNS サーバーの設定 リンクのコピーリンクがクリップボードにコピーされました!
Cluster Network Addons Operator (CNAO) は、HyperConverged
カスタムリソース (CR) で deployKubeSecondaryDNS
機能ゲートを有効にすると、ドメインネームサーバー (DNS) サーバーと監視コンポーネントをデプロイします。
前提条件
-
OpenShift CLI (
oc
) がインストールされている。 - クラスターのロードバランサーを設定しました。
-
cluster-admin
パーミッションを使用してクラスターにログインしました。
手順
次の例に従って
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 次の例に従って、DNS サーバーと監視コンポーネントを有効にします。
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 サーバーを指定します。
ローカルマシンの
resolv.conf
ファイルにkubeSecondaryDNSNameServerIP
値を追加します。注記resolv.conf
ファイルを編集すると、既存の 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 10.46.41.94
ns.vm.<FQDN>. IN A 10.46.41.94
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.12.2. クラスター FQDN を使用したセカンダリーネットワーク上の仮想マシンへの接続 リンクのコピーリンクがクリップボードにコピーされました!
クラスターの完全修飾ドメイン名 (FQDN) を使用して、セカンダリーネットワークインターフェイスに接続された実行中の仮想マシンにアクセスできます。
前提条件
- QEMU ゲストエージェントを仮想マシンにインストールしました。
- 仮想マシンの IP アドレスはパブリックです。
- セカンダリーネットワーク用の DNS サーバーを設定しました。
- クラスターの完全修飾ドメイン名 (FQDN) を取得しました。
手順
次のコマンドを実行して、仮想マシン設定からネットワークインターフェイス名を取得します。
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