25.2.2. オプション 2: OpenShift Container Platform での vSphere の手動設定
25.2.2.1. vSphere 向けのマスターホストの手動設定
全マスターホストで以下の手順を実行します。
手順
すべてのマスターのデフォルトで /etc/origin/master/master-config.yaml に置かれているマスター設定ファイルを編集し、
apiServerArguments
およびcontrollerArguments
セクションの内容を更新します。kubernetesMasterConfig: ... apiServerArguments: cloud-provider: - "vsphere" cloud-config: - "/etc/origin/cloudprovider/vsphere.conf" controllerArguments: cloud-provider: - "vsphere" cloud-config: - "/etc/origin/cloudprovider/vsphere.conf"
重要コンテナー化インストールをトリガーすると、/etc/origin と /var/lib/origin のディレクトリーのみがマスターとノードのコンテナーにマウントされます。したがって、master-config.yaml は/etc/ ではなく /etc/origin/master になければなりません。
Ansible を使用して vSphere 用に OpenShift Container Platform を設定する場合には、/etc/origin/cloudprovider/vsphere.conf ファイルは自動的に作成されます。vSphere 用の OpenShift Container Platform を手動で設定する場合、このファイルを作成する必要があります。このファイルを作成する前に、複数の vCenter ゾーンが必要かどうかを判別します。
クラスターのインストールプロセスは、デフォルトでシングルゾーンまたは単一 vCenter を設定します。異なるゾーンの vSphere に OpenShift Container Platform をデプロイすると、単一障害点を回避しやすくなりますが、ゾーン間での共有ストレージの必要が生じます。OpenShift Container Platform ノードホストがゾーン A でダウンした場合、Pod はゾーン B に移動する必要があります。詳細については、Kubernetes ドキュメントの 複数のゾーンでの実行 を参照してください。
単一の vCenter サーバーを設定するには、/etc/origin/cloudprovider/vsphere.conf ファイルに以下の形式を使用します。
[Global] 1 user = "myusername" 2 password = "mypassword" 3 port = "443" 4 insecure-flag = "1" 5 datacenters = "mydatacenter" 6 [VirtualCenter "10.10.0.2"] 7 user = "myvCenterusername" password = "password" [Workspace] 8 server = "10.10.0.2" 9 datacenter = "mydatacenter" folder = "path/to/vms" 10 default-datastore = "shared-datastore" 11 resourcepool-path = "myresourcepoolpath" 12 [Disk] scsicontrollertype = pvscsi 13 [Network] public-network = "VM Network" 14
- 1
[Global]
セクションに設定されるプロパティーは、個別の[VirtualCenter]
セクションの設定で上書きされない限り、すべての指定される vcenter で使用されます。- 2
- vSphere クラウドプロバイダーの vCenter ユーザー名。
- 3
- 指定されたユーザーの vCenter パスワード。
- 4
- オプション。vCenter サーバーのポート番号。デフォルトはポート
443
になります。 - 5
- vCenter が自己署名証明書を使用している場合は
1
に設定します。 - 6
- ノード VM がデプロイされているデータセンターの名前。
- 7
- この Virtual Center の特定の
[Global]
プロパティーを上書きします。使用できる設定は[Port]
、[user]
、[insecure-flag]
、[datacenters]
です。指定されない設定は[Global]
セクションからプルされます。 - 8
- 各種の vSphere Cloud Provider 機能で使用されるプロパティーを設定します。たとえば、動的プロビジョニング、ストレージプロファイルベースのボリュームプロビジョニングなどがこれに含まれます。
- 9
- vCenter サーバーの IP アドレスまたは FQDN。
- 10
- ノード VM の VM ディレクトリーへのパス。
- 11
- ストレージクラスまたは動的プロビジョニングを使ったボリュームのプロビジョニングに使用されるデータストアの名前に設定されます。OpenShift Container Platform 3.9 よりも前のバージョンでは、データストアがストレージディレクトリーにあるか、またはデータストアクラスターのメンバーである場合には、完全パスが必要でした。
- 12
- オプション。ストレージプロファイルベースのボリュームプロビジョニングのダミー VM が作成される必要のあるリソースプールのパスに設定されます。
- 13
- VMDK が VM に割り当てられる際に設定される SCSI コントローラーのタイプ。
- 14
- vSphere がノードにアクセスするために使用されるネットワークポートグループに設定されます。これはデフォルトで VM ネットワークと呼ばれます。 これは Kubernetes に登録されているノードホストの ExternalIP です。
複数の vCenter サーバーを設定するには、/etc/origin/cloudprovider/vsphere.conf ファイルに以下の形式を使用します。
[Global] 1 user = "myusername" 2 password = "mypassword" 3 port = "443" 4 insecure-flag = "1" 5 datacenters = "us-east, us-west" 6 [VirtualCenter "10.10.0.2"] 7 user = "myvCenterusername" password = "password" [VirtualCenter "10.10.0.3"] port = "448" insecure-flag = "0" [Workspace] 8 server = "10.10.0.2" 9 datacenter = "mydatacenter" folder = "path/to/vms" 10 default-datastore = "shared-datastore" 11 resourcepool-path = "myresourcepoolpath" 12 [Disk] scsicontrollertype = pvscsi 13 [Network] public-network = "VM Network" 14
- 1
[Global]
セクションに設定されるプロパティーは、個別の[VirtualCenter]
セクションの設定で上書きされない限り、すべての指定される vcenter で使用されます。- 2
- vSphere クラウドプロバイダーの vCenter ユーザー名。
- 3
- 指定されたユーザーの vCenter パスワード。
- 4
- オプション。vCenter サーバーのポート番号。デフォルトはポート
443
になります。 - 5
- vCenter が自己署名証明書を使用している場合は
1
に設定します。 - 6
- ノード仮想マシンがデプロイされているデータセンターの名前。
- 7
- この Virtual Center の特定の
[Global]
プロパティーを上書きします。使用できる設定は[Port]
、[user]
、[insecure-flag]
、[datacenters]
です。指定されない設定は[Global]
セクションからプルされます。 - 8
- 各種の vSphere Cloud Provider 機能で使用されるプロパティーを設定します。たとえば、動的プロビジョニング、ストレージプロファイルベースのボリュームプロビジョニングなどがこれに含まれます。
- 9
- Cloud Provider が通信する vCenter サーバーの IP アドレスまたは FQDN。
- 10
- ノード VM の VM ディレクトリーへのパス。
- 11
- ストレージクラスまたは動的プロビジョニングを使ったボリュームのプロビジョニングに使用されるデータストアの名前に設定されます。OpenShift Container Platform 3.9 よりも前のバージョンでは、データストアがストレージディレクトリーにあるか、またはデータストアクラスターのメンバーである場合には、完全パスが必要でした。
- 12
- オプション。ストレージプロファイルベースのボリュームプロビジョニングのダミー VM が作成される必要のあるリソースプールのパスに設定されます。
- 13
- VMDK が VM に割り当てられる際に設定される SCSI コントローラーのタイプ。
- 14
- vSphere がノードにアクセスするために使用されるネットワークポートグループに設定されます。これはデフォルトで VM ネットワークと呼ばれます。 これは Kubernetes に登録されているノードホストの ExternalIP です。
OpenShift Container Platform サービスを再起動します。
# master-restart api # master-restart controllers # systemctl restart atomic-openshift-node