通過 kubectl 連接 公有云Kubernetes 集羣

    kubectl是Kubernetes集羣的命令行工具,通過kubectl能夠對集羣本身進行管理,並能夠在集羣上進行容器化應用的安裝部署,不僅可以部署master、node節點,還可以部署到其他機器上管理Kubernetes。

官方文檔:https://kubernetes.io/docs/tasks/tools/install-kubectl/#install-kubectl-on-macos

一、軟件安裝

1、使用二機制包在macOS安裝

1、下載軟件(最新版本)
curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s  

2、賦予執行權限
chmod +x ./kubectl
3、將其拷貝到已經添加到環境變量的某個目錄中 方便後期執行
sudo mv ./kubectl /usr/local/bin/kubectl
4、執行命令測試
kubectl version
Client Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.0", GitCommit:"2bd9643cee5b3b3a5ecbd3af49d09018f0773c77", GitTreeState:"clean", BuildDate:"2019-09-18T14:36:53Z", GoVersion:"go1.12.9", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"14+", GitVersion:"v1.14.6-aliyun.1", GitCommit:"a4182a8", GitTreeState:"", BuildDate:"2019-08-27T06:03:13Z", GoVersion:"go1.12.9", Compiler:"gc", Platform:"linux/amd64"}

2、使用二進制包在CentOS 7.x上面安裝

1、下載軟件

curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s  
指定版本
curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.13.5/bin/linux/amd64/kubectl 
如果您要下載最新版本的安裝包,使用如下命令即可: 僅需將v1.13.5替換爲$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)即可

2、賦予執行權限
chmod +x ./kubectl
3、將其拷貝到已經添加到環境變量的某個目錄中 方便後期執行
sudo mv ./kubectl /usr/local/bin/kubectl
4、測試
[root@izuf6beunt2a2ki2nqvphuz ~]# kubectl  version
Client Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.0", GitCommit:"2bd9643cee5b3b3a5ecbd3af49d09018f0773c77", GitTreeState:"clean", BuildDate:"2019-09-18T14:36:53Z", GoVersion:"go1.12.9", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"14+", GitVersion:"v1.14.6-aliyun.1", GitCommit:"a4182a8", GitTreeState:"", BuildDate:"2019-08-27T06:03:13Z", GoVersion:"go1.12.9", Compiler:"gc", Platform:"linux/amd64"}

二、配置其能夠訪問Kubernetes

   在阿里雲上面創建好Kubernetes集羣后,在集羣管理裏面基本信息的下面部分可以看到通過 kubectl 連接 Kubernetes 集羣 (通過 CloudShell 管理集羣)的相關指導文檔,根據其文檔配置就好了,分爲內網和外網情況,在阿里雲和node節點同一VPC的機器可以視爲內網,而訪問SLB(Kubernetes集羣提供負載均衡的)外網IP視爲外網訪問,阿里雲很貼心的給出了2份配置文件。

image.png

 在第一步裏面CentOS 7.X 配置的爲內網,使用內網相關的配置文件

image.png

在該機器的root賬戶家目錄/.kube/config文件並將相關的配置複製到裏面,

