Jenkins之集群安装(基于物理节点)-yellowcong
安装的时候,需要注意集群模式的时候,客户端,也是需要安装Java环境的,然后还需要设置免密登陆的操作。 jenkins的集群操作有三种,1. 增加物理机器的slave , 2.通过docker 的插件来进行动态的slave ,3.通过k8s进行动态的扩容和缩容
安装的时候,需要注意集群模式的时候,客户端,也是需要安装Java环境的,然后还需要设置免密登陆的操作。 jenkins的集群操作有三种,1. 增加物理机器的slave , 2.通过docker 的插件来进行动态的slave ,3.通过k8s进行动态的扩容和缩容
下载地址
https://mirrors.tuna.tsinghua.edu.cn/jenkins/war-stable/2.164.2/jenkins.war
准备工作
- java安装
- tomcat安装
- maven安装 ,最好做一个
ln -s /usr/local/maven/bin/mvn /usr/bin/mvn
这个软连接,不然找不到mvn命令,头疼 - git 安装
node 节点和注解点不同的,就是不需要安装 jenkins了,其他的都要和master一个球样
1 jenkins安装
1.1 设定环境变量
编辑/etc/profile
修改配置 /etc/profile ,增加JENKINS_HOME 这个环境变量,然后通过source /etc/profile
让环境变量生效 。
JENKINS_HOME=/data/jenkins_data/
export JENKINS_HOME
配置环境变量
生效之后,可以看到环境变量生效了
配置后的目录,可以看到目录修改为我们自己定义的目录了
1.2 安装插件
安装推荐的插件即可,后期自己在安装写自己想要的插件。
这时候就开始下载相关的依赖了,只有慢慢的等着依赖下载完事。
创建用户,设定第一个用户,然后选择保存并完成。 这样就创建了一个yellowcong的用户,不然一直都是使用admin 这个用户,导致tomcat 重启后,还是登陆不了。
设置实例的配置,我们可以先点击为不需要这个配置
现在就简单的安装完成了Jenkins
1.2 设置Jenkins的tomcat 编码
添加下面的配置,即可解决url不识别的问题 ,不然就会报错,说url的编码问题
<Connector port="8082" protocol="HTTP/1.1"
connectionTimeout="20000"
URIEncoding="UTF-8" />
1.3 配置jenkins URL
说我们没有设置这个url的地址信息
1.4 配置jdk和maven
maven的安装,可以参考 https://blog.csdn.net/yelllowcong/article/details/78285529 ,进行安装 , 不要选择自动安装了,直接选择自己已经设定好的mvn和jdk 即可。
2 插件安装
我们安装的时候,可以不用选择插件,但是后面必须安装基础的插件,不然就导致代码都没法拉取下来。
Git
GitLab
SSH Slaves
SSH
Publish Over SSH
3 集群设定
3.1 添加节点
3.2 设定私钥
这个地方有两个密钥,1. 拉去代码的密钥 2.Jenkins 访问到 slave节点的密钥。
这两个密钥可以使用同一个
添加拉取代码的私钥,创建gitlab用户,然后添加密钥
3.3 设定节点
设置节点前,一定要先把公钥推送到slave节点,然后才能加载到这个slave节点
3.4 添加Java 环境变量
我们根据自己的设定,配置 JAVA_HOME ,如果不设定这个
3.5 加载节点
可以看到节点
6 指定节点构建
6.1 配置节点
在节点配置的时候,加上 node2的标签
创建项目的时候,选择好我们需要在哪个机器上跑这个服务,通过label 来标明
常见问题
1.你的容器没有使用UTF-8解码URL地址。如果你使用了非ASCII字符作为任务名称等,可能会有问题。 查看 容器 和 Tomcat i18n 获取更多详情。
添加下面的配置,即可解决url不识别的问题
<Connector port="8082" protocol="HTTP/1.1"
connectionTimeout="20000"
URIEncoding="UTF-8" />
https://blog.csdn.net/yelllowcong/article/details/78285196
https://blog.csdn.net/yelllowcong/article/details/80009460
2. 代理错误
3. Dependency errors
Dependency errors:
Some plugins could not be loaded due to unsatisfied dependencies. Fix these issues and restart Jenkins to restore the functionality provided by these plugins.
Pipeline: API version 2.33
scm-api version 2.2.6 is missing. To fix, install version 2.2.6 or later.
直接去插件仓库下载scm api的插件,然后重启,就没有这个问题了,如果找不到插件,可以直接去https://repo.jenkins-ci.org/releases/org/jenkins-ci/plugins/ 这个镜像仓库去下载 依赖的hpi文件,然后上传安装,重启Jenkins 即可。
可以看到,没有这些讨厌的错误提示信息了,美滋滋了。
4. java.io.IOException: Java not found on hudson.slaves.SlaveComputer@1b7aed83. Install a Java 8 version on the Agent.
这个问题告诉我们,客户端,也需要安装java的环境
java.io.IOException: Java not found on hudson.slaves.SlaveComputer@1b7aed83. Install a Java 8 version on the Agent.
at hudson.plugins.sshslaves.JavaVersionChecker.resolveJava(JavaVersionChecker.java:82)
at hudson.plugins.sshslaves.SSHLauncher$2.call(SSHLauncher.java:863)
at hudson.plugins.sshslaves.SSHLauncher$2.call(SSHLauncher.java:833)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
更多推荐
所有评论(0)