一、前言
原先採用腳本部署方式,需要維護大量腳本,而且需手動進行觸發,人工操作過多難免出現誤操作,而且大量時間耗費在發版部署上面,無法進行新技術的研究學習。通過搭建自動化平臺解放運維,減少重複操作,把時間多放在學習前沿技術,提高系統穩定性及安全性上。
二、環境準備
服務安裝版本
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等信息