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

简介: 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月前
|
人工智能 自然语言处理 数据挖掘
企业数字化转型的关键:如何利用OA系统实现自动化与智能决策
在数字化时代,传统办公系统已无法满足现代企业的需求。通过将RPA(机器人流程自动化)和AI(人工智能)技术与OA系统结合,企业能实现业务流程自动化、智能决策支持,大幅提升工作效率和资源配置优化,推动数字化转型。RPA可自动处理重复任务,如审批、数据同步等;AI则提供智能数据分析、预测和决策支持,两者协同作用,助力财务管理、人力资源管理、项目管理和客户服务等多个领域实现智能化升级。未来,智能化OA系统将进一步提升个性化服务、数据安全和协作能力,成为企业发展的关键驱动力。
|
24天前
|
监控 运维
HTTPS 证书自动化运维:https证书管理系统- 自动化监控
本文介绍如何设置和查看域名或证书监控。步骤1:根据证书状态选择新增域名或证书监控,线上部署推荐域名监控,未部署选择证书监控。步骤2:查询监控记录详情。步骤3:在详情页查看每日定时检测结果或手动测试。
HTTPS 证书自动化运维:https证书管理系统- 自动化监控
|
24天前
|
Linux 持续交付 调度
HTTPS 证书自动化运维:https证书管理系统-自动化部署
本指南介绍如何部署Linux服务器节点。首先复制生成的Linux脚本命令,然后将其粘贴到目标服务器上运行。接着刷新页面查看节点记录,并点击“配置证书”选择证书以自动部署。最后,节点部署完成,后续将自动调度,无需人工干预。
HTTPS 证书自动化运维:https证书管理系统-自动化部署
|
24天前
|
运维 监控 数据安全/隐私保护
HTTPS 证书自动化运维:HTTPS 证书管理系统之使用指南
本文详细介绍【灵燕空间HTTPS证书管理系统】(https://www.lingyanspace.com)的配置与使用,涵盖注册账户、邮箱配置及证书自动签发、监控和部署的一体化指南。通过页面顶部菜单的【视频教程】和【图文教程】,帮助用户从注册到实际应用全面掌握系统操作。最新迭代后,泛域名证书已包含根域名,无需额外申请多域名证书。
|
2月前
|
存储 Kubernetes 开发者
容器化时代的领航者:Docker 和 Kubernetes 云原生时代的黄金搭档
Docker 是一种开源的应用容器引擎,允许开发者将应用程序及其依赖打包成可移植的镜像,并在任何支持 Docker 的平台上运行。其核心概念包括镜像、容器和仓库。镜像是只读的文件系统,容器是镜像的运行实例,仓库用于存储和分发镜像。Kubernetes(k8s)则是容器集群管理系统,提供自动化部署、扩展和维护等功能,支持服务发现、负载均衡、自动伸缩等特性。两者结合使用,可以实现高效的容器化应用管理和运维。Docker 主要用于单主机上的容器管理,而 Kubernetes 则专注于跨多主机的容器编排与调度。尽管 k8s 逐渐减少了对 Docker 作为容器运行时的支持,但 Doc
172 5
容器化时代的领航者:Docker 和 Kubernetes 云原生时代的黄金搭档
|
24天前
|
运维 监控 安全
HTTPS 证书自动化运维:HTTPS 证书管理系统之优势对比
本文详细介绍了一款功能强大的HTTPS证书管理系统,涵盖自动签发、更新、实时监控、部署一体化、自定义加密算法、集中管理和邮箱通知等功能。系统通过简化配置、智能引导、快速响应和多重防护等优势,确保企业和个人用户能高效、安全地管理证书,提升网站和应用的安全性。
|
2月前
|
人工智能 自然语言处理 JavaScript
Agent-E:基于 AutoGen 代理框架构建的 AI 浏览器自动化系统
Agent-E 是一个基于 AutoGen 代理框架构建的智能自动化系统,专注于浏览器内的自动化操作。它能够执行多种复杂任务,如填写表单、搜索和排序电商产品、定位网页内容等,从而提高在线效率,减少重复劳动。本文将详细介绍 Agent-E 的功能、技术原理以及如何运行该系统。
167 5
Agent-E:基于 AutoGen 代理框架构建的 AI 浏览器自动化系统
|
2月前
|
Serverless 决策智能 UED
构建全天候自动化智能导购助手:从部署者的视角审视Multi-Agent架构解决方案
在构建基于多代理系统(Multi-Agent System, MAS)的智能导购助手过程中,作为部署者,我体验到了从初步接触到深入理解再到实际应用的一系列步骤。整个部署过程得到了充分的引导和支持,文档详尽全面,使得部署顺利完成,未遇到明显的报错或异常情况。尽管初次尝试时对某些复杂配置环节需反复确认,但整体流程顺畅。
|
2月前
|
运维 jenkins Java
Jenkins 自动化局域网管控软件构建与部署流程
在企业局域网管理中,Jenkins 作为自动化工具,通过配置源码管理、构建及部署步骤,实现了高效、稳定的软件开发与部署流程,显著提升局域网管控软件的开发与运维效率。
66 5
|
3月前
|
Kubernetes Cloud Native 微服务
云原生入门与实践:Kubernetes的简易部署
云原生技术正改变着现代应用的开发和部署方式。本文将引导你了解云原生的基础概念,并重点介绍如何使用Kubernetes进行容器编排。我们将通过一个简易的示例来展示如何快速启动一个Kubernetes集群,并在其上运行一个简单的应用。无论你是云原生新手还是希望扩展现有知识,本文都将为你提供实用的信息和启发性的见解。