k8s
组件 资源清单
pod 生命周期
pod 控制器
服务发现
runcher
KubeSphere
Helm
helm命令
helm 常用内置对象
helm 内置函数
helm 的逻辑 和 流程控制
helm 中变量在作用域、列表、元祖、字典中的引用
helm 使用define定义子模版、template和include调用
helm 获取其他文件的内容和文件名
社区的Helm chart仓库
helm几个常用仓库
存储 configMap
进入k8s pod
k8s Node节点的调试
k8s 部署
sealos 部署
kubeadm 1.28部署
增加 node 节点
在aws 上自建k8s
利用NFS动态提供Kubernetes后端存储卷
rook-ceph
CephFS挂载
Ceph Dashboard
ingress
k8s集成kube-prometheus
ServiceMonitor 添加配置
Prometheus 长期远程存储方案 VictoriaMetrics
解决ControllerManager、Scheduler、watchdog监控问题
抓取配置说明
kubernetes配置imagePullSecrets秘钥来拉取镜像
在 Kubernetes 裡跑 curl 來測試內部服務
MetalLB
cloudflare-tunnel-ingress-controller
K8S kubectl 自动补全
argocd
helm部署redis-culster集群
改变默认 StorageClass
自定义指标HPA
istio
kiali
k8s接入graylog
Labels
DNS
HPA
ConfigMap挂载导致容器目录覆盖的问题
污点容忍度
身份认证与权限 RBAC
command
运行crictl ps -a 报错
etcd
cka证书
cert-manager
Kubernetes 创建普通账号
部署 metrics-server 指标
deployment 重启
Kubernetes中如何优雅的解决Pod时区问题
alertmanager
oom killed
eks挂载efs
eks创建集群
eksctl awscli kubectl
污点和容忍度
Kubernetes 删除namespace Terminating解决脚本
k8s 部署 kafka 集群
ack ingress获取客户端客户端真实IP
ingress 反向代理 ws
本文档使用 MrDoc 发布
-
+
首页
Kubernetes 创建普通账号
# 一、为用户创建证书 创建证书只是实现 Kubernetes 认证用,具体拥有什么样的权限取决于 RBAC 授权。也就是 Role、ClusterRole。 ## 1.1 创建私钥 ``` cd /etc/kubernetes/pki (umask 077; openssl genrsa -out reader.key 2048) ``` 输出如下 ``` Generating RSA private key, 2048 bit long modulus ............+++ ...........................+++ e is 65537 (0x10001) ``` ## 1.2 创建证书颁发请求 ``` openssl req -new -key reader.key -out reader.csr -subj "/CN=reader" ``` > CN 要跟后面的 User 保持一致 ## 1.3 使用 CA 证书签发证书 ``` openssl x509 -req -in reader.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out reader.crt -days 3650 ``` 输出如下 ``` Signature ok subject=/CN=reader Getting CA Private Key ``` # 二、创建相应的 Role 和 RoleBinding 2.1 创建 Role ``` kubectl apply -f - <<EOF apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: name: pods-reader namespace: default rules: - apiGroups: - "" resources: - pods - pods/log verbs: - get - list - watch EOF ``` 2.2 创建 RoleBinding ``` kubectl apply -f - <<EOF apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: name: default-pods-reader namespace: default roleRef: apiGroup: rbac.authorization.k8s.io kind: Role name: pods-reader subjects: - apiGroup: rbac.authorization.k8s.io kind: User name: reader EOF ``` # 三、为普通用户创建 KUBECONFIG 配置文件 3.1 设置集群 ``` kubectl config set-cluster kubernetes \ --server=https://192.168.100.10:6443 \ --certificate-authority=/etc/kubernetes/pki/ca.crt \ --embed-certs=true \ --kubeconfig=/tmp/reader.config ``` 3.2 设置凭证 ``` kubectl config set-credentials pods-reader \ --client-certificate=/etc/kubernetes/pki/reader.crt \ --client-key=/etc/kubernetes/pki/reader.key \ --embed-certs=true \ --kubeconfig=/tmp/reader.config ``` 3.3 设置上下文 ``` kubectl config set-context pods-reader@kubernetes \ --cluster kubernetes \ --user=pods-reader \ --namespace=default \ --kubeconfig=/tmp/reader.config ``` 3.4 设置当前上下文 ``` kubectl config use-context pods-reader@kubernetes \ --kubeconfig=/tmp/reader.config ``` # 创建 管理员权限的 config ``` [root@master config]# cat ./admin-clusterRole.yaml apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: admin-role rules: - apiGroups: ["*"] resources: ["*"] verbs: ["*"] ``` ``` kubectl create clusterrolebinding admin-clusterrolebinding --clusterrole=admin-role --user=reader ```
admin
2023年11月6日 23:50
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码