如何重新启动kube-apiserver? [英] How can kube-apiserver be restarted?
问题描述
我今天重新启动了系统.之后,我的主系统和Web浏览器未连接以查找kubernetes GUI.
I restarted my system today. After that my main system and the web browser are not connected to look for a kubernetes GUI.
当我运行命令systemctl status kube-apiserver.service
时,
它给出的输出如下所示:
When I ran the command systemctl status kube-apiserver.service
,
it gives output as shown below:
kube-apiserver.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)
api-server
如何重新启动?
推荐答案
Did you download and installed the Kubernetes Controller Binaries directly?
1)如果是,请检查kube-apiserver.service
系统单位文件是否存在:
1 ) If so, check if the kube-apiserver.service
systemd unit file exists:
cat /etc/systemd/system/kube-apiserver.service
2)如果不是,您可能安装的K8S带有 kubeadm .
通过此设置, kubeapi服务器在主节点上作为Pod运行:
2 ) If not, you probably installed K8S with kubeadm.
With this setup the kubeapi-server is running as a pod on the master node:
kubectl get pods -n kube-system
NAME READY STATUS
coredns-f9fd979d6-jsn6w 1/1 Running ..
coredns-f9fd979d6-tv5j6 1/1 Running ..
etcd-master-k8s 1/1 Running ..
kube-apiserver-master-k8s 1/1 Running .. #<--- Here
kube-controller-manager-master-k8s 1/1 Running ..
kube-proxy-5kzbc 1/1 Running ..
kube-scheduler-master-k8s 1/1 Running ..
而不是作为系统服务.
因此,由于无法在K8S中重新启动Pod,因此必须将其删除:
So, because you can't restart pods in K8S you'll have to delete it:
kubectl delete pod/kube-apiserver-master-k8s -n kube-system
然后将立即创建一个新的广告连播.
And a new pod will be created immediately.
(*)运行 kubeadm初始化您应该会看到控制平面清单的创建静态Pod :
(*) When you run kubeadm init you should see the creation of the manifests for the control plane static Pods:
.
.
[control-plane] Using manifest folder "/etc/kubernetes/manifests"
[control-plane] Creating static Pod manifest for "kube-apiserver"
[control-plane] Creating static Pod manifest for "kube-controller-manager"
[control-plane] Creating static Pod manifest for "kube-scheduler"
[etcd] Creating static Pod manifest for local etcd in "/etc/kubernetes/manifests"
.
.
相应的Yamls:
ubuntu@master-k8s:/etc/kubernetes/manifests$ ls -la
total 24
drwxr-xr-x 2 root root 4096 Oct 14 00:13 .
drwxr-xr-x 4 root root 4096 Sep 29 02:30 ..
-rw------- 1 root root 2099 Sep 29 02:30 etcd.yaml
-rw------- 1 root root 3863 Oct 14 00:13 kube-apiserver.yaml <----- Here
-rw------- 1 root root 3496 Sep 29 02:30 kube-controller-manager.yaml
-rw------- 1 root root 1384 Sep 29 02:30 kube-scheduler.yaml
和 kube-apiserver 规范:
apiVersion: v1
kind: Pod
metadata:
annotations:
kubeadm.kubernetes.io/kube-apiserver.advertise-address.endpoint: 10.100.102.5:6443
creationTimestamp: null
labels:
component: kube-apiserver
tier: control-plane
name: kube-apiserver
namespace: kube-system
spec:
containers:
- command:
- kube-apiserver
- --advertise-address=10.100.102.5
- --allow-privileged=true
- --authorization-mode=Node,RBAC
- --client-ca-file=/etc/kubernetes/pki/ca.crt
- --enable-admission-plugins=NodeRestriction
- --enable-bootstrap-token-auth=true
.
.
.
这篇关于如何重新启动kube-apiserver?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!