【云原生-DevOps】企业级DevOps平台搭建及技术选型-CICD篇(三)

简介: 【云原生-DevOps】企业级DevOps平台搭建及技术选型-CICD篇(三)

环境管理

K8S公共集群

可以使用在公司资源池创建的K8S集群创建环境,也可以使用其他外部云服务商的集群创建环境(前提是能够正常访问到K8S的API)。

不同的K8S环境可以使用相同的K8S集群,但必须通过不同的namespace加以区分。

image.png

K8S私有集群

一般在生产环境下,不同部门使用的是不同的K8S集群,甚至运维也是不同的人在运维,所以一个公司会有很多个生产集群供不同项目选择使用,但是开发环境、测试环境可以统一使用一个公共大集群,方便大家统一环境,快速构建测试生产环境。

私有K8S集群接入主要依赖Config.yml,进入导入,然后调用K8S SDK进行环境校验接入。

image.png

部署管理

基本信息

写入部署基本信息,如名称、部署的环境、镜像地址、Docker仓库鉴权选择等

image.png

部署配置

部署配置,主要就是把K8S的常用信息,如Deployment、ConfiMap、服务暴露等信息进行可视化页面操作。


Deployment在K8S中就是最主要的,主要包含多个Pod,如最大最小内存、最大最小CPU限制,这样设置后也会保护我们的主机


image.png


ConfigMap


ConfigMap是K8S中可用于存储配置信息的一种资源对象,


您可以在此处上传应用在该环境运行时需要的配置文件,


部署任务执行时对这些文件将以ConfigMap的方式挂载到应用容器中指定的目录下。


服务暴露:Service


K8S的Service主要分两种,ClusterIP和Nodeport。


ClusterIP仅能在K8S集群内部通过 [内部访问地址] 访问。


NodePort除了支持内部访问外,还可以通过K8S任一节点IP及映射的端口号进行访问。


image.png

服务暴露:Ingress


Ingress相当于K8S集群的流量入口(后端通过Nginx实现),根据Host和Path判断把流量分发到具体的后端应用。


填写的Host不会自动解析到K8S集群入口,需要用户自行解析到集群任一节点的IP。


Ingress仅支持以HTTP协议提供服务的应用从K8S外部访问,访问端口号一律是80。


服务暴露:GRPC Ingress


GRPC Ingress用于代理GRPC类型的服务。


如果调用者与GRPC服务在同一个K8S集群中,可直接通过列表中的访问地址进行访问,无须加端口。


如果调用者与GRPC服务不在用一个K8S集群中,则访问者需要绑Hosts,域名为访问地址。

image.png


应用管理

支持查看Pod实例

image.png

支持K8S在线扩缩容等操作,查看K8S Deployment描述文件等。

流水线管理

企业级持续集成和持续交付工具,通过构建自动化、集成自动化、验证自动化、部署自动化,完成从开发到上线CICD过程。通过持续向团队提供及时反馈,让交付过程高效顺畅。

image.png

最佳实践

我们在实际应用的过程中,通常把我们的单元测试、代码扫描等,构建,部署统一添加到一个流水线中,然后当代码提交时,出发WebHook进行出发流水线。

基本信息


image.png

工作流

构建: 支持以Docker镜像的方式封装测试所需的运行环境,然后执行自定义的测试过程,在工作流程进入交付环节之前保证代码达到必要的质量。

部署: 结合实际的软件发布流程,以已有的应用部署任务为核心。

单元测试: 使用已有的测试任务为持续交付流程提供测试功能。

卡点操作: 可通过卡点实现流水线执行过程的人工审核机制,也可以在卡点阶段执行外部依赖操作,提高流程的合理性。

代码扫描: 通过HTTP方式调用外部接口,实现CICD工作流与外部能力快速集成。

image.png

效能看板

