java系统找不到指定文件怎么解决
281
2022-09-12
k8s系列-15-master节点安装
这篇我们部署k8s的master节点,也就是所谓的控制平面,为了保证高可用,我们这里采用了两个master节点,还记得master节点上部署什么内容吗?回忆一下子,分别是api-server,scheduler和controller manager。
配置Apiserver
PS:该操作在两个master节点上都需要执行。1、移动证书
[root@node1 ~]# mkdir -p /etc/kubernetes/ssl[root@node1 ~]# mv ca.pem ca-key.pem kubernetes-key.pem kubernetes.pem \ service-account-key.pem service-account.pem \ proxy-client.pem proxy-client-key.pem \ /etc/kubernetes/ssl[root@node1 ~]# ls /etc/kubernetes/ssl/ca-key.pem ca.pem kubernetes-key.pem kubernetes.pem proxy-client-key.pem proxy-client.pem service-account-key.pem service-account.pem[root@node1 ~]#
2、配置服务
# 该master节点的IP地址,注意,两个节点需要各自配置自己的IP地址[root@node1 ~]# IP=192.168.112.130# 申明apiserver的数量[root@node1 ~]# APISERVER_COUNT=2# 申明etcd节点信息,以空格分开[root@node1 ~]# ETCD_ENDPOINTS=(192.168.112.130 192.168.112.131 192.168.112.132)# 创建apiserver管理服务[root@node1 ~]# cat <
配置controller-manager
PS:该操作在两个master节点上都需要执行。1、移动证书
[root@node1 ~]# mv kube-controller-manager.kubeconfig /etc/kubernetes/[root@node1 ~]# ls /etc/kubernetes/kube-controller-manager.kubeconfig ssl[root@node1 ~]#
2、配置服务
[root@node1 ~]# cat <
配置scheduler服务
PS:该操作在两个master节点上都需要执行。1、移动证书
[root@node1 ~]# mv kube-scheduler.kubeconfig /etc/kubernetes[root@node1 ~]# ls /etc/kubernetes/kube-controller-manager.kubeconfig kube-scheduler.kubeconfig ssl[root@node1 ~]#
2、配置服务
[root@node1 ~]# cat <
启动服务
PS:该操作在两个master节点上都需要执行。
[root@node1 ~]# systemctl daemon-reload[root@node1 ~]# systemctl enable kube-apiserverCreated symlink from /etc/systemd/system/multi-user.target.wants/kube-apiserver.service to /etc/systemd/system/kube-apiserver.service.[root@node1 ~]# systemctl enable kube-controller-managerCreated symlink from /etc/systemd/system/multi-user.target.wants/kube-controller-manager.service to /etc/systemd/system/kube-controller-manager.service.[root@node1 ~]# systemctl enable kube-schedulerCreated symlink from /etc/systemd/system/multi-user.target.wants/kube-scheduler.service to /etc/systemd/system/kube-scheduler.service.[root@node1 ~]# systemctl restart kube-apiserver[root@node1 ~]# systemctl restart kube-controller-manager[root@node1 ~]# systemctl restart kube-scheduler
验证服务
端口验证,看下端口是否都启动了,确保不会有服务没有启动。
[root@node1 ~]# netstat -ntlp | grep kubetcp6 0 0 :::6443 :::* LISTEN 4834/kube-apiserver tcp6 0 0 :::10252 :::* LISTEN 4855/kube-controlle tcp6 0 0 :::10257 :::* LISTEN 4855/kube-controlle tcp6 0 0 :::10259 :::* LISTEN 4872/kube-scheduler [root@node1 ~]#
日志验证,查看是否有错误日志,确保相关服务是正常启动的。
[root@node1 ~]# journalctl -xe
配置kubectl
PS:该操作在两个master节点上都需要执行。
# 创建配置目录 [root@node1 ~]# mkdir ~/.kube/# 移动证书[root@node1 ~]# mv ~/admin.kubeconfig ~/.kube/config# 测试[root@node1 ~]# kubectl get nodesNo resources found[root@node1 ~]#
空的是正常的,因为我们还没有启动任何pod服务。由于在执行kubectl的一些命令时,apiserver会转发到kubelet,这里需要定义一些规则,授权apiserver可以访问kubelet api。PS:这个命令只需要在一个master节点上执行即可。
[root@node1 ~]# kubectl create clusterrolebinding kube-apiserver:kubelet-apis --clusterrole=system:kubelet-api-admin --user kubernetesclusterrolebinding.rbac.authorization.k8s.io/kube-apiserver:kubelet-apis created[root@node1 ~]#
至此,本文结束,我们已经将master上的所需服务全部安装完成了,下一篇我们将开始安装worker节点上的服务。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~