apiVersion: v1
clusters:
- cluster:
    server: https://10.101.175.223:6443
    certificate-authority-data: CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURHakNDQWdLZ0F3SUJBZ0lCQURBTkJna3Foa2lHOXcwQkFRc0ZBREErTVNjd0ZBWURWUVFLRXcxaGJHbGkKWVdKaElHTnNiM1ZrTUE4R0ExVUVDaE1JYUdGdVozcG9iM1V4RXpBUkJnTlZCQU1UQ210MVltVnlibVYwWlhNdwpIaGNOTVRrd09URTRNRFl6TURFeVdoY05Namt3T1RFMU1EWXpNREV5V2pBK01TY3dGQVlEVlFRS0V3MWhiR2xpCllXSmhJR05zYjNWa01BOEdBMVVFQ2hNSWFHRnVaM3BvYjNVeEV6QVJCZ05WQkFNVENtdDFZbVZ5Ym1WMFpYTXcKZ2dFaU1BMEdDU3FHU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLQW9JQkFRQzI3UFM5Z0g1UW00UDBDQWpMOVpvagpYTWNZQjhYbUJ0R1pUMG1ydFhpcUppdlFVc1crRi9xNlUyN3VFeEp1Q01ndFBxNGVnd01NbWdKU1VLQkFmeDdqCko0SmRyeU5wdFhmd05ZenpHSTRJVUF3VndLa1paTkJXWld1REFuTDBoNDZFL01MeEs5eUgvQ0lSQXM5TWl6UFoKckg4T3VRR25mRmROVVd1SVIzTElCaTREMjdZaEJhZDhEaWdaMWFpWGdxY3hRTSt4cHpNR09DUzFlWW04dDZVMwpHSFg1TXBuYysyQlUyTk5Oay8wQmdCc1F4R1MyUndoSVBrVjFRdFRyWXRwTEI0NFRPYmg3NFVSVkxzbzRqcTFlCkVHUjhFSTNxNy8xVFkxSXUzRVE5enZac3dOVHRHR1BBNUhGWmJtM2dJVHovNmp2cU41Z09XenZwNGd4QzNtaFgKQWdNQkFBR2pJekFoTUE0R0ExVWREd0VCL3dRRUF3SUNwREFQQmdOVkhSTUJBZjhFQlRBREFRSC9NQTBHQ1NxRwpTSWIzRFFFQkN3VUFBNElCQVFBbXZraIUUxTWEMzVXRua0RlaXAzWXNHcWhPVElMTkxxQ1RIVlk2aDdDWnMxCng3U0ZtN3JONGMzSU90eGpySXJ3S2RNUlE5QVdGek0yT0lNTFlQS3F4Mzk1NWE2SFlOdGhPbFNLTi9MamFCQ3MKRHpHd1k5dU5ablNGRzFMdVpmM2dMRjA2eit0dkJqWThReTUzRkdPdVJTcHpDcXlsN2dKWTRWV0xIcGhBZVV1dQpUUHRRYnNsMm5rMldIYlJzS1RlTnlhemt4YkMvY2hiZUJXQW5DZzhPWGhSRVB3T2pXdndScXlLR3VPbXhxVWhDCndMd1BvZUtRQXlCWG9maUUxZ0F4Zy9jM3dzaFI1d1B2dGhXdERzd21CUE44d2JPNXNibGRjWVhXMEt6eTc2d2wKRDVDbHYvZFNaNENhaUNidUJ6aW1xZXVtd24xL0xhRnI4eEgvK0lTOAotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==
  name: kubernetes
contexts:
- context:
    cluster: kubernetes
    user: "kubernetes-admin"
  name: kubernetes-admin-cfd09da28dcfb4ad8856a5e57ab43f221
