このドキュメントで説明されているソフトウェアは、サポートされなくなったか、拡張サポートされています。
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認証トークン。
例
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
ノードのファイル・システム上の証明書を使用して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つ以上です。
例
myenvironment
という環境を削除するには:
olcnectl environment delete \ --environment-name myenvironment
4.3 環境レポート
環境に関するサマリーおよび詳細情報を報告します。
構文
olcnectl environment report [{-E|--environment-name}environment_name
] [--children] [--excludepattern
] [--includepattern
] [--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つ以上です。
例
myenvironment
という名前の環境に関するサマリーをレポートするには:
olcnectl environment report \ --environment-name myenvironment
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つ以上です。
例
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つ以上です。
例
この例では、ホスト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
この例では、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
この例では、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
この例では、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
この例では、単一のコントロール・プレーン・ノードを使用して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
この例では、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
この例では、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
この例では、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
この例では、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つ以上です。
例
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つ以上です。
例
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つ以上です。
例
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つ以上です。
例
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つ以上です。
例
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] [--excludepattern
] [--includepattern
] [--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つ以上です。
例
myenvironment
という名前の環境にデプロイされているすべてのモジュールのサマリーをレポートするには:
olcnectl module report \ --environment-name myenvironment \
mycluster
という名前のKubernetesモジュールに関するサマリー詳細をレポートするには:
olcnectl module report \ --environment-name myenvironment \ --name mycluster
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つ以上です。
例
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つ以上です。
例
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-imagecontainer_location
] [--helm-versionversion
] [--prometheus-versionversion
] [--prometheus-container-registrycontainer_registry
] [--grafana-versionversion
] [--grafana-container-registrycontainer_registry
] [--istio-versionversion
] [--istio-container-registrycontainer_registry
] [--olm-versionversion
] --restrict-service-externalip {true|false} --restrict-service-externalip-ca-certpath
--restrict-service-externalip-tls-certpath
--restrict-service-externalip-tls-keypath
--restrict-service-externalip-cidrsallowed_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つ以上です。
例
クラスタをスケール・アップするには、クラスタに含めるすべてのノードをリストします。 既存のクラスタに2つのコントロール・プレーン・ノードと2つのワーカー・ノードが含まれていて、新しいコントロール・プレーンとワーカーを1つずつ追加する場合は、含めるすべてのノードをリストします。 たとえば、コントロール・プレーン・ノードcontrol3.example.com
およびワーカー・ノードworker3.example.com
をmycluster
という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によってこれらのノードがクラスタから削除されます。
myenvironment
という環境に含まれるmycluster
というKubernetesモジュールを最新のKubernetesエラータ・リリースに更新するには、次のように入力します。
olcnectl module update \ --environment-name myenvironment \ --name mycluster
環境内のノードは、最新のKubernetes errataリリースに更新されます。
Kubernetesモジュールの作成時に指定したデフォルトとは異なるコンテナ・レジストリを使用して、myenvironment
という環境に含まれるmycluster
というKubernetesモジュールを最新のKubernetesエラータ・リリースに更新するには、次のように入力します。
olcnectl module update \ --environment-name myenvironment \ --name mycluster \ --container-registry container-registry-austin-mirror.oracle.com/olcne/
環境内のノードは、ミラー・コンテナ・レジストリに含まれる最新の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に更新されます。
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に更新されます。
この例では、Kubernetesサービスがアクセスできる外部IPアドレスの範囲を設定します。
olcnectl module update \ --environment-name myenvironment \ --name mycluster \ --restrict-service-externalip-cidrs 192.0.2.0/24,198.51.100.0/24
この例では、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つ以上です。
例
myenvironment
という環境に含まれるmycluster
というKubernetesモジュールを検証するには:
olcnectl module validate \ --environment-name myenvironment \ --name mycluster
4.16 テンプレート
単純な構成ファイル・テンプレートを生成します。 テンプレート・ファイルの名前はconfig-file-template.yaml
で、ローカル・ディレクトリに作成されます。
構文
olcnectl template
[{-h|--help}]
説明:
-
{-h|--help}
-
コマンドと使用可能なオプションに関する情報を一覧表示します。
例
サンプル構成テンプレートを作成するには:
olcnectl template