This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.7.14. 仮想マシンのネットワーク
7.14.1. 仮想マシンのデフォルト Pod ネットワークの使用 リンクのコピーリンクがクリップボードにコピーされました!
					OpenShift Virtualization でデフォルトの Pod ネットワークを使用できます。これを実行するには、masquerade バインディングメソッドを使用する必要があります。これは、デフォルトの Pod ネットワークを使用する場合にのみ推奨されるバインディングメソッドです。デフォルト以外のネットワークには、masquerade モードを使用しないでください。
				
					セカンダリーネットワーク の場合は、bridge バインディングメソッドを使用します。
				
KubeMacPool コンポーネントは、指定の namespace に仮想マシン NIC の MAC アドレスプールサービスを提供します。これはデフォルトで有効にされません。KubeMacPool ラベルを namespace に適用して、namespace で MAC アドレスプールを有効にします。
7.14.1.1. コマンドラインでのマスカレードモードの設定 リンクのコピーリンクがクリップボードにコピーされました!
マスカレードモードを使用し、仮想マシンの送信トラフィックを Pod IP アドレスの背後で非表示にすることができます。マスカレードモードは、ネットワークアドレス変換 (NAT) を使用して仮想マシンを Linux ブリッジ経由で Pod ネットワークバックエンドに接続します。
仮想マシンの設定ファイルを編集して、マスカレードモードを有効にし、トラフィックが仮想マシンに到達できるようにします。
前提条件
- 仮想マシンは、IPv4 アドレスを取得するために DHCP を使用できるように設定される必要がある。以下の例では、DHCP を使用するように設定されます。
 
7.14.1.2. バインディング方法の選択 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Virtualization Web コンソールウィザード から仮想マシンを作成する場合、Networking 画面で必要なバインディングメソッドを選択します。
7.14.1.2.1. ネットワークフィールド リンクのコピーリンクがクリップボードにコピーされました!
| 名前 | 説明 | 
|---|---|
|   名前  |   ネットワークインターフェイスの名前。  | 
|   Model  |   ネットワークインターフェイスカードのモデルを示します。サポートされる値は、e1000、 e1000e、ne2k_pci、pcnet, rtl8139、および virtIO です。  | 
|   Network  |   利用可能な NetworkAttachmentDefinition オブジェクトの一覧。  | 
|   Type  |   
											利用可能なバインディングメソッドの一覧。デフォルトの Pod ネットワークについては、  | 
|   MAC Address  |   ネットワークインターフェイスの MAC アドレス。MAC アドレスが指定されていない場合、セッションの一時アドレスが生成されます。  | 
7.14.1.3. デフォルトネットワーク用の仮想マシン設定の例 リンクのコピーリンクがクリップボードにコピーされました!
7.14.1.3.1. テンプレート: 仮想マシンの設定ファイル リンクのコピーリンクがクリップボードにコピーされました!
7.14.1.3.2. テンプレート: Windows 仮想マシンインスタンスの設定ファイル リンクのコピーリンクがクリップボードにコピーされました!
7.14.1.4. 仮想マシンからのサービスの作成 リンクのコピーリンクがクリップボードにコピーされました!
						仮想マシンを公開するために Service オブジェクトを最初に作成し、実行中の仮想マシンからサービスを作成します。
					
						ClusterIP サービスタイプは、クラスター内で仮想マシンを内部に公開します。NodePort または LoadBalancer サービスタイプは、クラスター外から仮想マシンを外部に公開します。
					
						この手順では、type: ClusterIP の Service オブジェクトを仮想マシンバックエンドサービスとして作成し、これに接続し、公開する方法についての例を示します。
					
							ClusterIP は、サービスの type が指定されていない場合のデフォルトサービスの type です。
						
手順
以下のように仮想マシンの YAML を編集します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
 - ラベル
special: keyをspec.template.metadata.labelsセクションに追加します。 
注記仮想マシンのラベルは Pod に渡されます。
VirtualMachineのラベル (例:special: key) は、この手順の後で作成するServiceYAMLselector属性のラベルに一致する必要があります。- 仮想マシン YAML を保存して変更を適用します。
 ServiceYAML を編集し、Serviceオブジェクトを作成し、公開するために必要な設定を行います。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
 - 作成および公開するサービスの
nameを指定します。 - 2
 - 仮想マシン YAML に指定する
namespaceに対応するServiceYAML のmetadataセクションのnamespaceを指定します。 - 3
 targetPort: 22を追加し、SSH ポート22にサービスを公開します。- 4
 ServiceYAML のspecセクションで、special: keyをselector属性に追加します。これは、仮想マシン YAML 設定ファイルに追加したlabelsに対応します。- 5
 ServiceYAML のspecセクションで、ClusterIP サービスのtype: ClusterIPを追加します。NodePortやLoadBalancerなどのクラスター外にある他のタイプのサービスを作成し、公開するには、type: ClusterIPをtype: NodePortまたはtype: LoadBalancerに随時置き換えます。
- 
								
ServiceYAML を保存し、サービス設定を保管します。 ClusterIPサービスを作成します。oc create -f <service_name>.yaml
$ oc create -f <service_name>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 仮想マシンを起動します。仮想マシンがすでに実行中の場合は、これを再起動します。
 Serviceオブジェクトをクエリーし、これが利用可能であり、ClusterIPタイプで設定されていることを確認します。検証
oc get serviceコマンドを実行し、仮想マシンで参照するnamespaceおよびServiceYAML ファイルを指定します。oc get service -n example-namespace
$ oc get service -n example-namespaceCopy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE vmservice ClusterIP 172.30.3.149 <none> 27017/TCP 2m
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE vmservice ClusterIP 172.30.3.149 <none> 27017/TCP 2mCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 
												出力で示されているように、
vmserviceが実行されています。 - 
												
TYPEは、ServiceYAML で指定したようにClusterIPとして表示されます。 
- 
												出力で示されているように、
 
サービスをサポートするために使用する仮想マシンへの接続を確立します。別の仮想マシンなど、クラスター内のオブジェクトから接続します。
以下のように仮想マシンの YAML を編集します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc createコマンドを実行して 2 番目の仮想マシンを作成します。ここで、file.yamlは仮想マシン YAML の名前になります。oc create -f <file.yaml>
$ oc create -f <file.yaml>Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 仮想マシンを起動します。
 以下の
virtctlコマンドを実行して仮想マシンに接続します。virtctl -n example-namespace console <new-vm-name>
$ virtctl -n example-namespace console <new-vm-name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記サービスタイプ
LoadBalancerの場合、vinagreクライアントを使用し、パブリック IP およびポートを使用して仮想マシンに接続します。外部ポートは、サービスタイプLoadBalancerを使用する場合に動的に割り当てられます。sshコマンドを実行して接続を認証します。ここで、172.30.3.149はサービスの ClusterIP であり、fedoraは仮想マシンのユーザー名です。ssh fedora@172.30.3.149 -p 27017
$ ssh fedora@172.30.3.149 -p 27017Copy to Clipboard Copied! Toggle word wrap Toggle overflow 検証
- 公開するサービスをサポートする仮想マシンのコマンドプロンプトが表示されます。実行中の仮想マシンがサポートするサービスの準備ができました。
 
関連情報