首页 > 其他分享 >关于Kubernetes-v1.23.6-网络组件-calico的安装部署...

关于Kubernetes-v1.23.6-网络组件-calico的安装部署...

时间:2023-05-14 20:48:50浏览次数:45  
标签:... kube Kubernetes system Running v1.23 master k8s calico

当 2 个 worker nodes 节点加入到 Kubernetes / k8s 集群后,我们去master节点、执行kubectl get nodes 命令就可以看到worker节点了

但是我们会看到无论是master节点、还是worker 节点, STATUS 都会是  NotReady, 如下

[root@k8s-master qq-5201351]# kubectl get nodes
NAME         STATUS     ROLES                  AGE     VERSION
k8s-master   NotReady   control-plane,master   9m35s   v1.23.6
k8s-node1    NotReady   <none>                 8m30s   v1.23.6
k8s-node2    NotReady   <none>                 9s      v1.23.6

我们继续查看 PO 的状态,也会发现有两个 coredns-xxxxxxxxx-xxxxx 的状态,一直是 Pending,正是因为POD的状态异常,所以上面的状态才是NotReady

[root@k8s-master qq-5201351]# kubectl get po -A
NAMESPACE     NAME                                 READY   STATUS    RESTARTS   AGE
kube-system   coredns-6d8c4cb4d-rm26d              0/1     Pending   0          9m26s
kube-system   coredns-6d8c4cb4d-xmzgb              0/1     Pending   0          9m26s
kube-system   etcd-k8s-master                      1/1     Running   0          9m40s
kube-system   kube-apiserver-k8s-master            1/1     Running   0          9m40s
kube-system   kube-controller-manager-k8s-master   1/1     Running   0          9m40s
kube-system   kube-proxy-2tzxv                     1/1     Running   0          18s
kube-system   kube-proxy-gwvwz                     1/1     Running   0          9m26s
kube-system   kube-proxy-mtwrv                     1/1     Running   0          8m39s
kube-system   kube-scheduler-k8s-master            1/1     Running   0          9m40s
[root@k8s-master qq-5201351]#

要解决上面的状态异常问题、就需要安装部署网络服务组件,可以有多种选择,这里笔者选择,calico ,版本 v3.25

1、下载calico ,版本 v3.25 的yaml文件

curl https://docs.projectcalico.org/archive/v3.25/manifests/calico.yaml -O

2、修改yaml配置,可以搜索CALICO_IPV4POOL_CIDR,将如下两行的注释打开,并且修改其值为我们初始化时定义的 --pod-network-cidr的值

            # - name: CALICO_IPV4POOL_CIDR
            #   value: "192.168.0.0/16"

前面笔者定义的值为:10.224.0.0/16, 注意取消注释后,还需要保证- name 项与前后项对齐

3、从calico.yaml文件中,Apply a configuration to a resource

kubectl apply -f calico.yaml

过程可能较为缓慢、完成后,再看 master , worker 节点,以及POD资源状态,就都是正常的了,如下:

[root@k8s-master qq-5201351]# kubectl get nodes
NAME         STATUS   ROLES                  AGE   VERSION
k8s-master   Ready    control-plane,master   29m   v1.23.6
k8s-node1    Ready    <none>                 28m   v1.23.6
k8s-node2    Ready    <none>                 20m   v1.23.6
[root@k8s-master qq-5201351]# kubectl get pod -n kube-system
NAME                                       READY   STATUS    RESTARTS   AGE
calico-kube-controllers-64cc74d646-w88qt   1/1     Running   0          4m56s
calico-node-6x9qg                          1/1     Running   0          4m56s
calico-node-8wgkl                          1/1     Running   0          4m56s
calico-node-k56l5                          1/1     Running   0          4m56s
coredns-6d8c4cb4d-rm26d                    1/1     Running   0          29m
coredns-6d8c4cb4d-xmzgb                    1/1     Running   0          29m
etcd-k8s-master                            1/1     Running   0          29m
kube-apiserver-k8s-master                  1/1     Running   0          29m
kube-controller-manager-k8s-master         1/1     Running   0          29m
kube-proxy-2tzxv                           1/1     Running   0          20m
kube-proxy-gwvwz                           1/1     Running   0          29m
kube-proxy-mtwrv                           1/1     Running   0          28m
kube-scheduler-k8s-master                  1/1     Running   0          29m
[root@k8s-master qq-5201351]#

