jenkins - 快速部署

参考: https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins+on+Red+Hat+distributions

  • 配置jenkins的repo
wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
yum install jenkins
  • password可以通过log查看
tail -fn 400 /var/log/jenkins/jenkins.log

或者

cat /var/lib/jenkins/secrets/initialAdminPassword   
  • 由于牵扯到远程内网,我这边的case还需要增加一个端口映射
[program:remotejenkins]
priority=1
command=/usr/bin/sshpass -p 'xxx' ssh -o ServerAliveInterval=2 -oStrictHostKeyChecking=no -L 0.0.0.0:18080:192.168.55.35:8080 -p xxx root@xxx -N
directory=/tmp
autostart=true
autorestart=true
startretries=100
#exitcodes=1
#stopsignal=KILL
stopsignal=TERM
stopasgroup=true        ; 是否想UNIX进程组发送结束信号 (default false)
killasgroup=true             ; SIGKILL UNIX 进
#stderr_logfile=/var/log/remotejenkins.error.log
#stdout_logfile=/var/log/remotejenkins.infolog
### Jenkins Slave 部署方法及配置教程 #### 1. 容器化部署 Jenkins Slave 通过容器技术(如 Docker 或 Kubernetes),可以实现更灵活的 Jenkins Slave 部署。以下是基于 Helm 的 Kubernetes 部署流程: - **Helm 部署方法** 使用 Helm Chart 可以快速完成 Jenkins 主节点及其 Slave 节点的部署。首先需要安装 Helm 并初始化环境[^1]。 ```bash helm repo add jenkins https://charts.jenkins.io helm install my-jenkins jenkins/jenkins --namespace jenkins --create-namespace ``` - **配置 Ingress** 如果需要外部访问,可以通过配置 Ingress 来暴露服务。 ```yaml apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: jenkins-ingress spec: rules: - host: jenkins.example.com http: paths: - pathType: Prefix path: "/" backend: service: name: my-jenkins port: number: 8080 ``` - **动态创建 Agent Pod** 在 Kubernetes 中,Agent 是按需启动的临时 Pod。可以在 Jenkins 的全局配置中定义 K8S 插件的相关参数,指定镜像、资源请求以及挂载卷等信息[^5]。 --- #### 2. 裸机部署 Jenkins Slave 对于不依赖容器化的场景,可以直接在物理机或虚拟机上手动配置 Slave 节点。 - **编辑 systemd 配置文件** 修改 `/usr/lib/systemd/system/jenkins.service` 文件中的相关内容来调整 JVM 参数或其他选项[^4]。 ```ini [Service] ExecStart=/usr/bin/java -Djava.awt.headless=true \ -Djenkins.install.runSetupWizard=false \ -Xms256m -Xmx512m -jar /usr/share/jenkins/jenkins.war ``` - **连接至 Master** 利用 Java Web Start (JNLP) 协议让 Slave 注册到主服务器。执行如下命令即可建立远程链接[^3]。 ```bash java -jar agent.jar -jnlpUrl http://<master-ip>:8080/computer/<slave-name>/slave-agent.jnlp -secret <secret-key> ``` > 注意替换 `<master-ip>` 和其他占位符的实际值。 --- #### 3. macOS 下的特殊处理 如果目标平台为 Mac,则推荐使用专门构建好的工具链简化操作过程[^2]。 - **克隆仓库并编译二进制程序** ```bash git clone https://gitcode.com/gh_mirrors/je/jenkins-slave-osx.git cd jenkins-slave-osx && make build ``` - **注册 LaunchDaemon** 将生成的服务脚本拷贝到合适位置,并加载生效。 ```bash sudo cp com.example.jenkins.slave.plist /Library/LaunchDaemons/ sudo launchctl load -w /Library/LaunchDaemons/com.example.jenkins.slave.plist ``` --- #### 4. 故障排查与维护建议 当遇到无法正常通信的情况时,请参照官方文档定位具体原因;常见问题包括但不限于网络连通性差、认证失败或者权限不足等问题。 - 查看错误日志路径通常位于 `${JENKINS_HOME}/logs` 目录下。 - 若忘记初始管理员账户密码可通过以下方式恢复: ```bash sed -i 's/<useSecurity>true<\/useSecurity>/<useSecurity>false<\/useSecurity>/g' $JENKINS_HOME/config.xml systemctl restart jenkins ``` 最后重新登录界面后记得及时更新安全策略! ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值