轻量级前端框架在提升开发效率与用户体验中的重要作用
789
2022-09-02
四、kubeadm单master
1、初始化k8s软件包
k8s01、k8s02、k8s03操作:for i in *.gzdodocker load -i $idonedocker load -i k8simage-1-20-6.tar.gzyum install -y kubelet-1.20.6 kubeadm-1.20.6 kubectl-1.20.6systemctl enable kubelet && systemctl start kubeletsystemctl status kubelet#上面可以看到kubelet状态不是running状态,这个是正常的,不用管,等k8s组件起来这个kubelet就正常了。#注:每个软件包的作用#Kubeadm: kubeadm是一个工具,用来初始化k8s集群的#kubelet: 安装在集群所有节点上,用于启动Pod的#kubectl: 通过kubectl可以部署和管理应用,查看各种资源,创建、删除和更新各种组件查看创建集群需要的镜像版本kubeadm config images list [--kubernetes-version
2、kubeadm初始化k8s集群
2、kubeadm初始化k8s集群kubeadm init --kubernetes-version=1.20.6 --apiserver-advertise-address=192.168.10.131 --image-repository registry.aliyuncs.com/google_containers --pod-network-cidr=10.244.0.0/16 --ignore-preflight-errors=SystemVerification#注:--image-repository registry.aliyuncs.com/google_containers:手动指定仓库地址为registry.aliyuncs.com/google_containers。kubeadm默认从k8s.grc.io拉取镜像,但是k8s.gcr.io访问不到,所以需要指定从registry.aliyuncs.com/google_containers仓库拉取镜像。显示如下,说明安装完成:
#配置kubectl的配置文件config,相当于对kubectl进行授权,这样kubectl命令可以使用这个证书对k8s集群进行管理mkdir -p $HOME/.kubesudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/configsudo chown $(id -u):$(id -g) $HOME/.kube/config[root@k8s01 ~]# kubectl get nodesNAME STATUS ROLES AGE VERSIONk8s01 NotReady control-plane,master 3m8s v1.20.6#此时集群状态还是NotReady状态,因为没有安装网络插件
3、扩容k8s集群-添加第一个工作节点
在k8s01上查看加入节点的命令:[root@k8s01 ~]# kubeadm token create --print-join-commandkubeadm join 192.168.10.131:6443 --token m0h0jw.26okz033dler19aw --discovery-token-ca-cert-hash sha256:5af17f226bf9c487cfb6907b8c175234f0c55ff9c00953830e9042090253a6aa把k8s02加入k8s集群:直接执行命令就好
4、扩容k8s集群-添加第二个工作节点
在k8s01上查看加入节点的命令:[root@k8s01 ~]# kubeadm token create --print-join-commandkubeadm join 192.168.10.131:6443 --token hr47pk.gjozs0ecnx8vmxac --discovery-token-ca-cert-hash sha256:5af17f226bf9c487cfb6907b8c175234f0c55ff9c00953830e9042090253a6aa把k8s03加入k8s集群:直接执行命令就好
5、完善NODE ROLE
[root@k8s01 ~]# kubectl get nodesNAME STATUS ROLES AGE VERSIONk8s01 NotReady control-plane,master 9m54s v1.20.6k8s02 NotReady
6、安装网络组件-Calico
上传calico.yaml到k8s01上,使用yaml文件安装calico 网络插件 。kubectl apply -f calico.yamlkubectl get pod -n kube-system#注:在线-配置文件地址是: ~]# kubectl get pod -n kube-system -o wideNAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATEScalico-kube-controllers-6949477b58-qhh96 1/1 Running 0 2m52s 10.244.236.130 k8s02
7、部署tomcat服务
kubectl describe nodes k8s01 -n kube-systemTaints: node-role.kubernetes.io/master:NoSchedule ##k8s01默认打了污点#把tomcat.tar.gz上传到k8s02、k8s03,手动解压docker load -i tomcat.tar.gzkubectl apply -f tomcat.yaml[root@k8s01 ~]# kubectl get podsNAME READY STATUS RESTARTS AGEdemo-pod 1/1 Running 0 8skubectl apply -f tomcat-service.yaml[root@k8s01 ~]# kubectl get svcNAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGEkubernetes ClusterIP 10.96.0.1
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~