8、二进制安装K8s之部署CIN网络
二进制安装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
- github地址
https://github.com/projectcalico/calicoctl/releases - 文档地址
下载 calico-etcd.yaml 配置文件因为k8s使用的etcd 集群
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/*
8、二进制安装K8s之部署CIN网络的更多相关文章
- 7、二进制安装K8s之部署kube-proxy
二进制安装K8s之部署kube-proxy 1.创建配置文件 cat > /data/k8s/config/kube-proxy.conf << EOF KUBE_PROXY_OPT ...
- 6、二进制安装K8s之部署kubectl
二进制安装K8s之部署kubectl 我们把k8s-master 也设置成node,所以先master上面部署node,在其他机器上部署node也适用,更换名称即可. 1.在所有worker node ...
- 10、二进制安装K8s之部署CoreDNS 和Dashboard
二进制安装K8s之部署CoreDNS 和Dashboard CoreDNS 和Dashboard 的yaml文件在 k8s源代码压缩包里面可以找到对应的配置文件,很多人从网上直接下载使用别人的,会导致 ...
- 3、二进制安装K8s之部署kube-apiserver
二进制安装K8s之部署kube-apiserver 一.生成 kube-apiserver 证书 1.自签证书颁发机构(CA) cat > ca-config.json <<EOF ...
- 4、二进制安装K8s 之 部署kube-controller-manager
二进制安装K8s 之 部署kube-controller-manager 1.创建配置文件 cat > /data/k8s/config/kube-controller-manager.conf ...
- 5、二进制安装K8s 之 部署kube-scheduler
二进制安装K8s之部署kube-scheduler 1.创建配置文件 cat > /data/k8s/config/kube-scheduler.conf << EOF KUBE_S ...
- 2、二进制安装K8s 之 部署ETCD集群
二进制安装K8s 之 部署ETCD集群 一.下载安装cfssl,用于k8s证书签名 二进制包地址:https://pkg.cfssl.org/ 所需软件包: cfssl 1.6.0 cfssljson ...
- 1、二进制安装K8s 之 环境准备
二进制安装K8s 之 环境准备 1.系统&软件 序号 设备\系统 版本 1 宿主机 MacBook Pro 11.4 2 系统 Centos 7.8 3 虚拟机 Parallels Deskt ...
- 9、二进制安装K8s之增加node
二进制安装K8s之增加node 1.复制文件,要部署几台就直接复制即可 #二进制文件 scp /data/k8s/bin/{kubelet,kube-proxy} root@192.168.100.1 ...
随机推荐
- Java | this的本质 和 static的本质
this 在说this之前先说一下,对象创建的过程: 1.分配对象空间,并将对象成员变量初始化. 2.执行属性值的显式初始化. 3.执行构造方法. 4.返回相关的地址给相关的对象. this的本质 ...
- C++ 标准模板库(STL)——迭代器(iterators)的用法及理解
C++ STL中迭代器(iterators)用于遍历对象集合的元素.由于容器大小随着插入删除等操作动态改变,无法像静态数组那样获取数组长度然后遍历容器里的所有元素:这时就需要迭代器,每次从容器内第一个 ...
- navicat for sqlserver 注册过程
1.安装原软件,不要打开软件2.将Navicat_Keygen_Patch_v3.4_By_DFoX_URET复制到软件安装位置,运行3.选择navicat v12 products:SQL Serv ...
- 三、k8s集群可用性验证与调参(第一章、k8s高可用集群安装)
作者:北京小远 出处:http://www.cnblogs.com/bj-xy/ 参考课程:Kubernetes全栈架构师(电脑端购买优惠) 文档禁止转载,转载需标明出处,否则保留追究法律责任的权利! ...
- java测试银行系统源代码
1 package Kaoshi; 2 3 /*信1705-3 20173442 田昕可*/ 4 import java.util.*; 5 import java.io.*; 6 7 class A ...
- 【LeetCode】560. 和为K的子数组
560. 和为K的子数组 知识点:数组:前缀和: 题目描述 给定一个整数数组和一个整数 k,你需要找到该数组中和为 k 的连续的子数组的个数. 示例 输入:nums = [1,1,1], k = 2 ...
- Spark—local模式环境搭建
Spark--local模式环境搭建 一.Spark运行模式介绍 1.本地模式(loca模式):spark单机运行,一般用户测试和开发使用 2.Standalone模式:构建一个主从结构(Master ...
- 前端开发入门到进阶第三集【JavaScript中如何将html字符串转化为Jquery对象或者Dom对象】
https://www.cnblogs.com/mingjiatang/p/4746845.html
- 最小覆盖问题-POJ3041-P1129
POJ3041 这道题正解对于像我这种蒟蒻来说比较难以想到. 我们发现每次覆盖的只是一条线上的所有点.那么我们可以把它想象成一个二分图,两个集合分别是横轴和纵轴. 想一想,这实际上是不是就是x轴轴和纵 ...
- 第二篇 -- Qt Designer界面介绍
1. Qt Designer创建界面 2. Qt Designer全局