「这是我参与11月更文挑战的第10天,活动详情查看:2021最后一次更文挑战」。
本文将介绐calicoctl命令工具的使用
安装
calicoctl工具,以二进制命令方式安装在主机中
curl -o calicoctl -O -L "https://github.com/projectcalico/calicoctl/releases/download/v3.20.0/calicoctl"
mv calicoctl /usr/local/bin
chmod +x calicoctl
复制代码
需要注意的是,版本必须一致,否则无法使用
使用
查看节点列表
#查看节点简单信息
calicoctl get node
#查看节点详细信息,输出会很长,可以输出到文件再查看
calicoctl get node -o yaml
复制代码
查看节点状态
calicoctl node status
复制代码
全互联模式(node-to-node mesh)模式,节点状态都是正常的(up),路由连接都已经相互建立好了
节点检查
检查当前节点各模块以及内核是否满足calico的安装要求
calicoctl node checksystem
复制代码
节点诊断
执行诊断命令,会采集系统和calico相关日志,输出到一个文件
calicoctl node diags
复制代码
该命令虽然会报错,但是采集的日志实际上好了。直接查看红框目录下的诊断日志既可
查看ip池
calicoctl get ippool
复制代码
在初始k8s集群没的指定cdir的网段,这里默认就是192.168.0.0/16,另外ipip模式,nat出口都是启用的,vxlan虚拟子网模式是关闭的
ipam
ipam是calico的一个ip管理模块
查看ip的地址的总量和已经分配的ip详细信息
calicoctl ipam show
复制代码
查看ipam当前的详细信息
calicoctl ipam check
复制代码
ipam网络管理配置
释放ip地址,只会释放已经没有使有的端点ip,已经在使用的不会释放,此命令慎用
calicoctl ipam release --ip=192.168.1.2
复制代码
允许借用ip
calicoctl ipam configure --strictaffinity=true
复制代码
网络资源管理
创建一个新网络
因为我们安装calico时默认都创建好了,所以不需要动,基本上不需要人工干预
calicoctl create -f xxx.json
复制代码
查看网络资源信息
过滤出calico创建的资源
calicoctl get profile | grep calico
复制代码
查看资源详细
calicoctl get profile projectcalico-default-allow -o json
复制代码
替换网络资源
就是更新已经创建好的资源,不清楚配置前不能随意改动
calicoctl replace -f xxxx2.json
复制代码
apply
综合了 create 和 replace 命令。没有资源时就创建,有资源时就替换。和kubectl 的appley 技术相似
删除网络资源
慎用,,执行可能会导致集群崩溃
calicoctl delete profile xxxxxx
复制代码
查看get
get命令 除了node,profile等还是其他的有效资源都可以查看,如果资源没有创建,返回是空
元数据备份
在执行备份之前,需要有calicoctl对应的配置文件,另外在执行导出导入时,需要先加锁,导出导入成功后再解锁。
calicoctl配置文件默认在: /etc/calico/calicoctl.cfg,但是我们是二进制安装的,其实是没有的。需要自行创建
配置文件例子
根据自已的证书路径自行修改
apiVersion: projectcalico.org/v3
kind: CalicoAPIConfig
metadata:
spec:
etcdEndpoints: https://etcd1:2379,https://etcd2:2379,https://etcd3:2379
etcdKeyFile: /etc/calico/key.pem
etcdCertFile: /etc/calico/cert.pem
etcdCACertFile: /etc/calico/ca.pem
复制代码
数据导出
calicoctl datastore migrate lock
calicoctl datastore migrate export
calicoctl datastore migrate unlock
复制代码
数据导入
calicoctl datastore migrate lock
calicoctl datastore migrate import
calicoctl datastore migrate unlock
复制代码




近期评论