Kubernetes认证和准入控制

前言

在Kubernetes中,认证(Authentication)、授权(Authorization)和准入控制(Admission Control)是安全性的关键组成部分。在之前部署的StorageClass和fluentd中我们都是用的角色授权,在Namespace中权限控制就是为Namespace设置角色访问控制策略(RBAC)这些都涉及到Kubernetes中的认证->授权->准入控制。在用户访问Kubernetes集群的时候都要经历认证->授权->准入控制。

  • 认证(Authenticating)是对客户端的认证,通俗点就是用户名密码验证
  • 授权(Authorization)授权是确定用户或实体是否具有执行特定操作的权限,是对资源的授权。Kubernetes中的资源无非是容器,最终其实就是容器的计算,网络,存储资源,当一个请求经过认证后,需要访问某一个资源(比如创建一个pod),授权检查都会通过访问策略比较该请求需要的的属性资源,(比如用户,资源和Namespace),根据授权规则判定该资源(比如某Namespace下的Pod)是否是该客户可访问的。
  • 准入控制(Admission Control)是Kubernetes的一种安全机制,用于在资源创建或修改之前对请求进行审查和验证。准入控制可以基于各种条件对请求进行筛选,例如,可以拒绝创建特定类型的资源、修改某些字段的值,或者强制执行特定的安全策略。Kubernetes 提供了一组内置的准入控制器,并允许用户编写自定义的准入控制器来满足特定的需求。

认证

  • kubernetes上的账号
    kubectl explain pods.spec可以看到有一个字段serviceAccountName(服务账号名称),这个就是我们pod连接apiserver时使用的账号,因此整个kubernetes集群中的账号有两类,ServiceAccount(服务账号),User account(用户账号)。

Service Accounts(服务账号)

用于给Pod授权访问Kubernetes API的一种身份标识是一种资源。每个命名空间都有一个默认的服务账号,可以用来控制Pod对集群资源的访问权限。

User Accounts是为人设计的,Service account则是为Pod中的进程调用Kubernetes API而设计的,User account是跨namespace的,而Service account则是仅局限它所在的Namespace;每个Namespace都会自动创建一个default service account;系统会自动在与该pod 相同的 namespace 下为其指派一个default service account。而pod和apiserver之间进行通信的账号,称为serviceAccountName。如下:

在命名空间default下创建Pod查看:    
root@master yaml]# kubectl get pods nginx-dy-6457fcbd6-c2jx9  -o yaml | grep "serviceAccountName"
 serviceAccountName: default

创建sa:

apiVersion: v1
kind: ServiceAccount
metadata:
  name: bwk
  namespace: default 
secrets:
- name: bwk-token
---
apiVersion: v1
kind: Secret
metadata:
  name: bwk-token
  namespace: default
  annotations:
    kubernetes.io/service-account.name: bwk
type: kubernetes.io/service-account-token

查看创建的sa账户

 [root@master ~]# kubectl get secret,sa
NAME               TYPE                                  DATA   AGE
secret/bwk-token   kubernetes.io/service-account-token   3      5h6m

NAME                     SECRETS   AGE
serviceaccount/bwk       1         5h6m
serviceaccount/default   0         33d

 [root@master ~]# kubectl describe sa bwk
Name:                bwk
Namespace:           default
Labels:              <none>
Annotations:         <none>
Image pull secrets:  <none>
Mountable secrets:   bwk-token
Tokens:              bwk-token
Events:              <none>

User Accounts(用户账号)

用于代表真实的用户或实体访问Kubernetes集群(登陆k8s物理机器的用户)。通常由集群管理员管理,并且通常与外部的身份验证和授权系统集成,如 LDAP、OAuth 等。

  • kubeconfig文件

在K8S集群当中,每一个用户对资源的访问都是需要通过apiserver进行通信认证才能进行访问的,那么在此机制当中,对资源的访问可以是token,也可以是通过配置文件的方式进行保存和使用认证信息,可以通过kubectl config进行查看配置(存放位置/root/.kube/)。

