機械翻訳について

このドキュメントで説明されているソフトウェアは、サポートされなくなったか、拡張サポートされています。
Oracleでは、現在サポートされているリリースにアップグレードすることをお勧めします。

第4章 プラットフォームCLIコマンド

この章では、各olcnectlコマンド・オプションの構文、使用方法および例を示します。

4.1 環境の作成

空の環境を作成します。

Oracle Cloud Native Environmentをデプロイする最初のステップは、空の環境を作成することです。 環境の作成には、Vaultによって提供される証明書を使用することも、ノードに存在している証明書を使用することもできます。

構文

olcnectl environment create 
{-E|--environment-name} environment_name 
[{-h|--help}]
[globals]

説明:

{-E|--environment-name} environment_name

Oracle Cloud Native Environment。 environment_nameの値は、環境の識別に使用する名前です。

{-h|--help}

コマンドと使用可能なオプションに関する情報を一覧表示します。

globalsは次のようになります。

{-a|--api-server} api_server_address:8091

環境のPlatform API Server。 これは、環境内でolcne-api-serverサービスを実行しているホストです。 api_server_addressの値は、Platform API ServerのIPアドレスまたはホスト名です。 ポート番号は、olcne-api-serverサービスが使用可能なポートです。 デフォルト・ポートは8091です。

Platform API Serverが指定されていない場合、ローカル・インスタンスが使用されます。 ローカル・インスタンスが設定されていない場合、$HOME/.olcne/olcne.confファイル内に構成されます。

Platform API Serverの設定の詳細は、1.2項「Platform API Serverの設定」を参照してください。

このオプションは、$OLCNE_API_SERVER_BIN環境変数にマップされます。 この環境変数が設定されている場合は、Platform CLIの設定よりも優先され、それをオーバーライドします。

--config-file path

環境の構成情報を含むYAMLファイルのロケーションおよびmodule(s)。 ファイル名拡張子は、yamlまたはymlのいずれかにする必要があります。 このオプションを使用すると、--forceオプションを除き、その他のコマンド行オプションは無視されます。 構成ファイルに含まれている情報のみが使用されます。

--secret-manager-type {file|vault}

シークレット・マネージャのタイプ。 オプションは、fileまたはvaultです。 ノードに保存されている証明書にはfileを使用し、Vaultによって管理されている証明書にはvaultを使用します。

--update-config

環境のグローバル引数がローカル構成ファイルに書き込まれ、それがPlatform API Serverへの今後のコールに使用されます。 このオプションが以前に使用されていなかった場合は、Platform API Serverのコールのたびにグローバル引数の指定が必要になります。

グローバル引数の構成情報は、ローカル・ホストの$HOME/.olcne/olcne.confに保存されます。

ノードごとの証明書を生成するためにVaultを使用すると、証明書はローカル・ホストの$HOME/.olcne/certificates/environment_name/に保存されます。

--olcne-ca-path ca_path

事前定義済の認証局証明書へのパス。または、証明書のダウンロードにシークレット・マネージャを使用する場合は証明書のダウンロード先。 デフォルトは/etc/olcne/certificates/ca.certですが、--update-configオプションを使用するとローカル構成から収集されます。

このオプションは、$OLCNE_SM_CA_PATH環境変数にマップされます。 この環境変数が設定されている場合は、Platform CLIの設定よりも優先され、それをオーバーライドします。

--olcne-node-cert-path node_cert_path

事前定義済の証明書へのパス。または、証明書のダウンロードにシークレット・マネージャを使用している場合は証明書のダウンロード先。 デフォルトは/etc/olcne/certificates/node.certですが、--update-configオプションを使用するとローカル構成から収集されます。

このオプションは、$OLCNE_SM_CERT_PATH環境変数にマップされます。 この環境変数が設定されている場合は、Platform CLIの設定よりも優先され、それをオーバーライドします。

--olcne-node-key-path node_key_path

事前定義済のキーへのパス。または、キーのダウンロードにシークレット・マネージャを使用する場合はキーのダウンロード先。 デフォルトは/etc/olcne/certificates/node.keyですが、--update-configオプションを使用するとローカル構成から収集されます。

このオプションは、$OLCNE_SM_KEY_PATH環境変数にマップされます。 この環境変数が設定されている場合は、Platform CLIの設定よりも優先され、それをオーバーライドします。

--olcne-tls-cipher-suites ciphers

Oracle Cloud Native Environmentサービス(プラットフォーム・エージェントおよびプラットフォームAPIサーバー)に使用するTLS暗号スイート。 カンマ区切りリストで1つ以上入力します。 オプションは次のとおりです。

  • TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA

  • TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256

  • TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256

  • TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA

  • TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384

  • TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305

  • TLS_ECDHE_ECDSA_WITH_RC4_128_SHA

  • TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA

  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA

  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256

  • TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256

  • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA

  • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384

  • TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305

  • TLS_ECDHE_RSA_WITH_RC4_128_SHA

  • TLS_RSA_WITH_3DES_EDE_CBC_SHA

  • TLS_RSA_WITH_AES_128_CBC_SHA

  • TLS_RSA_WITH_AES_128_CBC_SHA256

  • TLS_RSA_WITH_AES_128_GCM_SHA256

  • TLS_RSA_WITH_AES_256_CBC_SHA

  • TLS_RSA_WITH_AES_256_GCM_SHA384

  • TLS_RSA_WITH_RC4_128_SHA

たとえば:

--olcne-tls-cipher-suites TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384

このオプションは、$OLCNE_TLS_CIPHER_SUITES環境変数にマップされます。 この環境変数が設定されている場合は、Platform CLIの設定よりも優先され、それをオーバーライドします。

--olcne-tls-max-version version

Oracle Cloud Native EnvironmentコンポーネントのTLS最大バージョン。 デフォルトはVersionTLS12です。 オプションは次のとおりです。

  • VersionTLS10

  • VersionTLS11

  • VersionTLS12

  • VersionTLS13

このオプションは、$OLCNE_TLS_MAX_VERSION環境変数にマップされます。 この環境変数が設定されている場合は、Platform CLIの設定よりも優先され、それをオーバーライドします。

--olcne-tls-min-version version

Oracle Cloud Native EnvironmentコンポーネントのTLS最小バージョン。 デフォルトはVersionTLS12です。 オプションは次のとおりです。

  • VersionTLS10

  • VersionTLS11

  • VersionTLS12

  • VersionTLS13

このオプションは、$OLCNE_TLS_MIN_VERSION環境変数にマップされます。 この環境変数が設定されている場合は、Platform CLIの設定よりも優先され、それをオーバーライドします。

--vault-address vault_address

VaultインスタンスのIPアドレス。 デフォルトはhttps://127.0.0.1:8200ですが、--update-configオプションを使用するとローカル構成から収集されます。

--vault-cert-sans vault_cert_sans

Oracle Cloud Native Environment証明書を生成するためにVaultに渡すサブジェクト代替名(SAN)。 デフォルトは127.0.0.1ですが、--update-configオプションを使用するとローカル構成から収集されます。

--vault-token vault_token

Vault認証トークン。

例4.1 Vaultを使用した環境の作成

Vaultインスタンスから生成された証明書を使用してmyenvironmentという環境を作成するには、--secret-manager-type vaultオプションを使用します。

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

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

ノードのファイル・システム上の証明書を使用してmyenvironmentという環境を作成するには、--secret-manager-type fileオプションを使用します。

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

4.2 環境の削除

既存のキーを削除します。

削除する前に、環境からすべてのモジュールをアンインストールする必要があります。

構文

olcnectl environment delete 
{-E|--environment-name} environment_name
[{-h|--help}]
[globals] 

説明:

{-E|--environment-name} environment_name

Oracle Cloud Native Environment。 environment_nameの値は、環境の識別に使用する名前です。

{-h|--help}

コマンドと使用可能なオプションに関する情報を一覧表示します。

globalsは、1.3項「グローバル・フラグの使用」で説明されているグローバル・オプションの1つ以上です。

例4.3 環境の削除

myenvironmentという環境を削除するには:

olcnectl environment delete \
--environment-name myenvironment

4.3 環境レポート

環境に関するサマリーおよび詳細情報を報告します。

構文

