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

本文涉及的产品
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
简介: 【云原生-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搭建和管理企业级网站应用
相关文章
|
3月前
|
运维 Cloud Native Devops
一线实战:运维人少,我们从 0 到 1 实践 DevOps 和云原生
上海经证科技有限公司为有效推进软件项目管理和开发工作,选择了阿里云云效作为 DevOps 解决方案。通过云效,实现了从 0 开始,到现在近百个微服务、数百条流水线与应用交付的全面覆盖,有效支撑了敏捷开发流程。
19351 30
|
1月前
|
运维 Devops 测试技术
CICD与DevOps的详解与比较
CICD与DevOps的详解与比较
125 1
|
2月前
|
运维 Cloud Native Devops
云原生架构的崛起与实践云原生架构是一种通过容器化、微服务和DevOps等技术手段,帮助应用系统实现敏捷部署、弹性扩展和高效运维的技术理念。本文将探讨云原生的概念、核心技术以及其在企业中的应用实践,揭示云原生如何成为现代软件开发和运营的主流方式。##
云原生架构是现代IT领域的一场革命,它依托于容器化、微服务和DevOps等核心技术,旨在解决传统架构在应对复杂业务需求时的不足。通过采用云原生方法,企业可以实现敏捷部署、弹性扩展和高效运维,从而大幅提升开发效率和系统可靠性。本文详细阐述了云原生的核心概念、主要技术和实际应用案例,并探讨了企业在实施云原生过程中的挑战与解决方案。无论是正在转型的传统企业,还是寻求创新的互联网企业,云原生都提供了一条实现高效能、高灵活性和高可靠性的技术路径。 ##
194 3
|
2月前
|
运维 Cloud Native Devops
云原生时代的DevOps实践:自动化、持续集成与持续部署
【9月更文挑战第3天】未来,随着人工智能、大数据等技术的不断融入,DevOps实践将更加智能化和自动化。我们将看到更多创新的技术和工具涌现出来,为软件开发和运维带来更多便利和效益。同时,跨团队协作和集成也将得到进一步加强,推动软件开发向更加高效、可靠和灵活的方向发展。
|
3月前
|
运维 监控 安全
构建高效自动化运维系统:DevOps在企业级应用的实现路径
【7月更文挑战第54天】在当今IT领域,DevOps作为一种文化和实践,旨在弥合开发与运维之间的鸿沟,以实现更快速、更可靠的产品交付。本文将深入探讨在企业环境中如何构建一个高效的自动化运维系统,不仅涵盖理论框架,还包括具体实施步骤和最佳实践。通过持续集成(CI)、持续部署(CD)、基础设施即代码(IaC)等关键概念的融合运用,文章旨在为读者提供一个清晰的指导,以便在其组织中落实DevOps策略,并实现运维效率的显著提升。
|
3月前
|
运维 Devops 持续交付
DevOps实践之路:从理论到企业级应用
在数字化浪潮中,DevOps作为一种提升软件开发和运维效率的方法论,正被越来越多的企业采纳。本文通过探讨DevOps的核心理念、关键实践以及在不同规模企业中的应用案例,旨在为读者提供一条清晰的DevOps实践之路。无论你是初涉这一领域的新手,还是寻求进阶的资深人士,这篇文章都将为你打开一扇洞悉DevOps精髓的大门。
88 2
|
4月前
|
运维 监控 安全
DevOps实践:从理论到企业级应用的转化之路
【7月更文挑战第21天】在数字化转型的大潮中,DevOps作为一种提升软件开发与运维效率的方法论,正逐步成为企业IT战略的核心。本文将从DevOps的基本概念出发,深入探讨其在企业级应用中的实践路径,包括文化理念转变、工具链的选择与集成、持续交付的实施步骤以及监控与反馈机制的建立。通过分析成功案例,旨在为读者提供一条清晰的DevOps转型路线图,帮助技术团队和运维人员理解并实施DevOps,以实现快速迭代和高效运营的目标。
|
3天前
|
Cloud Native 安全 数据安全/隐私保护
云原生架构下的微服务治理与挑战####
随着云计算技术的飞速发展,云原生架构以其高效、灵活、可扩展的特性成为现代企业IT架构的首选。本文聚焦于云原生环境下的微服务治理问题,探讨其在促进业务敏捷性的同时所面临的挑战及应对策略。通过分析微服务拆分、服务间通信、故障隔离与恢复等关键环节,本文旨在为读者提供一个关于如何在云原生环境中有效实施微服务治理的全面视角,助力企业在数字化转型的道路上稳健前行。 ####
|
5天前
|
运维 Kubernetes Cloud Native
云原生技术:容器化与微服务架构的完美结合
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术以其灵活性和高效性成为企业的新宠。本文将深入探讨云原生的核心概念,包括容器化技术和微服务架构,以及它们如何共同推动现代应用的发展。我们将通过实际代码示例,展示如何在Kubernetes集群上部署一个简单的微服务,揭示云原生技术的强大能力和未来潜力。
|
6天前
|
消息中间件 存储 Cloud Native
云原生架构下的数据一致性挑战与应对策略####
本文探讨了在云原生环境中,面对微服务架构的广泛应用,数据一致性问题成为系统设计的核心挑战之一。通过分析云原生环境的特点,阐述了数据不一致性的常见场景及其对业务的影响,并深入讨论了解决这些问题的策略,包括采用分布式事务、事件驱动架构、补偿机制以及利用云平台提供的托管服务等。文章旨在为开发者提供一套系统性的解决方案框架,以应对在动态、分布式的云原生应用中保持数据一致性的复杂性。 ####