基于K8S配置Jenkins主从节点实例
基于K8S配置Jenkins主从节点实例
- 1.配置Jenkins主节点
- 1.确认 Jenkins Pod 名称
- 2.进入 Jenkins Pod:
- 3.生成SSH密钥对
- 4.将公钥复制到目标节点:
- 2.配置Jenkins的node1节点
- 1.安装java
- 2.配置 Jenkins node1节点的 Java 路径
- 1.添加Java环境变量
- 2.生效Java环境变量
- 3.Jenkins网页页面添加node1节点
- 1.创建node1节点
- 2.设置node1节点
1.配置Jenkins主节点
主节点就是按照Jenkins节点
在Jenkins主节点中生成SSH密钥对,并将公钥添加到目标节点的authorized_keys文件中。
1.确认 Jenkins Pod 名称
[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:
[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密钥对
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.将公钥复制到目标节点:
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 或更高版本:
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环境变量
[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环境变量
[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里
jenkins@jenkins-b96f7764f-drtz2:~$ cat /var/jenkins_home/.ssh/id_rsa


保存,然后刷新当前页面

相关文章:
基于K8S配置Jenkins主从节点实例
基于K8S配置Jenkins主从节点实例 1.配置Jenkins主节点1.确认 Jenkins Pod 名称2.进入 Jenkins Pod:3.生成SSH密钥对4.将公钥复制到目标节点: 2.配置Jenkins的node1节点1.安装java2.配置 Jenkins node1节点的 Java 路径1.添加Java环境变量2.生效Java环境变…...
萱仔环境记录——git的安装流程
最近由于我有一个大模型的offer,由于我只在实验室的电脑上装了git,我准备在自己的笔记本上本地安装一个git,也给我的一个师弟讲解一下git安装和使用的过程,给我的环境安装章节添砖加瓦。 github是基于git的一个仓库托管平台。 g…...
品味食家巷蛋奶酪饼,感受西北美食魅力
在广袤的西北大地,美食的丰富多样令人叹为观止。而食家巷蛋奶酪饼,宛如一颗璀璨的明珠,散发着独特的魅力。 这款蛋奶酪饼,是传统工艺与现代口味的完美融合。而当你继续品尝,鸡蛋的鲜嫩和奶酪的浓郁醇厚便会在口中交融…...
常用的图像增强操作
我们将介绍如何用PIL库实现一些简单的图像增强方法。 [!NOTE] 初始化配置 import numpy as np from PIL import Image, ImageOps, ImageEnhance import warningswarnings.filterwarnings(ignore) IMAGE_SIZE 640[!important] 辅助函数 主要用于控制增强幅度 def int_param…...
探索TinyDB的轻量级魅力:Python中的微型数据库
文章目录 探索TinyDB的轻量级魅力:Python中的微型数据库背景:为何选择TinyDB?什么是TinyDB?如何安装TinyDB?5个简单的库函数使用方法3个场景下的应用实例常见问题与解决方案总结 探索TinyDB的轻量级魅力:Py…...
模型优化学习笔记—Adam算法
首先复习一下: 动量梯度下降: 1、算出dw、db 2、计算指数加权(移动)平均 vdw k *vdw (1-k)*dw vdb k *vdb (1-k)*db 3、梯度下降 w w - r*vdw b b - r*vdb RMSprop: 1、算出dw和db 2、算指数平均值&am…...
车辆出险报告(h5)-车辆出险记录接口-车辆相关接口
接口简介:通过vin及行驶证查询车辆出险、理赔、事故记录接口。查询成功率99%,返回URL地址的查询报告。 不能对返回的报告进行任何的修改,否则由用户自行承担相应的责任 报告结果只保留30天,如需永久保存,请您查询后自行保存 接口地…...
C基础项目(学生成绩管理系统)
目录 一、项目要求 二、完整代码实例 三、分文件编写代码实例 一、项目要求 1.系统运行,打开如下界面。列出系统帮助菜单(即命令菜单),提示输入命令 2.开始时还没有录入成绩,所以输入命令 L 也无法列出成绩。应提…...
C# 设计模式之原型模式
总目录 前言 在软件系统中,当创建一个类的实例的过程很昂贵或很复杂,并且我们需要创建多个这样类的实例时,如果我们用new操作符去创建这样的类实例,这未免会增加创建类的复杂度和耗费更多的内存空间,因为这样在内存中…...
美林数据Tempo Talents | 两大资源中心,打造开放、成长型数智人才能力平台
在数字化时代的大潮中,高校作为知识与人才培养的重要阵地,独立分散的课程资源管理方式已无法满足现代教育的需求,而数据资源的分散和碎片化也阻碍了科研和教学工作的深入进行。那么,高校如何打造一个集中、高效的课程与数据资源中…...
IDC权威认可!工业领域最佳实践案例!
近日,IDC发布了《工业领域中数据管理分析服务最佳实践案例》报告,总结行业用户在应用过程中面临的主要挑战和实践路径,并评选最佳实践案例,为行业用户提供了相关的指导建议,供市场参考。星环科技中航电梯数据中台项目入…...
未授权访问漏洞系列详解①!
Redis未授权访问漏洞 Redis 默认情况下,会绑定在 0.0.0.0:6379 ,如果没有进行采用相关的策略,比如添加防火墙规则避免其他非信任来源 ip 访问等,这样将会将 Redis 服务暴露到公网上,如果在没有设置密码认证(一般为空)的…...
第1天:Python基础语法(五)
正文: 在之前的文章中,我们已经学习了Python的基本语法集合和集合的一些常用操作。 在本篇文章中,我们将继续学习其他类型 字符串格式化 使用操作符%s来实现 ➢ 几个%s就几个变量 ➢ 超过一个变量时,需要用元组%(…...
【c++】用C++制作一个简易windows系统
源码: #include <iostream> #include <cstdlib> // 为了使用system #include<limits> void clearScreen() {system("cls"); }void displayMenu() {clearScreen();std::cout << "1.我的文件" << std::endl;std::…...
常见锁策略
目录 1.乐观锁/悲观锁 2.重量级锁/轻量级锁(轻量重量是站在加锁开销的角度) 3.挂起等待锁/自旋锁 4.公平锁/非公平锁 5.可重入锁与不可重入锁 6.读写锁 synchronized 面试题:是什么偏向锁? 锁的升级: 锁消除&…...
【机器学习】人工神经网络优化方法及正则化技术
🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 💫个人格言: "如无必要,勿增实体" 文章目录 人工神经网络优化方法及正则化技术1. 引言2. 神经网络优化的基础2.1 损失函数2.…...
Django异步请求和后台管理实战
项目概述 项目实现Ajax异步请求局部刷新使用XAdmin后台模板提供图片上传接口在明细页应用了富文本编辑器在加载图书信息的时候使用LazyLoad(图片懒加载) # 环境 asgiref3.7.2 crispy-bootstrap32024.1 defusedxml0.7.1 diff-match-patch20230430 Djang…...
大奖放送 | AI编程达人秀视频文章征集大赛来啦!
AI Coding,可以有多少种打开玩法?腾讯云AI代码助手是一款辅助编码工具,基于混元大模型,提供技术对话、代码补全、代码诊断和优化等能力,为你生成优质代码,帮你解决技术难题,提升编码效率。 我…...
最新小猫咪PHP加密系统源码V1.4_本地API接口_带后台
小猫咪PHP加密系统历时半年,它再一次迎来更新,更新加密算法(这应该是最后一次更新加密算法了,以后主要更新都在框架功能上面了),适配php56-php74,取消批量加密(一些不可控因素&#…...
a bag of bones
以下是根据你提供的内容制作的5道选择题,包括答案和解析: 1. 短语 "a bag of bones" 通常用来描述什么? - A. 一个恐怖片中的角色 - B. 一个非常瘦弱的人 - C. 一个懒惰的人 - D. 一个穿着比基尼的人 答案:B 解析&#…...
多云管理“拦路虎”:深入解析网络互联、身份同步与成本可视化的技术复杂度
一、引言:多云环境的技术复杂性本质 企业采用多云策略已从技术选型升维至生存刚需。当业务系统分散部署在多个云平台时,基础设施的技术债呈现指数级积累。网络连接、身份认证、成本管理这三大核心挑战相互嵌套:跨云网络构建数据…...
在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能
下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能,包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...
IGP(Interior Gateway Protocol,内部网关协议)
IGP(Interior Gateway Protocol,内部网关协议) 是一种用于在一个自治系统(AS)内部传递路由信息的路由协议,主要用于在一个组织或机构的内部网络中决定数据包的最佳路径。与用于自治系统之间通信的 EGP&…...
Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)
概述 在 Swift 开发语言中,各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过,在涉及到多个子类派生于基类进行多态模拟的场景下,…...
Module Federation 和 Native Federation 的比较
前言 Module Federation 是 Webpack 5 引入的微前端架构方案,允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...
BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践
6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...
C# SqlSugar:依赖注入与仓储模式实践
C# SqlSugar:依赖注入与仓储模式实践 在 C# 的应用开发中,数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护,许多开发者会选择成熟的 ORM(对象关系映射)框架,SqlSugar 就是其中备受…...
AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别
【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而,传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案,能够实现大范围覆盖并远程采集数据。尽管具备这些优势…...
站群服务器的应用场景都有哪些?
站群服务器主要是为了多个网站的托管和管理所设计的,可以通过集中管理和高效资源的分配,来支持多个独立的网站同时运行,让每一个网站都可以分配到独立的IP地址,避免出现IP关联的风险,用户还可以通过控制面板进行管理功…...
宇树科技,改名了!
提到国内具身智能和机器人领域的代表企业,那宇树科技(Unitree)必须名列其榜。 最近,宇树科技的一项新变动消息在业界引发了不少关注和讨论,即: 宇树向其合作伙伴发布了一封公司名称变更函称,因…...
