3.2. Web コンソールを使用した OpenShift サンドボックスコンテナーワークロードのデプロイ
Web コンソールから OpenShift サンドボックスコンテナーのワークロードをデプロイできます。まず、OpenShift サンドボックスコンテナー Operator をインストールしてから、KataConfig
カスタムリソース (CR) を作成する必要があります。サンドボックスコンテナーにワークロードをデプロイする準備ができたら、ワークロード YAML ファイルに kata
を runtimeClassName
として手動で追加する必要があります。
3.2.1. Web コンソールを使用した OpenShift サンドボックスコンテナー Operator のインストール
OpenShift Container Platform Web コンソールから OpenShift サンドボックスコンテナー Operator をインストールできます。
前提条件
- OpenShift Container Platform 4.12 がインストールされている。
-
cluster-admin
ロールを持つユーザーとしてクラスターにアクセスできる。
手順
- Web コンソールの Administrator パースペクティブで、Operators → OperatorHub に移動します。
-
Filter by keyword フィールドに
OpenShift sandboxed containers
と入力します。 - OpenShift sandboxed containers タイルを選択します。
- Operator についての情報を確認してから、Install をクリックします。
Install Operator ページで以下を行います。
- 選択可能な Update Channel オプションの一覧から stable-1.3 を選択します。
Installed Namespace で Operator recommend Namespace が選択されていることを確認します。これにより、Operator が必須の
openshift-sandboxed-containers-operator
namespace にインストールされます。この namespace がまだ存在しない場合は、自動的に作成されます。注記OpenShift サンドボックスコンテナー Operator を
openshift-sandboxed-containers-operator
以外の namespace にインストールしようとすると、インストールが失敗します。- Approval Strategy で Automatic が選択されていることを確認します。Automatic がデフォルト値であり、新しい z-stream リリースが利用可能になると、OpenShift サンドボックスコンテナーへの自動更新が有効になります。
- Install をクリックします。
これで、OpenShift サンドボックスコンテナー Operator がクラスターにインストールされました。
検証
- Web コンソールの Administrator パースペクティブで、Operators → Installed Operators に移動します。
- OpenShift サンドボックスコンテナー Operator が in オペレーターリストにリストされていることを確認します。
3.2.2. Web コンソールで KataConfig カスタムリソースを作成する
クラスターノードに kata
を RuntimeClass
としてインストールできるようにするには、1 つの KataConfig
カスタムリソース (CR) を作成する必要があります。
KataConfig
CR を作成すると、ワーカーノードが自動的に再起動します。再起動には 10 分から 60 分以上かかる場合があります。再起動時間を妨げる要因は次のとおりです。
- より多くのワーカーノードを持つ大規模な OpenShift Container Platform デプロイメント。
- BIOS および診断ユーティリティーのアクティベーション。
- SSD ではなくハードドライブへのデプロイメント。
- 仮想ノードではなく、ベアメタルなどの物理ノードへのデプロイメント。
- 遅い CPU とネットワーク。
前提条件
- クラスターに OpenShift Container Platform 4.12 をインストールしました。
-
cluster-admin
ロールを持つユーザーとしてクラスターにアクセスできる。 - OpenShift サンドボックスコンテナー Operator をインストールしました。
Kata は、デフォルトですべてのワーカーノードにインストールされます。特定のノードにのみ kata
を RuntimeClass
としてインストールする場合は、それらのノードにラベルを追加し、作成時に KataConfig
CR でラベルを定義できます。
手順
- Web コンソールの Administrator パースペクティブで、Operators → Installed Operators に移動します。
- オペレーターのリストから OpenShift サンドボックスコンテナーオペレーターを選択します。
- KataConfig タブで、Create KataConfig をクリックします。
Create KataConfig ページで、次の詳細を入力します。
-
Name:
KataConfig
リソースの名前を入力します。デフォルトでは、名前はexample-kataconfig
として定義されています。 -
Labels (オプション): 関連する識別属性を
KataConfig
リソースに入力します。各ラベルはキーと値のペアを表します。 -
checkNodeEligibility
(オプション):kata
をRuntimeClass
として実行するノードの適格性を、Node Feature Discovery Operator (NFD) を使用して検出するには、このチェックボックスを選択します。詳細は、「クラスターノードが OpenShift サンドボックスコンテナーを実行する資格があるかどうかを確認する」を参照してください。 kataConfigPoolSelector
: デフォルトでは、kata
はすべてのノードにRuntimeClass
としてインストールされます。選択したノードにのみkata
をRuntimeClass
としてインストールする場合は、matchExpression を追加する必要があります。-
kataConfigPoolSelector
エリアを展開します。 -
kataConfigPoolSelector
で、matchExpressions を展開します。これは、ラベルセレクターの要件のリストです。 - Add matchExpressions をクリックします。
- key フィールドに、セレクターの適用先のラベルキーを追加します。
-
operator フィールドに、ラベル値に対するキーの関係を追加します。有効な演算子は、
In
、NotIn
、Exists
、DoesNotExist
です。 - values エリアを展開し、Add value をクリックします。
-
Value フィールドで、
true
またはfalse
を key ラベル値として入力します。
-
-
logLevel
:kata
をRuntimeClass
として実行しているノードに対して、取得するログデータのレベルを定義します。詳細は、「OpenShift サンドボックスコンテナーデータの収集」を参照してください。
-
Name:
- Create をクリックします。
新しい KataConfig
CR が作成され、ワーカーノードに kata
を RuntimeClass
としてインストールし始めます。kata
のインストールが完了し、ワーカーノードが再起動するのを待ってから、次の手順に進みます。
OpenShift サンドボックスコンテナーは、Kata を主なランタイムとしてではなく、クラスターでセカンダリーオプションのランタイムとしてのみインストールします。
検証
-
KataConfig タブで、新しい
KataConfig
CR を選択します。 - KataConfig ページで、YAML タブを選択します。
ステータスの installationStatus フィールドをモニターします。
更新があるたびにメッセージが表示されます。リロード をクリックして、更新された
KataConfig
CR を表示します。Completed nodes の値がワーカーまたはラベル付けされたノードの数と等しくなると、インストールは完了です。ステータスには、インストールが完了したノードの一覧も含まれます。
3.2.3. Web コンソールを使用してサンドボックスコンテナーにワークロードをデプロイする
OpenShift サンドボックスコンテナーは、Kata を主なランタイムとしてではなく、クラスターでセカンダリーオプションのランタイムとしてインストールします。
Pod テンプレート化されたワークロードをサンドボックスコンテナーにデプロイするには、kata
を runtimeClassName
としてワークロード YAML ファイルに手動で追加する必要があります。
前提条件
- クラスターに OpenShift Container Platform 4.12 をインストールしました。
-
cluster-admin
ロールを持つユーザーとしてクラスターにアクセスできる。 - OpenShift サンドボックスコンテナー Operator をインストールしました。
-
KataConfig
カスタムリソース (CR) を作成しました。
手順
- Web コンソールの Administrator パースペクティブから、Workloads をデプロイメントし、作成するワークロードのタイプを選択します。
- ワークロードページで、をクリックしてワークロードを作成します。
ワークロードの YAML ファイルで、コンテナーがリストされている spec フィールドに、
runtimeClassName: kata
を追加します。Pod の例
apiVersion: v1 kind: Pod metadata: name: example labels: app: httpd namespace: openshift-sandboxed-containers-operator spec: runtimeClassName: kata containers: - name: httpd image: 'image-registry.openshift-image-registry.svc:5000/openshift/httpd:latest' ports: - containerPort: 8080
デプロイメントの例
apiVersion: apps/v1 kind: Deployment metadata: name: example namespace: openshift-sandboxed-containers-operator spec: selector: matchLabels: app: httpd replicas: 3 template: metadata: labels: app: httpd spec: runtimeClassName: kata containers: - name: httpd image: >- image-registry.openshift-image-registry.svc:5000/openshift/httpd:latest ports: - containerPort: 8080
- Save をクリックします。
OpenShift Container Platform はワークロードを作成し、スケジューリングを開始します。