云计算力工 2024-06-29 16:37 采纳率: 0%
浏览 12

k8s1.25如何获取类似openstack一样的token

k8s1.25版本如何获取一个类似于openstack中一样的token
我使用rbac进行授权

[root@master ~]# kubectl create sa api 
[root@master ~]# kubectl create clusterrolebinding api --clusterrole=admin --serviceaccount=default:api 

但是当我查看并没有发现token,这是为什么?

[root@master ~]# kubectl describe secret 
  • 写回答

2条回答 默认 最新

  • 专家-赤兔[在线] 优质创作者: 编程框架技术领域 2024-06-29 16:37
    关注

    引自免费微信小程序:皆我百晓生

    要解决这个问题,你需要在Kubernetes 1.25版本中为RBAC(Role-Based Access Control)设置令牌。这里是一个简化的步骤指南:

    1. 创建服务账号:首先,你需要创建一个服务账户,并将它与Kubernetes集群相关联。这可以通过kubectl create serviceaccount命令完成。
    kubectl create serviceaccount kube-system
    
    1. 添加服务账号到RBAC:接下来,你需要添加服务账号到角色和策略中。为此,你可以创建一个新角色并为其添加权限。然后,你可以创建一个新的策略,将其关联到新的角色上,以便可以控制对资源的访问。
    kubectl apply -f rbac.yaml
    
    1. 创建令牌:为了使用令牌进行授权,你需要从kubeconfig文件中获取一个令牌。这个令牌通常由OpenStack提供,用于访问特定的API端点。你可以通过Kubernetes API调用来获取令牌,例如:

      apiVersion: v1
      kind: Config
      data:
        token: "your_token_here"
      
    2. 应用令牌:一旦有了令牌,就可以将它应用到kubeconfig文件中。

      kubectl config set-cluster openstack <your_cluster_name> \
         --server <your_openstack_endpoint> \
         --certificate-authority <path_to_certificate_file> \
         --insecure-skip-tls-verify \
         --embed-certs
      
    3. 验证令牌:最后一步是验证你的令牌是否有效。这通常涉及到向一个特定的API端点发送请求,并检查响应中的状态码。如果你看到成功状态码,那么你的令牌应该是有效的。

    注意:这些步骤可能因你的具体环境而有所不同。确保按照Kubernetes官方文档上的指导进行操作。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 6月29日