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 Sandboxed Containers のワークロードをデプロイできます。まず、OpenShift Sandboxed Containers Operator をインストールしてから、KataConfig カスタムリソースを作成する必要があります。Sandboxed Containers にワークロードをデプロイする準備ができたら、ワークロード YAML ファイルに runtimeClassName として kata を追加する必要があります。
3.3.1. CLI を使用したSandboxed Containers Operator のインストール リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform CLI から OpenShift サンドボックスコンテナー Operator をインストールできます。
前提条件
- OpenShift Container Platform 4.10 がクラスターにインストールされている。
-
OpenShift CLI (
oc) がインストールされている。 -
cluster-adminロールを持つユーザーとしてクラスターにアクセスできる。 OpenShift Sandboxed Containers カタログにサブスクライブしている。
注記OpenShift Sandboxed Containers カタログにサブスクライブすると、
openshift-sandboxed-containers-operatornamespace の OpenShift Sandboxed Containers Operator にアクセスできるようになります。
手順
OpenShift Sandboxed Containers 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 Sandboxed Containers 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 Sandboxed Containers 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 Sandboxed Containers 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.2.2 1.2.1 Succeeded
NAME DISPLAY VERSION REPLACES PHASE openshift-sandboxed-containers openshift-sandboxed-containers-operator 1.2.2 1.2.1 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.10 をインストールされている。
-
OpenShift CLI (
oc) がインストールされている。 -
cluster-adminロールを持つユーザーとしてクラスターにアクセスできる。 - OpenShift Sandboxed Containers Operator をインストールしている。
KataConfig CR を作成すると、ワーカーノードが自動的に再起動します。再起動には 10 分から 60 分以上かかる場合があります。再起動時間を妨げる要因は次のとおりです。
- より多くのワーカーノードを持つ大規模な OpenShift Container Platform デプロイメント。
- BIOS および診断ユーティリティーのアクティベーション。
- SSD ではなく、ハードドライブへのデプロイメント。
- 仮想ノードではなく、ベアメタルなどの物理ノードにデプロイします。
- 遅い CPU またはネットワーク。
手順
次のマニフェストで YAML ファイルを作成します。
Copy 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 としてインストールし始めます。kata のインストールが完了し、ワーカーノードが再起動するのを待ってから、次の手順に進みます。
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 を使用した Sandboxed Containers へのワークロードのデプロイ リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Sandboxed Containers は、Kata をプライマリーランタイムとしてではなく、クラスターでセカンダリーオプションのランタイムとしてインストールします。
Pod テンプレート化されたワークロードを Sandboxed Containers にデプロイするには、ワークロード YAML ファイルに runtimeClassName として kata を追加する必要があります。
前提条件
- クラスターに OpenShift Container Platform 4.10 をインストールされている。
-
OpenShift CLI (
oc) がインストールされている。 -
cluster-adminロールを持つユーザーとしてクラスターにアクセスできる。 - OpenShift Sandboxed Containers Operator をインストールしている。
-
KataConfigカスタムリソース (CR) を作成している。
手順
任意の Pod テンプレートオブジェクトに
runtimeClassName: kataを追加します。-
Podオブジェクト -
ReplicaSetオブジェクト -
ReplicationControllerオブジェクト -
StatefulSetオブジェクト -
Deploymentオブジェクト -
DeploymentConfigオブジェクト
-
Pod オブジェクトの例
OpenShift Container Platform はワークロードを作成し、スケジューリングを開始します。
検証
-
Pod テンプレートオブジェクトの
runtimeClassNameフィールドを調べます。runtimeClassNameがkataの場合、ワークロードは OpenShift サンドボックスコンテナーで実行されています。