【Terraform实现云服务基础设施既代码(IaC)案例实战-1】:树苗科技公司的自动化转型之旅

简介: 背景树苗科技公司业务上云2年有余,随着技术的不断发展。运维团队支持业务变更配置、开资源、删资源等过程加班到深夜一两点已是家常便饭。为了进一步提升工作效率,运维总监张三决定对当前业务交付路径进行统一梳理,借助IaC的理念和Terraform自动化工具逐步实施运维生产自动化,改善组内成员频繁加班的现状。...

背景

树苗科技公司业务上云2年有余,随着技术的不断发展。运维团队支持业务变更配置、开资源、删资源等过程加班到深夜一两点已是家常便饭。为了进一步提升工作效率,运维总监张三决定对当前业务交付路径进行统一梳理,借助IaC的理念和Terraform自动化工具逐步实施运维生产自动化,改善组内成员频繁加班的现状。

期望:

  1. 能够建设生产网和测试网络的业务交付自动化

  2. 能够有一个轻量级前段给业务团队自己申请

  3. 能够有权限管理和版本控制,防止一键删资源跑路的情况

  4. 能够使用容器技术,在短时间内交付可扩容的业务脚本

组织背景

image.png

树苗科技公司共有四个部门,运维部门,品种研发部门、企业财务部门和企业安全部门。

运维部门:主要负责云上资源的管理工作,支撑各部门的业务。

品种研发部门:主要负责新品种研发和产品发布上市过程。会与运维部门频繁交付。经常会申请开通测试环境,新业务建设和旧业务扩容等需求。

业务痛点

  1. 组织发展快,云上资源增速大于给运维团队的人员配比

  2. 重复劳动多,业务方需求天天变,运维成了苦力活

  3. 老板挑战多,天天开个资源这么慢,还经常出问题

  4. 业务价值难讲,基础设施运维都不需要了,哪还有那么多事?

  5. 全责不对等,运维团队没有对业务团队的约束力,只能被动响应。还要应付安全、合规、审计、财务等多方的挑战。

业务构思:

因此,张三安排运维主管李四来主导整个调研和落地工作。 李四经过初步设计后,给出一张简单的架构图,并开始选取技术和工具对试点项目落地。在未来,希望也能与dingding等移动办公软件集成,实现审批消息推送。

image.png

技术和工具

李四对市场上的技术进行了选型和调研,决定采用下面的技术和工具手段进行。

工具名称

用途

链接

备注

Terraform

用作基础设施生产交付的手段,能够适应多云环境,社区活跃度较好。

https://registry.terraform.io/providers/aliyun/alicloud/latest/docs/resources/instance

采用最新版,符合需求后不做频繁更新。

Gitlab

版本控制,权限管控,审批集成

https://about.gitlab.com/

从代码的私有性上来看,GitLab 是一个更好的选择。但是对于开源项目而言,GitHub 依然是代码托管的首选。

Webhook

托管运行代码,跟terraform的plan,apply指令集成。是gitlab的众多集成项目之一。

https://docs.gitlab.com/ee/user/project/integrations/webhooks.html

任意一种前端构建工具

基于python的轻量级前段,轻易可以搭建表单等业务。

不需要太复杂,越简单越好。主要是表单建设。

期望效果

  1. “森林公司”的基础设施选型逐步收敛,由运维团队制定主流的基础设施框架。

  2. 交付周期从5个工作日缩减为2小时内

  3. 对于到期项目,能够快速释放

  4. 运维人员从此躺着干活,更多精力投入到更有成长和价值的事情上。

相关材料

阿里云Terraform官网:

https://registry.terraform.io/providers/aliyun/alicloud/latest/docs/resources/instance

Gitlab官网:

https://docs.gitlab.com/ee/install/

Gitlab-runner:

https://docs.gitlab.com/runner/install/

Hashicorp/terraform docker镜像

https://hub.docker.com/r/hashicorp/terraform/tags

Docker安装:

https://docs.docker.com/desktop/mac/install/

阿里云镜像服务:

https://cr.console.aliyun.com/cn-shanghai/instances/mirrors

