本章是《rancher下的kubernetes》系列之三,前面兩章我們完成了racher下搭建kubernetes環境的實戰,本章我們來安裝kubectl工具;
系列文章地址
在網頁中輸入kubectl命令
創建deployment、service等資源都可以通過輸入kubectl命令來執行,前面的章節我們是在下圖頁面中輸入kubectl命令的: 
這里的命令行只能執行一些簡單的命令,如果我們要用到一些腳本就不方便了,在linux電腦上安裝kubectl工具來代替網頁輸入命令,是個不錯的選擇;
在哪安裝kubectl
在哪里安裝kubectl工具能夠操做我們之前搭建好的kubernetes環境呢?以下三種都可以:
1. rancher的master機器;
2. rancher的slave機器;
3. racher所在網絡內的任意一台linux機器,可以是個純凈的linux系統,和rancher、kubernetes沒有任何關系;
以上機器都能安裝kubectl工具,然后執行命令操做kubernetes環境,接下來我們開始安裝吧;
安裝步驟
- 在瀏覽器上登錄rancher,選擇kubernetes環境,然后點擊下圖紅框按鈕,會出現一個文本,請復制這些內容:

- 登錄ubuntu機器,創建目錄:~/.kube,在此目錄下創建名為config的文本文件,內容就是上一步復制的信息;
- 在ubuntu機器執行命令:apt-get install snapd,安裝snap;
- 在ubuntu機器執行命令:snap install kubectl –classic,安裝kubectl,這個操做比較耗時,需要耐心等待(我這用了半個小時以上);
至此,kubectl工具已經安裝成功,來試一下輸入命令,可以直接操做kubernetes環境,和網頁上輸入沒有什么區別,如下:
root@maven:~/.kube# kubectl get service NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.43.0.1 <none> 443/TCP 51d ng NodePort 10.43.66.6 <none> 80:30006/TCP 19h tomcat001 NodePort 10.43.141.37 <none> 8080:30991/TCP 51d tomcathost ClusterIP 10.43.64.201 <none> 8080/TCP 19h root@maven:~/.kube# kubectl get pods NAME READY STATUS RESTARTS AGE ng-59b887b8bc-dfjs8 1/1 Running 7 19h tomcat001-768557bfc9-8tvdw 1/1 Running 12 51d tomcat001-768557bfc9-lkl7b 1/1 Running 12 51d tomcathost-59c9987c6f-8z7hz 1/1 Running 3 19h tomcathost-59c9987c6f-tlbp7 1/1 Running 3 19h tomcathost-59c9987c6f-w9kzz 1/1 Running 3 19h root@maven:~/.kube# kubectl get deployment NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE ng 1 1 1 1 19h tomcat001 2 2 2 2 51d tomcathost 3 3 3 3 19h root@maven:~/.kube#
在ubuntu機器上使用kubectl工具相比網頁命令行,能方便的上傳、下載、編輯文件,然后通過kubectl create -f XXX.yaml命令來創建deployment、service等資源;