效能看板一款专业的交付过程观测和研发效能度量分析工具,从计划、执行、风险等 6 个方面度量交付过程、暴露交付风险、保障交付效率和质量,通过流动效率、资源效率、质量保障 3 个维度可视化团队效能状态、深入分析问题、精准指导效能改进。

整体说明

前面我们用到了很多的开源组件:如Gitlab、禅道、Jenkins等

是一整套完整的DevOps工具链,我们也参数了很多的数据集

当然领导最喜欢的就是看报表、看板、我们可以根据不同公司、不同维度、进行指标库统一创建、然后进行不同部门不同指标自定义展示。

功能描述

项目交付过程度量

度量项目的交付过程,跟进计划和执行,及时发现问题和偏差

帮助管理者保障项目交付的规范、效率和质量

团队资源可视化

可视化团队资源规划,即时反映团队中人力的分配、工作负荷和产出效率

帮助管理者精准调配人力、优化资源配置,并客观评价资源产出能力,有针对地提升组织效能

研发效能度量和分析

基于专业的效能模型,客观评价团队效能状态,分析效能问题

让效能状态一目了然,改进有据可依,改进结果可量化

权威的研发效能度量解读

为各个报表和度量指标提供系统的解读,帮助团队深入理解度量指标含义和使用方法

面向各个场景,提供度量方案设计建议,提升方案的可行性和落地效果

写完啦

CICD篇算是告一段落啦,过程中,只描述了大概的一些信息,细节方面都没有详细列出,毕竟DevOps不是三言两语就能很好的概括的,只是在这里写了一个大致的方向,供大家参考。


企业级DevOps平台搭建及技术选型-项目管理篇

https://rundreams.blog.csdn.net/article/details/127451055