相关文章
|
运维 Linux Apache
,自动化运维成为现代IT基础设施的关键部分。Puppet是一款强大的自动化运维工具
【10月更文挑战第7天】随着云计算和容器化技术的发展,自动化运维成为现代IT基础设施的关键部分。Puppet是一款强大的自动化运维工具,通过定义资源状态和关系,确保系统始终处于期望配置状态。本文介绍Puppet的基本概念、安装配置及使用示例,帮助读者快速掌握Puppet,实现高效自动化运维。
453 4
|
11月前
|
人工智能 缓存 搜索推荐
手把手基于ModelScope MCP协议实现AI短视频创作:零代码自动化工作流
本文介绍了基于ModelScope MCP协议的AI视频生成解决方案,涵盖核心机制解析、零代码工作流搭建、性能优化策略及全链路异常处理。通过统一上下文描述符抽象异构AI服务,实现图像生成、语音合成与视频剪辑的自动化编排。结合缓存优化与错误重试机制,大幅提升生成效率(如5分镜视频从91.7s降至22.4s)。最后展示《夏日海滩》生成案例,并探讨个性化风格迁移与商业场景集成等进阶方向,揭示零代码本质为服务、流程与资源的三层抽象。
1672 18
|
10月前
|
运维 监控 安全
从实践到自动化:现代运维管理的转型与挑战
本文探讨了现代运维管理从传统人工模式向自动化转型的必要性与路径,分析了传统运维的痛点,如效率低、响应慢、依赖经验等问题,并介绍了自动化运维在提升效率、降低成本、增强系统稳定性与安全性方面的优势。结合技术工具与实践案例,文章展示了企业如何通过自动化实现运维升级,推动数字化转型,提升业务竞争力。
|
存储 jenkins 测试技术
Apipost自动化测试:零代码!3步搞定!
传统手动测试耗时低效且易遗漏,全球Top 10科技公司中90%已转向自动化测试。Apipost无需代码,三步实现全流程自动化测试,支持小白快速上手。功能涵盖接口测试、性能压测与数据驱动,并提供动态数据提取、CICD集成等优势,助力高效测试全场景覆盖。通过拖拽编排、一键CLI生成,无缝对接Jenkins、GitHub Actions,提升测试效率与准确性。
1158 11
|
人工智能 自然语言处理 API
阿里云上的IaC和自动化
本文介绍了阿里云上的自动化与基础设施即代码(IaC)的整体情况。阿里云提供了2万多个API,每日调用量达300亿次,同比增长40%。文中探讨了自动化集成的方式,包括通过API、SDK和IaC工具,并分析了不同场景下的选择策略。对于资源管理较少的企业,控制台界面更合适;而对于高频变更和复杂操作,API和IaC是更好的选择。此外,文章还提到了低代码/无代码解决方案及AI在IaC和自动化中的应用前景。
|
监控 安全 测试技术
在实施自动化和持续集成的过程中,如何确保代码的安全性和合规性
在自动化和持续集成中,确保代码安全与合规至关重要。措施包括集成自动化安全工具、执行自动化合规检查、进行代码质量与安全检测、评估开源代码安全、实施基础设施即代码的安全标准、采用多层防御策略、加强安全教育与文化建设、使用合规性检测工具及许可证合规分析等,共同提升代码安全性与合规水平。
326 5
|
监控 安全 测试技术
在实施自动化和持续集成的过程中,如何确保代码的安全性和合规性?
在实施自动化和持续集成的过程中,如何确保代码的安全性和合规性?
263 6
|
运维 Prometheus 监控
自动化运维:打造高效IT基础设施的秘诀
【9月更文挑战第11天】在信息技术日新月异的今天,高效的IT基础设施是企业竞争力的关键。本文将探讨如何通过自动化运维来提升效率,减少人为错误,并保持系统的稳定性和安全性。我们将从基础概念入手,逐步深入到具体的工具和策略,最终实现运维工作的自动化。无论你是运维新手还是资深专家,这篇文章都将为你提供宝贵的见解和实用的技巧。
|
运维 持续交付 开发工具
基础设施即代码(IaC):自动化基础设施管理的未来
基础设施即代码(IaC):自动化基础设施管理的未来
696 0
|
敏捷开发 监控 Devops
提升软件测试效率:从手动到自动化的转型之路
在软件开发过程中,测试是确保产品质量和稳定性的重要环节。传统的手动测试虽然直观易懂,但随着项目规模的扩大和复杂度的增加,其效率和覆盖度已无法满足现代开发需求。本文探讨了从手动测试向自动化测试转型的必要性、实施步骤及注意事项,旨在帮助开发团队提高测试效率,保障软件质量。
320 0

推荐镜像

更多