【问题标题】:Unable to set flag in /etc/sysconfig/kubelet via clusterdeploy.yaml无法通过 clusterdeploy.yaml 在 /etc/sysconfig/kubelet 中设置标志
【发布时间】:2018-12-26 20:21:59
【问题描述】:

团队,

我正在尝试在 kubelet 上指定 authentication-token-webhook 标志。 所以,我在 /etc/sysconfig/kubelet 中手动添加标志并重新启动服务。然后就可以了。

有没有一种特定的方法可以在 cluster.yaml 文件中添加该标志,它会自动添加到 kubelet,我不必手动添加。

我在cluster.yaml 中的更改如下所示

kubelet:
    featureGates:
      DevicePlugins: "true"

所以我应该将它添加为 库贝莱特: 特征门: 设备插件:“真” 身份验证-令牌-webhook

手动添加后的 Kubelet 输出如下:

lab@10:~$ ps -ax | grep kubel | grep web
 5188 ?        Ssl    0:17 /usr/local/bin/kube-apiserver --address=127.0.0.1 --admission-control=Initializers,NamespaceLifecycle,LimitRanger,ServiceAccount,PersistentVolumeLabel,DefaultStorageClass,DefaultTolerationSeconds,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,NodeRestriction,ResourceQuota --allow-privileged=true --anonymous-auth=false --apiserver-count=1 --authentication-token-webhook-config-file=/srv/kubernetes/assets/webhook-auth.yaml --authorization-mode=RBAC --basic-auth-file=/srv/kubernetes/basic_auth.csv --client-ca-file=/srv/kubernetes/ca.crt --cloud-provider=external --etcd-quorum-read=false --etcd-servers-overrides=/events#http://127.0.0.1:4002 --etcd-servers=http://127.0.0.1:4001 --insecure-port=8080 --kubelet-preferred-address-types=InternalIP,Hostname,ExternalIP --proxy-client-cert-file=/srv/kubernetes/apiserver-aggregator.cert --proxy-client-key-file=/srv/kubernetes/apiserver-aggregator.key --requestheader-allowed-names=aggregator --requestheader-client-ca-file=/srv/kubernetes/apiserver-aggregator-ca.cert --requestheader-extra-headers-prefix=X-Remote-Extra- --requestheader-group-headers=X-Remote-Group --requestheader-username-headers=X-Remote-User --secure-port=443 --service-cluster-ip-range=100.64.0.0/13 --storage-backend=etcd2 --tls-cert-file=/srv/kubernetes/server.cert --tls-private-key-file=/srv/kubernetes/server.key --token-auth-file=/srv/kubernetes/known_tokens.csv --v=2
 7250 ?        Ssl    0:00 /usr/local/bin/kubelet --allow-privileged=true --authentication-token-webhook --cgroup-root=/ --cloud-provider=external --cluster-dns=100.64.0.10 --cluster-domain=cluster.local --enable-debugging-handlers=true --eviction-hard=memory.available<100Mi,nodefs.available<10%,nodefs.inodesFree<5%,imagefs.available<10%,imagefs.inodesFree<5% --feature-gates=DevicePlugins=true,ExperimentalCriticalPodAnnotation=true --kubeconfig=/var/lib/kubelet/kubeconfig --network-plugin=cni --node-labels=kops.k8s.io/instancegroup=master-a,kubernetes.io/role=master,node-role.kubernetes.io/master= --non-masquerade-cidr=100.64.0.0/10 --pod-infra-container-image=k8s.gcr.io/pause-amd64:3.0 --pod-manifest-path=/etc/kubernetes/manifests --register-schedulable=true --register-with-taints=node-role.kubernetes.io/master=:NoSchedule --v=2 --cni-bin-dir=/opt/cni/bin/ --cni-conf-dir=/etc/cni/net.d/

【问题讨论】:

  • 这里没有足够的信息,你是如何部署的?什么在使用 cluster.yaml?
  • cluster.yaml?这看起来像 kubespray。你用什么来创建这个 k8s 集群?
  • 没关系自己解决。
  • 您愿意分享@Afar 的解决方案吗?其他人可能遇到过类似的问题,您的解决方案可能会有所帮助。
  • 那怎么回答呢?我不能回答我自己的权利?

标签: kubernetes kubelet


【解决方案1】:

需要在这个文件中手动添加标志 cat /etc/sysconfig/kubelet

或通过集群部署文件如下: 库贝莱特: 特征门: 设备插件:“真” authenticationTokenWebhook: true

然后还指定要使用的 CA 证书 文件资产: - 名称:webhook-auth-ca.pem 角色:[“大师”] 内容:| -----开始证书-----

最后是授权文件 - 名称:webhook-auth.yaml 角色:[“大师”] 内容:| 集群:

【讨论】:

    猜你喜欢
    • 2019-01-01
    • 2014-01-04
    • 2020-03-12
    • 2019-04-10
    • 2016-08-26
    • 1970-01-01
    • 2022-11-10
    • 1970-01-01
    • 2021-04-11
    相关资源
    最近更新 更多