current-context: kubernetes-admin-cfd09da28dcfb4ad8856a5e57ab43f221
kind: Config
preferences: {}
users:
- name: "kubernetes-admin"
  user:
    client-certificate-data: CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUN6VENDQWphZ0F3SUJBZ0lERVpLTk1BMEdDU3FHU0liM0RRRUJDd1VBTUdveEtqQW9CZ05WQkFvVElXTm0KWkRBNVpHRXlPR1JqWm1JMFlXUTRPRFUyWVRWbE5UZGhZalF6WmpJeU1URVFNQTRHQTFVRUN4TUhaR1ZtWVhWcwpkREVxTUNnR0ExVUVBeE1oWTJaa01EbGtZVEk0WkdObVlqUmhaRGc0TlRaaE5XVTFOMkZpTkRObU1qSXhNQjRYCkRURTVNRGt4T0RFeU1UTXdNRYRFRJeU1Ea3hOekV5TVRnek5Wb3dQekVYTUJVR0ExVUVDaE1PYzNsemRHVnQKT20xaGMzUmxjbk14Q1RBSEJnTlZCQXNUQURFWk1CY0dBMVVFQXhNUWEzVmlaWEp1WlhSbGN5MWhaRzFwYmpDQgpuekFOQmdrcWhraUc5dzBCQVFFRkFBT0JqUUF3Z1lrQ2dZRUExVVRjS2d2Tjk2dzFZUkhvallMZHMzRnJ6Sm8wCjdXbFVsdEU3cVdVZ2ZsdTZIUEpMSnh3dFVsalJKaGNyYkxJTnp6K1kwVVRDSFJEMDRWZ2VXRWc2R21tOWRFWU0KZUI0TEsvNVp5ejF3Kzd1R0c5cC9pTi8vY1pxZUNBdU9kcldIOXpQV3ZsazJMR2Fvc0JSV2hDT2tDeUx1Sy9DaApxcEM5Ri9lbENjTXAxTDBDQXdFQUFhT0JxekNCcURBT0JnTlZIUThCQWY4RUJBTUNCNEF3RXdZRFZSMGxCQXd3CkNnWUlLd1lCQlFVSEF3SXdEQVlEVlIwVEFRSC9CQUl3QURBOEJnZ3JCZ0VGQlFjQkFRUXdNQzR3TEFZSUt3WUIKQlFVSE1BR0dJR2gwZEhBNkx5OWpaWEowY3k1aFkzTXVZV3hwZVhWdUxtTnZiUzl2WTNOd01EVUdBMVVkSHdRdQpNQ3d3S3FBb29DYUdKR2gwZEhBNkx5OWpaWEowY3k1aFkzTXVZV3hwZVhWdUxtTnZiUzl5YjI5MExtTnliREFOCkJna3Foa2lHOXcwQkFRc0ZBQU9CZ1FDalYwZjlqMEgxR2RoazBUeFhsNURETlFWVy9uTWNjSjBkVWhMYWxWMzEKbWRCUDJtK0drWXhLWlh6OWh1RGQxbUFwa0hyYkM1aU1IejNJZ1ZuSTRMRlhQRmQ0TlROcHNsQWx5QTFJVDA2bApOVDIzNXRpNHZWN0Zqc21iU0FYaUtpZDZqSURMVFFHekdxUWUrdnZWZ2ZkRDBUc1Z6UW1aanpyUlppZTNRbGR1CmlnPT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQotLS0tLUJFR0lOIENFUlRJRklDQVRFLS0tLS0KTUlJQy96Q0NBbWlnQXdJQkFnSURFWkFDTUEwR0NTcUdTSWIzRFFFQkN3VUFNR0l4Q3pBSkJnTlZCQVlUQWtOTwpNUkV3RHdZRFZRUUlEQWhhYUdWS2FXRnVaekVSTUE4R0ExVUVCd3dJU0dGdVoxcG9iM1V4RURBT0JnTlZCQW9NCkIwRnNhV0poWW1FeEREQUtCZ05WQkFzTUEwRkRVekVOTUFzR0ExVUVBd3dFY205dmREQWVGdzB4T1RBNU1UZ3cKTmpJME1EQmFGdzB6T1RBNU1UTXdOakk1TlRSYU1Hb3hLakFvQmdOVkJBb1RJV05tWkRBNVpHRXlPR1JqWm1JMApZV1E0T0RVMllUVmxOVGRoWWpRelpqSXlNVEVRTUE0R0ExVUVDeE1IWkdWbVlYVnNkREVxTUNnR0ExVUVBeE1oClkyWmtNRGxrWVRJNFpHTm1ZalJoWkRnNE5UWmhOV1UxTjJGaU5ETm1Nakl4TUlHZk1BMEdDU3FHU0liM0RRRUIKQVFVQUE0R05BRENCaVFLQmdRQzIzZFN6Yms5S0hFcUg0eXVOZTJVMTVXM2F0TjY2ZFBMKzhXSHFjT1VzT2JuNgoxNUlURnVpdlpkQm5TQTU4bkErd1IzTTFPY0daVTBtN3Y3dLd2EwWVVkSUNLZUJndEk4SUtqT05yYjdJV001CnhkOCtIZkRyNnRkVXZFUkpqLzFucGlzOWdPbHFtekpEVktzZ2Q4RjNyTlRjcnpmY2xsMmplS2RIYTBWRHh3SUQKQVFBQm80RzZNSUczTUE0R0ExVWREd0VCL3dRRUF3SUNyREFQQmdOVkhSTUJBZjhFQlRBREFRSC9NQjhHQTFVZApJd1FZTUJhQUZJVmEvOTBqelNWdldFRnZubTFGT1p0WWZYWC9NRHdHQ0NzR0FRVUZCd0VCQkRBd0xqQXNCZ2dyCkJnRUZCUWN3QVlZZ2FIUjBjRG92TDJObGNuUnpMbUZqY3k1aGJHbDVkVzR1WTI5dEwyOWpjM0F3TlFZRFZSMGYKQkM0d0xEQXFvQ2lnSZa2FIUjBjRG92TDJObGNuUnpMbUZqY3k1aGJHbDVkVzR1WTI5dEwzSnZiM1F1WTNKcwpNQTBHQ1NxR1NJYjNEUUVCQ3dVQUE0R0JBQTdFRlR3QVBtUEl4eCtQV09Lb0ZyLzdTN01VR25PR0R2amdvM1FRCkI5MGhVN0JqTm53Z1hUd3BXbDVFSFNBaGdYZVZkSnd5azErVlJQMjBjeU5vVHlrblpERWxQZ2NlcEVJamZ2YWkKZ2ZweTM3aEpTZ0RFVjY4Y1NnS243WWNzbzhFczR6YUY2QmhFc3plS0xnVXdUeUJ2SFArUTNPOUl1SW9kWWRHYgp0Q2NLCi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K
    client-key-data: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlDWEFJQkFBS0JnUURWUk53cUM4MzNyRFZoRWVpTmd0MnpjV3ZNbWpUdGFWU1cwVHVwWlNCK1c3b2M4a3NuCkhDMVNXTkVtRnl0c3NnM1BQNWpSUk1JZEVQVGhXQjVZU0RvYWFiMTBSZ3g0SGdzci9sbkxQWEQ3dTRZYjJuK0kKMy85eG1wNElDNDUydFlmM005YStXVFlzWnFpd0ZGYUVJNlFMSXU0cjhLR3FrTDBYOTZVSnd5blV2UUlEQVFBQgpBb0dBSE5HcFRxVTV0L1kxWUdDakpEeEM2VFN5ZEh1Q0czTFlVMmtDdnVsRGNzL0NYcGIvUU5HMTdpTENZSHRSCkN1Y2twcFRaZWEzbzdUU1ZZcjRkbTZCbStWdVpHM3NDaGdZSWNhQVVXOG1PQThYTEFTZDk5QUZkQmIzY0YxRDgKTTZnZnFpNW1VM2s1NUZrTjhSWkxtN1RlNWtsYlNydU0vQ2tOMUF2TW9IdmhTZ0VDUVFEbTVBcW9vbWp0VytjQwpLdlBkcHl1REgvM3VIaEFvSmZXeGJsUmRUQm5iQmNHbC91aWVPbUhudjdIMXFwejRXLy94cUNXWm5XT1VvMFU1CnZYeDVadWV0QWtFQTdIWTdBM1NxenlPWjF6MkhwcnRTVHFLQlNvY1FyRUhPWXNZWmhJZ1JWdFFCendyall5NjgKeERoN2tiTjZBS2V4T2dQL3FyMUtSMjdISWNtWW11R0RVUUpBWEFCT0J2Z0FHMlJkWGszRE1uVWtMM0dWKzBYYgpaa1FKN0pOcjVta21mRkdFNGlINml1SDBsU1diUWFxa05ZcGpKK1c2WmNXREluMFVYbmVVbThOWFdRSkJBS2szCjR2dVNIanFtUzQzUkpxYVhIMHZPMTUreUVLaDFYM0VvTzFLdzNWZTUyS0dHTlR2aFVvMUpyb1NTWUJqZjZPQ1AKeEFNMysxUXJYcTQ3U3M1cjNFRUNRRlBjYUkvTTVYdkZMWkJablRlSjFYd2w4Y3dxVkY3TlMzNGlrMUtjVWxZNQpveDFLOCtEK1FBV0MxNnM3VUNSN1k2VXhEZDIwajNNclZnUTN6S3JtN1VNPQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo=

