使用kubeadm(版本号v1.18.2)部署单Master节点k8s集群(二) k8s集群部署软件及配置-配置calico网络

本文档详细介绍了如何使用kubeadm v1.18.2在单Master节点的k8s集群上配置Calico网络。首先,需要在所有主机上安装相关的Docker镜像,接着在Master节点创建并编辑多个Calico配置文件,包括calico-config.yaml, kdd-crds.yaml, rbac.yaml, calico-node.yaml 和 calico-kube-controllers.yaml。在配置过程中,需特别注意调整IP_AUTODETECTION_METHOD和CALICO_IPV4POOL_CIDR的设置,以匹配集群的网络环境。最后,在Master节点上应用这些资源清单文件,确保在应用前node节点已安装了所有必要的Calico镜像。" 119822455,7775390,Verilog实现SM控制器,"['硬件开发', 'Verilog', '数字电路', 'FPGA', '状态机设计']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

安装calico网络的docker镜像

安装calico/node,/calico/cni,calico/kube-controllers,/calico/pod2daemon-flexvol镜像
3台主机都执行以下操作

docker pull docker.io/calico/node

docker pull docker.io/calico/cni

docker pull docker.io/calico/kube-controllers

docker pull docker.io/calico/pod2daemon-flexvol

在Master主节点上创建calico的配置文件

calico-config.yaml
kdd-crds.yaml
rbac.yaml
calico-node.yaml
calico-kube-controllers.yaml

1.calico-config.yaml

---
# Source: calico/templates/calico-config.yaml
# This ConfigMap is used to configure a self-hosted Calico installation.
kind: ConfigMap
apiVersion: v1
metadata:
  name: calico-config
  namespace: kube-system
data:
  # You must set a non-zero value for Typha replicas below.
  typha_service_name: "none"
  # Configure the backend to use.
  calico_backend: "bird"

  # Configure the MTU to use
  veth_mtu: "1440"

  # The CNI network configuration to install on each node.  The special
  # values in this config will be automatically populated.
  cni_network_config: |-
    {
   
   
      "name": "k8s-pod-network",
      "cniVersion": "0.3.1",
      "plugins": [
        {
   
   
          "type": "calico",
          "log_level": "info",
          "datastore_type": "kubernetes",
          "nodename": "__KUBERNETES_NODE_NAME__",
          "mtu": __CNI_MTU__,
          "ipam": {
   
   
              "type": "calico-ipam"
          },
          "policy": {
   
   
              "type": "k8s"
          },
          "kubernetes": {
   
   
              "kubeconfig": "__KUBECONFIG_FILEPATH__"
          }
        },
        {
   
   
          "type": "portmap",
          "snat": true,
          "capabilities": {
   
   "portMappings": true}
        },
        {
   
   
          "type": "bandwidth",
          "capabilities": {
   
   "bandwidth": true}
        }
      ]
    }

2.kdd-crds.yaml

# Source: calico/templates/kdd-crds.yaml

apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  name: bgpconfigurations.crd.projectcalico.org
spec:
  scope: Cluster
  group: crd.projectcalico.org
  version: v1
  names:
    kind: BGPConfiguration
    plural: bgpconfigurations
    singular: bgpconfiguration

---
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  name: bgppeers.crd.projectcalico.org
spec:
  scope: Cluster
  group: crd.projectcalico.org
  version: v1
  names:
    kind: BGPPeer
    plural: bgppeers
    singular: bgppeer

---
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  name: blockaffinities.crd.projectcalico.org
spec:
  scope: Cluster
  group: crd.projectcalico.org
  version: v1
  names:
    kind: BlockAffinity
    plural: blockaffinities
    singular: blockaffinity

---
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  name: clusterinformations.crd.projectcalico.org
spec:
  scope: Cluster
  group: crd.projectcalico.org
  version: v1
  names:
    kind: ClusterInformation
    plural: clusterinformations
    singular: clusterinformation

---
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  name: felixconfigurations.crd.projectcalico.org
spec:
  scope: Cluster
  group: crd.projectcalico.org
  version: v1
  names:
    kind: FelixConfiguration
    plural: felixconfigurations
    singular: felixconfiguration

---
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  name: globalnetworkpolicies.crd.projectcalico.org
spec:
  scope: Cluster
  group: crd.projectcalico.org
  version: v1
  names:
    kind: GlobalNetworkPolicy
    plural: globalnetworkpolicies
    singular: globalnetworkpolicy

---
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  name: globalnetworksets.crd.projectcalico.org
spec:
  scope: Cluster
  group: crd.projectcalico.org
  version: v1
  names:
    kind: GlobalNetworkSet
    plural: globalnetworksets
    singular: globalnetworkset

---
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
  name: hostendpoints.crd.projectcalico.org
spec:
  scope: Cluster
  group: crd.projectcalico.org
  version: v1
  names:
    kind: HostEndpoint
    plural: hostendpoints
    singular: hostendpoint

---
apiVersion: apiextensions.k8s.
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值