This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.3.3. CLI を使用した OpenShift サンドボックスコンテナーワークロードのデプロイ
CLI を使用して、OpenShift サンドボックスコンテナーのワークロードをデプロイできます。まず、OpenShift サンドボックスコンテナー Operator をインストールしてから、KataConfig カスタムリソースを作成する必要があります。サンドボックスコンテナーにワークロードをデプロイする準備ができたら、ワークロード YAML ファイルに runtimeClassName として kata を追加する必要があります。
3.3.1. CLI を使用したサンドボックスコンテナー Operator のインストール リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform CLI から OpenShift サンドボックスコンテナー Operator をインストールできます。
前提条件
- クラスターに OpenShift Container Platform 4.9 がインストールされている。
-
OpenShift CLI (
oc) がインストールされている。 -
cluster-adminロールを持つユーザーとしてクラスターにアクセスできる。 OpenShift サンドボックスコンテナーカタログにサブスクライブしている。
注記OpenShift サンドボックスコンテナーカタログにサブスクライブすると、
openshift-sandboxed-containers-operatornamespace の OpenShift サンドボックスコンテナー Operator にアクセスできるようになります。
手順
OpenShift サンドボックスコンテナー Operator の
Namespaceオブジェクトを作成します。次のマニフェストを含む
Namespaceオブジェクト YAML ファイルを作成します。apiVersion: v1 kind: Namespace metadata: name: openshift-sandboxed-containers-operator
apiVersion: v1 kind: Namespace metadata: name: openshift-sandboxed-containers-operatorCopy to Clipboard Copied! Toggle word wrap Toggle overflow Namespaceオブジェクトを作成します。oc create -f Namespace.yaml
$ oc create -f Namespace.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
OpenShift サンドボックスコンテナー Operator の
OperatorGroupオブジェクトを作成します。次のマニフェストを含む
OperatorGroupオブジェクト YAML ファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow OperatorGroupオブジェクトを作成します。oc create -f OperatorGroup.yaml
$ oc create -f OperatorGroup.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
Subscriptionオブジェクトを作成して、Namespaceを OpenShift サンドボックスコンテナー Operator にサブスクライブします。次のマニフェストを含む
Subscriptionオブジェクト YAML ファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow Subscriptionオブジェクトを作成します。oc create -f Subscription.yaml
$ oc create -f Subscription.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
これで、OpenShift サンドボックスコンテナー Operator がクラスターにインストールされました。
上記のオブジェクトファイル名はすべて提案です。他の名前を使用してオブジェクト YAML ファイルを作成できます。
検証
Operator が正常にインストールされていることを確認します。
oc get csv -n openshift-sandboxed-containers-operator
$ oc get csv -n openshift-sandboxed-containers-operatorCopy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAME DISPLAY VERSION REPLACES PHASE openshift-sandboxed-containers openshift-sandboxed-containers-operator 1.1.0 1.0.2 Succeeded
NAME DISPLAY VERSION REPLACES PHASE openshift-sandboxed-containers openshift-sandboxed-containers-operator 1.1.0 1.0.2 SucceededCopy to Clipboard Copied! Toggle word wrap Toggle overflow
3.3.2. CLI を使用して KataConfig カスタムリソースを作成する リンクのコピーリンクがクリップボードにコピーされました!
kata を RuntimeClass としてノードにインストールするには、1 つの KataConfig カスタムリソース (CR) を作成する必要があります。KataConfig CR を作成すると、OpenShift サンドボックス化されたコンテナー Operator がトリガーされ、以下が実行されます。
-
QEMU および
kata-containersなど、必要な RHCOS 拡張を RHCOS ノードにインストールします。 -
ランタイム CRI-O が正しい
kataランタイムハンドラーで設定されていることを確認します。 -
デフォルト設定で
kataという名前のRuntimeClassCR を作成します。これにより、ユーザーは、RuntimeClassNameフィールドで CR を参照することにより、kataをランタイムとして使用するようにワークロードを設定できます。この CR は、ランタイムのリソースオーバーヘッドも指定します。
Kata は、デフォルトですべてのワーカーノードにインストールされます。特定のノードにのみ kata を RuntimeClass としてインストールする場合は、それらのノードにラベルを追加し、作成時に KataConfig CR でラベルを定義できます。
前提条件
- クラスターに OpenShift Container Platform 4.9 をインストールされている。
-
OpenShift CLI (
oc) がインストールされている。 -
cluster-adminロールを持つユーザーとしてクラスターにアクセスできる。 - OpenShift サンドボックスコンテナー Operator をインストールしました。
手順
次のマニフェストで YAML ファイルを作成します。
apiVersion: kataconfiguration.openshift.io/v1 kind: KataConfig metadata: name: cluster-kataconfig
apiVersion: kataconfiguration.openshift.io/v1 kind: KataConfig metadata: name: cluster-kataconfigCopy to Clipboard Copied! Toggle word wrap Toggle overflow (オプション) 選択したノードにのみ
kataをRuntimeClassとしてインストールする場合は、マニフェストにラベルを含む YAML ファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
kataConfigPoolSelectorのラベルは単一値のみをサポートします。nodeSelector構文はサポートされていません。
KataConfigリソースを作成します。oc create -f <file name>.yaml
$ oc create -f <file name>.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow
新しい KataConfig CR が作成され、ワーカーノードに kata を RuntimeClass としてインストールし始めます。
OpenShift サンドボックスコンテナーは、Kata を主なランタイムとしてではなく、クラスターでセカンダリーオプションのランタイムとしてのみインストールします。
検証
インストールの進捗を監視します。
watch "oc describe kataconfig | sed -n /^Status:/,/^Events/p"
$ watch "oc describe kataconfig | sed -n /^Status:/,/^Events/p"Copy to Clipboard Copied! Toggle word wrap Toggle overflow Is In Progress の値が
falseと表示されたら、インストールは完了です。
3.3.3. CLI を使用してサンドボックスコンテナーにワークロードをデプロイする リンクのコピーリンクがクリップボードにコピーされました!
OpenShift サンドボックスコンテナーは、Kata を主なランタイムとしてではなく、クラスターでセカンダリーオプションのランタイムとしてインストールします。
Pod テンプレート化されたワークロードをサンドボックスコンテナーにデプロイするには、ワークロード YAML ファイルに runtimeClassName として kata を追加する必要があります。
前提条件
- クラスターに OpenShift Container Platform 4.9 をインストールされている。
-
OpenShift CLI (
oc) がインストールされている。 -
cluster-adminロールを持つユーザーとしてクラスターにアクセスできる。 - OpenShift サンドボックスコンテナー Operator をインストールしました。
-
KataConfigカスタムリソース (CR) を作成しました。
手順
任意の Pod テンプレートオブジェクトに
runtimeClassName: kataを追加します。-
Podオブジェクト -
ReplicaSetオブジェクト -
ReplicationControllerオブジェクト -
StatefulSetオブジェクト -
Deploymentオブジェクト -
DeploymentConfigオブジェクト
-
Pod オブジェクトの例
Deployment オブジェクトの例
OpenShift Container Platform はワークロードを作成し、スケジューリングを開始します。
検証
-
Pod テンプレートオブジェクトの
runtimeClassNameフィールドを調べます。runtimeClassNameがkataの場合、ワークロードは OpenShift サンドボックスコンテナーで実行されています。