Jenkins K8s gitlab集成

我要开发同款
IGaara2024年02月18日
44阅读
开发技术jenkins、k8s、自动化运维、负载均衡、服务器运维
所属分类docker

作品详情

在外部Jenkins集成阿里ACK集群实现自动化构建微服务项目
● 业务流程:
1. 对Jenkins、k8s容器化集群、CSI分布式存储、OSS、NAS、gitlab、harbor等相关服务前期准备和部署
2. Jenkins中使用kubernetes云插件关联k8s集群,为Jenkins在k8s中动态创建jenkins slave,形成Jenkins Master/Slave分布式
3. 在gitlab中准备运维发布代码(根据不同项目配置不同Dockerfile/deployment.yml/svc.yml等,使运维发布文件与项目文件区分开)
4. 通过Pipeline构建流水线任务,通过kubectl发布SpringCloud微服务项目,对凭据及发布相关变量进行设置,在Pipeline中添加钉钉函数,发布完成后根据对容器副本数进行校验是否发布成功触发钉钉通知
5. 创建单独触发流水线任务,调取项目job方式触发发布,在gitlab的webhook中配置流水线任务地址实现触发合并触发发布
6. 在Kubernetes集群中,使用HPA水平自动伸缩,根据容器资源利用率对Pod副本数自动扩缩容
7. 基于Prometheus+Grafana对K8s做监控,利用Alertmanager完成对接指标数据对比触发告警事件
8. 后期修改运维发布文件调整日志收集和容器全链路做监控
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论