【下一代核心技术DevOps】:(五)微服务CI与Rancher持续集成

本文涉及的产品
注册配置 MSE Nacos/ZooKeeper,118元/月
云原生网关 MSE Higress,422元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
简介: 1. 引言   DevOps的核心魅力是快速的持续集成交付,降低研发和实施运维之间的交互,使得传统的各种扯皮现象统统消失。最重要的是降低成本   保障产品交付可靠性。    使用Rancher作为持续集成的关键环节,统一结连微服务和云计算,使得产品从研发到上线流水线操作,提高生产效率,此处我写的是微服务    而不是传统的程序,是因为微服务(架构的产品)和容器服务,云计算是完美结合的三大核心模块,也是互联网下一代核心技术DevOps的3个    核心支柱。

 1. 引言

  DevOps的核心魅力是快速的持续集成交付,降低研发和实施运维之间的交互,使得传统的各种扯皮现象统统消失。最重要的是降低成本

  保障产品交付可靠性。

   使用Rancher作为持续集成的关键环节,统一结连微服务和云计算,使得产品从研发到上线流水线操作,提高生产效率,此处我写的是微服务

   而不是传统的程序,是因为微服务(架构的产品)和容器服务,云计算是完美结合的三大核心模块,也是互联网下一代核心技术DevOps的3个

   核心支柱。而传统程序,由于在微服务架构方面转型较慢或者生态链较弱,无法完美进行DevOps。

    注:在此不做较多解释,避免口水战,详情可看我的第一篇博客。

 

 2. 集成说明

  本例集成代码采用java微服务项目,可抛弃第三方集成组件如 Jenkins 。简单高效。

  实现提交代码,即生产发布的全自动流程 (Code->Git repository->Docker repository->Rancher->Server)

 

 3. 配置自动CI

     登陆阿里云镜像库  https://dev.aliyun.com

     选择镜像区域,如华南1. 点击 “创建镜像仓库”

 创建:命名空间,

仓库名称:你的项目名称

源代码选择:阿里云Code或者其他的Git源

勾选:代码变更时自动构建镜像 

路径:/  或者你代码里Dockerfile文件的全路径

标签:latest或者自定义版本号

然后点击:创建镜像仓库

只要提交代码上来,服务器就会自动根据构建image镜像

   

 

  4 配置镜像自动构建

   点击刚创建的:server-config 库 。 管理 。记录下镜像库的地址。需要在接下来的Rancher进行配置

  

 进入Rancher管理后台-基础架构-镜像库 -添加

 添加成功后,Rancher就可以下载部署你的私有镜像

 接下来进入 Rancher管理后台 -API-WebHooks 添加一条接收器

 名称:随意好记

 类型:升级服务

 参数格式:阿里云

 标签:latest

 选择器标签:update=server-config

 然后点击:创建 

 复制保存:触发地址

 

再次进入阿里云Docker管理服务后台,看到构建里面的镜像已经构建完毕

我们点击 webhook ,新增一条记录

名称:随意

URL:刚才Rancher里面配置的触发地址

标签:latest

登陆Rancher管理后台,开始部署我们的应用

新建服务

镜像:刚建立的镜像名称

标签:update=server-config

完成后,Rancher自动拉取镜像库的镜像并部署

 

 5. 自动集成,升级

 提交代码。查看镜像自动构建过程。 完成后,查看Rancher的服务server-config 自动升级。

 

 

 至此,基于DevOps的全自动CI/DI发布已经实现。且不用配置Jenkins等复杂的集成组件。最重要的是:你花钱了么?不需要自己的服务器,全部FREE

 

 1.这种集成适合于 团队内部进行了相关测试, 最终交付的代码已经是稳定可靠版。直接上生产的情况。其实这也是大多数中小型公司使用的方式。

属于半自动化。方便,灵活可控,可随时中断某个环节。

 2. 另外一种方式,是全部使用全自动化集成测试,同时包括自动化团队沟通,同时多镜像库发布,自定义动作等。 这个对公司IT能力水平要求较高,使用

Pipeline Jenkins流水线发布。这个我会在随后的博文里面给大家讲。

