2.2. 使用 Web 控制台部署工作负载
您可以使用 Web 控制台部署 OpenShift 沙盒容器工作负载。
2.2.1. 创建 KataConfig 自定义资源
您必须创建一个 KataConfig
自定义资源(CR),以便在 worker 节点上安装 kata
作为 RuntimeClass
。
Kata
运行时类默认安装在所有 worker 节点上。如果只想在特定节点上安装 kata
,您可以向这些节点添加标签,然后在 KataConfig
CR 中定义该标签。
OpenShift 沙盒容器将 kata
作为集群中的辅助 可选运行时安装,而不是作为主要运行时。
创建 KataConfig
CR 会自动重启 worker 节点。重启可能需要 10 到 60 分钟。以下因素可能会增加重启时间:
- 带有更多 worker 节点的大型 OpenShift Container Platform 部署。
- 激活 BIOS 和 Diagnostics 实用程序。
- 在硬盘而不是 SSD 上部署。
- 在物理节点上部署,如裸机,而不是在虚拟节点上部署。
- CPU 和网络较慢。
先决条件
-
您可以使用具有
cluster-admin
角色的用户访问集群。 - 可选:如果要启用节点资格检查,已安装了 Node Feature Discovery Operator。
流程
-
在 OpenShift Container Platform web 控制台中导航至 Operators
Installed Operators。 - 选择 OpenShift 沙盒容器 Operator。
- 在 KataConfig 选项卡中,点 Create KataConfig。
输入以下详情:
-
Name: 可选:默认名称为
example-kataconfig
。 -
标签 :可选:输入任何相关的、识别到
KataConfig
资源的属性。每个标签代表一个键值对。 - checkNodeEligibility: 可选:选择使用 Node Feature Discovery Operator (NFD)来检测节点资格。
KataConfigPoolSelector。可选: 要在所选节点上安装
kata
,请在所选节点上为标签添加匹配表达式:- 展开 kataConfigPoolSelector 区域。
- 在 kataConfigPoolSelector 区域中,展开 matchExpressions。这是标签选择器要求列表。
- 点 Add matchExpressions。
- 在 Key 字段中,输入选择器应用到的标签键。
-
在 Operator 字段中,输入键与标签值的关系。有效的运算符为
In
、NotIn
、Exists
和DoesNotExist
。 - 展开 Values 区域,然后点 Add value。
-
在 Value 字段中,为 key 标签值输入
true
或false
。
-
loglevel :定义使用
kata
运行时类为节点检索的日志数据级别。
-
Name: 可选:默认名称为
点 Create。
KataConfig
CR 会被创建并在 worker 节点上安装kata
运行时类。在验证安装前,等待
kata
安装完成,以及 worker 节点重新引导。
验证
-
在 KataConfig 选项卡中,点
KataConfig
CR 查看其详情。 点 YAML 选项卡查看
status
小节。status
小节包含conditions
和kataNodes
键。status.kataNodes
的值是一个节点数组,每个节点都列出处于kata
安装的特定状态的节点。每次有更新时都会出现一条消息。点 Reload 以刷新 YAML。
当
status.kataNodes
数组中的所有 worker 都会显示installed
和conditions.InProgress: False
时,没有指定的原因,则会在集群中安装kata
。
详情请参阅 KataConfig 状态信息。
2.2.2. 配置工作负载对象
您可以通过将 kata
配置为以下 pod 模板对象的运行时类来部署 OpenShift 沙盒容器工作负载:
-
Pod
对象 -
ReplicaSet
对象 -
ReplicationController
对象 -
StatefulSet
对象 -
Deployment
对象 -
deploymentConfig
对象
不要在 openshift-sandboxed-containers-operator
命名空间中部署工作负载。为这些资源创建一个专用命名空间。
先决条件
- 您已为供应商创建了 secret 对象。
- 您已为供应商创建了配置映射。
-
您已创建了
KataConfig
自定义资源 (CR)。
流程
-
在 OpenShift Container Platform Web 控制台中,导航到 Workloads
workload type,如 Pods。 - 在工作负载类型页面中,点对象查看其详情。
- 点 YAML 标签。
将
spec.runtimeClassName: kata
添加到每个 pod 模板工作负载对象的清单中,如下例所示:apiVersion: v1 kind: <object> # ... spec: runtimeClassName: kata # ...
OpenShift Container Platform 创建工作负载对象并开始调度它。
验证
-
检查 pod 模板对象的
spec.runtimeClassName
字段。如果值为kata
,则工作负载在 OpenShift 沙盒容器中运行,使用对等 pod。