运维自动化之Kubernetes 云原生CICD部署管理系统

本文涉及的产品
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
简介: Kubernetes 云原生CICD部署管理系统

简介

Gops系统是一个灵活功能强大、操作简洁的云原生CICD管理平台,即把持续集成和持续交付平台化,更利于各部门高效输出的一套运维自动化平台。

早期公司采用Jenkins实现CICD,要求运维人员掌握Jenkins、ansible、yaml等技术才能维护,学习、维护成本高,新业务对接繁琐耗时长;如果公司没有运维人员,通过gops平台完全可以满足企业快速集成的目的,无需依赖专业的管理人员,同时公司存在多家公有云K8s及自建K8s,为了快速实现对接,gops完全采用平台化可web管理端管理对接配置, 由此我们自主开发高效的CICD系统,采用Kubernetes api部署管理发布任务,及实时获取容器状态等管理操作,完善的用户管理和权限控制,完全可交付给开发人员实现快速持续集成和持续交付的发布管理平台。

下面我们一起开始Gops云原生CICD部署管理系统使用吧。

部署基础配置

在开始持续集成和交付前,我们需要先对部署工具和部署的环境信息做一下配置,所有配置都是通过平台Web端配置,操作非常简单,包括项目构建语言及工具的配置(java、maven、go、php)、Harbor镜像仓库、Kubernetes集群、Gitlab代码仓库认证信息等依赖配置。

  • Harbor镜像仓库配置, 包括Harbor地址、用户名和密码, ci编译后会把镜像自动上传到对应的产品线仓库, 为cd过程提供发布的镜像。

harbor.png

  • Kubernetes集群配置,支持多个集群,例如生成环境和开发环境属于不同集群,可分别创建不同环境的集群,需要配置区别集群的名称例如[dev环境]、[prod环境],并配置对应集群master节点的kubeconfig文件,把该文件放到Gops平台集群的任意路径,配置好后可实时测试配置的是否正确。

kubernetes.png

  • Gitlab代码仓库配置, 支持账号密码和ssh秘钥认证方式

gitlab.png

  • 编译工具配置, 需要在gops机器安装配置好对应的语言编译环境, 灵活简洁的配置,支持同语言不同版本的集成。

buildtools.png

创建部署任务

以上配置好后,就可以创建对应的发布任务了, 部署任务支持k8s的常用配置,会自动生成对应的service, 关联创建对应的Deloyment。
deploy01.jpg

选择对应产品线后,点击创建部署任务,根据项目实际配置对应参数,配置参考以golang项目为例:

task1.png
task2.png
task3.png

配置好具体参数后,可以点击yaml查看渲染后的Kubernetes yaml文件信息, 可提供参考学习及配置核对。
yaml.jpg

CICD

编译: 点击部署任务ci按钮会拉取代码仓库相关信息,业务同学可以选择对应的提交记录进行构建

ci.jpg

部署: 点击cd按钮会拉取镜像仓库对应镜像版本进行部署及回滚

cd.jpg

部署完成后可以实时查看部署的结果及操作记录

deploy_result.png

以上就是Gops 持续集成和交付的配置操作流程,是不是非常灵活、容易上手,不需要您掌握ansible、jenkins等开源工具技术,无需维护大量的yaml文件,只需要把精力投入到业务编码,cicd交给gops,为企业提高集成交付效率。

