k8s使用新增user配置kubectl在各个节点都可运行(代码片段)

xiao_pai_pai xiao_pai_pai     2022-11-24     336

关键词:

k8s增加普通用户User

普通用户并不是通过k8s来创建和维护,是通过创建证书和切换上下文环境的方式来创建和切换用户。
其实创建用户的步骤,就是手动部署k8s集群里的一个步骤。
创建过程见下:

1、创建用户证书

[[email protected]]# cat  userkubectl-csr.json

  "CN": "userkubectl",           #####userkubectl用户名字,可自行定义,与后面的名字要保持一致
  "key": 
    "algo": "rsa",
    "size": 2048
  ,
  "names": [
    
      "C": "CN",
      "ST": "SZ",
      "L": "SZ",
      "O": "k8s",
      "OU": "4Paradigm"
    
  ]

2、在master节点上执行 生成user证书
[[email protected]]#  cfssl gencert -ca=/etc/kubernetes/cert/ca.pem -ca-key=/etc/kubernetes/cert/ca-key.pem -config=/etc/kubernetes/cert/ca-config.json -profile=kubernetes userkubectl-csr.json | cfssljson -bare userkubectl
 -ca=/etc/kubernetes/cert/ca.pem                  为k8s apiserver证书
 -ca-key=/etc/kubernetes/cert/ca-key.pem          为k8s apiserver证书
 -config=/etc/kubernetes/cert/ca-config.json      为k8s apiserver证书

3、生成证书证书如下
[[email protected]]# ls
userkubelet.csr  userkubelet-csr.json 
userkubelet-key.pem userkubelet.pem
3、在master节点上执行设置集群参数
kubectl config set-cluster kubernetes --certificate-authority=/etc/kubernetes/cert/ca.pem --embed-certs=true --server=https://xxx.xxx.xxx.xxx:4443 --kubeconfig=kubectl.kubeconfig
               注释: --server=https://xxx.xxx.xxx.xxx:4443  根据自己master节点进行设置
4、在master节点上执行设置客户端认证参数
[[email protected]]# kubectl config set-credentials userkubectl --client-certificate=userkubectl.pem --client-key=userkubectl-key.pem --embed-certs=true --kubeconfig=kubectl.kubeconfig
User "userkubectl" set.
5、在master节点
设置上下文参数

[[email protected]]# kubectl config set-context kubernetes --cluster=kubernetes --user=userkubectl --kubeconfig=kubectl.kubeconfig
Context "kubernetes" created.
6、授予userkubectl cluster-admin权限  可根据不同授权给予创建role 或者cluserrole权限给用户
[[email protected]]# kubectl create clusterrolebinding kubectl-bootstrap --clusterrole=cluster-admin --user=userkubelet
7、将生成的kubectl.kubeconfig文件复制至各节点的/root/.kube/下,并修改名字为config

注释:需要在各node节点上面查看是否设置了 $KUBECONFIG环境变量,如果设置了需要把kubectl.kubeconfig设置成环境变量下的文件
 


 



k8s实操部署应用(代码片段)

文章目录使用kubectl创建Deployment使用kubectl创建Deployment前边咱搭建了集群环境,现在咱来部署一下应用,不然集群搭建来干嘛?为此,我们需要先创建KubernetesDeployment配置。Deployment指挥Kubernetes如何创建和更新应用... 查看详情

k8s-创建node节点kubeconfig配置文件(代码片段)

Kubeconfig需要配置如下TLSBootstrappingTokenkubeletkubeconfigkube-proxykubeconfig下载kubectlkubectl下载地址:https://kubernetes.io/docs/tasks/tools/install-kubectl/我测试选择的是安装kubectl二进制文件linux最新版本下载地址:curl-LOhttps:// 查看详情

k8s集群问题记录

...问题解决思路主要学习路径:rancher(k8s)->rke->helm->kubectl->k8s常见命令总结:怎么解决简单就怎么解决例如rancher的安装使用helm安装有问题,官网有bug就使用docker的方式安装一样简便,只是个客户端没必要死扣对于由于环境... 查看详情

使用kubeadm搭建高可用的k8s集群(2022年1月亲测有效)

