基于K8S配置Jenkins主从节点实例

基于K8S配置Jenkins主从节点实例

1.配置Jenkins主节点

主节点就是按照Jenkins节点

在Jenkins主节点中生成SSH密钥对,并将公钥添加到目标节点的authorized_keys文件中。

1.确认 Jenkins Pod 名称

bash 复制代码
[root@master var]# kubectl get pods -n devops-tools
NAME                      READY   STATUS    RESTARTS   AGE
jenkins-b96f7764f-drtz2   1/1     Running   0          52m

2.进入 Jenkins Pod:

bash 复制代码
[root@master var]# kubectl  exec -it  jenkins-b96f7764f-drtz2 -n devops-tools -- /bin/bash
jenkins@jenkins-b96f7764f-drtz2:/$ ls
bin  boot  dev	etc  home  lib	lib64  media  mnt  opt	proc  root  run  sbin  srv  sys  tmp  usr  var

3.生成SSH密钥对

bash 复制代码
jenkins@jenkins-b96f7764f-drtz2:~$ ssh-keygen -t rsa -b 4096 -C "jenkins" -f /var/jenkins_home/.ssh/id_rsa -N ""
Generating public/private rsa key pair.
/var/jenkins_home/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Your identification has been saved in /var/jenkins_home/.ssh/id_rsa
Your public key has been saved in /var/jenkins_home/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:1cqf53fIpx1kkDTUvFQ3ARMw75RbhBUdOozweab6mhI jenkins
The key's randomart image is:
+---[RSA 4096]----+
|         . ooBBBO|
|          o.B.B++|
|          .+.%...|
|         o .* =. |
|        S o. o o |
|       E  .. .o  |
|        ..  o..o |
|       .  o  oo.=|
|        .o..  o+o|
+----[SHA256]-----+

4.将公钥复制到目标节点:

bash 复制代码
jenkins@jenkins-b96f7764f-drtz2:~$ ssh-copy-id -i /var/jenkins_home/.ssh/id_rsa.pub root@172.16.103.197
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/var/jenkins_home/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@172.16.103.197's password: 

Number of key(s) added: 

Now try logging into the machine, with:   "ssh 'root@172.16.103.197'"
and check to make sure that only the key(s) you wanted were added.

2.配置Jenkins的node1节点

1.安装java

在目标节点(172.16.103.197)上安装 Java 11 或更高版本:

bash 复制代码
root@node1 bin]# sudo yum install java-11-openjdk -y

上次元数据过期检查:1:27:01 前,执行于 2024年08月05日 星期一 04时00分42秒。
依赖关系解决。
===============================================================================================================================================
 软件包                                     架构                     版本                                    仓库                         大小
===============================================================================================================================================
安装:
 java-11-openjdk                            x86_64                   1:11.0.23.0.9-3.oc8                     AppStream                   475 k
安装依赖关系:
 java-11-openjdk-headless                   x86_64                   1:11.0.23.0.9-3.oc8                     AppStream                    42 M

事务概要
===============================================================================================================================================
安装  2 软件包

总下载:42 M
安装大小:179 M
下载软件包:
(1/2): java-11-openjdk-11.0.23.0.9-3.oc8.x86_64.rpm                                                            417 kB/s | 475 kB     00:01    
(2/2): java-11-openjdk-headless-11.0.23.0.9-3.oc8.x86_64.rpm                                                   5.1 MB/s |  42 MB     00:08    
-----------------------------------------------------------------------------------------------------------------------------------------------
总计                                                                                                           5.1 MB/s |  42 MB     00:08     
运行事务检查
事务检查成功。
运行事务测试
事务测试成功。
运行事务
  运行脚本: java-11-openjdk-headless-1:11.0.23.0.9-3.oc8.x86_64                                                                            1/1 
  准备中  :                                                                                                                                1/1 
  安装    : java-11-openjdk-headless-1:11.0.23.0.9-3.oc8.x86_64                                                                            1/2 
  运行脚本: java-11-openjdk-headless-1:11.0.23.0.9-3.oc8.x86_64                                                                            1/2 
  安装    : java-11-openjdk-1:11.0.23.0.9-3.oc8.x86_64                                                                                     2/2 
  运行脚本: java-11-openjdk-1:11.0.23.0.9-3.oc8.x86_64                                                                                     2/2 
  运行脚本: java-11-openjdk-headless-1:11.0.23.0.9-3.oc8.x86_64                                                                            2/2 
  运行脚本: java-11-openjdk-1:11.0.23.0.9-3.oc8.x86_64                                                                                     2/2 
  验证    : java-11-openjdk-1:11.0.23.0.9-3.oc8.x86_64                                                                                     1/2 
  验证    : java-11-openjdk-headless-1:11.0.23.0.9-3.oc8.x86_64                                                                            2/2 

已安装:
  java-11-openjdk-1:11.0.23.0.9-3.oc8.x86_64                        java-11-openjdk-headless-1:11.0.23.0.9-3.oc8.x86_64                       

完毕!

2.配置 Jenkins node1节点的 Java 路径

1.添加Java环境变量

bash 复制代码
[root@node1 bin]# vim /etc/profile
#行尾添加
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.23.0.9-3.oc8.x86_64
export PATH=$JAVA_HOME/bin:$PATH

2.生效Java环境变量

bash 复制代码
[root@node1 bin]# source  /etc/profile
[root@node1 bin]# java -version
openjdk version "11.0.23" 2024-04-16 LTS
OpenJDK Runtime Environment (Red_Hat-11.0.23.0.9-2) (build 11.0.23+9-LTS)
OpenJDK 64-Bit Server VM (Red_Hat-11.0.23.0.9-2) (build 11.0.23+9-LTS, mixed mode, sharing)
[root@node1 bin]# 

3.Jenkins网页页面添加node1节点

1.创建node1节点



2.设置node1节点

生成的密钥:

复制到你添加的Key里

c 复制代码
jenkins@jenkins-b96f7764f-drtz2:~$ cat /var/jenkins_home/.ssh/id_rsa


保存,然后刷新当前页面

相关推荐
Keep striving6 小时前
SpringMVC基于注解使用:国际化
java·前端·spring·servlet·tomcat·maven
大江东去了吗8 小时前
k8s HPA
云原生·容器·kubernetes
是芽芽哩!11 小时前
【Kubernetes】常见面试题汇总(五)
云原生·容器·kubernetes
雨声不在11 小时前
在jenkins中获取git的修改记录的方法
git·jenkins
Milo_K11 小时前
Servlet-学习笔记-上
笔记·学习·servlet
dawn19122812 小时前
详解Spring中的单例模式
java·后端·spring·servlet·单例模式
芦苇浮绿水13 小时前
记一次升级 Viper、ETCD V3操作Toml
数据库·kubernetes·go·etcd
妍妍的宝贝15 小时前
kubernetes微服务之ingress-nginx
linux·运维·nginx·docker·微服务·容器·kubernetes
Akamai中国16 小时前
如何通过Autoscaler实现Kubernetes的伸缩?
云原生·容器·kubernetes·云计算·云服务·akamai·linode
东方-phantom20 小时前
K8S-部署Postgres
云原生·容器·kubernetes