calico客戶端工具calicoctl


工具介紹

Calico的二進制程序文件calicoctl可以直接操作Calico存儲來查看,修改或配置Calico系統特性。

三種方式部署calicoctl:①二進制安裝;②docker安裝;③運行於kubernetes系統中

這里采用第一種方式:二進制安裝

官網:https://docs.projectcalico.org/v3.6/getting-started/calicoctl/install 

 

測試環境

上一篇k8s集群環境,如下

System Hostname IP calicoctl位置
CentOS 7.6 k8s-master 138.138.82.14 僅在master安裝該命令
CentOS 7.6 k8s-node1 138.138.82.15
CentOS 7.6 k8s-node2 138.138.82.16

 

 

 

 

 

 

具體步驟

1. 下載二進制文件

[root@k8s-master ~]# wget https://github.com/projectcalico/calicoctl/releases/download/v3.5.4/calicoctl -O /usr/bin/calicoctl
[root@k8s-master ~]# chmod +x /usr/bin/calicoctl

 

2. 添加calicoctl配置文件

calicoctl通過讀寫calico的數據存儲系統(datastore)進行查看或者其他各類管理操作,通常,它需要提供認證信息經由相應的數據存儲完成認證。在使用Kubernetes API數據存儲時,需要使用類似kubectl的認證信息完成認證。它可以通過環境變量聲明的DATASTORE_TYPE和KUBECONFIG接入集群,例如以下命令格式運行calicoctl:

[root@k8s-master ~]# DATASTORE_TYPE=kubernetes KUBECONFIG=~/.kube/config calicoctl get nodes
NAME         
k8s-master   
k8s-node1    
k8s-node2    

也可以直接將認證信息等保存於配置文件中,calicoctl默認加載 /etc/calico/calicoctl.cfg 配置文件讀取配置信息,如下所示:

[root@k8s-master ~]# cat /etc/calico/calicoctl.cfg
apiVersion: projectcalico.org/v3
kind: CalicoAPIConfig
metadata:
spec:
  datastoreType: "kubernetes"
  kubeconfig: "/root/.kube/config"
[root@k8s-master ~]# calicoctl get nodes NAME k8s-master   
k8s-node1    
k8s-node2  

 

3. 測試calicoctl命令

[root@k8s-master ~]# calicoctl node status
Calico process is running.

IPv4 BGP status
+---------------+-------------------+-------+----------+-------------+
| PEER ADDRESS  |     PEER TYPE     | STATE |  SINCE   |    INFO     |
+---------------+-------------------+-------+----------+-------------+
| 138.138.82.15 | node-to-node mesh | up    | 09:03:56 | Established |
| 138.138.82.16 | node-to-node mesh | up    | 09:04:08 | Established |
+---------------+-------------------+-------+----------+-------------+

IPv6 BGP status
No IPv6 peers found.
[root@k8s-master ~]# calicoctl get ipPool -o yaml
apiVersion: projectcalico.org/v3
items:
- apiVersion: projectcalico.org/v3
  kind: IPPool
  metadata:
    creationTimestamp: 2019-04-28T08:53:12Z
    name: default-ipv4-ippool
    resourceVersion: "1799"
    uid: 0df17422-6993-11e9-bde3-005056918222
  spec:
    blockSize: 26
    cidr: 192.168.0.0/16
    ipipMode: Always
    natOutgoing: true
    nodeSelector: all()
kind: IPPoolList
metadata:
  ……

以上就是calicoctl命令的簡單安裝和測試。

 

結束.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM