一、前言
原先采用脚本部署方式,需要维护大量脚本,而且需手动进行触发,人工操作过多难免出现误操作,而且大量时间耗费在发版部署上面,无法进行新技术的研究学习。通过搭建自动化平台解放运维,减少重复操作,把时间多放在学习前沿技术,提高系统稳定性及安全性上。
二、环境准备
服务安装版本
jdk-1.8.0_191 jenkins-2.150.2-1.1 git-2.19.2
gitlab-ce-11.7.5 ansible-2.7.7 openldap-2.4.47
三、安装jdk及git
解压jdk-8u191-linux-x64.tar.gz到/usr/local/java目录
编辑/etc/profile文件末尾增加
export JAVA_HOME=/usr/java/jdk1.8.0_191
export PATH=$JAVA_HOME/bin:$PATH
保存退出,运行source /etc/profile生效配置
安装基础环境yum -y install make gcc gcc-c++ wget
解压git-2.19.2.tar.gz,进入git-2.19.2,运行
make configure
./configure --prefix=/usr/local/git
make all doc
make install install-doc
四、安装及配置ansible
安装:yum -y install ansible
修改ansible配置文件ansible.cfg:
inventory = /etc/ansible/inventory
log_path = /etc/ansible/ansible.log
进入/etc/ansible/inventory,配置远程主机列表,新建test文件,文件内容为
[test]
10.10.10.1 ansible_ssh_port=22 ansible_ssh_user=test ansible_ssh_pass="123456"
10.10.10.2 ansible_ssh_port=22 ansible_ssh_user=test ansible_ssh_pass="123456"
运行ansible test -m ping,结果返回如下,说明服务器对接成功
10.10.10.1 | SUCCESS => {
"changed": false,
"ping": "pong"
}
10.10.10.2 | SUCCESS => {
"changed": false,
"ping": "pong"
}
/etc/ansible/playbook目录下存放playbook文件,可以通过playbook创造部署任务
五、安装及配置openldap
https://blog.csdn.net/wjy1990831/article/details/87086467
六、安装及配置gitlab
基础环境安装:yum install curl policycoreutils openssh-server openssh-clients postfix
配置国内镜像源,vim /etc/yum.repos.d/gitlab-ce.repo,内容如下:
[gitlab-ce]
name=gitlab-ce
baseurl=http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7
repo_gpgcheck=0
gpgcheck=0
enabled=1
gpgkey=https://packages.gitlab.com/gpg.key
安装:yum -y install gitlab-ce
修改gitlab配置文件gitlab.rb,修改处如下:
external_url 'https://www.test.com/gitlab/'
gitlab_shell['custom_hooks_dir'] = "/opt/gitlab/embedded/service/gitlab-shell/custom_hooks"
unicorn['listen'] = '127.0.0.1'
unicorn['port'] = 7090
nginx['listen_port'] = 80
nginx['listen_https'] = false
git_data_dirs({
"default" => {
"path" => "/data/git-data"
}
})
配置通过域名访问gitlab,修改配置如下:
server_name www.test.com;
location /gitlab {
proxy_cache off;
proxy_pass http://gitlab-workhorse;
}
location /gitlab/assets {
proxy_cache gitlab;
proxy_pass http://gitlab-workhorse;
}
运行 gitlab-ctl reconfigure,配置并启动gitlab,各模块提示“ok: run:”表示启动成功,如有失败通过日志单独排查
使用gitlab-ctl管理gitlab
查看gitlab状态:gitlab-ctl status
关闭gitlab:gitlab-ctl stop
启动gitlab:gitlab-ctl start
重启gitlab:gitlab-ctl restart
访问https://www.test.com/gitlab 初始账户:root,密码:5iveL!fe,第一次登入需修改密码
七、安装及配置jenkins
安装:yum -y install jenkins
编辑/etc/sysconfig/jenkins文件修改jenkins启动参数,修改配置如下:
JENKINS_USER="root"
JENKINS_PORT="9080"
JENKINS_ARGS="--prefix=/jenkins"
启动jenkins:systemctl start jenkins
访问https://www.test.com/jenkins,进入配置页面,根据引导按步骤安装主程序及插件,最后创建管理员账号
安装完成后,进入jenkins
点击系统管理----->"Global Tool Configuration" 配置 jdk 、gradle、git,ansible等信息