8.6. 使用 FeatureGate 启用 OpenShift Container Platform 功能
作为管理员,您可以使用功能门启用不是默认功能集合中的功能。
8.6.1. 了解功能门
您可以使用 FeatureGate
自定义资源(CR)在集群中启用特定的功能集。功能集是 OpenShift Container Platform 功能的集合,默认情况下不启用。
您可以使用 FeatureGate
CR 激活以下功能集:
TechPreviewNoUpgrade
.这个功能集是当前技术预览功能的子集。此功能集允许您在测试集群中启用这些技术预览功能,您可以在测试集群中完全测试它们,同时保留生产集群中禁用的功能。启用此功能集无法撤消并阻止次版本更新。不建议在生产环境集群中使用此功能集。警告在集群中启用
TechPreviewNoUpgrade
功能集无法撤消,并会阻止次版本更新。您不应该在生产环境集群中启用此功能。此功能集启用了以下技术预览功能:
- Microsoft Azure File CSI Driver Operator。使用 Microsoft Azure File Storage 的 Container Storage Interface(CSI)驱动程序启用持久性卷(PV)置备。
CSI 自动迁移。为支持的树内卷插件启用自动迁移,并将其对应的 Container Storage Interface(CSI)驱动程序。支持:
- Amazon Web Services(AWS)Elastic Block Storage(EBS)
- Google Compute Engine 持久性磁盘
- Azure File
- VMware vSphere
Cluster Cloud Controller Manager Operator。启用 Cluster Cloud Controller Manager Operator 而不是树内云控制器。作为技术预览提供:
- Alibaba Cloud
- Amazon Web Services (AWS)
- Google Cloud Platform (GCP)
- IBM Cloud
- Microsoft Azure
- Red Hat OpenStack Platform (RHOSP)
- VMware vSphere
- 共享资源 CSI 驱动程序
- OpenShift Container Platform 构建系统的 CSI 卷支持
- 节点上的交换内存
集群 API。在 OpenShift Container Platform 中启用集成的上游 Cluster API,带有
ClusterAPIEnabled
功能门。作为技术预览提供:- Amazon Web Services (AWS)
- Google Cloud Platform (GCP)
- 管理用于核心平台监控的警报规则
其他资源
有关
TechPreviewNoUpgrade
功能门激活的功能的更多信息,请参阅以下主题:
8.6.2. 使用 Web 控制台启用功能集
您可以通过编辑 FeatureGate
自定义资源(CR)来使用 OpenShift Container Platform Web 控制台为集群中的所有节点启用功能集。
流程
启用功能集:
-
在 OpenShift Container Platform web 控制台中,切换到 Administration
Custom Resource Definitions 页面。 - 在 Custom Resource Definitions 页面中,点击 FeatureGate。
- 在 Custom Resource Definition Details 页面中,点 Instances 选项卡。
- 点 集群 功能门,然后点 YAML 选项卡。
编辑集群实例以添加特定的功能集:
警告在集群中启用
TechPreviewNoUpgrade
功能集无法撤消,并会阻止次版本更新。您不应该在生产环境集群中启用此功能。功能门自定义资源示例
apiVersion: config.openshift.io/v1 kind: FeatureGate metadata: name: cluster 1 # ... spec: featureSet: TechPreviewNoUpgrade 2
保存更改后,会创建新的机器配置,然后更新机器配置池,并在应用更改时在每个节点上调度。
验证
您可以在节点返回就绪状态后查看节点上的 kubelet.conf
文件来验证是否启用了功能门。
-
从 Web 控制台中的 Administrator 视角,进入到 Compute
Nodes。 - 选择一个节点。
- 在 Node 详情页面中,点 Terminal。
在终端窗口中,将根目录改为
/host
:sh-4.2# chroot /host
查看
kubelet.conf
文件:sh-4.2# cat /etc/kubernetes/kubelet.conf
输出示例
# ... featureGates: InsightsOperatorPullingSCA: true, LegacyNodeRoleBehavior: false # ...
在集群中启用列为
true
的功能。注意列出的功能因 OpenShift Container Platform 版本的不同而有所不同。
8.6.3. 使用 CLI 启用功能集
您可以通过编辑 FeatureGate
自定义资源(CR)来使用 OpenShift CLI(oc
)为集群中的所有节点启用功能集。
先决条件
-
已安装 OpenShift CLI(
oc
)。
流程
启用功能集:
编辑名为
cluster
的FeatureGate
CR:$ oc edit featuregate cluster
警告在集群中启用
TechPreviewNoUpgrade
功能集无法撤消,并会阻止次版本更新。您不应该在生产环境集群中启用此功能。FeatureGate 自定义资源示例
apiVersion: config.openshift.io/v1 kind: FeatureGate metadata: name: cluster 1 # ... spec: featureSet: TechPreviewNoUpgrade 2
保存更改后,会创建新的机器配置,然后更新机器配置池,并在应用更改时在每个节点上调度。
验证
您可以在节点返回就绪状态后查看节点上的 kubelet.conf
文件来验证是否启用了功能门。
-
从 Web 控制台中的 Administrator 视角,进入到 Compute
Nodes。 - 选择一个节点。
- 在 Node 详情页面中,点 Terminal。
在终端窗口中,将根目录改为
/host
:sh-4.2# chroot /host
查看
kubelet.conf
文件:sh-4.2# cat /etc/kubernetes/kubelet.conf
输出示例
# ... featureGates: InsightsOperatorPullingSCA: true, LegacyNodeRoleBehavior: false # ...
在集群中启用列为
true
的功能。注意列出的功能因 OpenShift Container Platform 版本的不同而有所不同。