olcnectl environment report 
[{-E|--environment-name} environment_name]
[--children]
[--exclude pattern]
[--include pattern]
[--format {yaml|table}] 
[{-h|--help}]
[globals] 

説明:

{-E|--environment-name} environment_name

Oracle Cloud Native Environment。 environment_nameの値は、環境の識別に使用する名前です。

--children

このオプションをコマンドに追加すると、モジュール・インスタンスのすべての子のプロパティが再帰的に表示されます。 デフォルト値はfalseです。

--exclude pattern

レポートから除外するプロパティを選択するRE2正規表現。 このオプションは、複数のプロパティをコンマ区切りのリストとして指定できます。

--include pattern

レポートに含めるプロパティを選択するRE2正規表現。 このオプションは、複数のプロパティをコンマ区切りのリストとして指定できます。 デフォルトでは、すべてのプロパティが表示されます。 このオプションを使用すると、この動作が1回以上オーバーライドされます。

--format {yaml|table}

YAMLまたは表形式でレポートを生成するには、このオプションを使用します。 デフォルトの形式はtableです。

{-h|--help}

コマンドと使用可能なオプションに関する情報を一覧表示します。

globalsは、1.3項「グローバル・フラグの使用」で説明されているグローバル・オプションの1つ以上です。

例4.4 環境に関するサマリー詳細のレポート

myenvironmentという名前の環境に関するサマリーをレポートするには:

olcnectl environment report \
--environment-name myenvironment

例4.5 環境に関する詳細のレポート

myenvironmentという名前の環境の詳細をレポートするには:

olcnectl environment report \
--environment-name myenvironment \
--children

4.4 モジュールのバックアップ

環境内のモジュールをバックアップします。

構文

olcnectl module backup 
{-E|--environment-name} environment_name 
{-N|--name} name
[{-h|--help}]
[globals] 

説明:

{-E|--environment-name} environment_name

Oracle Cloud Native Environment。 environment_nameの値は、環境の識別に使用する名前です。

{-N|--name} name

モジュール名。 nameの値は、環境内のモジュールを識別するために使用する名前です。

{-h|--help}

コマンドと使用可能なオプションに関する情報を一覧表示します。

globalsは、1.3項「グローバル・フラグの使用」で説明されているグローバル・オプションの1つ以上です。

例4.6 コントロール・プレーン・ノードのバックアップ

myenvironmentという環境に含まれるmyclusterというkubernetesモジュールのKubernetesコントロール・プレーン・ノードの構成をバックアップするには:

olcnectl module backup \
--environment-name myenvironment \
--name mycluster

4.5 モジュールの作成

環境にモジュールを追加して構成します。

構文

olcnectl module create 
{-E|--environment-name} environment_name 
{-M|--module} module 
{-N|--name} name
[{-h|--help}]
[module_args ...]
[globals] 

説明:

{-E|--environment-name} environment_name

Oracle Cloud Native Environment。 environment_nameの値は、環境の識別に使用する名前です。

{-M|--module} module

環境に作成するモジュール・タイプ。 moduleの値は、モジュール・タイプの名前です。 使用可能なモジュールタイプは次のとおりです。

  • kubernetes

  • helm

  • prometheus

  • grafana

  • istio

  • operator-lifecycle-manager

  • gluster

  • oci-csi

{-N|--name} name

モジュール名。 nameの値は、環境内のモジュールを識別するために使用する名前です。

{-h|--help}

コマンドと使用可能なオプションに関する情報を一覧表示します。

module_argsの説明:

module_argsの値は、環境内のモジュールを構成するための1つ以上の引数です。

kubernetesモジュールのmodule_args:

{-o|--apiserver-advertise-address} IP_address

KubernetesクラスタのメンバーにKubernetes APIサーバーを通知するためのIPアドレス。 このアドレスは、クラスタのノードからアクセスできる必要があります。 値が指定されていない場合、コントロール・プレーン・ノードのインタフェースは--master-nodes引数で指定されます。

このオプションは、複数のコントロール・プレーン・ノードを持つ高可用性(HA)クラスタでは使用されません。

重要

この引数は非推奨になりました。 かわりに--master-nodes引数を使用します。

{-b|--apiserver-bind-port} port

Kubernetes APIサーバーのバインド・ポート。 デフォルトは6443です。

{-B|--apiserver-bind-port-alt} port

ロード・バランサに仮想IPアドレスを使用するときに、Kubernetes APIサーバーがリスニングするポート。 デフォルトは6444です。 これはオプションです。

仮想IPアドレスを使用すると、Kubernetes APIサーバー・ポートがデフォルトの6443から6444に変更されます。 ロード・バランサはポート6443でリスニングして、受信したリクエストをKubernetes APIサーバーに渡します。 この状況でKubernetes APIサーバーのポートを6444から変更する場合は、このオプションを使用できます。

{-e|--apiserver-cert-extra-sans} api_server_sans

Kubernetes APIサーバーによる証明書の提供に使用するサブジェクト代替名(SAN)。 この値には、IPアドレスとDNS名の両方を含めることができます。

{-r|--container-registry} container_registry

Kubernetesイメージを格納しているコンテナ・レジストリ。 container-registry.oracle.com/olcneを使用して、Oracle Container RegistryからKubernetesイメージをプルします。

この値を指定していないと、Platform CLIから値の指定を求められます。

{-x|--kube-proxy-mode} {userspace|iptables|ipvs}

Kubernetesプロキシのルーティング・モード。 デフォルトはiptablesです。 使用可能なプロキシのモードは次のとおりです。

  • userspace: 従来のプロキシ・モードです。

  • iptables: 最速のプロキシ・モードです。 これはデフォルトのモードです。

  • ipvs: 試験的なモードです。

値を指定しないと、デフォルトのiptablesが使用されます。 システムのカーネルまたはiptablesのバージョンが不十分な場合は、userspaceプロキシが使用されます。

{-v|--kube-version} version

インストールするKubernetesのバージョン。 デフォルトは最新バージョンです。 最新バージョン番号の詳細は、リリース・ノートを参照してください。

{-t|--kubeadm-token} token

Kubernetesノードとコントロール・プレーン・ノードの間の双方向信頼を確立するために使用するトークン。 この形式は[a-z0-9]{6}\.[a-z0-9]{16}です。たとえば、abcdef.0123456789abcdefのようになります。

--kube-tls-cipher-suites ciphers

Kubernetesコンポーネントに使用するTLS暗号スイート。 カンマ区切りリストで1つ以上入力します。 オプションは次のとおりです。

  • TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA

  • TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256

  • TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256

  • TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA

  • TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384

  • TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305

  • TLS_ECDHE_ECDSA_WITH_RC4_128_SHA

  • TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA

  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA

  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256

  • TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256

  • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA

  • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384

  • TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305

  • TLS_ECDHE_RSA_WITH_RC4_128_SHA

  • TLS_RSA_WITH_3DES_EDE_CBC_SHA

  • TLS_RSA_WITH_AES_128_CBC_SHA

  • TLS_RSA_WITH_AES_128_CBC_SHA256

  • TLS_RSA_WITH_AES_128_GCM_SHA256

  • TLS_RSA_WITH_AES_256_CBC_SHA

  • TLS_RSA_WITH_AES_256_GCM_SHA384

  • TLS_RSA_WITH_RC4_128_SHA

たとえば:

--kube-tls-cipher-suites TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384

--kube-tls-min-version version

KubernetesコンポーネントのTLS最小バージョン。 デフォルトはVersionTLS12です。 オプションは次のとおりです。

  • VersionTLS10

  • VersionTLS11

  • VersionTLS12

  • VersionTLS13

{-l|--load-balancer} load_balancer

Kubernetes APIサーバー・ロード・バランサのホスト名またはIPアドレスとポート。 デフォルト・ポートは6443です。 たとえば、192.0.2.100:6443などです。

{-m|--master-nodes} nodes ...

Kubernetesコントロール・プレーン・ノードのホスト名またはIPアドレスのカンマ区切りリスト(Platform Agentのポート番号を含めます)。 たとえば、control1.example.com:8090,control2.example.com:8090などです。

この値を指定していないと、Platform CLIから値の指定を求められます。

{-g|--nginx-image} container_location

複数のコントロール・プレーン・ノードを持つ高可用性(HA)クラスタで使用するNGINXコンテナ・イメージの場所。 これはオプションです。

