配置kubectl用戶端通過token方式訪問kube-apiserver

來源:互聯網
上載者:User
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。

協助文檔

使用的變數

本文檔用到的變數定義如下:

$ export MASTER_IP=XX.XX.XX.XX # 替換為 kubernetes master VIP$ export KUBE_APISERVER="https://${MASTER_IP}:6443"$

建立 kubectl config 檔案

$ # 設定叢集參數$ kubectl config set-cluster kubernetes \  --insecure-skip-tls-verify=true \  --server=${KUBE_APISERVER} $ # 設定用戶端認證參數$ kubectl config set-credentials crd-admin \ --token=7176d48e4e66ddb3557a82f2dd316a93 $ # 設定上下文參數$ kubectl config set-context kubernetes \  --cluster=kubernetes \  --user=crd-admin  \  --namespace=crd $ # 設定預設上下文$ kubectl config use-context kubernetes
  • 使用命令 head -c 16 /dev/urandom | od -An -t x | tr -d ' ' 產生token

kube-apiserver設定

添加kube-apiserver端token認證

$ cat > /etc/kubernetes/pki/token_auth_file<<EOF7176d48e4e66ddb3557a82f2dd316a93,crd-admin,1 EOF
  • 第一列為剛剛產生的token,要與config裡的token一致

  • 第二列為user, 要與config裡的use一致

  • 編號或是序號

添加kube-spiserver啟動參數 --token-auth-file=/etc/kubernetes/pki/token_auth_file

  • 注意地址

  • 需要重啟kube-apiserver

  • 認證驗證和token和同時啟用的,但是token和使用者名稱密碼,不可同時啟用

配置用戶端RBAC相關

限制 crd-admin 使用者的行為,需要使用 RBAC 將該使用者的行為限制在crd namespace 空間範圍內

kubectl create -f crd-rbac.yaml

這樣 crd-admin 使用者對 crd namespace 具有完整存取。

crd-rbac.yaml具體內容:

apiVersion: rbac.authorization.k8s.io/v1kind: RoleBindingmetadata:  name: crdadmin-admin-binding  namespace: crdroleRef:  apiGroup: rbac.authorization.k8s.io  kind: ClusterRole  name: adminsubjects:- apiGroup: rbac.authorization.k8s.io  kind: User  name: crd-admin

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.