K8S二进制部署高可用集群-1.22[七]

本节前言:

本节关键字:CALICO、CoreDNS;

关于"CALICO"插件,本示例使用了"CALICO"作为K8S集群的"CNI",使用的网络模式是网络术语中的"BGP"网络模式;

关于"CoreDNS"插件,主要作用为:是一个在K8S集群中提供DNS服务的POD,为同一集群中的其他POD提供DNS解释服务;

本节开始……

一、CALICO插件

"CALICO"插件的部署非常简单,就是下载官方的配置文件,然后修改相应的配置项,然后应用至K8S集群即可;以下操作可以在任何计算机上执行[仅需要一执行一次],博主的习惯是在[192.168.100.41]进行操作的

修改成功后,在K8S集群中应用"calico.yaml":

使用"kubectl"检查CALICO相关状态;

关于"CALICO"插件部署至此结束~~

二、CoreDNS插件

"CoreDNS"插件的安装方法与"CALICO"插件的安装方法相同,同样的,你可以在任何的计算机下执行操作,只要你的"kubectl"命令能正常使用;博主是在[192.168.100.41]下操作的;

修改成功后,在K8S集群中应用"coredns.yaml":

使用"kubectl"检查"CoreDNS"相关状态;

关于"CoreDNS"插件部署至此结束~~

三、集群测试

至此,整个K8S集群的搭建算是完成了[工作节点复用MASTER节点],之后,我们写一份YAML文件进行K8S集群的测试;以下操作能在任何地方执行["kubectl"命令可用],博主是在[192.168.100.41]上操作的;另外,博主写累了,下面的代码COPY了文章首节提及的参考博文;创建"k8stest.yaml":

在K8S集群中应用"k8stest.yaml":

使用浏览器访问"http://192.168.100.4X:30001"[成功];

本部分内容至此结束~~

结、

不废话了,累!下一节将是关于"节点添加"与"节点删除"的,可能还会说一些废话。本篇完,读者可点击以下链接进入下一章或返回上一章;

下一章:K8S二进制部署高可用集群-1.22 [结] 工作节点添加与删除

上一章:K8S二进制部署高可用集群-1.22 [六] KUBELET组件与KUBE-PROXY组件

