博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
kubernetes客户端授权
阅读量:7009 次
发布时间:2019-06-28

本文共 2020 字,大约阅读时间需要 6 分钟。

hot3.png

生成kubernetes集群用户的kubeconfig文件并设置context。

思路

  1. 用集群证书和私钥生成用户证书和密钥
  2. 为用户创建特定的namespace
  3. 为用户创建角色和绑定角色
  4. 打印客户端kubelet context 配置命令

脚本

# usernameuser='sch'# user access namespacenamespace='sch'# path contains ca crt and ca keycapath=/etc/kubernetes/pki# seld sign crt valid durationdays=365# generate private keyopenssl genrsa -out $user.key 2048# generate csropenssl req -new  -key $user.key  -out $user.csr -subj "/CN=$user"# generate user crtopenssl x509 -req -in $user.csr -CA $capath/ca.crt -CAkey $capath/ca.key -CAcreateserial -out $user.crt -days $daysif [ $? -ne 0  ]; then  echo "ERROR: generate user crerdentials error!"  exit;fi# create kubernetes namespacekubectl create namespace $namespace# create rolecat <
role.yamlkind: RoleapiVersion: rbac.authorization.k8s.io/v1beta1metadata: namespace: $namespace name: adminrules:- apiGroups: [""] resources: ["*"] verbs: ["*"]EOF# role bindingcat <
role-binding.yamlkind: RoleBindingapiVersion: rbac.authorization.k8s.io/v1beta1metadata: name: admin-binding namespace: $namespacesubjects:- kind: User name: $user apiGroup: ""roleRef: kind: Role name: admin apiGroup: ""EOF# kubernetes apply configkubectl apply -f role.yamlkubectl apply -f role-binding.yaml# print context config commandecho ""echo "**************************************************"echo "Follow these steps to config client"echo "1. copy $user.crt $user.key $capath/ca.crt to client"echo "2. add \"10.61.150.188 k8s.ict.ac.cn\" to client hosts"echo "3. install kubelet on client mashine:"echo "4. config kubelet context(** must int client ca file directory **):"echo ""echo "kubectl config set-credentials $user --client-certificate=$user.crt --client-key=$user.key"echo "kubectl config set-cluster kubernetes --server https://k8s.ict.ac.cn:6443 --certificate-authority=ca.crt"echo "kubectl config set-context default --user=$user --cluster=kubernetes --namespace $namespace"echo "kubectl config use-context default"

转载于:https://my.oschina.net/hgfdoing/blog/3013639

你可能感兴趣的文章
nginx做负载均衡,引起写io大的优化
查看>>
关于博客不能显示上传图片的问题
查看>>
AMD
查看>>
.net webapi自定义序列化时间
查看>>
将博客搬至CSDN
查看>>
Unity 中Token的应用
查看>>
Mysql 基于 Amoeba 的 读写分离
查看>>
借口退避算法
查看>>
我的友情链接
查看>>
IMAP4协议让企业邮件系统收发更灵活方便
查看>>
Hadoop MapReduce流程
查看>>
exe4j 给jar打包exe文件
查看>>
win ser 2003域架构升级到win ser2008域架构
查看>>
10个最好用的在线编译/调试工具
查看>>
我的友情链接
查看>>
利用栈操作写的迷宫程序
查看>>
python练习-raw_input()
查看>>
重定向
查看>>
CentOS 安装详解
查看>>
heartbeat+DRBD+NFS
查看>>