執行相關命令驗證

[root@izuf6beunt2a2ki2nqvphuz ~]# kubectl  get  nodes
NAME                         STATUS   ROLES    AGE   VERSION
cn-shanghai.10.101.175.227   Ready    <none>   33h   v1.14.6-aliyun.1
[root@izuf6beunt2a2ki2nqvphuz ~]# kubectl  get  pods
NAME                        READY   STATUS    RESTARTS   AGE
dashbord-7fbdc69845-fx76j   1/1     Running   0          26h
mysql-0                     1/1     Running   0          24h
mysql-1                     0/1     Pending   0          24h
redis-0                     1/1     Running   0          24h
[root@izuf6beunt2a2ki2nqvphuz ~]# kubectl  get  namespaces
NAME              STATUS   AGE
ahas              Active   27h
catalog           Active   24h
default           Active   33h
kube-node-lease   Active   33h
kube-public       Active   33h
kube-system       Active   33h
nginx-web         Active   32h

在MAC上配置阿里雲外網訪問是直接vi  $HOME/.kube/config 保存時會報錯,可以選擇先創建 $HOME/.kube/目錄,然後填寫配置文件就不會再報錯,下面是配置後的驗證過程,

kubectl  get pods
NAME                        READY   STATUS    RESTARTS   AGE
dashbord-7fbdc69845-fx76j   1/1     Running   0          27h
mysql-0                     1/1     Running   0          25h
mysql-1                     0/1     Pending   0          24h
redis-0                     1/1     Running   0          25h

kubectl  get  namespaces
NAME              STATUS   AGE
ahas              Active   27h
catalog           Active   24h
default           Active   33h
kube-node-lease   Active   33h
kube-public       Active   33h
kube-system       Active   33h
nginx-web         Active   32h

image.png

很明顯的發現外網的執行要比內網要慢很多,這個主要取決於公網的帶寬和網絡質量,kubectl相關的命令可以參考官方文檔和公有云產品文檔

官方文檔:https://kubernetes.io/docs/reference/kubectl/kubectl/

阿里雲 https://help.aliyun.com/document_detail/93080.html?spm=a2c4g.11174283.6.964.3b972ceeYhCcoS

華爲雲:https://support.huaweicloud.com/usermanual-cce/cce_01_0023.html

Ucloud公有云:https://docs.ucloud.cn/compute/uk8s/manageviakubectl/intro_of_kubectl


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章