kubectl是k8s的客戶端程式,也是k8s的命令列工具,kubectl提供了大量的子命令可以讓使用者和集群進行互動。
kubectl不一定部署在master上。使用者通過kubectl連線到master上然後將命令通過master分發到集群的node節點上。
預設情況下是預設連線本地的apiserver預設情況下,kubectl使用非安全http協議連線本地apiserver的8080非安全埠:
現在,如果想使用apiserver安全的https埠(6443)連線集群,可以這樣:
// 先將kubectl傳到乙個node節點上
scp /opt/kubernetes/bin/kubectl 10.10
.99.233:/usr/bin
// 將所需的證書傳到node節點上
scp admin*pem 10.10
.99.233:/root
cp /opt/kubernetes/ssl/ca.pem /root
// 生成kubectl配置檔案
kubectl config set
-cluster kubernetes --server= --certificate-authority=/root/ca.pem
(這一步建立完成會在當前生成乙個.kube隱藏目錄,並在其中生成乙個config檔案)
// 設定使用者項中cluster-admin使用者證書認證字段
kubectl config set
-credentials cluster-admin
--certificate-authority
=/root/ca.pem --client-key
=/root/admin-key
.pem --client-certificate
=/root/admin.pem
// 設定環境項中預設上下文
kubectl config set
-context default --cluster=kubernetes --user=cluster-admin
// 設定預設環境項為default
kubectl config use-context default
最終就在當前目錄下.kube隱藏目錄下生成了乙個config檔案,後面就是通過這個檔案訪問集群,其內容如下:
apiversion: v1
clusters:
- cluster:
certificate-authority: /root/ca.pem
server:
name: kubernetes
contexts:
- context:
cluster: kubernetes
user: cluster-admin
name: default
current-context: default
kind: config
preferences: {}
users:
- name: cluster-admin
user:
as-user
-extra: {}
client-certificate: /root/admin.pem
client-key: /root/admin-key
.pem
出現這個報錯:user "admin" cannot list nodes at the cluster scope
,可在master上執行這個命令kubectl create clusterrolebinding root-cluster-admin-binding --clusterrole=cluster-admin --user=admin
kubectl命令列管理工具
命令 描述create 通過檔名或標準輸入建立資源 expose 將乙個資源公開為乙個新的service run在集群中執行乙個特定的映象 set在物件上設定特定的功能 get顯示乙個或多個資源 explain 文件參考資料 edit 使用預設的編輯器編輯乙個資源 delete 通過檔名 標準輸入 ...
遠端登入管理工具介紹
1 命令列遠端管理工具 1 putty 注意 用ssh 協議一般不用 root 登入,而是用普通使用者身份 2 securecrt 功能很強大 需要付費 2 如果你想要圖形介面的遠端管理工具 1 vnc 免費的,幾乎支援所有作業系統 2 xmanager 乙個收費軟體,功能很強大 3 實現 wind...
Ansible遠端管理工具
目 錄 第1章 ansible 第一章 ansible的簡介 1 ansible的軟體結構。2 ansible的特性。第二章 ansible的基礎應用 1 ansible管理端的安裝。2 ansible被管控主機的定義。3 配置管理節點基於ssh秘鑰登入被管理節點。4 ansible命令的用法介紹。...