このオプションは、--load-balancerオプションを使用して独自のロード・バランサを指定していない場合に使用できます。 このオプションは、ミラー化したコンテナ・レジストリを使用する場合に役立ちます。 たとえば:

--nginx-image mirror.example.com:5000/olcne/nginx:1.17.7

デフォルトでは、/usr/libexec/pull_olcne_nginxで構成されているNGINXイメージを取り出すためにpodmanが使用されます。 別のNGINXコンテナ・イメージを使用するために--nginx-imageオプションを設定すると、そのイメージの場所が/etc/olcne-nginx/imageに書き込まれ、デフォルト・イメージがオーバーライドされます。

--node-labels label

ポッドの可用性ドメインを設定するために、Oracle Cloud InfrastructureインスタンスのKubernetesノードに追加するラベル。 このオプションは、Oracle Cloud Infrastructure Container Storage Interfaceモジュール(oci-csi)とともに使用されます。 ラベルの形式は次のとおりです:

failure-domain.beta.kubernetes.io/zone=region-identifier-AD-availability-domain-number

たとえば:

--node-labels failure-domain.beta.kubernetes.io/zone=US-ASHBURN-AD-1

アベイラビリティ・ドメインのリストは、「Oracle Cloud Infrastructureドキュメント」を参照してください。

--node-ocids OCIDs

Oracle Cloud Identifier (OCID)を使用したKubernetesノード(コントロール・プレーンとワーカー・ノードの両方)のカンマ区切りリスト。 このオプションは、Oracle Cloud Infrastructure Container Storage Interfaceモジュール(oci-csi)とともに使用されます。 リストの形式は次のとおりです:

FQDN=OCID,...

たとえば:

--node-ocids control1.example.com=ocid1.instance...,worker1.example.com=ocid1.instance...,worker2.example.com=ocid1.instance...

OCIDの詳細は、「Oracle Cloud Infrastructureドキュメント」を参照してください。

{-p|--pod-cidr} pod_CIDR

KubernetesポッドのCIDR。 デフォルトは10.244.0.0/16です。 これは、各Kubernetesポッド・ネットワーク・インタフェースに割り当てられるIPアドレスの範囲です。

{-n|--pod-network} network_fabric

Kubernetesクラスタのネットワーク・ファブリック。 デフォルトはflannelです。

{-P|--pod-network-iface} network_interface

Kubernetesデータ・プレーン・ネットワーク通信に使用するノード上のネットワーク・インタフェースの名前。 データ・プレーン・ネットワークは、Kubernetesで実行されているポッドによって使用されます。 regexを使用してインタフェース名を設定する場合、カーネルによって返された最初に一致するインタフェースが使用されます。 たとえば:

--pod-network-iface "ens[1-5]|eth5"

--selinux {enforcing|permissive}

SELinuxのenforcingモードかpermissiveモードのどちらを使用するか。デフォルトはpermissiveです。

コントロール・プレーン・ノードおよびワーカー・ノードでSELinuxがenforcingに設定されている場合は、このオプションを使用する必要があります。 SELinuxはオペレーティング・システムでデフォルトでenforcingモードに設定され、推奨モードです。

{-s|--service-cidr} service_CIDR

KubernetesサービスのCIDR。 デフォルトは10.96.0.0/12です。 これは、各Kubernetesサービスに割り当てられるIPアドレスの範囲です。

{-i|--virtual-ip} virtual_ip

ロード・バランサの仮想IPアドレス。 これはオプションです。

このオプションは、--load-balancerオプションを使用して独自のロード・バランサを指定していない場合に使用する必要があります。 仮想IPアドレスを指定すると、それがコントロール・プレーン・ノードのプライマリIPアドレスとして使用されます。

{-w|--worker-nodes} nodes ...

Kubernetesワーカー・ノードのホスト名またはIPアドレス(Platform Agentのポート番号を含む)のカンマ区切りリスト。 ワーカー・ノードがNATゲートウェイの背後にある場合は、ノードのパブリックIPアドレスを使用します。 NATゲートウェイの背後にあるワーカー・ノードのインタフェースには、Kubernetesクラスタから到達可能な/32サブネット・マスクを使用するパブリックIPアドレスが必要です。 /32サブネットは、KubernetesクラスタからのすべてのトラフィックがこのパブリックIPアドレスを通過するように、サブネットを1つのIPアドレスに制限します(NATの構成の詳細は、スタート・ガイドを参照してください)。 デフォルトのポート番号は8090です。 たとえば、worker1.example.com:8090,worker2.example.com:8090のようにします。

この値を指定していないと、Platform CLIから値の指定を求められます。

--restrict-service-externalip {true|false}

Kubernetesサービスの外部IPアドレスへのアクセスを制限するかどうかを設定します。 デフォルトはtrueで、外部IPアドレスへのアクセスが制限されます。

このオプションは、externalip-validation-webhook-serviceという名前のKubernetesサービスをデプロイして、Kubernetesサービス構成ファイルに設定されているexternalIPsを検証します。 外部IPアドレスへのアクセスは、specセクションのexternalIPsオプションを使用して、Kubernetesサービス構成ファイルで設定されます。

--restrict-service-externalip-ca-cert path

--restrict-service-externalipオプションがtrueに設定されている場合にデプロイされるexternalip-validation-webhook-serviceアプリケーションのCA証明書ファイルへのパス。 たとえば、/etc/olcne/certificates/restrict_external_ip/ca.certなどです。

--restrict-service-externalip-tls-cert path

--restrict-service-externalipオプションがtrueに設定されている場合にデプロイされるexternalip-validation-webhook-serviceアプリケーションのCA証明書ファイルへのパス。 たとえば、/etc/olcne/certificates/restrict_external_ip/node.certなどです。

--restrict-service-externalip-tls-key path

--restrict-service-externalipオプションがtrueに設定されている場合にデプロイされるexternalip-validation-webhook-serviceアプリケーションの秘密キーへのパス。 たとえば、/etc/olcne/certificates/restrict_external_ip/node.keyなどです。

--restrict-service-externalip-cidrs allowed_cidrs

指定したCIDRブロックのIPアドレスのみを許可する場合は、1つ以上のカンマ区切りCIDRブロックを入力します。 たとえば、192.0.2.0/24,198.51.100.0/24などです。

helmモジュールのmodule_args:

--helm-kubernetes-module kubernetes_module

Helmと関連付けるkubernetesモジュールの名前。 Kubernetesの各インスタンスには、それに関連付けられた1つのHelmインスタンスを保持できます。

--helm-version version

インストールするHelmのバージョン。 デフォルトは最新バージョンです。 最新バージョン番号の詳細は、リリース・ノートを参照してください。

prometheusモジュールのmodule_args:

--prometheus-helm-module helm_module

Prometheusと関連付けるhelmモジュールの名前。

--prometheus-version version

インストールするPrometheusのバージョン。 デフォルトは最新バージョンです。 最新バージョン番号の詳細は、リリース・ノートを参照してください。

--prometheus-image container_registry

Prometheusのインストール時に使用するコンテナ・イメージ・レジストリおよびタグ。 デフォルトはcontainer-registry.oracle.com/olcne/prometheusです。

--prometheus-namespace namespace

PrometheusをインストールするKubernetesネームスペース。 デフォルトのネームスペースはdefaultです。

--prometheus-persistent-storage {true|false}

この値がfalseの場合、Prometheusは、ポッドを実行しているホストのemptydirにデータを書き込みます。 ポッドを移行すると、メトリック・データが失われます。

この値がtrueの場合、PrometheusはKubernetesのPersistentVolumeClaimを採用して、ポッドの破棄や移行があったとしてもデータが永続されるようにします。

デフォルトは、falseです。

--prometheus-alerting-rules path

Prometheusアラートの構成ファイルへのパス。

--prometheus-recording-rules path

Prometheus記録ルールの構成ファイルへのパス。

--prometheus-scrape-configuration path

Prometheusメトリックをスクレイプするための構成ファイルへのパス。

grafanaモジュールのmodule_args:

--grafana-helm-module helm_module

Grafanaを関連付けるhelmモジュールの名前。

--grafana-version version

インストールするGrafanaのバージョン。 デフォルトは最新バージョンです。 最新バージョン番号の詳細は、リリース・ノートを参照してください。

