目录
2.Jenkins使用GitLab共享库实现基于Ansible的CD流水线部署前端应用的蓝绿发布
一、实验
1.蓝绿发布准备
(1)环境
表1 主机
| 主机 | 架构 | 软件 | 版本 | IP | 备注 |
| gitlab | ansible 管理端
|
gitlab 主节点 | 12.10.14 | 192.168.204.8:82 | jenkins slave(从节点) |
| sonarqube | 9.6 | 192.168.204.8:9000 | |||
| master1 | ansible被管理端 | K8S master节点 | 1.20.6 | 192.168.204.180 | |
| node1 | ansible被管理端 | K8S node节点 | 1.20.6 | 192.168.204.181 | |
| node2 | ansible被管理端 | K8S node节点 | 1.20.6 | 192.168.204.182 | |
| jenkins | 无 | jenkins主节点 |
2.414.2 | 192.168.204.15:8080 | gitlab runner (从节点) |
| tomcat | 无 | nexus | 3.63 | 192.168.204.13:8081 |
表2 蓝绿发布相关主机
| 服务 | IP地址 | 端口 | 主机名 |
| LB | 192.168.204.13 | 8017 | tomcat |
| service1 | 192.168.204.180 | 8019 | (K8S) master1 |
| service2 | 192.168.204.181 | 8019 | (K8S) node1 |
| service3 | 192.168.204.182 | 8019 | (K8S) node2 |
(2)策略
service1服务 1.1.2 (CD部署制品), 升级1.1.3(先CI下载制品,再CD部署制品)
service2服务 1.1.2 (CD部署制品),升级 1.1.3(先CI下载制品,再CD部署制品)
service3服务 1.1.2 (CD部署制品),服务下线,升级 1.1.3(先CI下载制品,再CD部署制品),服务上线
(3)修改3台service服务的nginx配置文件 root目录
1 user nginx;
2 worker_processes auto;
3
4 error_log /var/log/nginx/error.log notice;
5 pid /var/run/nginx.pid;
6
7
8 events {
9 worker_connections 1024;
10 }
11
12
13 http {
14 include /etc/nginx/mime.types;
15 default_t

文章讲述了在Jenkins中使用GitLab共享库实现基于Ansible的CD流水线部署前端应用的蓝绿发布过程,包括环境配置、策略、流水线构建及遇到的问题,如手动构建错误和参数优化。同时介绍了ActiveChoices插件在优化参数选择中的作用。
最低0.47元/天 解锁文章
379

被折叠的 条评论
为什么被折叠?



