10.3. 仮想マシンをプライマリーユーザー定義ネットワークに接続する
OpenShift Container Platform Web コンソールまたは CLI を使用して、仮想マシンを仮想マシンのプライマリーインターフェイス上のユーザー定義ネットワーク (UDN) に接続できます。プライマリーのユーザー定義ネットワークは、指定された namespace 内のデフォルトの Pod ネットワークを置き換えます。Pod ネットワークとは異なり、プロジェクトごとにプライマリー UDN を定義でき、各プロジェクトは特定のサブネットとトポロジーを使用できます。
OpenShift Virtualization は、namespace スコープの UserDefinedNetwork とクラスタースコープの ClusterUserDefinedNetwork カスタムリソース定義 (CRD) をサポートします。
クラスター管理者は、プライマリー UserDefinedNetwork CRD を設定して、ネットワークポリシーを必要とせずに、テナント namespace を他の namespace から分離するテナントネットワークを作成できます。さらに、クラスター管理者は ClusterUserDefinedNetwork CRD を使用して、複数の namespace にわたる共有 OVN ネットワークを作成できます。
ユーザー定義ネットワークで使用する namespace を作成する場合は、k8s.ovn.org/primary-user-defined-network ラベルを追加する必要があります。
レイヤー 2 トポロジーでは、OVN-Kubernetes はノード間にオーバーレイネットワークを作成します。このオーバーレイネットワークを使用すると、追加の物理ネットワークインフラストラクチャーを設定することなく、さまざまなノード上の仮想マシンを接続できます。
レイヤー 2 トポロジーでは、ライブマイグレーション中に永続的な IP アドレスがクラスターノード間で保持されるため、ネットワークアドレス変換 (NAT) を必要とせずに仮想マシンをシームレスに移行できます。
プライマリー UDN を実装する前に、次の制限を考慮する必要があります。
-
virtctl sshコマンドを使用して仮想マシンへの SSH アクセスを設定できません。 -
oc port-forwardコマンドを使用してポートを仮想マシンに転送できません。 - ヘッドレスサービスを使用して仮想マシンにアクセスできません。
10.3.1. Web コンソールを使用してプライマリーユーザー定義ネットワークを作成します。 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform Web コンソールを使用すると、プライマリー名前空間スコープの UserDefinedNetwork またはクラスタースコープの ClusterUserDefinedNetwork カスタムリソース定義 (CRD) を作成できます。UDN は、ネットワークに関連付けられた namespace で作成する Pod と仮想マシンのデフォルトのプライマリーネットワークとして機能します。
カスタムプライマリーオーバーレイネットワークを定義した後、クラスタースコープの UDN に関連付けられた名前空間を作成できます。
10.3.1.1. Web コンソールを使用したユーザー定義ネットワークの namespace の作成 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform Web コンソールを使用して、プライマリーユーザー定義ネットワーク (UDN) で使用する namespace を作成できます。
前提条件
-
cluster-adminパーミッションを持つユーザーとして OpenShift Container Platform Web コンソールにログインしている。
手順
-
Administrator パースペクティブから、Administration
Namespaces をクリックします。 - Create Namespace をクリックします。
- Name フィールドに、namespace の名前を指定します。名前は、小文字の英数字または '-' で構成される必要があり、先頭と末尾は英数字でなければなりません。
-
Labels フィールドに、
k8s.ovn.org/primary-user-defined-networkラベルを追加します。 -
オプション: namespace を既存のクラスタースコープ UDN で使用する場合は、
ClusterUserDefinedNetworkカスタムリソースのspec.namespaceSelectorフィールドで定義されている適切なラベルを追加します。 - オプション: デフォルトのネットワークポリシーを指定します。
- namespace を作成するには、Create をクリックします。
10.3.1.2. Web コンソールを使用したプライマリー namespace スコープのユーザー定義ネットワークの作成 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform Web コンソールで UserDefinedNetwork カスタムリソースを作成することにより、プロジェクト namespace に分離されたプライマリーネットワークを作成できます。
前提条件
-
cluster-admin権限を持つユーザーとして OpenShift Container Platform Web コンソールにアクセスできる。 -
namespace を作成し、
k8s.ovn.org/primary-user-defined-networkラベルを適用している。詳細は、「Web コンソールを使用したユーザー定義ネットワークの namespace の作成」を参照してください。
手順
-
Administrator パースペクティブから、Networking
UserDefinedNetworks をクリックします。 - Create UserDefinedNetwork をクリックします。
- Project name リストから、以前に作成した namespace を選択します。
- Subnet フィールドに値を指定します。
- Create をクリックします。ユーザー定義ネットワークは、この namespace で作成する Pod と仮想マシンのデフォルトのプライマリーネットワークとして機能します。
10.3.1.3. Web コンソールを使用したプライマリークラスタースコープのユーザー定義ネットワークの作成 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform Web コンソールで ClusterUserDefinedNetwork カスタムリソースを作成することで、複数の namespace を同じプライマリーユーザー定義ネットワーク (UDN) に接続できます。
前提条件
-
cluster-admin権限を持つユーザーとして OpenShift Container Platform Web コンソールにアクセスできる。
手順
-
Administrator パースペクティブから、Networking
UserDefinedNetworks をクリックします。 - Create リストから、ClusterUserDefinedNetwork を選択します。
- Name フィールドで、クラスタースコープの UDN の名前を指定します。
- Subnet フィールドに値を指定します。
- Project(s) Match Labels フィールドに適切なラベルを追加して、クラスター UDN が適用される namespace を選択します。
- Create をクリックします。クラスタースコープの UDN は、ステップ 5 で指定したラベルが含まれる namespace にある Pod および仮想マシンのデフォルトのプライマリーネットワークとして機能します。