开源地址: https://github.com/zttheff/gops

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
目录
相关文章
|
1月前
|
运维 Linux Apache
Puppet 作为一款强大的自动化运维工具,被广泛应用于配置管理领域。通过定义资源的状态和关系,Puppet 能够确保系统始终处于期望的配置状态。
Puppet 作为一款强大的自动化运维工具,被广泛应用于配置管理领域。通过定义资源的状态和关系,Puppet 能够确保系统始终处于期望的配置状态。
51 3
|
1月前
|
Prometheus Kubernetes 监控
k8s部署针对外部服务器的prometheus服务
通过上述步骤,您不仅成功地在Kubernetes集群内部署了Prometheus,还实现了对集群外服务器的有效监控。理解并实施网络配置是关键,确保监控数据的准确无误传输。随着监控需求的增长,您还可以进一步探索Prometheus生态中的其他组件,如Alertmanager、Grafana等,以构建完整的监控与报警体系。
120 60
|
7天前
|
缓存 运维 监控
【运维必备知识】Linux系统平均负载与top、uptime命令详解
系统平均负载是衡量Linux服务器性能的关键指标之一。通过使用 `top`和 `uptime`命令,可以实时监控系统的负载情况,帮助运维人员及时发现并解决潜在问题。理解这些工具的输出和意义是确保系统稳定运行的基础。希望本文对Linux系统平均负载及相关命令的详细解析能帮助您更好地进行系统运维和性能优化。
24 3
|
15天前
|
运维 监控 中间件
数据中心运维监控系统产品价值与优势
华汇数据运维监控系统面向IT基础架构及IT支撑平台的监控和运维管理,包含监测、分析、展现和告警。监控范围涵盖了网络设备、主机系统、数据库、中间件和应用软件等。
40 4
|
28天前
|
机器学习/深度学习 人工智能 机器人
智能废物管理系统:城市垃圾的自动化处理
【10月更文挑战第24天】智能废物管理系统利用物联网、大数据、人工智能和自动化机器人等技术,实现城市垃圾从分类、收集到处理的全过程自动化,提高处理效率,优化资源配置,提升居民参与度,降低运营成本,推动城市可持续发展。
|
1月前
|
运维 监控 Devops
DevOps实践:持续集成与部署的自动化之旅
【10月更文挑战第7天】在软件开发领域,DevOps已成为提升效率、加速交付和确保质量的关键策略。本文将深入探讨如何通过实施持续集成(CI)和持续部署(CD)来自动化开发流程,从而优化运维工作。我们将从基础概念入手,逐步过渡到实际操作,包括工具选择、流程设计以及监控和反馈机制的建立。最终,我们不仅会展示如何实现这一自动化流程,还会讨论如何克服常见的挑战,以确保成功实施。
63 9
|
29天前
|
运维 监控 安全
高效运维管理:提升系统稳定性的策略与实践
【10月更文挑战第13天】 本文探讨了高效运维管理的关键策略和实践,旨在帮助运维团队提升系统的稳定性。通过分析常见问题,提出具体的解决方案,包括监控与告警、自动化工具的应用、故障排查与恢复、性能优化以及安全防护等方面。通过这些策略和实践,可以帮助企业构建一个稳定、可靠且高效的IT系统。
72 1
|
10天前
|
运维 监控 网络协议
自动化运维的魔法——打造高效、可靠的系统
【10月更文挑战第32天】在数字化时代的浪潮下,运维不再是简单的硬件维护和故障排除。它已经演变成一场关乎效率、稳定性和创新的技术革命。自动化运维,作为这场革命的核心,正引领着企业走向更加智能和高效的未来。本文将带你探索自动化运维的世界,揭示其背后的原理和实践,让你领略到自动化带来的无限可能。
18 0
|
1月前
|
NoSQL 关系型数据库 Redis
高可用和性能:基于ACK部署Dify的最佳实践
本文介绍了基于阿里云容器服务ACK,部署高可用、可伸缩且具备高SLA的生产可用的Dify服务的详细解决方案。
|
3天前
|
Cloud Native 安全 数据安全/隐私保护
云原生架构下的微服务治理与挑战####
随着云计算技术的飞速发展,云原生架构以其高效、灵活、可扩展的特性成为现代企业IT架构的首选。本文聚焦于云原生环境下的微服务治理问题,探讨其在促进业务敏捷性的同时所面临的挑战及应对策略。通过分析微服务拆分、服务间通信、故障隔离与恢复等关键环节,本文旨在为读者提供一个关于如何在云原生环境中有效实施微服务治理的全面视角,助力企业在数字化转型的道路上稳健前行。 ####

热门文章

最新文章