[12.15 workshop]基于GitOps的应用生命周期管理和交付

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: [12.15 workshop]基于GitOps的应用生命周期管理和交付

前提条件

  • 创建一个可以访问公网的ACK集群

操作步骤

步骤一: 安装应用中心组件

登录容器服务控制台 点击 多集群 -> 应用中心 进入应用中心控制台页面。

选择 主控集群,若显示组件未安装,则点击 开始安装 完成应用中心组件的安装,如下图所示。

image.png

等待约1~2分钟,组件安装成功。

步骤二: 创建和发布应用

前置操作

由于本地demo所使用的的应用包含容器水平伸缩(HPA)配置,所以首先需要安装HPA controller组件;

集群 -> 运维管理 -> 组件管理 -> 安装ack-kubernetes-cronhpa-controller 组件
image.png

创建应用

(1) 点击 创建应用 进入 应用来源 配置页面, 选择 Git仓库,点击 下一步 进入 应用配置页面;
(2) 应用配置项如下所示:

image.png

完成配置后点击 下一步 进入 发布配置页面

(3)发布页面配置中,从可选集群列表中选择目标集群和命名空间并点击 开始发布,如下图所示:
image.png

核对发布确认单信息并点击 确定 开始执行发布操作, 如下图所示:

image.png

(4) 查看和访问应用
查看应用包含哪些k8s子资源,资源拓扑图如下所示:

image.png

查看应用Ingress访问地址,如下图所示:

image.png

本地设置Hosts绑定,添加hosts绑定条目如下所示(请替换{nginx-ingress-lb eip}的值为您实际绑定的eip):

# /etc/hosts
{nginx-ingress-lb eip} mse.workshop.com

浏览器访问应用查看页面背景色:

image.png

步骤三: 更新应用

(1)提交hotfix到Git仓库

$ cd mse-spring-cloud-demo
$ git checkout -b hotfix/backgroundcolor-green
### 更新directory/zuul-deployment.yaml编排文件中环境变量background.color=green
$ git add .
$ git commit -m "hotfix backgroundcolor to green" -s
$ git push origin hotfix/backgroundcolor-green

(2) 开发者在Git端创建MergeRequest请求合并到master分支,如下所示
image.png

image.png

(3)管理员接收合并请求

image.png

(4)应用中心页面点击 创建变更

image.png

(5)创建变更页面中,可以查看当前已部署的应用版本和最新应用版本信息

image.png

(6) 点击下一步,进行发布配置

image.png

(7)发布确认单,执行发布

image.png

(8) 刷新访问应用,查看新版应用页面

image.png

步骤四: 回滚应用到指定版本

(1)在应用详情页面点击 历史版本 可以查看历史版本记录

image.png

(2)回滚到指定版本

image.png

(3)查看回滚后的应用

image.png

步骤五: 更新应用并重新发布

同步骤三

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
机器学习/深度学习 数据采集 测试技术
Dowhy,一个强大的Python库,做金融量化领域的可以尝试下!
Dowhy,一个强大的Python库,做金融量化领域的可以尝试下!
467 2
|
5月前
|
人工智能 安全 程序员
用 Colab 和 ngrok 免费部署你的 Web UI 项目,随时随地访问!
用 Colab 和 ngrok 免费部署你的 Web UI 项目,随时随地访问!
|
JavaScript 前端开发 Java
Unicode转义(\uXXXX)的编码和解码
  在涉及Web前端开发时, 有时会遇到\uXXXX格式表示的字符, 其中XXXX是16进制数字的字符串表示形式, 在js中这个叫Unicode转义字符, 和\n \r同属于转义字符. 在其他语言中也有类似的, 可能还有其它变形的格式.
2930 0
|
Linux Docker 容器
Linux安装docker以及配置镜像加速
Linux安装docker以及配置镜像加速
985 0
|
6月前
|
存储 人工智能 项目管理
2025年GitHub平台上的十大开源MCP服务器汇总分析
本文深入解析了GitHub上十个代表性MCP(Model Context Protocol)服务器项目,探讨其在连接AI与现实世界中的关键作用。这些服务器实现了AI模型与应用程序、数据库、云存储、项目管理等工具的无缝交互,扩展了AI的应用边界。文中涵盖Airbnb、Supabase、AWS-S3、Kubernetes等领域的MCP实现方案,展示了AI在旅行规划、数据处理、云存储、容器编排等场景中的深度应用。未来,MCP技术将向标准化、安全性及行业定制化方向发展,为AI系统集成提供更强大的支持。
1336 2
2025年GitHub平台上的十大开源MCP服务器汇总分析
未卸载干净的proteus安装教程7.8
未卸载干净的proteus安装教程7.8
343 0
|
Linux 数据安全/隐私保护
Linux系统忘记密码的三种解决办法
这篇博客介绍了三种在Linux忘记密码时重置登录密码的方法:1) 使用恢复模式,通过控制台界面以管理员权限更改密码;2) 利用Linux Live CD/USB启动,挂载硬盘分区并使用终端更改密码;3) 进入单用户模式,自动以管理员身份登录后重置密码。每个方法都提供了详细步骤,提醒用户在操作前备份重要数据。
|
设计模式 前端开发 数据库
微服务架构谈(4) plus:DDD 分层架构如何推动架构演进
微服务架构谈(4) plus:DDD 分层架构如何推动架构演进
1173 0
微服务架构谈(4) plus:DDD 分层架构如何推动架构演进
|
JSON NoSQL C++
VScode调试C/C++项目调试多个C++程序
VScode调试C/C++项目调试多个C++程序
285 0