--grafana-container-registry container_registry

Grafanaのインストール時に使用するコンテナ・イメージ・レジストリおよびタグ。 デフォルトはcontainer-registry.oracle.com/olcneです。

--grafana-namespace namespace

GrafanaをインストールするKubernetesネームスペース。 デフォルトのネームスペースはdefaultです。

--grafana-dashboard-configmaps configmap

Grafanaダッシュボードを含むConfigMap参照の名前。

--grafana-dashboard-providers path

Grafanaダッシュボード・プロバイダの構成を含むファイルのロケーション。

--grafana-datasources path

Grafanaデータ・ソースの構成を含むファイルのロケーション。

--grafana-existing-sercret-name secret

Grafana管理パスワードを含む既存のシークレットの名前。

--grafana-notifiers path

Grafana修飾子の構成を含むファイルのロケーション。

--grafana-pod-annotations annotations

Grafanaポッドに追加する注釈のカンマ区切りリスト。

--grafana-pod-env env_vars

Grafanaデプロイメント・ポッドに渡される環境変数のカンマ区切りリスト。

--grafana-service-port port

Grafanaサービスのポート番号。 デフォルトは3000です。

--grafana-service-type service

Grafanaにアクセスするためのサービス・タイプ。 デフォルトはClusterIPです。

module_args for the istio module:

--istio-helm-module helm_module

Istioモジュールと関連付けるhelmモジュールの名前。

--istio-version version

インストールするIstioのバージョン。 デフォルトは最新バージョンです。 最新バージョン番号の詳細は、リリース・ノートを参照してください。

--istio-container-registry container_registry

Istioのデプロイ時に使用するコンテナ・イメージ・レジストリ。 デフォルトはcontainer-registry.oracle.com/olcneです。

--istio-mutual-tls {true|false}

Istioのコントロール・プレーンのポッド間の通信と、Istioサービス・メッシュにデプロイされたポッドに対してMutual Transport Layer Security (mTLS)を有効化するかどうかを設定します。

デフォルトは、trueです。

重要

特に本番環境では、この値をfalseに設定しないようにしてください。

operator-lifecycle-managerモジュールのmodule_args:

--olm-helm-module helm_module

Operator Lifecycle Managerを関連付けるhelmモジュールの名前。

--olm-version version

インストールするOperator Lifecycle Managerのバージョン。 デフォルトは最新バージョンです。 最新バージョン番号の詳細は、リリース・ノートを参照してください。

--olm-container-registry container_registry

Operator Lifecycle Managerをデプロイするときに使用するコンテナ・イメージ・レジストリ。 デフォルトはcontainer-registry.oracle.com/olcneです。

--olm-enable-operatorhub {true|false}

Operator Lifecycle ManagerでOperatorHubレジストリをカタログ・ソースとして使用できるようにするかどうかを設定します。

デフォルトは、trueです。

glusterモジュールのmodule_args:

--gluster-helm-module helm_module

Glusterコンテナ・ストレージ・インタフェース・モジュールに関連付けるhelmモジュールの名前。

--gluster-server-url URL

Heketi APIサーバー・エンドポイントのURL。 デフォルトはhttp://127.0.0.1:8080です。

--gluster-server-user user

Heketi APIサーバー管理ユーザーのユーザー名。 デフォルトはadminです。

--gluster-existing-secret-name secret

管理パスワードを含む既存のシークレットの名前。 デフォルトはheketi-adminです。

--gluster-secret-key secret

管理パスワードを含むシークレット。 デフォルトはsecretです。

--gluster-namespace namespace

Glusterコンテナ・ストレージ・インタフェース・モジュールをインストールするKubernetesネームスペース。 デフォルトはdefaultです。

--gluster-sc-name class_name

Glusterfs StorageClassのStorageClass名。 デフォルトはhyperconvergedです。

--gluster-server-rest-auth {true|false}

Heketi APIサーバーがREST認可を受け入れるかどうか。 デフォルトは、trueです。

oci-csiモジュールのmodule_args:

--oci-csi-helm-module helm_module

Oracle Cloud Infrastructure Container Storage Interfaceモジュールに関連付けるhelmモジュールの名前。

--oci-tenancy OCID

Oracle Cloud InfrastructureテナンシのOCID。

--oci-region region_identifier

Oracle Cloud Infrastructureリージョン識別子。 デフォルトはus-ashburn-1です。

リージョン識別子のリストは、「Oracle Cloud Infrastructureドキュメント」を参照してください。

--oci-compartment OCID

Oracle Cloud InfrastructureコンパートメントのOCID。

--oci-user OCID

Oracle Cloud InfrastructureユーザーのOCID。

--oci-private-key path

Oracle Cloud Infrastructure API署名キーの秘密キーのロケーション。 これは、プライマリ・コントロール・プレーン・ノードに配置する必要があります。 デフォルトは/root/.ssh/id_rsaです。

重要

秘密キーはプライマリ・コントロール・プレーン・ノードで使用可能である必要があります。 これは、Kubernetesモジュールの作成時に--master-nodesオプションにリストされた最初のコントロール・プレーン・ノードです。

--oci-fingerprint fingerprint

Oracle Cloud Infrastructure API署名キーの公開キーのフィンガープリント。

--oci-passphrase passphrase

Oracle Cloud Infrastructure API署名キーの秘密キーのパスフレーズ(設定されている場合)。

--oci-vcn OCID

Kubernetesクラスタが使用可能なOracle Cloud Infrastructure仮想クラウド・ネットワークのOCID。

--oci-lb-subnet1 OCID

Oracle Cloud Infrastructureロード・バランサのリージョナル・サブネットのOCID。

または、Oracle Cloud Infrastructureロード・バランサに必要な2つの可用性ドメイン固有サブネットの最初のサブネットのOCID。 サブネットは個別の可用性ドメインに存在する必要があります。

--oci-lb-subnet2 OCID

Oracle Cloud Infrastructureロード・バランサの2つのサブネットの2番目のサブネットのOCID。 サブネットは個別の可用性ドメインに存在する必要があります。

--oci-lb-security-mode {All|Frontend|None}

このオプションは、Oracle Cloud Infrastructure CSIプラグインがロード・バランサ・サービスのセキュリティ・リストを管理するかどうかを設定します。 このオプションは、Kubernetes Cloud Controller Managerによって管理されるセキュリティ・リストに使用される構成モードを設定します。 デフォルトはNoneです。

セキュリティ・モードの詳細は、「Oracle Cloud InfrastructureドキュメントのKubernetes Cloud Controller Managerの実装」を参照してください。

--oci-container-registry container_registry

Oracle Cloud Infrastructureクラウド・プロビジョナ・イメージのデプロイ時に使用するコンテナ・イメージ・レジストリ。 デフォルトはiad.ocir.io/oracleです。

--csi-container-registry container_registry

CSIコンポーネント・イメージのデプロイ時に使用するコンテナ・イメージ・レジストリ。 デフォルトはquay.io/k8scsiです。

globalsは、1.3項「グローバル・フラグの使用」で説明されているグローバル・オプションの1つ以上です。

例4.7 外部ロード・バランサを使用したHAクラスタ用のモジュールの作成

この例では、ホストlb.example.comで使用可能で、ポート6443で実行されている外部ロード・バランサを使用してHAクラスタを作成します。

externalip-validation-webhook-service Kubernetesサービスの証明書のロケーションも含める必要があります。

olcnectl module create \
--environment-name myenvironment \
--module kubernetes \
--name mycluster \
--container-registry container-registry.oracle.com/olcne \
--load-balancer lb.example.com:6443 \
--master-nodes control1.example.com:8090,control2.example.com:8090,control3.example.com:8090 \
--worker-nodes worker1.example.com:8090,worker2.example.com:8090,worker3.example.com:8090 \
--selinux enforcing \
--restrict-service-externalip-ca-cert /etc/olcne/certificates/restrict_external_ip/ca.cert \
--restrict-service-externalip-tls-cert /etc/olcne/certificates/restrict_external_ip/node.cert \
--restrict-service-externalip-tls-key /etc/olcne/certificates/restrict_external_ip/node.key

例4.8 内部ロード・バランサを使用したHAクラスタ用のモジュールの作成

