环境
CentOS Linux release 7.6.1810
jdk1.8.0_65
apache-tomcat-8.5.45
Jenkins-2.235.5
apache-maven-3.6.3
git-2.9.5
gradle-6.6.1
SonarQube-6.7.7(LTS)
sonar-scanner-cli-4.2.0.1873
拓扑:
node1:安装GitLab、SonarQube
node2:安装Jenkins、Git、MAVEN
一、部署于发布
部署不等同于发布,部署是将程序安装在服务器上,但并没有开启相关功能;发布才是将功能呈现在客户面前。
二、自动化部署工具-Ansible
1、Ansible使用SSH协议与客户端通信,因此相比Puppet、Chef是去客户端的;
2、Ansible自动化部署基础:
(1)使用yaml格式文件来描述部署逻辑,通常是一个名为playbook.yaml的文件;
(2)使用ini格式文件组织受控机器inventory的逻辑,名为hosts.ini;
Ansible是导演,受控机器列表inventory为演员列表,开发者是编剧。开发者只要把剧本playbook.yaml写好,Ansible拿着剧本与inventory一一对上号,演员就会按照剧本如实表演,不会有任何个人发挥。
三、Jenkins与Ansible集成
1、Jenkins安装Ansible插件:Ansible plugin
Jenkins的Ansible插件提供两个步骤:
(1)ansiblePlaybook步骤
执行ansible-playbook命令
(2)ansibleVault步骤
用来加解密配置项。
2、
原文:https://www.cnblogs.com/cac2020/p/13712200.html