至此calico网络组件部署完成~

 

 

 

尊重别人的劳动成果 转载请务必注明出处:https://www.cnblogs.com/5201351/p/17400122.html

 

标签:...,kube,Kubernetes,system,Running,v1.23,master,k8s,calico
From: https://www.cnblogs.com/5201351/p/17400122.html

相关文章

  • crontab设置定时任务脚本文件每秒运行一次,每个月最后一天的21点到22点 每20分钟(1200秒
    每秒运行一次#!/bin/bashstep=2for((i=0;i<60;i=(i+step)));dophp/home/www/tp6/thinkzhangsleep$stepdoneexit0每个月最后一天的21点到22点20分钟(1200)执行一次#!/bin/bashtoday=`date+%d`hour=`date+%H`last_day=`cal|xargs|awk'{print$NF}'`if["$to......
  • MySQL text类型出现报错 Data truncation: Data too long for column...
    MySQL5.7数据库字段类型为:text 代码中限制了长度为50000 结果出现异常 结论:MySQL5以上版本中varchar类型的长度限制是以字符数为单位的,比如:“你好”是2个字符text类型则是以字节数为单位的,这里我们的数据库字段编码为utf8mb4,每个中文字符占3个字节,所以“你好”是......
  • kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具
    kubeadm是官方社区推出的一个用于快速部署kubernetes集群的工具。这个工具能通过两条指令完成一个kubernetes集群的部署:# 创建一个 Master 节点$kubeadminit​# 将一个 Node 节点加入到当前集群中$kubeadmjoin<Master节点的IP和端口 >1. 安装要求在开始之前,部署Kuber......
  • VMware Tanzu Kubernetes Grid Integrated Edition (TKGI) 1.16 - 运营商 Kubernetes
    VMwareTanzuKubernetesGridIntegratedEdition(TKGI)1.16-运营商Kubernetes解决方案请访问原文链接:https://sysin.org/blog/vmware-tkgi/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgVMwareTanzuKubernetesGridIntegratedEdition(TKGI)使运营商能......
  • VMware Tanzu Kubernetes Grid (TKG) 2.1 - 企业级 Kubernetes 解决方案
    VMwareTanzuKubernetesGrid(TKG)2.1-企业级Kubernetes解决方案VMware构建、签名和支持的开源Kubernetes容器编排平台的完整分发版请访问原文链接:https://sysin.org/blog/vmware-tkg-2/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgTanzuKubernetes集......
  • Kubernetes故障排除要领
    要在最短的停机时间内运行应用程序,需要完善故障排除技能,将应用程序扩展到运行它们的Kubernetes集群。定期对整个Kubernetes集群进行调试和故障排除,以提供一致的支持和服务,这一点至关重要。故障排除包括识别、诊断和解决Kubernetes集群、节点、pod、容器和其他资源中的问题。由于Kub......
  • Moodle: 登记学生,检测学生是否存在在课程 Check if user is enrolled or enroll a use
    1.检测学生是否存在课程中CheckifuserisenrolledinspecificMoodlecourserequire_once('../config.php');global$USER;//获取当前课程信息$course_id=$_GET['id'];$course=$DB->get_record('course',array('id'=>$course_......
  • 云原生第三周--kubernetes组件详解
    etcd组件etcd简介:etcd是CoreOS团队于2013年6月发起的开源项目,它的目标是构建一个高可用的分布式键值(key-value)数据库。etcd内部采用raft协议作为一致性算法,etcd基于Go语言实现。etcd具有下面这些属性:完全复制:集群中的每个节点都可以使用完整的存档高可用性:Etcd可用于避免......
  • Python try...catch All In One
    Pythontry...catchAllInOnePython异常处理try...exceptwhileTrue:try:x=int(input("Pleaseenteranumber:"))breakexceptValueError:print("Oops!Thatwasnovalidnumber.Tryagain...")excep......
  • Java中try...catch...finally、throw和throws的区别和联系
    在Java中经常使用的对异常的处理有:try...catch...finally、throw和throws之前使用的时候经常混淆今天花时间梳理了一下1.try...catch...finallytry中存放可能出现异常的代码,catch处理try中抛出的异常inti=0;try{System.out.println("开始......