この例では、Platform CLIによってデプロイされたロード・バランサを使用してHA Kubernetesクラスタを作成します。 --virtual-ipオプションによって、仮想IPアドレスをプライマリ・コントロール・プレーン・ノードのIPアドレスである192.0.2.100に設定します。 プライマリ・コントロール・プレーン・ノードは、コントロール・プレーン・ノードのリスト内の最初のノードです。 このクラスタには、3つのコントロール・プレーン・ノードと3つのワーカー・ノードが含まれます。

externalip-validation-webhook-service Kubernetesサービスの証明書のロケーションも含める必要があります。

olcnectl module create \
--environment-name myenvironment \
--module kubernetes \
--name mycluster \
--container-registry container-registry.oracle.com/olcne \
--virtual-ip 192.0.2.100 \
--master-nodes control1.example.com:8090,control2.example.com:8090,control3.example.com:8090 \
--worker-nodes worker1.example.com:8090,worker2.example.com:8090,worker3.example.com:8090 \
--selinux enforcing \
--restrict-service-externalip-ca-cert /etc/olcne/certificates/restrict_external_ip/ca.cert \
--restrict-service-externalip-tls-cert /etc/olcne/certificates/restrict_external_ip/node.cert \
--restrict-service-externalip-tls-key /etc/olcne/certificates/restrict_external_ip/node.key

例4.9 サービスIPアドレス範囲へのアクセスを許可するクラスタのモジュールの作成

この例では、Kubernetesサービスがアクセスできる外部IPアドレスを設定するKubernetesクラスタを作成します。 許可されるIP範囲は、192.0.2.0/24および198.51.100.0/24 CIDRブロック内です。

externalip-validation-webhook-service Kubernetesサービスの証明書のロケーションも含める必要があります。

olcnectl module create \
--environment-name myenvironment \
--module kubernetes \
--name mycluster \
--container-registry container-registry.oracle.com/olcne \
--virtual-ip 192.0.2.100 \
--master-nodes control1.example.com:8090,control2.example.com:8090,control3.example.com:8090 \
--worker-nodes worker1.example.com:8090,worker2.example.com:8090,worker3.example.com:8090 \
--selinux enforcing \
--restrict-service-externalip-ca-cert /etc/olcne/certificates/restrict_external_ip/ca.cert \
--restrict-service-externalip-tls-cert /etc/olcne/certificates/restrict_external_ip/node.cert \
--restrict-service-externalip-tls-key /etc/olcne/certificates/restrict_external_ip/node.key \
--restrict-service-externalip-cidrs 192.0.2.0/24,198.51.100.0/24

例4.10 すべてのサービスIPアドレスへのアクセスを許可するクラスタのモジュールの作成

この例では、Kubernetesサービスのすべての外部IPアドレスへのアクセスを許可するKubernetesクラスタを作成します。 これにより、externalip-validation-webhook-service Kubernetesサービスのデプロイメントが無効になります。つまり、Kubernetesサービスに対して外部IPアドレスの検証は実行されず、すべてのCIDRブロックに対してアクセスが許可されます。

olcnectl module create \
--environment-name myenvironment \
--module kubernetes \
--name mycluster \
--container-registry container-registry.oracle.com/olcne \
--virtual-ip 192.0.2.100 \
--master-nodes control1.example.com:8090,control2.example.com:8090,control3.example.com:8090 \
--worker-nodes worker1.example.com:8090,worker2.example.com:8090,worker3.example.com:8090 \
--selinux enforcing \
--restrict-service-externalip false 

例4.11 単一のコントロール・プレーン・ノードによるクラスタのモジュールの作成

この例では、単一のコントロール・プレーン・ノードを使用してKubernetesクラスタをデプロイするKubernetesモジュールを作成します。 Kubernetesモジュールを作成するには、--moduleオプションをkubernetesに設定します。 このクラスタには、1つのコントロール・プレーン・ノードと2つのワーカー・ノードが含まれます。

externalip-validation-webhook-service Kubernetesサービスの証明書のロケーションも含める必要があります。

olcnectl module create \
--environment-name myenvironment \
--module kubernetes \
--name mycluster \
--container-registry container-registry.oracle.com/olcne \
--master-nodes control1.example.com:8090 \
--worker-nodes worker1.example.com:8090,worker2.example.com:8090 \
--selinux enforcing \
--restrict-service-externalip-ca-cert /etc/olcne/certificates/restrict_external_ip/ca.cert \
--restrict-service-externalip-tls-cert /etc/olcne/certificates/restrict_external_ip/node.cert \
--restrict-service-externalip-tls-key /etc/olcne/certificates/restrict_external_ip/node.key 

例4.12 サービス・メッシュのモジュールの作成

この例では、Istioモジュールを使用してサービス・メッシュを作成します。 Istioモジュールを作成するには、--moduleオプションをistioに設定します。 この例では、myclusterという名前のKubernetesモジュール、myhelmという名前のHelmモジュール、およびmyistioという名前のIstioモジュールを使用します。

--istio-helm-moduleオプションは、使用するHelmモジュールの名前を設定します。

モジュールの追加時に必要なオプションが一部でも含まれていないと、そのオプションを指定するように求められます。

olcnectl module create \
--environment-name myenvironment \
--module istio \
--name myistio \
--istio-helm-module myhelm

例4.13 Operator Lifecycle Managerのモジュールの作成

この例では、Operator Lifecycle Managerのインストールに使用できるモジュールを作成します。 Operator Lifecycle Managerモジュールを作成するには、--moduleオプションがoperator-lifecycle-managerに設定されます。 この例では、myclusterという名前のKubernetesモジュール、myhelmという名前のHelmモジュール、およびmyolmという名前のOperator Lifecycle Managerモジュールを使用します。

--olm-helm-moduleオプションは、使用するHelmモジュールの名前を設定します。

モジュールの追加時に必要なオプションが一部でも含まれていないと、そのオプションを指定するように求められます。

olcnectl module create \
--environment-name myenvironment \
--module operator-lifecycle-manager \
--name myolm \
--olm-helm-module myhelm

例4.14 Gluster Storageのモジュールの作成

この例では、GlusterストレージにアクセスするためのKubernetes StorageClassプロビジョナを作成するモジュールを作成します。 Gluster Container Storage Interfaceモジュールを作成するには、--moduleオプションをglusterに設定します。 この例では、myclusterという名前のKubernetesモジュール、myhelmという名前のHelmモジュール、およびmyglusterという名前のGluster Container Storage Interfaceモジュールを使用します。

--gluster-helm-moduleオプションは、使用するHelmモジュールの名前を設定します。

モジュールの追加時に必要なオプションが一部でも含まれていないと、そのオプションを指定するように求められます。

olcnectl module create \
--environment-name myenvironment \
--module gluster \
--name mygluster \
--gluster-helm-module myhelm

例4.15 Oracle Cloud Infrastructureストレージのモジュールの作成

この例では、Oracle Cloud InfrastructureストレージにアクセスするためのKubernetes StorageClassプロビジョナを作成するモジュールを作成します。 Oracle Cloud Infrastructure Container Storage Interfaceモジュールを作成するには、--moduleオプションをoci-csiに設定します。 この例では、myclusterという名前のKubernetesモジュール、myhelmという名前のHelmモジュール、およびmyociという名前のOracle Cloud Infrastructure Container Storage Interfaceモジュールを使用します。

--oci-csi-helm-moduleオプションは、使用するHelmモジュールの名前を設定します。

次の例に示すオプションを使用して、Oracle Cloud Infrastructureへのアクセスに必要な情報も指定する必要があります:

  • --oci-tenancy

  • --oci-compartment

  • --oci-user

  • --oci-fingerprint

  • --oci-private-key

環境によっては、Oracle Cloud Infrastructureにアクセスするためのオプションをさらに指定する必要がある場合があります。

モジュールの追加時に必要なオプションが一部でも含まれていないと、そのオプションを指定するように求められます。

olcnectl module create \
--environment-name myenvironment \
--module oci-csi \
--name myoci \
--oci-csi-helm-module myhelm \
--oci-tenancy ocid1.tenancy.oc1... \
--oci-compartment ocid1.compartment.oc1... \
--oci-user ocid1.user.oc1... \
--oci-fingerprint b5:52:... \
--oci-private-key /home/opc/.oci/oci_api_key.pem 

