【K8s】Kubernetes 生成特定 Kubeconfig 文件

2024-09-02 12:47:05 浏览数 (3)

以下内容均来自个人笔记并重新梳理,如有错误欢迎指正!

如果对您有帮助,烦请点赞、关注、转发!如果您有其他想要了解的,欢迎私信联系我~

背景介绍

默认情况下,Kubernetes 集群原始的 Kubeconfig 文件,可以管理所有命名空间下的资源。但在实际情况中,如果 Kubernetes 集群被提供给多个项目组使用时,则需要将项目成员的资源管理权限限制在特定命名空间下,以防止其误操作不属于自己的项目环境。

本文将介绍一种只能管理特定命名空间的 Kubeconfig 文件的生成方法。

基本概念

Kubeconfig 是 Kubernetes 集群的配置文件,它允许用户通过命令行工具 kubectl 与 Kubernetes 集群进行交互。

Kubeconfig 文件默认位于用户家目录下的 .kube/config 文件,也可以指定其他路径。

Kubeconfig 文件是一个 YAML 格式的文件,它包含以下主要内容:

  • clusters:包含集群信息,如 API 服务器地址
  • users:包含用户认证信息,如用户名、密码或证书
  • contexts:定义了集群、用户和命名空间的上下文组合,用于快速切换不同的环境配置
  • current-context:指定当前使用的上下文

生成流程

1、创建密钥

代码语言:javascript复制
openssl genrsa -out demo-user.key 2048

2、创建 CSR(证书签名申请)

代码语言:javascript复制
openssl req -new -key demo-user.key -out demo-user.csr -subj "/CN=demo-user/O=demo-group"
 



	

0 人点赞