【发布时间】:2020-12-31 19:54:02
【问题描述】:
重启 kubernetes 主节点时。我遇到了错误
Sep 13 21:32:22 master-1 kube-apiserver[4073]: Error: "kube-apiserver" does not take any arguments, got ["\\"]
Sep 13 21:32:22 master-1 systemd[1]: kube-apiserver.service: Main process exited, code=exited, status=1/FAILURE
Sep 13 21:32:22 master-1 systemd[1]: kube-apiserver.service: Failed with result 'exit-code'.
这是我的 kube-apiserver.service 配置
cat <<EOF | sudo tee /etc/systemd/system/kube-apiserver.service
[Unit]
Description=Kubernetes API Server
Documentation=https://github.com/kubernetes/kubernetes
[Service]
ExecStart=/usr/local/bin/kube-apiserver \\
--advertise-address=${INTERNAL_IP} \\
--allow-privileged=true \\
--apiserver-count=3 \\
--audit-log-maxage=30 \\
--audit-log-maxbackup=3 \\
--audit-log-maxsize=100 \\
--audit-log-path=/var/log/audit.log \\
--authorization-mode=Node,RBAC \\
--bind-address=0.0.0.0 \\
--client-ca-file=/var/lib/kubernetes/ca.crt \\
--enable-admission-plugins=NodeRestriction,ServiceAccount,PodPreset \\
--enable-swagger-ui=true \\
--enable-bootstrap-token-auth=true \\
--etcd-cafile=/var/lib/kubernetes/ca.crt \\
--etcd-certfile=/var/lib/kubernetes/etcd-server.crt \\
--etcd-keyfile=/var/lib/kubernetes/etcd-server.key \\
--etcd-servers=https://192.168.111.246:2379,https://192.168.111.247:2379 \\
--event-ttl=1h \\
--encryption-provider-config=/var/lib/kubernetes/encryption-config.yaml \\
--kubelet-certificate-authority=/var/lib/kubernetes/ca.crt \\
--kubelet-client-certificate=/var/lib/kubernetes/kube-apiserver.crt \\
--kubelet-client-key=/var/lib/kubernetes/kube-apiserver.key \\
--kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname \\
--requestheader-client-ca-file=/var/lib/kubernetes/kube-proxy.crt \\
--requestheader-allowed-names=front-proxy-client \\
--requestheader-extra-headers-prefix=X-Remote-Extra- \\
--requestheader-group-headers=X-Remote-Group \\
--requestheader-username-headers=X-Remote-User \\
--proxy-client-cert-file=/var/lib/kubernetes/kube-proxy.crt \\
--proxy-client-key-file=/var/lib/kubernetes/kube-proxy.key \\
--enable-aggregator-routing=true \\
--kubelet-https=true \\
--runtime-config=api/all=true \\
--service-account-key-file=/var/lib/kubernetes/service-account.crt \\
--service-cluster-ip-range=10.96.0.0/24 \\
--service-node-port-range=30000-32767 \\
--tls-cert-file=/var/lib/kubernetes/kube-apiserver.crt \\
--tls-private-key-file=/var/lib/kubernetes/kube-apiserver.key \\
--runtime-config=settings.k8s.io/v1alpha1=true \\
--v=2
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target
EOF
上面的配置有什么问题? 使用的 VMware 工作站。 我正在使用 Kubernetes 1.19。 Ubuntu 18.04 内存 16GB CNI:编织
有趣的事情发生了。 我删除了一些参数 -> 然后重新声明了 kube-apiserver -> 然后粘贴了上面相同的配置文件 -> 然后再次重新声明了 kube-apiserver -> kube-apiserver 工作得很好。 那么当我启动我的虚拟机时发生了什么问题?
【问题讨论】:
-
也分享
systemctl status kube-apiserver -l命令输出。你检查/var/log/messages文件了吗? -
@Bimal Sep 13 21:32:22 master-1 kube-apiserver[4073]:错误:“kube-apiserver”不接受任何参数,得到 ["\\"] Sep 13 21 :32:22 master-1 systemd[1]:kube-apiserver.service: 主进程退出,code=exited, status=1/FAILURE Sep 13 21:32:22 master-1 systemd[1]:kube-apiserver.服务:失败,结果为“退出代码”。我的 ubuntu 18.04 中没有 /var/log/messages
-
问题可能是这一行 ** --advertise-address=${INTERNAL_IP} \\ ** ,其中 kube-apiserver 服务试图在其他依赖服务/pod设置此变量之前出现(例如:Kubelet)??