4.6 モジュールのインストール

環境にモジュールをインストールします。 モジュールをインストールすると、そのモジュールを実行するためにノードが正しく設定されているかどうか確認されます。 ノードが正しく設定されていない場合は、各ノードの修正に必要なコマンドが出力に表示され、それをオプションでファイルに保存できます。

構文

olcnectl module install 
{-E|--environment-name} environment_name 
{-N|--name} name 
[{-g|--generate-scripts}]
[{-h|--help}]
[globals] 

説明:

{-E|--environment-name} environment_name

Oracle Cloud Native Environment。 environment_nameの値は、環境の識別に使用する名前です。

{-N|--name} name

モジュール名。 nameの値は、環境内のモジュールを識別するために使用する名前です。

{-g|--generate-scripts}

モジュール内のノードの設定エラーを修正するために必要なコマンドが含まれた一連のスクリプトを生成します。 スクリプトはモジュール内のノードごとに作成され、ローカル・ディレクトリにhostname:8090.shという名前で保存されます。

{-h|--help}

コマンドと使用可能なオプションに関する情報を一覧表示します。

globalsは、1.3項「グローバル・フラグの使用」で説明されているグローバル・オプションの1つ以上です。

例4.16 モジュールの取り付け

myenvironmentという環境にmyclusterというKubernetesモジュールをインストールするには:

olcnectl module install \
--environment-name myenvironment \
--name mycluster

4.7 モジュール・インスタンス

環境にインストールされているモジュールをリストします。

構文

olcnectl module instances 
{-E|--environment-name} environment_name
[{-h|--help}]
[globals]  

説明:

{-E|--environment-name} environment_name

Oracle Cloud Native Environment。 environment_nameの値は、環境の識別に使用する名前です。

{-h|--help}

コマンドと使用可能なオプションに関する情報を一覧表示します。

globalsは、1.3項「グローバル・フラグの使用」で説明されているグローバル・オプションの1つ以上です。

例4.17 環境内のデプロイ済モジュールのリスト

myenvironmentという環境にデプロイされているモジュールをリストするには:

olcnectl module instances \
--environment-name myenvironment

4.8 モジュール・リスト

環境で使用可能なモジュールをリストします。

構文

olcnectl module list 
{-E|--environment-name} environment_name
[{-h|--help}]
[globals]  

説明:

{-E|--environment-name} environment_name

Oracle Cloud Native Environment。 environment_nameの値は、環境の識別に使用する名前です。

{-h|--help}

コマンドと使用可能なオプションに関する情報を一覧表示します。

globalsは、1.3項「グローバル・フラグの使用」で説明されているグローバル・オプションの1つ以上です。

例4.18 環境で使用可能なモジュールの一覧表示

myenvironmentという環境のモジュールをリストするには:

olcnectl module list \
--environment-name myenvironment

4.9 モジュール・プロパティの取得

モジュール・プロパティの値をリストします。

構文

olcnectl module property get 
{-E|--environment-name} environment_name 
{-N|--name} name
{-P|--property} property_name
[{-h|--help}]
[globals] 

説明:

{-E|--environment-name} environment_name

Oracle Cloud Native Environment。 environment_nameの値は、環境の識別に使用する名前です。

{-N|--name} name

モジュール名。 nameの値は、環境内のモジュールを識別するために使用する名前です。

{-P|--property} property_name

プロパティの名前。 olcnectl module property listコマンドを使用して、使用可能なプロパティのリストを取得できます。

{-h|--help}

コマンドと使用可能なオプションに関する情報を一覧表示します。

globalsは、1.3項「グローバル・フラグの使用」で説明されているグローバル・オプションの1つ以上です。

例4.19 モジュール・プロパティのリスト

myenvironmentという環境に含まれるmyclusterというKubernetesモジュールのkubecfgプロパティの値をリストするには:

olcnectl module property get \
--environment-name myenvironment \
--name mycluster \
--property kubecfg

4.10 モジュール・プロパティ・リスト

環境内のモジュールで使用可能なプロパティをリストします。

構文

olcnectl module property list 
{-E|--environment-name} environment_name 
{-N|--name} name
[{-h|--help}]
[globals] 

説明:

{-E|--environment-name} environment_name

Oracle Cloud Native Environment。 environment_nameの値は、環境の識別に使用する名前です。

{-N|--name} name

モジュール名。 nameの値は、環境内のモジュールを識別するために使用する名前です。

{-h|--help}

コマンドと使用可能なオプションに関する情報を一覧表示します。

globalsは、1.3項「グローバル・フラグの使用」で説明されているグローバル・オプションの1つ以上です。

例4.20 モジュール・プロパティのリスト

myenvironmentという環境に含まれるmyclusterというKubernetesモジュールのプロパティをリストするには:

olcnectl module property list \
--environment-name myenvironment \
--name mycluster

4.11 モジュール・レポート

環境内のモジュールおよびプロパティに関するサマリーおよび詳細情報を報告します。

構文

olcnectl module report 
{-E|--environment-name} environment_name 
[{-N|--name} name]
[--children]
[--exclude pattern]
[--include pattern]
[--format {yaml|table}] 
[{-h|--help}]
[globals] 

説明:

{-E|--environment-name} environment_name

Oracle Cloud Native Environment。 environment_nameの値は、環境の識別に使用する名前です。

{-N|--name} name

モジュール名。 nameの値は、環境内のモジュールを識別するために使用する名前です。 名前が指定されていない場合、コマンドの出力には、選択した環境にデプロイされているすべてのモジュールに関する情報が含まれます。

--children

このオプションをコマンドに追加すると、モジュール・インスタンスのすべての子のプロパティが再帰的に表示されます。 デフォルト値はfalseです。

--exclude pattern

レポートから除外するプロパティを選択するRE2正規表現。 このオプションは、複数のプロパティをコンマ区切りのリストとして指定できます。

--include pattern

レポートに含めるプロパティを選択するRE2正規表現。 このオプションは、複数のプロパティをコンマ区切りのリストとして指定できます。 デフォルトでは、すべてのプロパティが表示されます。 このオプションを使用すると、この動作が1回以上オーバーライドされます。

--format {yaml|table}

YAMLまたは表形式でレポートを生成するには、このオプションを使用します。 デフォルトの形式はtableです。

{-h|--help}

コマンドと使用可能なオプションに関する情報を一覧表示します。

globalsは、1.3項「グローバル・フラグの使用」で説明されているグローバル・オプションの1つ以上です。

例4.21 環境に関するサマリー詳細のレポート

myenvironmentという名前の環境にデプロイされているすべてのモジュールのサマリーをレポートするには:

olcnectl module report \
--environment-name myenvironment \

例4.22 Kubernetesモジュールに関するサマリー詳細のレポート

myclusterという名前のKubernetesモジュールに関するサマリー詳細をレポートするには:

olcnectl module report \
--environment-name myenvironment \
--name mycluster

例4.23 Kubernetesモジュールに関する包括的な詳細のレポート

myclusterという名前のKubernetesモジュールに関する包括的な詳細をレポートするには:

olcnectl module report \
--environment-name myenvironment \
--name mycluster \
--children

4.12 モジュールのリストア

環境からモジュールをリストアします。

構文

olcnectl module restore 
{-E|--environment-name} environment_name 
{-N|--name} name
[{-g|--generate-scripts}]
[{-F|--force}]
[{-h|--help}]
[globals] 

説明:

{-E|--environment-name} environment_name

Oracle Cloud Native Environment。 environment_nameの値は、環境の識別に使用する名前です。

{-N|--name} name

モジュール名。 nameの値は、環境内のモジュールを識別するために使用する名前です。

{-g|--generate-scripts}

モジュール内のノードの設定エラーを修正するために必要なコマンドが含まれた一連のスクリプトを生成します。 スクリプトはモジュール内のノードごとに作成され、ローカル・ディレクトリにhostname:8090.shという名前で保存されます。

{-F|--force}

確認プロンプトをスキップします。

{-h|--help}

コマンドと使用可能なオプションに関する情報を一覧表示します。

globalsは、1.3項「グローバル・フラグの使用」で説明されているグローバル・オプションの1つ以上です。

例4.24 バックアップからのコントロール・プレーン・ノードのリストア

