引言
基于上一篇创建好了较新版本的k8s v1.28.0+containerd v1.7.27,本文描述在另一台redHat9.3上安装jinkens并接入k8s集群,用于后续快速发布部署个人服务应用。
环境准备
1、redHat9.3虚拟机一台,可以连接公网且与k8s的3台机器可以网络连通;
2、确保有至少2C、4GB、50GB以上的配置;
如下图:

安装java21
#会默认安装java1.8
sudo dnf update -y
#安装java21
sudo dnf install java-21-openjdk-devel -y
java -version
#设置默认java版本
sudo alternatives --config java
安装jinkens
#添加Jenkins仓库并安装
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io-2023.key
sudo dnf install jenkins -y
#启动并启用Jenkins服务
sudo systemctl enable jenkins
sudo systemctl start jenkins
sudo systemctl status jenkins

启动成功记录密码

放通防火墙
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --reload
安装成功
如下图,填入密码

选择社区推荐的插件

等待安装完成

创建管理员用户

对接Kubernetes
安装插件
登录jenkins,在系统管理->插件管理,找到可用插件
分别搜索安装以下插件:
Kubernetes
Kubernetes CLI
Pipeline
配置 Kubernetes 云
找到clouds管理



配置k8s:
通过执行命令获取ca.crt文件内容
cat /etc/kubernetes/pki/ca.crt

kubectl create serviceaccount jenkins -n jenkins
创建jenkins角色的配置文件
nano jenkins-role-binding.yaml
内容如下:
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: jenkins-role-binding
namespace: jenkins
subjects:
- kind: ServiceAccount
name: jenkins
namespace: jenkins
roleRef:
kind: Role
name: admin
apiGroup: rbac.authorization.k8s.io将配置文件生效
kubectl apply -f jenkins-role-binding.yaml
新增凭据,先获取token再在页面上新增secret
kubectl get sa -n jenkins
kubectl describe sa -n jenkins
kubectl describe secrets jenkins-secret -n jenkins 


连接测试成功

填写jenkins地址

点击保存

成果检验
如下图配置完成
