3.部署篇(工具部署)

简介: 本文介绍EDAS在Kubernetes上围绕SpringCloud应用部署的完整工具体系,涵盖IDE、Maven插件、CI/CD、Terraform和CLI等多种部署方式,覆盖开发、运维与DevOps场景,助力高效安全交付。

导读:上一篇文章《SpringCloud 应用在 Kubernetes 上的最佳实践 — 部署篇(开发部署)》我们介绍了从 IDE 插件内介绍了如何进行应用部署的方式,除此之外,目前 EDAS 还支持了额外的工具对其他场景进行覆盖,这一篇内容主要就是介绍 EDAS 上围绕部署的工具体系。
相关文章推荐:
《SpringCloud 应用在 Kubernetes 上的最佳实践 —— 开发篇》
《SpringCloud 应用在 Kubernetes 上的最佳实践 — 部署篇(开发部署)》
IDE 插件中进行部署
因为 IDE 是离开发人员的代码最近的工具,所以 IDE 插件中的部署能力也是专门为开发人员提供的部署工具,他的特点就是速度快、使用简单,同时也覆盖了 ECS 集群与 Kubernetes 集群中的 War/Jar 、以及自定义镜像的部署方式。具体使用方式,我们都已经整理成了官方文档,请在 EDAS 的官方帮助文档中,查看《使用 Cloud Toolkit 快速部署应用至 EDAS》章节。
不过对于线上的应用而言,如果随便一个开发人员都能进行随意的变更,这是一件很不安全的事情。EDAS 在命名空间设计的时候,也考虑到了这个问题,解决的办法就是 EDAS 上的命名空间,其用途是用来隔离环境之间的服务与配置用的。可以理解成通常意义上的环境,如:开发、测试、生产等。为避免用户在 IDE 插件中误将线上环境进行变更,我们对命名空间加入了一个允许远程调试的选项,开启之后才能在 IDE 中进行相应的操作,此开关默认为关闭状态。如下图所示:

  1. Maven 插件中进行部署
    Maven 插件的使用场景介于开发人员与运维人员之间,它的设计主要秉承当下比较流行的 DevOps 的理念,可以将部署流程配置化的方式进行发布。即我们可以将部署的配置信息,随代码工程放置在一起,进行版本跟踪,同时也能将应用的配置根据 Spring 中的 Profile 进行区分。按照相应的配置做好之后,只需要执行简单的 mvn toolkit:deploy 即可完成部署。具体可以参见 EDAS 官方文档的《使用toolkit-maven-plugin插件部署应用》。
  2. CI/CD 中进行部署
    一套标准的 DevOps 流程肯定少不了 CI/CD 的存在,作为市场上使用最广的 CI/CD 工具 Jenkins ,以其简单易用和其丰富的插件能力而著称。EDAS 也补齐了这一平台的插件,这款插件也涵盖了 EDAS 中所有主流场景的部署,尤其在 Kubernetes 这一块,同时集成了镜像构建、推送、部署的能力。具体可以参见 EDAS 官方文档的《在Jenkins中使用edas-jenkins-plugin构建应用到 EDAS》。
    同时,目前还有很多的用户在使用云服务云效,云效中集成了强大的流水线的能力,EDAS 是其中的一个内置的流水线的任务模版,名称为部署到 EDAS,详情请参考 EDAS 官方文档《使用云效部署 Java 应用至 EDAS》。
  3. 使用 Terraform 进行编排
    Terraform 是一种安全有效地构建、更改和版本控制基础设施的工具(基础架构自动化的编排工具)。它编写了描述云资源拓扑的配置文件中的基础结构,例如虚拟机、存储账户和网络接口。Terraform 的命令行接口(Command Line Interface,CLI)提供一种简单机制,用于将配置文件部署到阿里云上,并对其进行版本控制。
    EDAS 也集成了当下比较流行的 Infrastructure As Code 的理念,拥抱 Terraform 的生态,提供了一个官方插件,让用户可以以 Infrastructure As Code 的方式将应用编排到对应的底层 IaaS 层资源与其他 PaaS 资源上,文档参见:《使用 Terraform 部署应用至 EDAS》。
  4. 使用 CLI 工具中进行部署
    对于一个资深的运维人员而言,可能最喜欢的操作的方式还是命令行工具。除了使用习惯之外,因为命令行工具同时具备很好的脚本化,和其他的脚本语言进行结合后能具备更丰富的能力。
    EDAS 中的 CLI 工具,目前是依托于阿里云的命令行入口,已 POP API 为命令,API 的参数为命令行的参数进行构建,也就是说其本质还是转换成为一次 POP API 的调用。官方文档请参考:《使用 CLI 快速部署 EDAS 应用》。
    结语及后续
    EDAS 的部署工具基本上围绕着开发人员、运维人员、DevOps 场景进行构建,不过对于一次部署而言,触发往往只是提交一个任务,而我们其实更关心任务提交之后的结果,甚至结果对于业务的影响。
    因为我们每一次任务的触发,其实都是对线上环境的一次变更,变更则很容易产生故障,对业务产生不连续性,根据阿里巴巴集团的经验,超过半数严重故障是由于变更产生。所以在 2018 年末,提出了线上变更的三条原则:可灰度、可回滚、可监控。EDAS 也是逐步将这一理念中的各种能力在产品中践行;所以接下来的章节将围绕着线上变更来进行,下一讲将进入第一小节《可灰度》。