myenvironmentという環境に含まれるmyclusterというKubernetesモジュールのバックアップからKubernetesコントロール・プレーン・ノードをリストアするには:

olcnectl module restore \
--environment-name myenvironment \
--name mycluster

4.13 モジュールのアンインストール

環境からモジュールをアンインストールします。 モジュールをアンインストールすると、そのモジュールの構成もPlatform API Serverから削除されます。

構文

olcnectl module uninstall 
{-E|--environment-name} environment_name 
{-N|--name} name
[{-F|--force}]
[{-h|--help}]
[globals] 

説明:

{-E|--environment-name} environment_name

Oracle Cloud Native Environment。 environment_nameの値は、環境の識別に使用する名前です。

{-N|--name} name

モジュール名。 nameの値は、環境内のモジュールを識別するために使用する名前です。

{-F|--force}

確認プロンプトをスキップします。

{-h|--help}

コマンドと使用可能なオプションに関する情報を一覧表示します。

globalsは、1.3項「グローバル・フラグの使用」で説明されているグローバル・オプションの1つ以上です。

例4.25 モジュールのアンインストール

myenvironmentという環境からmyclusterというKubernetesモジュールをアンインストールするには:

olcnectl module uninstall \
--environment-name myenvironment \
--name mycluster

この例では、各ノードでKubernetesコンテナが停止されてから削除され、Kubernetesクラスタが削除されます。


4.14 モジュールの更新

環境内のモジュールを更新します。 モジュールの構成は、Platform API Serverから自動的に取得されます。 このコマンドを使用すると、次のことができます。

  • ノード上のKubernetesリリースを最新のエラータ・リリースに更新

  • ノード上のKubernetesリリースを最新リリースにアップグレード

  • 他のモジュールおよびコンポーネントの更新またはアップグレード

  • Kubernetesクラスタをスケール・アップ(コントロール・プレーン・ノードまたはワーカー・ノード(あるいはその両方)を追加)

  • Kubernetesクラスタをスケール・ダウン(コントロール・プレーン・ノードまたはワーカー・ノード(あるいはその両方)を削除)

重要

Kubernetesクラスタを更新またはアップグレードする前に、Oracle Cloud Native Environmentを最新リリースに更新またはアップグレードしていることを確認してください。 Oracle Cloud Native Environmentの更新またはアップグレードの詳細は、更新およびアップグレードを参照してください。

構文

olcnectl module update 
{-E|--environment-name} environment_name 
{-N|--name} name 
[{-r|--container-registry} container_registry]
[{-k|--kube-version} version]
[{-m|--master-nodes} nodes ...] 
[{-w|--worker-nodes} nodes ...]
[--nginx-image container_location]
[--helm-version version]
[--prometheus-version version]
[--prometheus-container-registry container_registry]
[--grafana-version version]
[--grafana-container-registry container_registry]
[--istio-version version]
[--istio-container-registry container_registry]
[--olm-version version]
--restrict-service-externalip {true|false}
--restrict-service-externalip-ca-cert path
--restrict-service-externalip-tls-cert path
--restrict-service-externalip-tls-key path
--restrict-service-externalip-cidrs allowed_cidrs
[--selinux {enforcing|permissive}]
[{-g|--generate-scripts}]
[{-F|--force}]
[{-h|--help}]
[globals] 

説明:

{-E|--environment-name} environment_name

Oracle Cloud Native Environment。 environment_nameの値は、環境の識別に使用する名前です。

{-N|--name} name

モジュール名。 nameの値は、環境内のモジュールを識別するために使用する名前です。

{-k|--kube-version} version

アップグレード用のKubernetesバージョンを設定します。 デフォルトは最新バージョンです。 最新バージョン番号の詳細は、リリース・ノートを参照してください。

このオプションを指定しない場合、すべてのKubernetesエラータ更新がインストールされます。

{-r|--container-registry} container_registry

更新またはアップグレードの実行時にKubernetesイメージが格納されるコンテナ・レジストリ。 Oracle Container Registryまたはローカル・レジストリを使用して、Kubernetesイメージをプルします。

このオプションを使用すると、別のコンテナ・レジストリを使用して更新またはアップグレードできます。 このオプションを使用すると、これから行われるすべての更新またはアップグレード時にデフォルト・コンテナ・レジストリが設定されるため、デフォルト・コンテナ・レジストリを変更する場合にのみ使用する必要があります。

{-m|--master-nodes} nodes ...

Kubernetesクラスタに残しておくか追加する必要があるKubernetesコントロール・プレーン・ノードのホスト名またはIPアドレスのカンマ区切りリスト(Platform Agentのポート番号を含めます)。 このリストに含まれていないコントロール・プレーン・ノードは、クラスタから削除されます。 このリスト内のノードは、クラスタに含められるノードです。

Platform Agentのデフォルト・ポート番号は8090です。 たとえば、control1.example.com:8090,control2.example.com:8090などです。

{-w|--worker-nodes} nodes ...

Kubernetesクラスタに残しておくか追加する必要があるKubernetesワーカー・ノードのホスト名またはIPアドレスのカンマ区切りリストです(Platform Agentのポート番号を含めます)。 このリストに含まれていないワーカー・ノードは、クラスタから削除されます。 このリスト内のノードは、クラスタに含められるノードです。

Platform Agentのデフォルト・ポート番号は8090です。 たとえば、worker1.example.com:8090,worker2.example.com:8090のようにします。

--nginx-image container_location

更新するNGINXコンテナ・イメージの場所。 これはオプションです。

このオプションは、コントロール・プレーン・ノードのNGINXを更新するために、指定したコンテナ・レジストリの場所からNGINXコンテナ・イメージをプルします。 たとえば:

--nginx-image container-registry.oracle.com/olcne/nginx:1.17.7

--helm-version version

アップグレード用のHelmバージョンを設定します。 デフォルトは最新バージョンです。 最新バージョン番号の詳細は、リリース・ノートを参照してください。

--prometheus-version version

アップグレードのPrometheusバージョンを設定します。 デフォルトは最新バージョンです。 最新バージョン番号の詳細は、リリース・ノートを参照してください。

--prometheus-container-registry container_registry

更新またはアップグレードの実行時にPrometheusイメージを含むコンテナ・レジストリ。 Oracle Container Registry (デフォルト)またはローカル・レジストリを使用して、Prometheusイメージをプルします。

--grafana-version version

アップグレードのGrafanaバージョンを設定します。 デフォルトは最新バージョンです。 最新バージョン番号の詳細は、リリース・ノートを参照してください。

--grafana-container-registry container_registry

更新またはアップグレードの実行時にGrafanaイメージを含むコンテナ・レジストリ。 Oracle Container Registry (デフォルト)またはローカル・レジストリを使用して、Grafanaイメージをプルします。

--istio-version version

アップグレード用のIstioバージョンを設定します。 デフォルトは最新バージョンです。 最新バージョン番号の詳細は、リリース・ノートを参照してください。

--istio-container-registry container_registry

更新またはアップグレードの実行時にIstioイメージを含むコンテナ・レジストリ。 Oracle Container Registry (デフォルト)またはローカル・レジストリを使用して、Istioイメージをプルします。

--olm-version version

アップグレードのOperator Lifecycle Managerバージョンを設定します。 デフォルトは最新バージョンです。 最新バージョン番号の詳細は、リリース・ノートを参照してください。

--restrict-service-externalip {true|false}

Kubernetesサービスの外部IPアドレスへのアクセスを制限するかどうかを設定します。 デフォルトはtrueで、外部IPアドレスへのアクセスが制限されます。

このオプションは、externalip-validation-webhook-serviceという名前のKubernetesサービスをデプロイして、Kubernetesサービス構成ファイルに設定されているexternalIPsを検証します。 外部IPアドレスへのアクセスは、specセクションのexternalIPsオプションを使用して、Kubernetesサービス構成ファイルで設定されます。

--restrict-service-externalip-ca-cert path

--restrict-service-externalipオプションがtrueに設定されている場合にデプロイされるexternalip-validation-webhook-serviceアプリケーションのCA証明書ファイルへのパス。 たとえば、/etc/olcne/certificates/restrict_external_ip/ca.certなどです。

--restrict-service-externalip-tls-cert path