[root@master .kube]# kubectl config view
	apiVersion: v1
	clusters:
	- cluster:
	    certificate-authority-data: DATA+OMITTED
	    server: https://192.168.0.100:6443 #apiserverurl的地址
	  name: kubernetes                     #集群名称
	contexts:                              #定义 那个用户可以访问那个集群
	- context:
	    cluster: kubernetes
	    user: kubernetes-admin
	  name: kubernetes-admin@kubernetes   #上下文的名字,就是使用kubernetes-admin对k8s集群进行验证
	current-context: kubernetes-admin@kubernetes #当前上下文的名字kubernetes-admin它属于kubernetes集群
	kind: Config
	preferences: {}
	users:                                #定义用户
	- name: kubernetes-admin
	  user:
	    client-certificate-data: DATA+OMITTED
	    client-key-data: DATA+OMITTED

使用kubectl get svc 看到集群名称是kubernetes

[root@master .kube]# kubectl get svc 
NAME         TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)   AGE
kubernetes   ClusterIP   10.96.0.1    <none>        443/TCP   33d

clusters、contexts、users为对象列表可以定义多个集群,contexts,users。

授权

授权是确定用户或实体是否具有执行特定操作的权限。在认证通过后,Kubernetes将用户的请求与访问策略(如 RBAC规则)进行匹配,以确定用户是否被授予执行所请求操作的权限。是基于插件形式的,其常用的授权插件有以下几种:Node(节点认证)、ABAC(基于属性的访问控制)、RBAC(基于角色的访问控制)、Webhook(基于http回调机制的访问控制)其中RBAC日常经常用到。

什么是RBAC

让一个用户(Users)扮演一个角色(Role),角色拥有权限,从而让用户拥有这样的权限,随后在授权机制当中,只需要将权限授予某个角色,此时用户将获取对应角色的权限,从而实现角色的访问控制。

当采用RBAC的方式进行授权时,把对对象(k8s的资源一类)的操作权限定义到一个角色当中,再将用户绑定到该角色,从而使用户得到对应角色的权限。如果是通过rolebinding绑定role,只能对rolebingding所在的名称空间的资源有权限,属于名称空间级别的。

Kubernetes还有集群级别的授权机制,就是定义一个集群角色(ClusterRole),对集群内的所有资源都有可操作的权限,从而将User通过ClusterRoleBinding到ClusterRole,从而使User拥有集群的操作权限。Role、RoleBinding、ClusterRole和ClusterRoleBinding都是Kubernetes的资源对象,可以使用kubectl get xxx查看。
在这里插入图片描述

如图用户UserA,UserB都可以通过RoleBinding绑定Role,RoleBinding绑定ClusterRole,ClusterRoleBinding绑定ClusterRole。RoleBinding仅仅对当前名称空间有对应的权限。

ClusterRole就是定义一个ClusterRole(集群级别的角色),对ClusterRole授予所有权限,然后用户通过RoleBinding绑定到ClusterRole,就会拥有自己名称空间的管理员权限了。它就是解决了业务量非常大的时候同样权限的授权问题。

部署授权

我们部署一个Dashboard请参考:https://blog.csdn.net/qq42004/article/details/136763984
初次登录Dashboard我们创建的token登录后是无法操作的没有任何授权。我们创建一个develop的命名空间下的一个ServiceAccount用户develop。yaml文件如下,使用ClusterRoleBinding绑定cluster-admin角色。

apiVersion: v1
kind: Namespace
metadata:
  name: develop
---
apiVersion: v1
kind: ServiceAccount
metadata:
  namespace: develop
  name: develop
secrets:
- name: develop-token
---
apiVersion: v1
kind: Secret
metadata:
  name: develop-token
  namespace: develop
  annotations:
    kubernetes.io/service-account.name: develop
type: kubernetes.io/service-account-token
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: develop-na 
  namespace: develop
roleRef: #kubectl explain ClusterRoleBinding.roleRef 中对roleRef的说明RoleRef只能引用全局命名空间中的ClusterRole。如果
         #无法解析RoleRef,授权人必须返回一个错误。此字段是不可变的。
         #RoleRef包含指向正在使用的角色的信息。kind只能是ClusterRole
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole 
  name: cluster-admin #定义角色,此角色来源kubectl get ClusterRoleBinding。角色可以自己定义。
subjects:  #定义被授权对象列表
- kind: ServiceAccount
  name: develop
  namespace: develop

  

获取token登录Dashboard:

[root@master ~]# kubectl describe secret develop-token -n develop
Name:         develop-token
Namespace:    develop
Labels:       kubernetes.io/legacy-token-last-used=2024-04-13
Annotations:  kubernetes.io/service-account.name: develop
              kubernetes.io/service-account.uid: 2b80ca2c-8010-4d43-9c96-c73005e5e5a6

