安装最新版Calico
准备calico.yaml
进入calico网站:
Install Calico networking and network policy for on-premises deployments
找到 Install Calico > Kubernetes > Self-managed on-premises > Install Calico networking and network policy for on-premises deployments
往下滑动页面,找到Install Calico步骤下的Manifest > Install Calico with etcd datastore:
点击Install Calico with etcd datastore然后跳转:
如下找到Calico.yaml的下载连接,在k8s环境执行:
这个是比较新的版本v3.25.1的 calico:
curl https://raw.githubusercontent.com/projectcalico/calico/v3.25.1/manifests/calico-etcd.yaml -o calico.yaml
也可以根据自己的需要,在calico网站找到以前的版本下载。
下载好calico.yaml.
编辑calico.yaml里的Secret段,data下定义的证书base64加密数据
- etcd-ca:
- etcd-key:
- etcd-cert:
====================================
- 这3个分别是:
- etcd的ca证书数据
- etcd的证书key数据
- etcd的证书数据
把这三个证书数据经过base64 方式加密,然后把加密后的数据粘贴到yaml中,但是注意负值加密后的数据不要把shell的提示符复制进去:
如:cat /opt/etcd/certs/ca.pem | base64 | tr -d '\n'
修改好后内容如下:
编辑etcd_endpoints:
我的k8s集群3个节点的etcd 的url分别是如下,编辑加到etcd_endpoints:后面
编辑etcd证书在calico pod中的挂载路径
这个可以自己设置,我的设置是:
- etcd_ca: "/calico-secrets/etcd-ca"
- etcd_cert: "/calico-secrets/etcd-cert"
- etcd_key: "/calico-secrets/etcd-key"
编辑自己环境中的pod IP段参数CALICO_IPV4POOL_CIDR
把CALICO_IPV4POOL_CIDR 和其value字段注释放开;
value设置成自己环境上kube-controoller-server中参数--cluster-cidr设置的值,比如我环境上的这个参数设置如下是:
--cluster-cidr=172.17.0.0/16
编辑value和kube-controller-server的参数值一样:
友情提示:
不知道如何设置这个参数的检查一下自己环境上kube-contrller-manager的systemd配置文件,找到相关配置项--cluster-cidr 把其赋值拷贝过来即可;
或者是kubelet的kubelet-conf.yaml,里面的配置项podCIDR。其值应该和kube-controller-manager的--cluster-codr 值是一致的,复制过来即可。
添加apiserver环境参数
在calico-node的DaemonSet 中添加env环境变量参数:
- - name: KUBERNETES_SERVICE_HOST
- value: "192.168.1.10" # master apiserver 地址
- - name: KUBERNETES_SERVICE_PORT
- value: "6443"
- - name: KUBERNETES_SERVICE_PORT_HTTPS
- value: "6443"
添加这几个参数据的目的是给calico添加访问apiserver的环境变量(apiserver的masterIP和端口6443),为了解决在拉起calico后calico-node的报错Failed to reach apiserver error=<nil>,有这个错calico-node会反复重启CrashBackoff
修改IP_AUTODETECTION_METHOD 参数
修改IP_AUTODETECTION_METHOD参数,这个根据自己环境上的实际情况修改,我的环境中:
网卡设备名称是ens开头如ens33这种,那就修改成interface=ens.*,如果你的环境上的网卡设备是eth那么改成interface=eth.*即可;
calico-controller添加apiserver环境参数
如果在使用kubectl apply -f calico.yaml后,caloco-contller一直重启CrashBackoff,检查日志报错Failed to reach apiserver error=<nil>,那么和calico-node同理,需要添加apiserver环境参数,在calico-controller的Deployment中添加env段中参数项:
- - name: KUBERNETES_SERVICE_HOST
- value: "192.168.1.10" # master apiserver 地址
- - name: KUBERNETES_SERVICE_PORT
- value: "6443"
- - name: KUBERNETES_SERVICE_PORT_HTTPS
- value: "6443"
启动calico部署:
kubectl apply -f calico.yaml
启动成功!
注意查看READY列,需要保证健康状态都是1/1 ,否则说明calico工作不正常。
安装最新版Calico相关推荐
- 在centos上通过yum直接安装最新版gcc和开发工具
本来我把gcc 8, g++ 8, cmake 3, ninja,glibc,gnu make 和GNU 'binutils' 全部都编译安装了一遍: 先安装 gcc 8, g++ 8, cmake ...
- 在CentOS/Debian/Ubuntu上编译安装最新版gnu make 和GNU 'binutils' (as and ld)
先查看make版本: root@:~/clickhouse/gcc-build# make --version GNU Make 3.82 Built for x86_64-redhat-linux- ...
- 在CentOS/Debian/Ubuntu上编译安装最新版 GCC 8 , cmake 3 和ninja
CentOS不像Debian/Ubuntu,不能直接从官方库中安装最新版的gcc/g++,只能源码编译安装. gcc下载地址:Index of /gnu/gcc 我选择了最新版本 gcc-8.3.0, ...
- 史上最详细Docker安装最新版Minio 带详解 绝对值得收藏!!! 让我们一起学会使用minio搭建属于自己的文件服务器!!走上白嫖之路!解决启动了但是浏览器访问不了的原因
让我们一起学会使用minio搭建属于自己的文件服务器!!走上白嫖之路! WARNING: Console endpoint is listening on a dynamic port (34451) ...
- linux centos7 安装最新版git 教程
2019独角兽企业重金招聘Python工程师标准>>> linux centos7 安装最新版git 教程 2018年08月22日 11:53:59 alisen169 阅读数:13 ...
- linux mint 最新版,Linux Mint安装最新版R
R是用于统计分析.绘图的语言和操作环境.R是属于GNU系统的一个自由.免费.源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具. 版本控请一定试试下面的方法安装最新版 打开终端 sudo ge ...
- 2021年 CentOS 快速安装 最新版Nginx
2021年 CentOS 快速安装 最新版Nginx 目录 1. 环境准备 2. 设置 yum 源 3. 安装 Nginx 4. 其他 1. 环境准备 sudo yum install yum-uti ...
- centos安装最新版的docker-ce(二进制安装)
centos安装最新版的docker-ce(二进制安装) 本文转自于https://www.jianshu.com/p/87a84097e635 在centos上安装过docker的都知道,yum i ...
- yum 源没有php7.0,yum安装最新版php7的操作方法
yum安装最新版php7的操作方法 发布时间:2021-01-12 10:28:17 来源:亿速云 阅读:96 作者:栢白 这篇文章主要介绍了yum安装最新版php7的操作方法,具有一定借鉴价值,需要 ...
最新文章
- Hadoop集群安全性:Hadoop中Namenode单点故障的解决方案及详介AvatarNode
- 方差过滤: Removing features with low variance
- oracle set parseonly on,Set noexec on 与 Set parseonly on的区别及SQL语法检查
- Linux学习之遇到的小问题---查看系统版本,虚拟机创建共享文件夹,用到的命令记录。
- 第六讲:PrintClient工具的使用
- linux中vi过滤,vim高级编辑(一)
- 交叉验证 cross validation 与 K-fold Cross Validation K折叠验证
- mysql insert 不需要日志_MySQL数据库性能优化(1)「转」
- Java中的Comparable和Comparator到底该怎么用看完就全明白了
- 最新版 Enterprise Library 企业库 V4.1 中文学习手册
- Java基础学习总结(68)——有关Java线程方面的面试题
- Socket通讯成功案例
- 有没有发现4G网速越来越慢了?
- 超详细目标检测,yolo3训练自己的数据集
- 控制系统计算机仿真源码,控制系统计算机仿真-实验五.doc
- 防止 MySQL-PHP 网站被玩弄的方法
- Looper对文件描述符的监控与处理
- 论文中的Matlab画图常用技巧
- str.trim()去除空格
- 手机号码校验(手机号---座机号)