将各个执行机添加至Jenkins集群

- 由于Jenkins的版本不一致,可能会导致Jenkins环境中的界面、配置参数与以下操作步骤中的内容不一致,请用户根据实际Jenkins环境进行凭证设置和工作节点设置。
- 若Jenkins环境中无凭据管理,需要安装“Credentials Binding”插件进行后续操作。
该章节仅供参考。
凭证设置
- 添加凭据域。单击左侧树“Manage Jenkins > Credentials”,打开“Credentials”页面,在“System”右侧下拉列表中单击“Add domain”。图1 添加凭据域1
- 请根据实际需求填写域名和描述信息,域名和描述信息便于识别和管理。单击“Create”进行添加。图2 添加凭据域2
- 返回到“Credentials”页面,添加凭据到凭据域下。在凭据域右侧下拉列表中单击“Add credentials”,将凭据添加到当前凭据域下。图3 添加凭据
在DevKit凭据域下添加AArch64 Jenkins工作节点SSH凭据。
- 在安装了Jenkins的环境上生成工作节点SSH免密登录证书,请根据实际需求设置SSH Key Passphrase。
ssh-keygen -b 4096 -C "<邮件地址或其他标签>" -f ~/.ssh/id_ed25519_<推荐按照 *_*_*_* 格式填写目标服务器IP地址,便于管理KEY> -t ed25519
- 在安装了Jenkins的环境上将生成的证书的公钥上传至目标服务器,请根据提示输入目标服务器对应的用户名和密码。
ssh-copy-id -i ~/.ssh/id_ed25519_<推荐按照 *_*_*_* 格式填写目标服务器IP地址,便于管理KEY>.pub root@<目标服务器IP地址>
- 删除已知主机名文件中属于指定主机名的所有密钥。
ssh-keygen -R <目标服务器IP地址>
- 使用SSH Key测试连接目标主机,若已设置SSH Key Passphrase,请在连接目标主机时根据提示输入证书密码。
ssh -o IdentitiesOnly=yes -o PasswordAuthentication=no -i ~/.ssh/id_ed25519_<推荐按照 *_*_*_* 格式填写目标服务器IP地址,便于管理KEY> -l root -p 22 <目标服务器IP地址>
- 查看SSH Key密钥。
cat ~/.ssh/id_ed25519_<推荐按照 *_*_*_* 格式填写目标服务器IP地址,便于管理KEY>
图4 工作节点SSH凭据- Description:用于描述当前工作节点信息。
- Username:填写用户名。
- Key:填写的是通过SSH Key免密连接目标主机的私钥。
- Passphrase:若SSH Key设置了Passphrase,则需要填写。
所有选项请根据实际情况进行填写。
- 在安装了Jenkins的环境上生成工作节点SSH免密登录证书,请根据实际需求设置SSH Key Passphrase。
工作节点设置
- 添加工作节点。单击左侧树“Manage Jenkins > Nodes”,打开“Nodes”页面,在页面右上角单击“+New Node”。图5 工作节点设置1
- 打开“New node”页面,填写节点名称并选择节点类型。单击“Create”创建新的工作节点。图6 工作节点设置2
固定节点是指添加一个普通、固定的节点到Jenkins。
- 自动跳转打开“Configure”页面,进行工作节点配置。详细配置参数说明如表1所示。图7 工作节点设置3图8 工作节点设置4
表1 工作节点配置参数说明 配置项
配置说明
Name
与节点名称保持一致。
Description
按需填写描述信息,便于管理标识和即可。
例如:aarch64node(IP地址)(openeuler22.03)。
Number of executors
默认为1。
Remote root directory
远程工作目录。
例如:/home/JenkinsWorkspace/。
Labels
填写标签,流水线脚本中根据标签来选取执行机,可以打多个标签,用空格隔开。此处填写的标签后续要与Jenkins脚本中的标签保持一致。
例如:“kunpeng_scanner kunpeng_java_builder_jdk17 kunpeng_c_builder_gcc kunpeng_compatibility”
Usage
对当前工作节点进行用法描述。可选择:
- Use this node as much as possible
- Only build jobs with label expression matching this node
Launch method
选择当前工作节点的启动方式。可选择:
- Docker variant of Launch agents via SSH with SSH key injection
- Launch agent via execution of command on the controller
- Launch agents via SSH
- Launch agent via Java Web Start
说明:选择不同的启动方式,需要配置不同的参数,请根据实际需求进行配置。默认只有“Launch agent via execution of command on the controller”启动方式,如需选择其他启动方式,请安装对应的插件。
Availability
工作节点可用性。可选择:
- Keep this agent online as much as possible
- Bring this agent online according to a schedule
- Bring this agent online when in demand, and take offine when idle
节点属性
节点属性可选:
- Disk Space Monitoring Thresholds
- Environment variable
- Tool Location
父主题: 部署Jenkins