1 持续的软件版本发布/测试项目java
2 监控外部调用工具git
3 jenkins就是基于Java开发的一种持续集成的工具github
4 能够将运维用到的各个脚本整合起来,而且能够经过页面方式集中管理,并且能够也能够实现和gitlab、github交互,也能够实现自动编译、部署程序web
持续集成是一种软件开发实践,即团队开发成员常常集成他们的工做,经过每一个成员天天至少集成一次,也就意味着天天可能会发生屡次集成。每次集成都经过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。shell
持续集成:Continuous Intergration (CI)浏览器
持续交付:Continuous Delivery(CD)bash
持续部署:Continuous Deployment(CD)服务器
集成是指软件我的研发的部分向软件总体部分交付,以便尽早发现我的开发部分的问题;网络
部署是代码尽快向可运行的开发/测试节交付,以便尽早测试;运维
交付是指研发尽快向客户交付,以便尽早发现生产环境中存在的问题。
若是说等到全部东西都完成了才向下个环节交付,致使全部的问题只能再最后才爆发出来,解决成本巨大甚至没法解决。
而所谓的持续,就是说每完成一个完整的部分,就向下个环节交付,发现问题能够立刻调整。是的问题不会放大到其余部分和后面的环节。
1. 提交(git)
2. 测试
3. 构建(jenkins)
4. 测试
5. 部署(ansible,shell,puppet)
6. 回滚(ansible)
第一步
打开版本网站,下载包
pkg.jenkins.io/rehat/
第二步
开启两台虚拟机,一台部署gitlab,一台部署jenkins
第三步
上传jenkis安装包至另外一台虚拟机
第四步
安装
rpm –ivh 包名
第五步
安装 java 环境(不能用网络源下载,java版本高于Jenkis,二者不兼容)
第六步
启动
systectl restart Jenkins
第七步
浏览器访问安装jenkins端ip:8080
第八步
首先会提示你Jenkins是锁定状态,会提示你密码存在服务器上的目录,然后去服务器这个目录里,把密码粘贴过来便可。
第九步
安装插件
选择 select plugins to install,然后选择none
1 上传插件
2 移动插件包至Jenkins插件目录下
cd /var/lib/Jenkins
然后解压便可,在把解压后的都放出来至当前目录
3 重启Jenkins使插件生效
4 浏览器查看便可
有许多第三方网站和应用程序能够与 Jenkins 进行交互,例如程序代码仓库,云存储系统和服务等。
此类应用程序的系统管理员能够在应用程序中配置凭证以专供 Jenkins 使用。一般经过将访问控制应用于这些凭证来完成这项工做,以“锁定”Jenkins可用的应用程序功能区域。一旦 Jenkins 管理员(即管理 Jenkins 站点的 Jenkins 用户)在 Jenkins 中添加/配置这些凭证,Pipeline 项目就可使用凭证与这些第三方应用程序进行交互。
Jenkins 中保存的凭证能够用于:
1 任何适用于 Jenkins 的任何地方(即全局证书)
2 特定的 Pipeline 项目
3 特定的 Jenkins 用户
Jenkins凭证就是保存了用户名和密码。
Jenkins凭证建立
点击 credentials
选择 global
选择 add credentials
添加用户名和密码
1 点击新建
然后输入项目名称
2 选择构建一个自由风格的项目
3 然后在General里填写
构建选择 Execute shell
这里面直接写shell脚本便可
需求一 使用gitlab建立项目
需求二 使用ansible的roles实现一键化部署wordpress
每次部署须要备份以前的网站数据
使用roles
使用templates
脚本对网站监控检测
需求三 完成以后项目上传至gitlab
需求四 使用jenkins实现项目的持续集成
环境准备:
三台虚拟机
1 号机安装gitlab
2 号机安装jenkins git ansible
3 号机是被批量部署的主机
首先说明,由于电脑性能缘由,因此,gitlab没有跟jenkins部署在一块儿。
第一步
1号搭建好私有仓库,注意,要打开配置文件,/etc/gitlab/gitlab.rb修改配置文件,将external_url改成本机ip,搭建好以后,便可使用web登录,注意,使用的是本机ip登录,由于gitlab用的也是80端口,然后点击new uesres,添些用户名,邮箱,点击new group,在group path处填写webbs,visibility level选择public,点击new project,在project name处选择我们刚建立的组,webbs。
第二步
2号机编写ansible剧本
第三步
2号机安装号jenkins后,切记,若是没有配置好插件,不能进行下面的操做,配置好以后,选择new item,Enter an item name下方填写你的项目命名,然后选择freesylt project,Description可填可不填,Source Code Management选择git,Repository URL填你的gitlab里http的地址,凭证里的用户名和密码填gitlab的用户名和密码,Build选择Execute shell,写入shell命令,#!/bin/bash cd $WORKSPACE/test ansible-play 剧本名.yml
第四步
点击Build Now,当即构建。