--restrict-service-externalipオプションがtrueに設定されている場合にデプロイされるexternalip-validation-webhook-serviceアプリケーションのCA証明書ファイルへのパス。 たとえば、/etc/olcne/certificates/restrict_external_ip/node.certなどです。

--restrict-service-externalip-tls-key path

--restrict-service-externalipオプションがtrueに設定されている場合にデプロイされるexternalip-validation-webhook-serviceアプリケーションの秘密キーへのパス。 たとえば、/etc/olcne/certificates/restrict_external_ip/node.keyなどです。

--restrict-service-externalip-cidrs allowed_cidrs

指定したCIDRブロックのIPアドレスのみを許可する場合は、1つ以上のカンマ区切りCIDRブロックを入力します。 たとえば、192.0.2.0/24,198.51.100.0/24などです。

--selinux {enforcing|permissive}

SELinuxのenforcingモードかpermissiveモードのどちらを使用するか。デフォルトはpermissiveです。

コントロール・プレーン・ノードおよびワーカー・ノードでSELinuxがenforcingに設定されている場合は、このオプションを使用する必要があります。 SELinuxはオペレーティング・システムでデフォルトでenforcingモードに設定され、推奨モードです。

{-g|--generate-scripts}

モジュール内のノードの設定エラーを修正するために必要なコマンドが含まれた一連のスクリプトを生成します。 スクリプトはモジュール内のノードごとに作成され、ローカル・ディレクトリにhostname:8090.shという名前で保存されます。

{-F|--force}

確認プロンプトをスキップします。

{-h|--help}

コマンドと使用可能なオプションに関する情報を一覧表示します。

globalsは、1.3項「グローバル・フラグの使用」で説明されているグローバル・オプションの1つ以上です。

例4.26 クラスタのスケーリング

クラスタをスケール・アップするには、クラスタに含めるすべてのノードをリストします。 既存のクラスタに2つのコントロール・プレーン・ノードと2つのワーカー・ノードが含まれていて、新しいコントロール・プレーンとワーカーを1つずつ追加する場合は、含めるすべてのノードをリストします。 たとえば、コントロール・プレーン・ノードcontrol3.example.comおよびワーカー・ノードworker3.example.commyclusterというKubernetesモジュールに追加するには、次のようにします。

olcnectl module update \
--environment-name myenvironment \  
--name mycluster \
--master-nodes control1.example.com:8090,control2.example.com:8090,control3.example.com:8090 \
--worker-nodes worker1.example.com:8090,worker2.example.com:8090,worker3.example.com:8090

クラスタをスケール・ダウンするには、クラスタに含めるすべてのノードをリストします。 myclusterというkubernetesモジュールからコントロール・プレーン・ノードcontrol3.example.comおよびワーカー・ノードworker3.example.comを削除するには:

olcnectl module update \
--environment-name myenvironment \  
--name mycluster \
--master-nodes control1.example.com:8090,control2.example.com:8090 \
--worker-nodes worker1.example.com:8090,worker2.example.com:8090

--master-nodesオプションと--worker-nodesオプションにコントロール・プレーン・ノードcontrol3.example.comおよびワーカー・ノードworker3.example.comがリストされていないため、Platform API Serverによってこれらのノードがクラスタから削除されます。


例4.27 Kubernetesリリースのエラータ更新の更新

myenvironmentという環境に含まれるmyclusterというKubernetesモジュールを最新のKubernetesエラータ・リリースに更新するには、次のように入力します。

olcnectl module update \
--environment-name myenvironment \
--name mycluster

環境内のノードは、最新のKubernetes errataリリースに更新されます。


例4.28 別のコンテナ・レジストリを使用した更新

Kubernetesモジュールの作成時に指定したデフォルトとは異なるコンテナ・レジストリを使用して、myenvironmentという環境に含まれるmyclusterというKubernetesモジュールを最新のKubernetesエラータ・リリースに更新するには、次のように入力します。

olcnectl module update \
--environment-name myenvironment \
--name mycluster \
--container-registry container-registry-austin-mirror.oracle.com/olcne/

環境内のノードは、ミラー・コンテナ・レジストリに含まれる最新のKubernetesエラータ・リリースに更新されます。


例4.29 Kubernetesリリースのアップグレード

myenvironmentという名前の環境内のmyclusterという名前のKubernetesモジュールをKubernetesリリース1.21.14-3にアップグレードするには、次のように入力します:

olcnectl module update \
--environment-name myenvironment \
--name mycluster \
--kube-version 1.21.14-3

--kube-versionオプションでは、アップグレード先のリリースを指定します。 この例では、リリース番号1.21.14-3を使用します。

必ず最新のKubernetesリリースにアップグレードしてください。 最新のKubernetesリリースのバージョン番号を取得するには、リリース・ノートを参照してください。

環境内のノードは、Kubernetesリリース1.21.14-3に更新されます。


例4.30 別のコンテナ・レジストリを使用したアップグレード

myenvironmentという名前の環境内のmyclusterという名前のKubernetesモジュールを、現在のデフォルトのコンテナ・レジストリとは異なるコンテナ・レジストリを使用してKubernetesリリース1.21.14-3にアップグレードするには、次のように入力します:

olcnectl module update \
--environment-name myenvironment \
--name mycluster \
--container-registry container-registry-austin-mirror.oracle.com/olcne/ \
--kube-version 1.21.14-3

--kube-versionオプションでは、アップグレード先のリリースを指定します。 この例では、リリース番号1.21.14-3を使用します。 指定したコンテナ・レジストリが、これから行われるすべての更新またはアップグレードでの新しいデフォルト・コンテナ・レジストリになります。

必ず最新のKubernetesリリースにアップグレードしてください。 最新のKubernetesリリースのバージョン番号を取得するには、リリース・ノートを参照してください。

環境内のノードがKubernetes 1.21.14-3に更新されます。


例4.31 Kubernetesサービスの外部IPアドレスへのアクセスの設定

この例では、Kubernetesサービスがアクセスできる外部IPアドレスの範囲を設定します。

olcnectl module update \
--environment-name myenvironment \
--name mycluster \
--restrict-service-externalip-cidrs 192.0.2.0/24,198.51.100.0/24

例4.32 ホストのSELinux設定の変更

この例では、Kubernetesクラスタ内のノードでSELinux enforcingモードが有効になっているプラットフォームAPIサーバーで構成を更新します。

olcnectl module update \
--environment-name myenvironment \
--name mycluster \
--selinux enforcing

4.15 モジュールの検証

環境のモジュールを検証します。 モジュールを検証すると、そのモジュールを実行するためにノードが適切に設定されているかどうか確認されます。 ノードが正しく設定されていない場合は、各ノードの修正に必要なコマンドが出力に表示され、それをオプションでファイルに保存できます。

構文

olcnectl module validate 
{-E|--environment-name} environment_name 
{-N|--name} name 
[{-g|--generate-scripts}]
[{-h|--help}]
[globals] 

説明:

{-E|--environment-name} environment_name

Oracle Cloud Native Environment。 environment_nameの値は、環境の識別に使用する名前です。

{-N|--name} name

モジュール名。 nameの値は、環境内のモジュールを識別するために使用する名前です。

{-g|--generate-scripts}

モジュール内のノードの設定エラーを修正するために必要なコマンドが含まれた一連のスクリプトを生成します。 スクリプトはモジュール内のノードごとに作成され、ローカル・ディレクトリにhostname:8090.shという名前で保存されます。

{-h|--help}

コマンドと使用可能なオプションに関する情報を一覧表示します。

globalsは、1.3項「グローバル・フラグの使用」で説明されているグローバル・オプションの1つ以上です。

例4.33 モジュールの検証

myenvironmentという環境に含まれるmyclusterというKubernetesモジュールを検証するには:

olcnectl module validate \
--environment-name myenvironment \
--name mycluster

4.16 テンプレート

単純な構成ファイル・テンプレートを生成します。 テンプレート・ファイルの名前はconfig-file-template.yamlで、ローカル・ディレクトリに作成されます。

構文

olcnectl template 
[{-h|--help}]

説明:

{-h|--help}

コマンドと使用可能なオプションに関する情報を一覧表示します。

例4.34 サンプル構成テンプレートの作成

サンプル構成テンプレートを作成するには:

olcnectl template