网友评论10

  1. 4楼
    leo:

    networkReady="NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized 兄弟,我执行kubectl get pod -A ,no resource 日志里报这个错,百度一圈说是网络插件没成功,不知道啥问题

    2022-03-24 下午3:54 [回复]
    • leo:

      [root@kube-node1 plugins]# kubectl apply -f calico.yaml
      configmap/calico-config unchanged
      customresourcedefinition.apiextensions.k8s.io/bgpconfigurations.crd.projectcalico.org configured
      customresourcedefinition.apiextensions.k8s.io/bgppeers.crd.projectcalico.org configured
      customresourcedefinition.apiextensions.k8s.io/blockaffinities.crd.projectcalico.org configured
      customresourcedefinition.apiextensions.k8s.io/clusterinformations.crd.projectcalico.org configured
      customresourcedefinition.apiextensions.k8s.io/felixconfigurations.crd.projectcalico.org configured
      customresourcedefinition.apiextensions.k8s.io/globalnetworkpolicies.crd.projectcalico.org configured
      customresourcedefinition.apiextensions.k8s.io/globalnetworksets.crd.projectcalico.org configured
      customresourcedefinition.apiextensions.k8s.io/hostendpoints.crd.projectcalico.org configured
      customresourcedefinition.apiextensions.k8s.io/ipamblocks.crd.projectcalico.org configured
      customresourcedefinition.apiextensions.k8s.io/ipamconfigs.crd.projectcalico.org configured
      customresourcedefinition.apiextensions.k8s.io/ipamhandles.crd.projectcalico.org configured
      customresourcedefinition.apiextensions.k8s.io/ippools.crd.projectcalico.org configured
      customresourcedefinition.apiextensions.k8s.io/kubecontrollersconfigurations.crd.projectcalico.org configured
      customresourcedefinition.apiextensions.k8s.io/networkpolicies.crd.projectcalico.org configured
      customresourcedefinition.apiextensions.k8s.io/networksets.crd.projectcalico.org configured
      clusterrole.rbac.authorization.k8s.io/calico-kube-controllers unchanged
      clusterrolebinding.rbac.authorization.k8s.io/calico-kube-controllers unchanged
      clusterrole.rbac.authorization.k8s.io/calico-node unchanged
      clusterrolebinding.rbac.authorization.k8s.io/calico-node unchanged
      daemonset.apps/calico-node configured
      serviceaccount/calico-node unchanged
      deployment.apps/calico-kube-controllers unchanged
      serviceaccount/calico-kube-controllers unchanged
      Warning: policy/v1beta1 PodDisruptionBudget is deprecated in v1.21+, unavailable in v1.25+; use policy/v1 PodDisruptionBudget
      poddisruptionbudget.policy/calico-kube-controllers configured 这个是应用calico.yaml

      2022-03-24 下午4:15 [回复]
    • Edward:

      这个信息看不出来真正原因,但已经提示了你DOCKER的网络运行时没有正确运行;1、查看calico.yaml中的需要的镜像是否已经下载;2、有关DOCKER的网络划分是否产生的地址范围上的冲突;3、是否正确配置了IPVS;4、利用'kubectl logs'查询相关POD的启动日志信息;

      2022-03-25 上午11:09 [回复]
  2. 地板
    2:

    部署calico插件,controller-manager出现的:Readiness probe failed: Failed to read status file /status/status.json: unexpected end of JSON input

    2021-12-22 下午4:46 [回复]
    • 2:

      已解决,但是出现一个问题就是master ping 不通10.96.0.1

      2021-12-23 下午5:55 [回复]
      • Edward:

        我特意去看了看博文中这个IP是什么东西;我也说不清楚为什么需要配置这个IP,因为我也是参照了别人的博客来写这个系列;实际上我在这个IP的说明上特意注明了"猜测"!这个系列的知识点太多了,我没那么多时间去一一核查;实际上在写那个MASTER证书请求中的IP地址时,我是怀疑过那些IP地址是不是需要写这么多的,但我没时间去测试这个!有兴趣你可以自己去测试;

        以下这个解释是猜测:关于PING不通10.96.0.1,这基本是必然的,因为这个IP在K8S系统中并不是一个真正的"实体"[例如一个容器],你可以把他想象成一个"Services"资源,当你尝试PING一个"Services"资源时,也是PING不通的,因为这不是一个实体;

        2021-12-23 下午8:24 [回复]
  3. 板凳
    2:

    Readiness probe failed: Failed to read status file /status/status.json: unexpected end of JSON input

    2021-12-22 下午4:46 [回复]
  4. 沙发
    1:

    [root@kubernetes-master-edge01:/opt/K8S_FILE/plugins]kubectl apply -f calico.yaml
    configmap/calico-config unchanged
    customresourcedefinition.apiextensions.k8s.io/bgpconfigurations.crd.projectcalico.org configured
    customresourcedefinition.apiextensions.k8s.io/bgppeers.crd.projectcalico.org configured
    customresourcedefinition.apiextensions.k8s.io/blockaffinities.crd.projectcalico.org configured
    customresourcedefinition.apiextensions.k8s.io/clusterinformations.crd.projectcalico.org configured
    customresourcedefinition.apiextensions.k8s.io/felixconfigurations.crd.projectcalico.org configured
    customresourcedefinition.apiextensions.k8s.io/globalnetworkpolicies.crd.projectcalico.org configured
    customresourcedefinition.apiextensions.k8s.io/globalnetworksets.crd.projectcalico.org configured
    customresourcedefinition.apiextensions.k8s.io/hostendpoints.crd.projectcalico.org configured
    customresourcedefinition.apiextensions.k8s.io/ipamblocks.crd.projectcalico.org configured
    customresourcedefinition.apiextensions.k8s.io/ipamconfigs.crd.projectcalico.org configured
    customresourcedefinition.apiextensions.k8s.io/ipamhandles.crd.projectcalico.org configured
    customresourcedefinition.apiextensions.k8s.io/ippools.crd.projectcalico.org configured
    customresourcedefinition.apiextensions.k8s.io/kubecontrollersconfigurations.crd.projectcalico.org configured
    customresourcedefinition.apiextensions.k8s.io/networkpolicies.crd.projectcalico.org configured
    customresourcedefinition.apiextensions.k8s.io/networksets.crd.projectcalico.org configured
    clusterrole.rbac.authorization.k8s.io/calico-kube-controllers unchanged
    clusterrolebinding.rbac.authorization.k8s.io/calico-kube-controllers unchanged
    clusterrole.rbac.authorization.k8s.io/calico-node unchanged
    clusterrolebinding.rbac.authorization.k8s.io/calico-node unchanged
    error: error parsing calico.yaml: error converting YAML to JSON: yaml: line 182: did not find expected '-' indicator

    2021-11-17 下午9:57 [回复]
    • Edward:

      检查你的calico.yaml文件中的内容,如果我估计没错,应该是你修改这份文件时没有正确的对齐修改项[在你删除"#"这个字符时,没有和前面的内容对齐]

      2021-11-19 上午11:33 [回复]
      • 1:

        好兄弟, 我的问题

        2021-11-19 下午8:19 [回复]

发表评论

表情
还能输入210个字