...5.1安装Docker5.2添加阿里云YUM软件源5.3安装kubeadm,kubelet和kubectl由于版本更新频繁,这里指定版本号部署:6.1创建kubeadm配置文件在具有vip的master上操作,这里为master16.2在master1节点执行按照提示保存以下内容,一会要使用(kubeadmin... 查看详情

k8s中kubectl详解(代码片段)

...理方法查看版本信息查看资源对象简写查看集群信息配置kubectl自动补全node节点查看日志1.2声明式资源管理办法二、基本信息查看查看master节点状态查看命名空间描述某个资源的详细信息(deployment,pod等)查看default命名空间的所有... 查看详情

k8s中kubectl详解(代码片段)

...理方法查看版本信息查看资源对象简写查看集群信息配置kubectl自动补全node节点查看日志1.2声明式资源管理办法二、基本信息查看查看master节点状态查看命名空间描述某个资源的详细信息(deployment,pod等)查看default命名空间的所有... 查看详情

k8s中kubectl详解(代码片段)

...理方法查看版本信息查看资源对象简写查看集群信息配置kubectl自动补全node节点查看日志1.2声明式资源管理办法二、基本信息查看查看master节点状态查看命名空间描述某个资源的详细信息(deployment,pod等)查看default命名空间的所有... 查看详情

kubernetes如何对kubectl做权限管理

参考技术A定制kubectl可以操作k8s资源的权限,比如,对所有资源只能读取,不能增删改。kubernetes本身支持RBAC权限校验,现在的主流版本已经默认支持,并默认开启了。你也可以通过查看apiserver配置来看自己的k8s是否支持我们要... 查看详情

kubeadmin搭建k8s环境与harbor私有仓库(代码片段)

...2.3所有节点安装Docker2.4所有节点安装kubeadm,kubelet和kubectl2.5部署K8S集群2.6初始化kubeadm2.7设定kubectl2.8在node节点上执行`kubeadmjoin`命令加入群集2.9 查看详情

kubeadmin搭建k8s环境与harbor私有仓库(代码片段)

...2.3所有节点安装Docker2.4所有节点安装kubeadm,kubelet和kubectl2.5部署K8S集群2.6初始化kubeadm2.7设定kubectl2.8在node节点上执行`kubeadmjoin`命令加入群集2.9 查看详情

centos7.6安装k8s(kubadmin高可用)

...对象的工具kubeadm用于初始化集群,启动集群的命令工具kubectl用于和集群通信的命令行,通过kubectl可以部署和管理应用,查看各种资源,创建、删除和更新各种组件安装版本为最新1.22.2也可以根据自己所需要的版本来安装部署查... 查看详情

k8s—kubectl命令简单使用(代码片段)

简单整理一、kubectl使用1.1查询命令1.2命名空间操作二、项目的生命周期2.1创建2.2发布2.3更新2.4回滚一、kubectl使用1.1查询命令查看版本信息kubectlversion查看资源对象简写kubectlapi-resources查看集群信息kubectlcluster-info配置kubectl自动补... 查看详情

k8s—kubectl命令简单使用(代码片段)

简单整理一、kubectl使用1.1查询命令1.2命名空间操作二、项目的生命周期2.1创建2.2发布2.3更新2.4回滚一、kubectl使用1.1查询命令查看版本信息kubectlversion查看资源对象简写kubectlapi-resources查看集群信息kubectlcluster-info配置kubectl自动补... 查看详情

k8s中kubectl详解(代码片段)

...理方法查看版本信息查看资源对象简写查看集群信息配置kubectl自动补全node节点查看日志1.2声明式资源管理办法二、基本信息查看查看master节点状态查看命名空间描述某个资源的详细信息(deployment,pod等)查看default命名空间的所有... 查看详情

0-1安装和配置kubectl

使用k8s的命令行工具kubectl来部署和管理应用。可以用kubectl来查看集群的资源,创建,删除,更新组件,查看你的新集群,启动测试的应用。开始之前你必须使用和你的集群的版本接近的kubectl版本。例如:v1.2的客户端可以在版... 查看详情

云原生•kubernetes搭建k8s集群(kubeadm方式)(代码片段)

...统初始化3.Docker的安装4.添加阿里云yum源5.kubeadm、kubelet、kubectl的安装6.在Master节点中部署集群7.将node节点加入集群8.部署CNI网络插件四、方法总结一、k8s集群平台规划k8s集群可以有两种规划方式,单master集群和多master集群。1.... 查看详情

读书笔记kubernetesinaction

...行管理。pod的YAML描述文件类似如下:可以使用命令 kubectlcreate-fkubia-manual.yaml 创建一个pod。下面是一些常用命令:kubectl get po kubia-manual  –o  yaml#查看描述kubectl get pods#列出podkubectl logs&... 查看详情

k8s集群新增节点

节点为centos7.4一、node节点基本环境配置1、配置主机名2、配置hosts文件(master和node相互解析)3、时间同步ntpdatepool.ntp.orgdateecho‘*/10****/usr/sbin/ntpdatepool.ntp.org‘>>/var/spool/cron/rootcrontab-l4、关闭防火墙和selinuxsystemctlstopfirewalldsys... 查看详情