目录
相关文章
|
25天前
|
JavaScript 前端开发 持续交付
Prettier 高级应用:集成 CI/CD 流水线与插件开发
【10月更文挑战第18天】Prettier 是一款流行的代码格式化工具,它能够自动将代码格式化成一致的风格,从而提高代码的可读性和维护性。对于希望进一步发挥 Prettier 潜力的高级用户而言,将 Prettier 集成到持续集成(CI)和持续部署(CD)流程中,确保每次提交的代码都符合团队标准,是非常重要的。此外,通过开发自定义插件来支持更多语言或扩展 Prettier 的功能也是值得探索的方向。本文将详细介绍这两方面的内容。
40 2
|
6天前
|
运维 Kubernetes Cloud Native
云原生技术:容器化与微服务架构的完美结合
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术以其灵活性和高效性成为企业的新宠。本文将深入探讨云原生的核心概念,包括容器化技术和微服务架构,以及它们如何共同推动现代应用的发展。我们将通过实际代码示例,展示如何在Kubernetes集群上部署一个简单的微服务,揭示云原生技术的强大能力和未来潜力。
|
15天前
|
运维 持续交付 API
从零构建微服务架构:一次深度技术探索之旅####
【10月更文挑战第28天】 本文记录了作者在从零开始构建微服务架构过程中的深刻技术感悟,通过实战案例详细剖析了微服务设计、开发、部署及运维中的关键要点与挑战。文章首先概述了微服务架构的核心理念及其对企业IT架构转型的重要性,随后深入探讨了服务拆分策略、API网关选型、服务间通信协议选择、容器化部署(Docker+Kubernetes)、以及持续集成/持续部署(CI/CD)流程的设计与优化。最后,分享了在高并发场景下的性能调优经验与故障排查心得,旨在为读者提供一套可借鉴的微服务架构实施路径。 ####
54 3
|
16天前
|
jenkins Devops Java
DevOps实践:Jenkins在持续集成与持续部署中的价值
【10月更文挑战第27天】在快速发展的软件开发领域,DevOps实践日益重要。Jenkins作为一款流行的开源自动化服务器,在持续集成(CI)和持续部署(CD)中扮演关键角色。本文通过案例分析,探讨Jenkins在Java项目中的应用,展示其自动化构建、测试和部署的能力,提高开发效率和软件质量。
39 2
|
7天前
|
监控 API 微服务
后端技术演进:从单体架构到微服务的转变
随着互联网应用的快速增长和用户需求的不断演化,传统单体架构已难以满足现代软件开发的需求。本文深入探讨了后端技术在面对复杂系统挑战时的演进路径,重点分析了从单体架构向微服务架构转变的过程、原因及优势。通过对比分析,揭示了微服务架构如何提高系统的可扩展性、灵活性和维护效率,同时指出了实施微服务时面临的挑战和最佳实践。
25 7
|
7天前
|
Kubernetes Cloud Native Docker
云原生技术探索:容器化与微服务的实践之道
【10月更文挑战第36天】在云计算的浪潮中,云原生技术以其高效、灵活和可靠的特性成为企业数字化转型的重要推手。本文将深入探讨云原生的两大核心概念——容器化与微服务架构,并通过实际代码示例,揭示如何通过Docker和Kubernetes实现服务的快速部署和管理。我们将从基础概念入手,逐步引导读者理解并实践云原生技术,最终掌握如何构建和维护一个高效、可扩展的云原生应用。
|
8天前
|
存储 监控 Devops
DevOps实践:持续集成/持续部署(CI/CD)的实战指南
DevOps实践:持续集成/持续部署(CI/CD)的实战指南
|
15天前
|
jenkins Java 持续交付
软件开发自动化程度的不断提高,持续集成(CI)和持续部署(CD)成为现代软件开发的重要组成部分
随着软件开发自动化程度的不断提高,持续集成(CI)和持续部署(CD)成为现代软件开发的重要组成部分。本文以电商公司为例,介绍如何使用 Jenkins 自动发布 Java 代码,包括安装配置、构建脚本编写及自动化部署等步骤,帮助团队实现高效稳定的软件交付。
27 3
|
17天前
|
jenkins Devops 测试技术
DevOps实践:Jenkins在持续集成与持续部署中的价值
【10月更文挑战第26天】随着DevOps理念的普及,Jenkins作为一款开源自动化服务器,在持续集成(CI)与持续部署(CD)中发挥重要作用。本文通过某中型互联网企业的实际案例,展示了Jenkins如何通过自动化构建、持续集成和持续部署,显著提升开发效率、代码质量和软件交付速度,帮助企业解决传统手工操作带来的低效和错误问题。
45 4
|
25天前
|
Kubernetes 持续交付 Docker
探索DevOps实践:利用Docker与Kubernetes实现微服务架构的自动化部署
【10月更文挑战第18天】探索DevOps实践:利用Docker与Kubernetes实现微服务架构的自动化部署
74 2