19.6. OpenStack をインストールした後のネットワーク設定の設定
インストール後に、Red Hat OpenStack Platform (RHOSP) クラスター上の OpenShift Container Platform のネットワーク設定を設定できます。
19.6.1. Floating IP アドレスを使用したアプリケーションアクセスの設定 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform をインストールした後に、アプリケーションネットワークトラフィックを許可するように Red Hat OpenStack Platform (RHOSP) を設定します。
インストール中に、install-config.yaml
ファイルの platform.openstack.apiFloatingIP
および platform.openstack.ingressFloatingIP
に値を指定した場合、または inventory.yaml
Playbook の os_api_fip
および os_ingress_fip
に値を指定した場合は、この手順を実行する必要はありません。Floating IP アドレスはすでに設定されています。
前提条件
- OpenShift Container Platform クラスターがインストールされている必要があります。
- OpenShift Container Platform の RHOSP へのインストールに関するドキュメントで説明されているように、Floating IP アドレスが有効にされます。
手順
OpenShift Container Platform クラスターをインストールした後に、Floating IP アドレスを Ingress ポートに割り当てます。
ポートを表示します。
openstack port show <cluster_name>-<cluster_ID>-ingress-port
$ openstack port show <cluster_name>-<cluster_ID>-ingress-port
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ポートを IP アドレスに接続します。
openstack floating ip set --port <ingress_port_ID> <apps_FIP>
$ openstack floating ip set --port <ingress_port_ID> <apps_FIP>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow *apps.
のワイルドカードA
レコードを DNS ファイルに追加します。*.apps.<cluster_name>.<base_domain> IN A <apps_FIP>
*.apps.<cluster_name>.<base_domain> IN A <apps_FIP>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
DNS サーバーを制御せず、非実稼働環境でアプリケーションアクセスを有効にする必要がある場合は、これらのホスト名を /etc/hosts
に追加できます。
<apps_FIP> console-openshift-console.apps.<cluster name>.<base domain> <apps_FIP> integrated-oauth-server-openshift-authentication.apps.<cluster name>.<base domain> <apps_FIP> oauth-openshift.apps.<cluster name>.<base domain> <apps_FIP> prometheus-k8s-openshift-monitoring.apps.<cluster name>.<base domain> <apps_FIP> <app name>.apps.<cluster name>.<base domain>
<apps_FIP> console-openshift-console.apps.<cluster name>.<base domain>
<apps_FIP> integrated-oauth-server-openshift-authentication.apps.<cluster name>.<base domain>
<apps_FIP> oauth-openshift.apps.<cluster name>.<base domain>
<apps_FIP> prometheus-k8s-openshift-monitoring.apps.<cluster name>.<base domain>
<apps_FIP> <app name>.apps.<cluster name>.<base domain>
19.6.2. OVS ハードウェアオフロードの有効化 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenStack Platform (RHOSP) で実行されるクラスターの場合、Open vSwitch(OVS) ハードウェアオフロードを有効にすることができます。
OVS は、大規模なマルチサーバーネットワークの仮想化を可能にするマルチレイヤー仮想スイッチです。
前提条件
- Single-root Input/Output Virtualization (SR-IOV) 用に設定された RHOSP にクラスターをインストールしている。
- SR-IOV Network Operator がクラスターにインストールされている。
-
クラスターに 2 つの
hw-offload
タイプの Virtual Function (VF) インターフェイスを作成している。
アプリケーション層のゲートウェイフローは、OpenShift Container Platform バージョン 4.10、4.11、および 4.12 では機能しません。また、OpenShift Container Platform バージョン 4.13 のアプリケーション層のゲートウェイフローをオフロードすることはできません。
手順
クラスターにある 2 つの
hw-offload
タイプの VF インターフェイスのSriovNetworkNodePolicy
ポリシーを作成します。1 番目の Virtual Function インターフェイス
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 2 番目の Virtual Function インターフェイス
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 2 つのインターフェイス用に
NetworkAttachmentDefinition
リソースを作成します。1 番目のインターフェイス用
NetworkAttachmentDefinition
リソースCopy to Clipboard Copied! Toggle word wrap Toggle overflow 2 番目のインターフェイス用
NetworkAttachmentDefinition
リソースCopy to Clipboard Copied! Toggle word wrap Toggle overflow Pod で作成したインターフェイスを使用します。以下に例を示します。
2 つの OVS オフロードインターフェイスを使用する Pod
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
19.6.3. OVS ハードウェアオフロードネットワークの接続 リンクのコピーリンクがクリップボードにコピーされました!
Open vSwitch (OVS) ハードウェアオフロードネットワークをクラスターに接続できます。
前提条件
- クラスターがインストールされ、実行されている。
- クラスターで使用するために、Red Hat OpenStack Platform (RHOSP) で OVS ハードウェアオフロードネットワークをプロビジョニングしている。
手順
次のテンプレートから
network.yaml
という名前のファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow ここでは、以下のようになります。
pciBusId
オフロードネットワークに接続されているデバイスを指定します。この値がわからない場合は、次のコマンドを実行してこの値を見つけることができます。
oc describe SriovNetworkNodeState -n openshift-sriov-network-operator
$ oc describe SriovNetworkNodeState -n openshift-sriov-network-operator
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
コマンドラインから次のコマンドを入力して、ファイルを使用してクラスターにパッチを適用します。
oc apply -f network.yaml
$ oc apply -f network.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
19.6.4. RHOSP で Pod への IPv6 接続を有効にする リンクのコピーリンクがクリップボードにコピーされました!
異なるノード上にある追加のネットワークを持つ Pod 間の IPv6 接続を有効にするには、サーバーの IPv6 ポートのポートセキュリティーを無効にします。ポートセキュリティーを無効にすると、Pod に割り当てられた IPv6 アドレスごとに許可されたアドレスペアを作成する必要がなくなり、セキュリティーグループのトラフィックが有効になります。
次の IPv6 追加ネットワーク設定のみがサポートされています。
- SLAAC とホストデバイス
- SLAAC と MACVLAN
- DHCP ステートレスおよびホストデバイス
- DHCP ステートレスおよび MACVLAN
手順
コマンドラインで、次のコマンドを入力します。
openstack port set --no-security-group --disable-port-security <compute_ipv6_port>
$ openstack port set --no-security-group --disable-port-security <compute_ipv6_port>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要このコマンドは、ポートからセキュリティーグループを削除し、ポートセキュリティーを無効にします。トラフィックの制限は、ポートから完全に削除されます。
19.6.5. RHOSP で IPv6 接続を持つ Pod の作成 リンクのコピーリンクがクリップボードにコピーされました!
Pod の IPv6 接続を有効にして Pod に追加したら、セカンダリー IPv6 接続を持つ Pod を作成します。
手順
IPv6 namespace とアノテーション
k8s.v1.cni.cncf.io/networks: <additional_network_name>
を使用する Pod を定義します。ここで、<additional_network_name
は追加のネットワークの名前になります。たとえば、Deployment
オブジェクトの一環として、以下を行います。Copy to Clipboard Copied! Toggle word wrap Toggle overflow Pod を作成します。たとえば、コマンドラインで次のコマンドを入力します。
oc create -f <ipv6_enabled_resource>
$ oc create -f <ipv6_enabled_resource>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- リソース定義を含むファイルを指定します。
19.6.6. RHOSP 上の Pod への IPv6 接続の追加 リンクのコピーリンクがクリップボードにコピーされました!
Pod で IPv6 接続を有効にしたら、Container Network Interface (CNI) 設定を使用して Pod に接続を追加します。
手順
Cluster Network Operator (CNO) を編集するには、次のコマンドを入力します。
oc edit networks.operator.openshift.io cluster
$ oc edit networks.operator.openshift.io cluster
Copy to Clipboard Copied! Toggle word wrap Toggle overflow spec
フィールドで CNI 設定を指定します。たとえば、次の設定では、MACVLAN で SLAAC アドレスモードを使用します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記ステートフルアドレスモードを使用している場合は、CNI 設定に IP アドレス管理 (IPAM) を含めます。
Multus は DHCPv6 をサポートしていません。
- 変更を保存し、テキストエディターを終了して、変更をコミットします。
検証
コマンドラインで、次のコマンドを入力します。
oc get network-attachment-definitions -A
$ oc get network-attachment-definitions -A
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAMESPACE NAME AGE ipv6 ipv6 21h
NAMESPACE NAME AGE ipv6 ipv6 21h
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
セカンダリー IPv6 接続を持つ Pod を作成できるようになりました。