1

团队,

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

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

我的变化cluster.yaml看起来像这样

kubelet:
    featureGates:
      DevicePlugins: "true"

所以我应该将它添加为kubelet:featureGates:DevicePlugins:“true” authentication-token-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/
4

1 回答 1

0

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

或通过集群部署文件如下:kubelet:featureGates:DevicePlugins:“true” authenticationTokenWebhook:true

然后还指定 CA 证书以使用 fileAssets:- 名称:webhook-auth-ca.pem 角色:["Master"] 内容:| -----开始证书-----

最后是身份验证文件 - 名称:webhook-auth.yaml 角色:[“Master”] 内容:| 集群:

于 2018-08-07T20:04:48.327 回答