Jenkins通过kubernetes连接K8s集群

在jenkins网页设置下载插件:kubernetes

重启jenkins

点击Clouds 点击New Cloud

**查看****K8S集群地址:**kubectl cluster-info


输出解密后的证书内容:k8s_crt=(cat /etc/kubernetes/admin.conf \| awk -F: '/certificate authority-data/{print 2}' | tr -d ' ')
echo $k8s_crt | base64 -d

创建jenkins账户:root@k8s-master \~# kubectl create sa jenkins

创建role角色:
cat role.txt
kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
namespace: default
name: pod-reader-role
rules:

  • apiGroups: ""
    resources: "pods"
    verbs: "get", "list", "watch","create","update","delete"
    root@k8s-master \~# kubectl apply -f role.txt

添加bindroling绑定:
cat rolebinding.txt
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
namespace: default
name: pod-reader-role-binding
subjects:

  • kind: ServiceAccount
    name: jenkins
    namespace: default
    roleRef:
    kind: Role
    name: pod-reader-role
    apiGroup: rbac.authorization.k8s.io
    root@k8s-master \~# kubectl apply -f rolebinding.txt

生成token:kubectl -n default create token jenkins输出的内容复制

点击连接测试,左侧显示k8s集群版本

创建目录:vim /root/k8s/pod.yml

git add pod.yml

git commit -m "pod"

git push origin master

scp .kube/config root@192.168.11.100:/root

docker exec -it -u root 085b46f26715 bash

chown jenkins:jenkins /var/config

mv /var/config /var/jenkins_home/.kube/

ls -l /var/jenkins_home/.kube/config

在宿主机直接安装:

cat <<EOF | tee /etc/yum.repos.d/kubernetes.repo

kubernetes

name=Kubernetes

baseurl=https://mirrors.aliyun.com/kubernetes-new/core/stable/v1.28/rpm/

enabled=1

gpgcheck=1

gpgkey=https://mirrors.aliyun.com/kubernetes-new/core/stable/v1.28/rpm/repodata/repomd.xml.key

EOF

yum install -y kubectl

在docker安装k8s:curl -LO "https://dl.k8s.io/release/v1.28.15/bin/linux/amd64/kubectl" && chmod +x kubectl && mv kubectl /usr/local/bin/

验证安装:kubectl version --client

创建的项目统一放在容器:/var/jenkins_home/workspace/

jenkins在主机上的放在:/var/lib/jrnkind/eotkspsve/

相关推荐
IT界的老黄牛1 小时前
Jenkins 监控一条龙:接入、看板 9964、11 条告警规则直接抄走
jenkins·grafana·prometheus·监控·ci-cd·告警规则
SkyWalking中文站2 小时前
SkyWalking 11 与 BanyanDB 0.11:在存储引擎内部实现 Trace 尾部采样
运维·监控·自动化运维
姚不倒3 小时前
etcd 学习系列(二):集群架构 —— 3 节点是如何工作的
运维·架构·etcd
pt10433 小时前
网络自动化Python课程:Cisco PyATS网络自动化测试框架
运维·自动化
小袁拒绝摆烂5 小时前
Jenkins部署经验
运维·jenkins
刚入门的大一新生5 小时前
Linux-进程控制
linux·运维·服务器·c++
上火的金鱼妹5 小时前
K8S基础组件作用和关系整理
linux·运维·服务器·kubernetes
Vcaker5 小时前
Linux学习25-harbor私有仓库部署
linux·运维·学习
醉颜凉6 小时前
网络安全必学:粘性MAC地址(Sticky MAC)原理与应用全解析
运维·服务器·网络·安全·web安全
不懂的浪漫6 小时前
ToDesk 连接 Linux 后分辨率过低的解决方法
linux·运维·数据库