第4章 Kubernetesクラスタの作成と管理

この章では、Platform CLI (olcnectl)による環境の作成方法、その環境へのKubernetesモジュール(kubernetes)の追加方法、マスター・ノードとワーカー・ノードの追加方法、Kubernetesクラスタを作成するためのデプロイメントの実行方法について説明します。

olcnectlコマンドの構文の詳細は、第5章「Platform CLIを参照してください。

4.1 環境の作成

Oracle Linux Cloud Native Environmentをデプロイするための最初のステップは、環境の作成です。それぞれの環境に潜在的に複数のモジュールが含まれている、複数の環境を作成できます。それぞれの環境とモジュールに名前を付けることで、デプロイしたOracle Linux Cloud Native Environmentのコンポーネントが管理しやすくなります。olcnectl environment createコマンドを使用して、環境を作成します。

この項では、環境の作成にVaultを使用する方法と、各ノードのファイル・システムにコピーした独自の証明書を使用する方法を示します。

Vaultで証明書を設定する方法の詳細は、3.5「X.509証明書の設定」を参照してください。

テスト時に使用可能な証明書に署名するためのプライベートCAの作成方法の詳細は、3.5.3「プライベートCA証明書の設定」を参照してください。

4.1.1 Vaultで管理された証明書を使用した環境の作成

この項では、証明書の提供と管理にVaultを使用する環境の作成方法を示します。

オペレータ・ノードで、環境を作成するためにolcnectl environment createコマンドを使用します。たとえば、Vaultインスタンスから生成された証明書を使用して、myenvironmentという環境を作成するには、次のようにします。

$ olcnectl --api-server 127.0.0.1:8091 environment create --environment-name myenvironment \
    --update-config \
    --vault-token s.3QKNuRoTqLbjXaGBOmO6Psjh \
    --secret-manager-type vault \
    --vault-address https://192.0.2.20:8200

--secret-manager-type vaultファイル・オプションで、証明書マネージャをVaultに設定しています。--vault-tokenは、Vaultにアクセスするためのトークンに置き換えてください。--vault-addressは、Vaultインスタンスの場所に置き換えてください。

--update-configオプションにより、Vaultで生成した証明書をローカル・ホストに保存します。このオプションを使用すると、環境を管理するときに、証明書の情報を再入力する必要がなくなります。

デフォルトでは、証明書は$HOME/.olcne/certificates/environment_name/に保存されます。証明書の保存先に別の場所を指定する場合は、オプションの--olcne-node-cert-path--olcne-ca-pathおよび--olcne-node-key-pathを使用します。たとえば、olcnectl environment createコマンドに、次のオプションを追加します。

    --olcne-node-cert-path /etc/olcne/configs/certificates/production/node.cert \
    --olcne-ca-path /etc/olcne/configs/certificates/production/ca.cert \
    --olcne-node-key-path /etc/olcne/configs/certificates/production/node.key 

4.1.2 証明書を使用した環境の作成

この項では、独自の証明書(各ノードにコピーしたもの)を使用して環境を作成する方法を示します。この例では、すべてのノードの/etc/olcne/configs/certificates/production/ディレクトリで証明書が使用できるようになっていることを前提としています。

オペレータ・ノードで、olcnectl environment createコマンドを使用して環境を作成します。次に例を示します。

$ olcnectl --api-server 127.0.0.1:8091 environment create --environment-name myenvironment \
    --update-config \
    --secret-manager-type file \
    --olcne-node-cert-path /etc/olcne/configs/certificates/production/node.cert \
    --olcne-ca-path /etc/olcne/configs/certificates/production/ca.cert \
    --olcne-node-key-path /etc/olcne/configs/certificates/production/node.key

--secret-manager-type fileファイル・オプションで、証明書マネージャをファイルベースの証明書の使用に設定しています。

証明書ファイルの場所は環境変数を使用することで設定することもできます。環境変数が設定されていると、その設定がolcnectlで使用されます。

環境変数は、olcnectl environment createコマンドの次のオプションにマップされます。

  • $OLCNE_SM_CERT_PATHでは、--olcne-node-cert-pathオプションに使用する値を設定します。

  • $OLCNE_SM_CA_PATHでは、--olcne-ca-pathオプションに使用する値を設定します。

  • $OLCNE_SM_KEY_PATHでは、--olcne-node-key-pathオプションに使用する値を設定します。

次に例を示します。

$ export OLCNE_SM_CA_PATH=/etc/olcne/configs/certificates/production/ca.cert
$ export OLCNE_SM_CERT_PATH=/etc/olcne/configs/certificates/production/node.cert
$ export OLCNE_SM_KEY_PATH=/etc/olcne/configs/certificates/production/node.key
$ olcnectl --api-server 127.0.0.1:8091 environment create --environment-name myenvironment \
    --update-config \
    --secret-manager-type file