安装启动是十分简单的,直接去https://jenkins.io/download/下载对应的rpm包就好了,需要注意的是我们的机器上要提前有java环境,相对应要选择你java环境可以支持的jenkins版本,以现在的主流我们就用java8跟最新的rpm包就好
1 [root@linux-node1 src]# ls 2 jenkins-2.89.4-1.1.noarch.rpm 3 [root@linux-node1 src]# yum install jenkins-2.89.4-1.1.noarch.rpm –y 4 [root@linux-node1 src]# java -version 5 openjdk version "1.8.0_151" 6 OpenJDK Runtime Environment (build 1.8.0_151-b12) 7 OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode) 8 [root@linux-node1 ~]# grep "^[a-Z]" /etc/sysconfig/Jenkins # 配置文件 9 JENKINS_HOME="/var/lib/jenkins" # 数据目录,很重要! 10 JENKINS_JAVA_CMD="" 11 JENKINS_USER="jenkins" # 启动用户 12 JENKINS_JAVA_OPTIONS="-Djava.awt.headless=true" 13 JENKINS_PORT="8080" 14 JENKINS_LISTEN_ADDRESS="" 15 JENKINS_HTTPS_PORT="" 16 JENKINS_HTTPS_KEYSTORE="" 17 JENKINS_HTTPS_KEYSTORE_PASSWORD="" 18 JENKINS_HTTPS_LISTEN_ADDRESS="" 19 JENKINS_DEBUG_LEVEL="5" 20 JENKINS_ENABLE_ACCESS_LOG="no" 21 JENKINS_HANDLER_MAX="100" 22 JENKINS_HANDLER_IDLE="20" 23 JENKINS_ARGS="" 24 [root@linux-node1 ~]# systemctl start jenkins 25 [root@linux-node1 ~]# ss -tln|grep 8080 26 LISTEN 0 50 :::8080 :::* :::*
1 [root@linux-node1 ~]# cat /var/lib/jenkins/secrets/initialAdminPassword 2 f18fa343ac7f484a909f253741e03292
填写进去下一步等待一会
等他装好默认的一些插件就可以设置自己页面登录的帐号密码了
先不要着急创建新任务,我萌做一些十分实用的设置
一定要点圆圈处,点节点只是一个信息展示,没什么卵用
默认执行者数量为2,我们改成5,这里需要注意,你的执行者数量越多,自然可同时执行的任务也就越多,相对应的该节点资源占用也就较多了,如果此节点就只为打包,那么可以多设置点,根据实际情况来设定吧,我一般设置5就够了;用法有两个选项,这个之后再说;你还可以为此节点增加多个环境变量以供之后在任务里使用,这样就可以做到不同节点打出不同的包,但是一般情况我们不会这样做
很明显任务变成了5个,我们选择新建节点
给一个名字,这里要起一个有表示性的名字,如果你的主机名很好,那么就直接使用他吧,不要做多余的事情
名字就是刚才的名字,这里的标签建议跟名字设置一样,描述的话自己声明下,of executors就是新机器的任务支持数量,启动方式尽量选ssh,然后设定你要连接的主机(ip主机名都可以),Host Key Verification Strategy选择最后一个,高级用法里可以换ssh端口及一些小设置,一般不需要,最后尽量让他就在线就可以了不要搞复杂
最后发现这个机器连不上一直在超时,因为我们还没有设置连接该机器的必备条件
我们再次回去设置密钥,这里注意(这个密钥并不单纯是针对该台机器,是任何地方都可以用,也就是多对多的关系,jenkins的认证会将所有密钥一视同仁,因此你需要给每次的密钥打一个很直观的标签,否则以后会很麻烦!!!)
因为我这次设置的就是为了连接linux-node2.example.com的密钥,因此我要进行选择,当然可以不选择直接来个通用密钥,但是刚才说过了,之后你的密钥会很混乱,在配置的时候解决这些麻烦!这里ID是不用填写的,因为我的机器已经免密了,所以我就不需要填写Passphrase直接选就行了
选择刚才的密钥再次保存
然后发现还是失败了,原因是因为启动用户是jenkins不是我的root,他的家目录里没有linux-node2.example.com的密钥,为了简单我改成了root启动(一定更改相关数据目录及日志目录的所有权),当然可以直接设置密码,不过在此之前,这个密钥貌似有问题,我想删除他了。标签的好处体现出来了,如果我没有标签,鬼知道谁是谁
从节点出现了,我们以后就可以有所选择的打包了,这有力于任务的分配及压力分配,但是意义最重大的事情是我们就可以直接实现各机房内网打包了,在各个机房都设置一个jenkins从节点,打完包后传输给本机房要使用的机器,内网的速度是很快的
1 [root@linux-node2 ~]# ls # 如果在从节点上打包了,在同目录下还会出现一个数据目录,因此我们在设置从节点的工作目录的时候应当设置成大磁盘目录,不要放在某个用户家目录下 2 slave.jar
插件是jenkins的魅力所在,在单独写一篇博客吧,现在我们去设定一些必备的工具,进去全局工具配置
举个例子,我们可以让他自动安装也可以使用自己系统内已有的,建议使用自己的,统一环境很重要!
在这里可以添加其他用户跟配置用户权限
必须是存在的用户哦,我设定为可以全局读
很明显权限变小了
以上就是jenkins一般功能,但是jenkins的强大还没有开始体现