当然如有问题沟通,也可以私信与我交流,谢谢。

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
5月前
|
运维 Cloud Native Devops
一线实战:运维人少,我们从 0 到 1 实践 DevOps 和云原生
上海经证科技有限公司为有效推进软件项目管理和开发工作,选择了阿里云云效作为 DevOps 解决方案。通过云效,实现了从 0 开始,到现在近百个微服务、数百条流水线与应用交付的全面覆盖,有效支撑了敏捷开发流程。
19384 30
|
4月前
|
运维 Cloud Native Devops
云原生架构的崛起与实践云原生架构是一种通过容器化、微服务和DevOps等技术手段,帮助应用系统实现敏捷部署、弹性扩展和高效运维的技术理念。本文将探讨云原生的概念、核心技术以及其在企业中的应用实践,揭示云原生如何成为现代软件开发和运营的主流方式。##
云原生架构是现代IT领域的一场革命,它依托于容器化、微服务和DevOps等核心技术,旨在解决传统架构在应对复杂业务需求时的不足。通过采用云原生方法,企业可以实现敏捷部署、弹性扩展和高效运维,从而大幅提升开发效率和系统可靠性。本文详细阐述了云原生的核心概念、主要技术和实际应用案例,并探讨了企业在实施云原生过程中的挑战与解决方案。无论是正在转型的传统企业,还是寻求创新的互联网企业,云原生都提供了一条实现高效能、高灵活性和高可靠性的技术路径。 ##
240 3
|
4月前
|
运维 Cloud Native Devops
云原生时代的DevOps实践:自动化、持续集成与持续部署
【9月更文挑战第3天】未来,随着人工智能、大数据等技术的不断融入,DevOps实践将更加智能化和自动化。我们将看到更多创新的技术和工具涌现出来,为软件开发和运维带来更多便利和效益。同时,跨团队协作和集成也将得到进一步加强,推动软件开发向更加高效、可靠和灵活的方向发展。
|
5月前
|
运维 监控 安全
构建高效自动化运维系统:DevOps在企业级应用的实现路径
【7月更文挑战第54天】在当今IT领域,DevOps作为一种文化和实践,旨在弥合开发与运维之间的鸿沟,以实现更快速、更可靠的产品交付。本文将深入探讨在企业环境中如何构建一个高效的自动化运维系统,不仅涵盖理论框架,还包括具体实施步骤和最佳实践。通过持续集成(CI)、持续部署(CD)、基础设施即代码(IaC)等关键概念的融合运用,文章旨在为读者提供一个清晰的指导,以便在其组织中落实DevOps策略,并实现运维效率的显著提升。
|
5月前
|
运维 Devops 持续交付
DevOps实践之路:从理论到企业级应用
在数字化浪潮中,DevOps作为一种提升软件开发和运维效率的方法论,正被越来越多的企业采纳。本文通过探讨DevOps的核心理念、关键实践以及在不同规模企业中的应用案例,旨在为读者提供一条清晰的DevOps实践之路。无论你是初涉这一领域的新手,还是寻求进阶的资深人士,这篇文章都将为你打开一扇洞悉DevOps精髓的大门。
106 2
|
6月前
|
运维 监控 安全
DevOps实践:从理论到企业级应用的转化之路
【7月更文挑战第21天】在数字化转型的大潮中,DevOps作为一种提升软件开发与运维效率的方法论,正逐步成为企业IT战略的核心。本文将从DevOps的基本概念出发,深入探讨其在企业级应用中的实践路径,包括文化理念转变、工具链的选择与集成、持续交付的实施步骤以及监控与反馈机制的建立。通过分析成功案例,旨在为读者提供一条清晰的DevOps转型路线图,帮助技术团队和运维人员理解并实施DevOps,以实现快速迭代和高效运营的目标。
|
8月前
|
运维 监控 Devops
构建高效自动化运维系统:DevOps在企业级应用的实践
【5月更文挑战第30天】 随着信息技术的飞速发展,企业对软件交付速度和稳定性的要求越来越高。传统的运维模式已无法满足快速迭代和高效稳定的需求,因此,本文将探讨如何通过实施DevOps文化、流程和工具,构建一个高效的自动化运维系统。文章将详细描述DevOps的核心理念、关键技术组件以及如何在组织中落地实施策略,旨在帮助企业提升运维效率,加速产品的上市时间,同时保证系统的高可用性和稳定性。
|
8月前
|
Kubernetes Cloud Native Devops
【阿里云云原生专栏】DevOps与云原生的融合:阿里云CI/CD流水线最佳实践
【5月更文挑战第23天】阿里云融合DevOps与云原生技术,提供高效CI/CD解决方案,助力企业提升研发效能。通过云效平台,集成代码管理、构建服务、容器服务、持续部署及监控日志组件,实现自动化研发流程。案例中,应用从GitHub构建到Kubernetes部署,全程无缝衔接。借助阿里云,企业能快速构建适应云原生的DevOps体系,以应对复杂需求和提升市场竞争力。
208 1
|
1月前
|
运维 Cloud Native 持续交付
深入理解云原生架构及其在现代企业中的应用
随着数字化转型的浪潮席卷全球,企业正面临着前所未有的挑战与机遇。云计算技术的迅猛发展,特别是云原生架构的兴起,正在重塑企业的IT基础设施和软件开发模式。本文将深入探讨云原生的核心概念、关键技术以及如何在企业中实施云原生策略,以实现更高效的资源利用和更快的市场响应速度。通过分析云原生架构的优势和面临的挑战,我们将揭示它如何助力企业在激烈的市场竞争中保持领先地位。
|
1月前
|
Kubernetes Cloud Native 微服务
探索云原生技术:容器化与微服务架构的融合之旅
本文将带领读者深入了解云原生技术的核心概念,特别是容器化和微服务架构如何相辅相成,共同构建现代软件系统。我们将通过实际代码示例,探讨如何在云平台上部署和管理微服务,以及如何使用容器编排工具来自动化这一过程。文章旨在为开发者和技术决策者提供实用的指导,帮助他们在云原生时代中更好地设计、部署和维护应用。