相关文章
|
存储 算法 PyTorch
FlashAttention2原理解析以及面向AIGC的加速实践
FlashAttention2原理解析以及面向AIGC的加速实践
3165 0
|
7月前
|
Kubernetes IDE 应用服务中间件
2.部署篇(开发部署)
本文介绍如何将SpringCloud应用部署到Kubernetes云端,基于EDAS实现快速上云。涵盖集群导入、应用初始化及通过IDE插件高效部署,助力开发者提升发布效率。
|
2月前
|
运维 数据可视化
便捷高效网络检测——VSPing新手必备指南
VSPing是一款专业在线Ping检测工具,支持多节点、多模式检测,覆盖全国及海外,数据精准、图表直观。浏览器即开即用,输入域名/IP三步完成检测,实时呈现延迟、丢包等关键指标,并提供优化建议,助个人、站长、运维人员快速定位网络问题,保障流畅体验。(239字)
439 1
|
7月前
|
JSON API 数据格式
微信域名检测接口对接文档
该API用于检测指定URL是否被微信拦截,通过GET请求传入API Key和待测链接,返回JSON格式结果,包含状态码及信息,如-202(未拦截)、0(已拦截)等,便于开发者快速判断网页在微信中的访问状态。
|
4月前
|
存储 弹性计算 人工智能
阿里云服务器通用型g9i实例怎么样?性能、收费标准与2核8G、4核16G、8核32G最新活动价格
阿里云第九代企业级ECS通用型g9i实例,凭借阿里云全新CIPU架构与英特尔至强6处理器,实现算力显著提升,提供稳定可预期的高性能输出,适用于多场景。g9i实例提供2核8G到192核768G的广泛配置,支持高性能存储与网络I/O,满足企业核心业务需求。其计费模式灵活,包括按量付费与包年包月,后者提供长期订阅优惠。相比其他实例,g9i在性能、安全性及生态兼容性上优势显著,是企业核心生产系统的理想算力底座。
|
6月前
|
人工智能 自然语言处理 数据挖掘
2026年数据分析工具推荐,让数据真正为企业所用
2026年,“数据要素价值释放年”全面落地,AI驱动型BI工具需求激增。阿里云瓴羊Quick BI凭借原生AI助手“智能小Q”,实现自然语言查询、自动归因、预测模拟与一键报告,支持湖仓一体架构与细粒度安全管控,覆盖零售、制造、金融等多行业。其全链路适配、低门槛全员用数及灵活计费体系,使其成为企业数据驱动转型的首选工具。(239字)
|
人工智能 自然语言处理 安全
AI 智能体从入门到进阶再到落地完整教程
自主智能体正引领AI技术变革,依托大模型与强化学习,实现独立推理、决策与多任务协同。本书系统探讨智能体定义、类型、框架及应用,涵盖客服、医疗、金融等场景,强调可扩展性、模块化与持续学习等设计原则,并对比LangGraph、AutoGen等主流框架,助力构建高效、可靠的智能系统。
629 0
|
8月前
|
缓存 监控 供应链
京东商品详情价格监控API教程
京东商品详情API是京东开放平台提供的标准化接口,支持通过商品ID或SKU获取商品基础信息、价格库存、促销活动、评价数据等。采用Access Token认证,适用于价格监控、比价、库存管理等场景,需注意调用频率并合理缓存以提升性能。
|
12月前
|
人工智能 算法 安全
MCP提示词工程:上下文注入的艺术与科学
作为一名深耕AI技术领域多年的技术博主摘星,我深刻认识到提示词工程(Prompt Engineering)在现代AI系统中的核心地位,特别是在Model Context Protocol(MCP)框架下,提示词工程已经演进为一门融合艺术直觉与科学严谨的综合性学科。在我多年的实践经验中,我发现MCP不仅仅是一个简单的协议标准,更是一个革命性的上下文管理平台,它通过精密的提示词机制和动态上下文注入技术,彻底改变了AI系统与外部资源的交互方式。本文将深入探讨MCP中提示词的作用机制,从底层协议设计到高层应用策略,全面剖析动态提示词生成与模板化的技术实现,详细阐述上下文长度优化与截断策略的核心算法,并
721 0
MCP提示词工程:上下文注入的艺术与科学
|
SQL 运维 算法
链路诊断最佳实践:1 分钟定位错慢根因
本文聚焦于线上应用的风险管理,特别是针对“错”(程序运行不符合预期)和“慢”(性能低下或响应迟缓)两大类问题,提出了一个系统化的根因诊断方案。
1244 103