如何在 Rancher 2.0 中为我的集群启用功能门?我需要启用--feature-gates MountPropagation=true
. 这将使我能够使用 StorageOS、CephFS 等存储解决方案
这里有 2 个用例:
- 如果 Rancher 已经设置并正在运行?
- 如果我从头开始设置集群?
如何在 Rancher 2.0 中为我的集群启用功能门?我需要启用--feature-gates MountPropagation=true
. 这将使我能够使用 StorageOS、CephFS 等存储解决方案
这里有 2 个用例:
您好,希望这对某人有所帮助,经过大量谷歌搜索和 Rancher 很棒的人的帮助后,我得到了解决方案。以下是为 Kubernetes 引擎 RKE 设置功能门标志的方法。
第一步:打开Rancher2.0 UI
步骤 2:在 API 中查看集群
第三步:点击编辑修改rancherKubernetesEngineConfig
输入框
然后以以下格式为 kubelet 添加额外的参数
"services": {
"etcd": { "type": "/v3/schemas/etcdService" },
"kubeApi": {
"podSecurityPolicy": false,
"type": "/v3/schemas/kubeAPIService",
"extraArgs": { "feature-gates": "PersistentLocalVolumes=true, VolumeScheduling=true,MountPropagation=true" }
},
"kubeController": { "type": "/v3/schemas/kubeControllerService" },
"kubelet": {
"failSwapOn": false,
"type": "/v3/schemas/kubeletService",
"extraArgs": { "feature-gates": "PersistentLocalVolumes=true, VolumeScheduling=true,MountPropagation=true" }
}
第 4 步:单击 show request .. 你会得到一个 curl 命令和 json 请求。
第 5 步:验证将显示的请求正文数据。
第 6 步:确保将不适用的密钥设置为 null。例如amazonElasticContainerServiceConfig
, azureKubernetesServiceConfig
,googleKubernetesEngineConfig
对我来说都需要为空。
第七步:点击发送请求
您应该会收到状态码为 201 的响应。您的集群将开始更新。您可以通过再次查看 API 中的集群来验证您的集群 RKE 是否已更新。
替代方案(测试未决,被https://github.com/rancher/rancher/issues/26261阻止):
第一步:打开Rancher2.0 UI
第 2 步:单击集群的编辑(在带有三个垂直点的菜单中)
第 3 步:单击“集群选项”旁边的“编辑为 YAML”按钮
第 4 步:找到“services.kubelet”(或“services.WhatYouNeed”)
第 5 步:添加或编辑extra_args
类似于此:
kubelet:
extra_args:
feature-gates: rancherKubernetesEngineConfig=true
(根据https://rancher.com/docs/rke/latest/en/config-options/services/services-extras/#extra-args)
第6步:点击保存(在底部)
您还可以在创建新集群时将“集群选项”编辑为 yaml。可能这也可以作为“rke 模板”包含在内。
我正在努力启用功能门 TTLAfterFinished。(与 MountPropagation=true 相同)
牧场主 v2.3.3
第一步:打开Rancher2.3.3 UI
第二步:点击编辑集群
第 3 步:单击“集群选项”旁边的“编辑为 YAML”按钮
第 4 步:您需要将特征门添加到所有集群服务(见下文)
第 5 步:添加或编辑与此类似的 extra_args:
...
kube-api:
extra_args:
feature-gates: TTLAfterFinished=true
...
kube-controller:
extra_args:
feature-gates: TTLAfterFinished=true
...
kubelet:
extra_args:
feature-gates: TTLAfterFinished=true
...
将 TTL AfterFinished 替换为您的功能门。在这里列出