Type:  kubernetes.io/service-account-token

Data
====
ca.crt:     1107 bytes
namespace:  7 bytes
token:      eyJhbGciOiJSUzI1NiIsImtpZCI6ImM4ZExJQ0RDQnJfVGxVSFAzMk9NT1FnZkR1Tk5LeXdkbVp1YUxuRjVoVkUifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJkZXZlbG9wIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZWNyZXQubmFtZSI6ImRldmVsb3AtdG9rZW4iLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiZGV2ZWxvcCIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50LnVpZCI6IjJiODBjYTJjLTgwMTAtNGQ0My05Yzk2LWM3MzAwNWU1ZTVhNiIsInN1YiI6InN5c3RlbTpzZXJ2aWNlYWNjb3VudDpkZXZlbG9wOmRldmVsb3AifQ.qI1LjkMqmxews0OXjCmy_f5dHHa3QRG2onWCCafIBkkAT3fJBYCpyIaMGW-ns1yMHat4U2vEacuIJoz4CVUrQW6bFQegPl86gZADeMx3W8KDPx60bvvGKbmR40bx9pO9mao7w7A5DxjDC0stBZ53r0wl772_3mJ89RnA0CKTQ8RS5NQ0Wdhraww6zbrTqL2Wcd85QFg9okoDGJ6c_dh-SR-BC6qNKVON0EWX_9EZ-vmDM8I1iQH5cMXL9BM7OZwSSuRKO7ddb_oVdobpVKcSmJmodVXioPwM--b7uMyxjTbCG60dhIMZA1orgNBcS87D7a5xiBm97ctfvnG8ASEI3A

部署config文件

创建一个config登录Dashboard。首先创建config文件的关联账户要有操作权限,使用develop账户和/etc/kubernetes/pki/ca.crt证书。

  1. 创建配置文件

    kubectl config set-cluster kubernetes --certificate-authority=./ca.crt --server=“192.168.0.100:6443” --embed-certs=true --kubeconfig=/root/develop-admin.conf

