美文网首页
8、二进制安装K8s之部署CIN网络

8、二进制安装K8s之部署CIN网络

作者: 小兔几白又白 | 来源:发表于2021-08-18 11:40 被阅读0次

二进制安装K8s之部署CIN网络

部署CIN网络可以使用flannel或者calico,这里介绍使用calico ecd 方式部署。

1、下载calico二进制安装包
  • 创建所需目录
mkdir -p /data/k8s/calico/{bin,config,logs}

  • Calico 网络配置NetworkManager。

NetworkManager 操作默认网络命名空间中接口的路由表,其中 Calico veth 对被锚定以连接到容器。这会干扰 Calico 代理正确路由的能力。
在 at 创建以下配置文件/etc/NetworkManager/conf.d/calico.conf以防止 NetworkManager 干扰接口:

cat >/etc/NetworkManager/conf.d/calico.conf <<EOF
[keyfile]
unmanaged-devices=interface-name:cali*;interface-name:tunl*;interface-name:vxlan.calico
EOF

#防止 Linux conntrack 表空间不足
sysctl -w net.netfilter.nf_conntrack_max=1000000
echo "net.netfilter.nf_conntrack_max=1000000" >> /etc/sysctl.conf

curl https://docs.projectcalico.org/manifests/calico-etcd.yaml -o calico.yaml
2、修改配置文件

如果您使用的是 pod CIDR 192.168.0.0/16 要与k8s-集群的一致,在文件kube-apiserver.conf 的 --service-cluster-ip-rang 参数
。在ConfigMap命名中calico-config,将 的值设置为etcd_endpointsetcd 服务器的 IP 地址和端口。
提示:您可以etcd_endpoint使用逗号作为分隔符指定多个。

  • 镜像最好改成私有仓库,避免失败
#镜像最好改成私有仓库:
          image: registry.com/public/docker.io/calico/cni:v3.19.1
          image: registry.com/public/docker.io/calico/pod2daemon-flexvol:v3.19.1
          image: registry.com/public/docker.io/calico/node:v3.19.1
          image: registry.com/public/docker.io/calico/kube-controllers:v3.19.1

  • 生成 连接 etcd 集群证书
cat /data/etcd/ssl/server-key.pem |base64 -w  0
 cat /data/etcd/ssl/server.pem |base64 -w  0
 cat /data/etcd/ssl/ca.pem |base64 -w 0
写到:
metadata:
  name: calico-etcd-secrets
  namespace: kube-system
data:
  etcd-key:   #上面生成的server-key.pem结果
  etcd-cert:  #上面生成的server.pem结果
  etcd-ca:  #上面生成的ca.pem结果

  • 修改data: etcd 部分如下
data:
  # Configure this with the location of your etcd cluster.
  etcd_endpoints: "https://192.168.0.200:2379,https://192.168.0.201:2379,https://192.168.0.202:2379"
  etcd_ca: "/calico-secrets/etcd-ca"
  etcd_cert: "/calico-secrets/etcd-cert"
  etcd_key: "/calico-secrets/etcd-key"
  
  • etcd_endpoints etcd 集群地址,在

  • etcd_ca、etcd_cert、etcd_key 使用默认即可

  • 修改网段
    关闭calico ipip方式

- name: CALICO_IPV4POOL_IPIP
  #value: "Always"
 value: "Never"
 
#CIN网段,要与k8s-集群的一致,在文件kube-apiserver.conf 的 --service-cluster-ip-rang 参数             
- name: CALICO_IPV4POOL_CIDR
value: "10.0.0.0/24"

3、配置好直接执行
kubectl apply -f calico-etcd.yaml

4、查看
kubectl get pods -n kube-system

NAME                                       READY   STATUS    RESTARTS   AGE
calico-kube-controllers-567b6cf877-zjqvn   1/1     Running   0          29s
calico-node-699jj                          1/1     Running   0          29s

5、授权
kubectl create clusterrolebinding add-on-cluster-admin --clusterrole=cluster-admin --serviceaccount=kube-system:calico-kube-controllers


#如果要删除calico网络:
kubectl delete -f calico-etcd.yaml
rm -rf /var/lib/calico/*

rm -rf  /etc/cni/net.d/*

相关文章

  • 二进制部署k8s集群

    部署k8s有多种方式,本章我们采取二进制的部署方式来部署k8s集群,二进制部署麻烦点,但是可以在我们通过部署各个组...

  • 9、二进制安装K8s之增加node

    二进制安装K8s之增加node 1、复制文件,要部署几台就直接复制即可 2、修个配置文件 kubelet.conf...

  • k8s dashboard安装与访问

    本次部署的环境为centos7.6,k8s和dashboard部署步骤说明如下 k8s安装部署dashboard前...

  • 二进制部署k8s

    二进制部署k8s 一、安装要求 在开始之前,部署Kubernetes集群机器需要满足以下几个条件: 一台或多台机器...

  • k8s阵地攻克(爬坑之下载镜像)

      最近开始学习K8S的部署与安装,决定把K8S攻克下来。在安装部署K8S的过程中,遇到了第一个难点(由于某种特殊...

  • Linux安装kubeedge_亲测成功

    先安装k8s linux安装部署k8s(kubernetes)和解决遇到的坑[https://www.jiansh...

  • k8s集群环境搭建

    k8s centos离线安装k8s k8s基本概念 1、安装前准备工作 2、部署docker(至少两台,一个mas...

  • k8s 1.22.15 版本技术文档

    1. 基础环境 2. 部署 k8s 环境 3. 安装网络插件 4. 更换 kube-proxy 网络模式为 ipv...

  • 相关技术文档网址

    二进制部署k8s集群node地址:https://github.com/lizhenliang/ansible-i...

  • Kubernetes部署应用服务

    承接上文Kubernetes高可用部署,本文介绍应用程序服务部署到k8s平台步骤流程 一、安装网络文件系统(NFS...

网友评论

      本文标题:8、二进制安装K8s之部署CIN网络

      本文链接:https://www.haomeiwen.com/subject/htzsbltx.html