查看cat /root/develop-admin.conf

	[root@master ~]# cat develop-admin.conf 
	apiVersion: v1
	clusters:
	- cluster:
	    certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURCVENDQWUyZ0F3SUJBZ0lJUGUyN3lTVThEVFV3RFFZSktvWklodmNOQVFFTEJRQXdGVEVUTUJFR0ExVUUKQXhNS2EzVmlaWEp1WlhSbGN6QWVGdzB5TkRBek1URXdOekE1TWpsYUZ3MHpOREF6TURrd056RTBNamxhTUJVeApFekFSQmdOVkJBTVRDbXQxWW1WeWJtVjBaWE13Z2dFaU1BMEdDU3FHU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLCkFvSUJBUURqNVBSMFltY2ZaUjZSeGZvYTg1UkF4K09INnA0WWZKemRXK0wrYXltaFV5Skc5NXRvZzZvMXlCR3kKMXpEMEZBU3NSK3VUL1c3NGRqMm85STMvU2F0dXZ2bWxNbmszaVlCbEduTFRKZGRKZEZrd1RxUVljb0ZNRHUwMQovMklsZVNZT2hkdXNtZiszSEJ3TmNlbkxGQWdZR01icWtyVzViOGJMbGI2aDZzOHczRkxLTGhndDJOVTlFRW1iCnZSRnlGZ2U2SFcwbFJmbzJhbWRodldRNHNkR2Z4NEs5UndrTDRiNkJVZ3JlSkJhM3FDZnZlTnVmWW1sOWlvNHcKU1UzSCtqd0hKL3ZzTDgvMVZxTVQxMHA1TlNrS3ZCcDZxMDJBVlg1ZEZvaGNPVldUeDdnaUU1SktEV0ZNUkNYQQpSYnI2M2tLZFlpS3RGUDV5d2FIcm93Sm5Ra0JyQWdNQkFBR2pXVEJYTUE0R0ExVWREd0VCL3dRRUF3SUNwREFQCkJnTlZIUk1CQWY4RUJUQURBUUgvTUIwR0ExVWREZ1FXQkJRSXRFK25RY25pZjZ4VEJoc293ejZWUlRZdmdqQVYKQmdOVkhSRUVEakFNZ2dwcmRXSmxjbTVsZEdWek1BMEdDU3FHU0liM0RRRUJDd1VBQTRJQkFRQlYvMzhjVXRTSAo4bEZwR3ZzTlFURm9pMmp1NDJwTUZoZFloZVdxWUd0aUN1d2dNZEhFL21tQXJUMmJuckk5MHpVQ0JxbnJ5WlV3CmFKbHJta2dQUnRXaTRjdUdCZEQwOVFxK3Q2WDk5SDJDaWpPNjdkbllXWmVCLzNjaGI1Nk04SGVOVk1Vb2w5V04KMXlnV0pqb3B2clpCNnhOblZzWmdUbHRITUxBSFhYcCtUTzJxRGIvbTQyTU9mOUhUOVFEWFBCU1JyR2h2NjQwUwpIU0JRZFh0NENKS2hFVnlXN3I2ODZBWHpFeVN5N1NJN2dKVE5ubHJUcXlTclBNQ2FNcmo2Rm5SelE5MjlzRGJhCmcrMHJFVkdVWEVGVDJYNGpPakNtUXB4SlVTVHFLdkx4c1JWUktjRVI3bXBOWmhTaXdqMWZvcTFycVlVVnpLb3YKWDM1aVQreTJWd0Z0Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K
	    server: 192.168.0.100:6443  ##apiserverurl的地址
	  name: kubernetes              #集群名称
	contexts: null
	current-context: ""
	kind: Config
	preferences: {

2.添加访问用户

DEF_NS_DEVE_TOKEN=$(kubectl get secret develop-token -n develop  -o jsonpath={.data.token}|base64 -d)
#解密develop的token并赋值给DEF_NS_DEVE_TOKEN
kubectl config set-credentials develop --token=$DEF_NS_DEVE_TOKEN --kubeconfig=/root/develop-admin.conf
#引用解密后的token并关联账户develop添加到配置文件

查看cat /root/develop-admin.conf

[root@master ~]# cat develop-admin.conf 
apiVersion: v1
clusters:
- cluster:
    certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURCVENDQWUyZ0F3SUJBZ0lJUGUyN3lTVThEVFV3RFFZSktvWklodmNOQVFFTEJRQXdGVEVUTUJFR0ExVUUKQXhNS2EzVmlaWEp1WlhSbGN6QWVGdzB5TkRBek1URXdOekE1TWpsYUZ3MHpOREF6TURrd056RTBNamxhTUJVeApFekFSQmdOVkJBTVRDbXQxWW1WeWJtVjBaWE13Z2dFaU1BMEdDU3FHU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLCkFvSUJBUURqNVBSMFltY2ZaUjZSeGZvYTg1UkF4K09INnA0WWZKemRXK0wrYXltaFV5Skc5NXRvZzZvMXlCR3kKMXpEMEZBU3NSK3VUL1c3NGRqMm85STMvU2F0dXZ2bWxNbmszaVlCbEduTFRKZGRKZEZrd1RxUVljb0ZNRHUwMQovMklsZVNZT2hkdXNtZiszSEJ3TmNlbkxGQWdZR01icWtyVzViOGJMbGI2aDZzOHczRkxLTGhndDJOVTlFRW1iCnZSRnlGZ2U2SFcwbFJmbzJhbWRodldRNHNkR2Z4NEs5UndrTDRiNkJVZ3JlSkJhM3FDZnZlTnVmWW1sOWlvNHcKU1UzSCtqd0hKL3ZzTDgvMVZxTVQxMHA1TlNrS3ZCcDZxMDJBVlg1ZEZvaGNPVldUeDdnaUU1SktEV0ZNUkNYQQpSYnI2M2tLZFlpS3RGUDV5d2FIcm93Sm5Ra0JyQWdNQkFBR2pXVEJYTUE0R0ExVWREd0VCL3dRRUF3SUNwREFQCkJnTlZIUk1CQWY4RUJUQURBUUgvTUIwR0ExVWREZ1FXQkJRSXRFK25RY25pZjZ4VEJoc293ejZWUlRZdmdqQVYKQmdOVkhSRUVEakFNZ2dwcmRXSmxjbTVsZEdWek1BMEdDU3FHU0liM0RRRUJDd1VBQTRJQkFRQlYvMzhjVXRTSAo4bEZwR3ZzTlFURm9pMmp1NDJwTUZoZFloZVdxWUd0aUN1d2dNZEhFL21tQXJUMmJuckk5MHpVQ0JxbnJ5WlV3CmFKbHJta2dQUnRXaTRjdUdCZEQwOVFxK3Q2WDk5SDJDaWpPNjdkbllXWmVCLzNjaGI1Nk04SGVOVk1Vb2w5V04KMXlnV0pqb3B2clpCNnhOblZzWmdUbHRITUxBSFhYcCtUTzJxRGIvbTQyTU9mOUhUOVFEWFBCU1JyR2h2NjQwUwpIU0JRZFh0NENKS2hFVnlXN3I2ODZBWHpFeVN5N1NJN2dKVE5ubHJUcXlTclBNQ2FNcmo2Rm5SelE5MjlzRGJhCmcrMHJFVkdVWEVGVDJYNGpPakNtUXB4SlVTVHFLdkx4c1JWUktjRVI3bXBOWmhTaXdqMWZvcTFycVlVVnpLb3YKWDM1aVQreTJWd0Z0Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K
    server: 192.168.0.100:6443
  name: kubernetes
contexts: null
current-context: ""
kind: Config
preferences: {}
users:     #定义develop用户
- name: develop
  user:
    token: eyJhbGciOiJSUzI1NiIsImtpZCI6ImM4ZExJQ0RDQnJfVGxVSFAzMk9NT1FnZkR1Tk5LeXdkbVp1YUxuRjVoVkUifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJkZXZlbG9wIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZWNyZXQubmFtZSI6ImRldmVsb3AtdG9rZW4iLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiZGV2ZWxvcCIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50LnVpZCI6IjJiODBjYTJjLTgwMTAtNGQ0My05Yzk2LWM3MzAwNWU1ZTVhNiIsInN1YiI6InN5c3RlbTpzZXJ2aWNlYWNjb3VudDpkZXZlbG9wOmRldmVsb3AifQ.qI1LjkMqmxews0OXjCmy_f5dHHa3QRG2onWCCafIBkkAT3fJBYCpyIaMGW-ns1yMHat4U2vEacuIJoz4CVUrQW6bFQegPl86gZADeMx3W8KDPx60bvvGKbmR40bx9pO9mao7w7A5DxjDC0stBZ53r0wl772_3mJ89RnA0CKTQ8RS5NQ0Wdhraww6zbrTqL2Wcd85QFg9okoDGJ6c_dh-SR-BC6qNKVON0EWX_9EZ-vmDM8I1iQH5cMXL9BM7OZwSSuRKO7ddb_oVdobpVKcSmJmodVXioPwM--b7uMyxjTbCG60dhIMZA1orgNBcS87D7a5xiBm97ctfvnG8ASEI3A
  1. 关联上下文

    kubectl config set-context develop@kubernetes --cluster=kubernetes --user=develop --kubeconfig=/root/develop-admin.conf
    #上下文的名字,使用develop对k8s集群进行验证
    kubectl config use-context develop@kubernetes --kubeconfig=/root/develop-admin.conf
    #当前上下文的名字develop它属于kubernetes集群

查看cat /root/develop-admin.conf

[root@master ~]# cat develop-admin.conf 
apiVersion: v1
clusters:
- cluster:
    certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURCVENDQWUyZ0F3SUJBZ0lJUGUyN3lTVThEVFV3RFFZSktvWklodmNOQVFFTEJRQXdGVEVUTUJFR0ExVUUKQXhNS2EzVmlaWEp1WlhSbGN6QWVGdzB5TkRBek1URXdOekE1TWpsYUZ3MHpOREF6TURrd056RTBNamxhTUJVeApFekFSQmdOVkJBTVRDbXQxWW1WeWJtVjBaWE13Z2dFaU1BMEdDU3FHU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLCkFvSUJBUURqNVBSMFltY2ZaUjZSeGZvYTg1UkF4K09INnA0WWZKemRXK0wrYXltaFV5Skc5NXRvZzZvMXlCR3kKMXpEMEZBU3NSK3VUL1c3NGRqMm85STMvU2F0dXZ2bWxNbmszaVlCbEduTFRKZGRKZEZrd1RxUVljb0ZNRHUwMQovMklsZVNZT2hkdXNtZiszSEJ3TmNlbkxGQWdZR01icWtyVzViOGJMbGI2aDZzOHczRkxLTGhndDJOVTlFRW1iCnZSRnlGZ2U2SFcwbFJmbzJhbWRodldRNHNkR2Z4NEs5UndrTDRiNkJVZ3JlSkJhM3FDZnZlTnVmWW1sOWlvNHcKU1UzSCtqd0hKL3ZzTDgvMVZxTVQxMHA1TlNrS3ZCcDZxMDJBVlg1ZEZvaGNPVldUeDdnaUU1SktEV0ZNUkNYQQpSYnI2M2tLZFlpS3RGUDV5d2FIcm93Sm5Ra0JyQWdNQkFBR2pXVEJYTUE0R0ExVWREd0VCL3dRRUF3SUNwREFQCkJnTlZIUk1CQWY4RUJUQURBUUgvTUIwR0ExVWREZ1FXQkJRSXRFK25RY25pZjZ4VEJoc293ejZWUlRZdmdqQVYKQmdOVkhSRUVEakFNZ2dwcmRXSmxjbTVsZEdWek1BMEdDU3FHU0liM0RRRUJDd1VBQTRJQkFRQlYvMzhjVXRTSAo4bEZwR3ZzTlFURm9pMmp1NDJwTUZoZFloZVdxWUd0aUN1d2dNZEhFL21tQXJUMmJuckk5MHpVQ0JxbnJ5WlV3CmFKbHJta2dQUnRXaTRjdUdCZEQwOVFxK3Q2WDk5SDJDaWpPNjdkbllXWmVCLzNjaGI1Nk04SGVOVk1Vb2w5V04KMXlnV0pqb3B2clpCNnhOblZzWmdUbHRITUxBSFhYcCtUTzJxRGIvbTQyTU9mOUhUOVFEWFBCU1JyR2h2NjQwUwpIU0JRZFh0NENKS2hFVnlXN3I2ODZBWHpFeVN5N1NJN2dKVE5ubHJUcXlTclBNQ2FNcmo2Rm5SelE5MjlzRGJhCmcrMHJFVkdVWEVGVDJYNGpPakNtUXB4SlVTVHFLdkx4c1JWUktjRVI3bXBOWmhTaXdqMWZvcTFycVlVVnpLb3YKWDM1aVQreTJWd0Z0Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K
    server: 192.168.0.100:6443
  name: kubernetes
contexts:
- context:
    cluster: kubernetes
    user: develop
  name: develop@kubernetes  #上下文的名字,使用develop对k8s集群进行验证
current-context: develop@kubernetes #当前上下文的名字develop它属于kubernetes集群
kind: Config
preferences: {}
users:
- name: develop
  user:
    token: eyJhbGciOiJSUzI1NiIsImtpZCI6ImM4ZExJQ0RDQnJfVGxVSFAzMk9NT1FnZkR1Tk5LeXdkbVp1YUxuRjVoVkUifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJkZXZlbG9wIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZWNyZXQubmFtZSI6ImRldmVsb3AtdG9rZW4iLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiZGV2ZWxvcCIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50LnVpZCI6IjJiODBjYTJjLTgwMTAtNGQ0My05Yzk2LWM3MzAwNWU1ZTVhNiIsInN1YiI6InN5c3RlbTpzZXJ2aWNlYWNjb3VudDpkZXZlbG9wOmRldmVsb3AifQ.qI1LjkMqmxews0OXjCmy_f5dHHa3QRG2onWCCafIBkkAT3fJBYCpyIaMGW-ns1yMHat4U2vEacuIJoz4CVUrQW6bFQegPl86gZADeMx3W8KDPx60bvvGKbmR40bx9pO9mao7w7A5DxjDC0stBZ53r0wl772_3mJ89RnA0CKTQ8RS5NQ0Wdhraww6zbrTqL2Wcd85QFg9okoDGJ6c_dh-SR-BC6qNKVON0EWX_9EZ-vmDM8I1iQH5cMXL9BM7OZwSSuRKO7ddb_oVdobpVKcSmJmodVXioPwM--b7uMyxjTbCG60dhIMZA1orgNBcS87D7a5xiBm97ctfvnG8ASEI3A

下载develop-admin.conf上传到Dashboard登录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值