【云计算】历史的选择-基础设施即代码IaC

简介: 历史必然的选择,基础设施即代码

一、历史的选择

随着软件迭代速度快,且复杂度的上升,组织结构和职能发生了变化。

  • 第一阶段,开发(Dev)和运维(Ops)组织分开,开发负责编写软件,运维负责管理硬件。→问题: 跨团队协作,开发和运维环境不一致,运维人员大多数部署通过手动完成,代码冲突、服务故障和停机频繁。
  • 第二阶段,上云计算平台,运维团队任务从硬件管理转移到编写软件管理,需要编写代码,这样开发和运维都需要编写代码,所以Dev和Ops合并,演化成DevOps

DevOps自动化的目标是将软件交付过程自动化。所以落实到管理基础设施方面,也要尽可能多地通过代码来实现,减少点击网页或手动执行Shell命令的方式,即采用IaC(基础设施即代码)。

二、走进IaC

IaC(Infrastructure as Code)即基础设施即代码,核心思想为通过编写和执行代码来定义、部署、更新和销毁基础设施。

它是一种观念的转变,其将运维的各个工作都视为与软件相关,甚至一些明显针对硬件的工作,即将所有事物都在代码中进行管理,包括

  • 服务器
  • 数据库
  • 网络
  • 日志文件
  • 应用程序配置
  • 文档
  • 自动化测试,部署过程

2.1 IaC解决方案的价值

  • 版本控制(可Review)
  • 建立CI/CD自动化(不依赖于UI操作,减少人为错误)
  • 重复使用(减少时间上的浪费)
  • 环境切换控制(保持生产、预发、测试环境的一致性,平滑切换)
  • 团队成长和协作(文档分享)

总的来说,周而复始的手动管理基础设施,难免枯燥乏味,如此工作,既无创意又无挑战,使用Iac在改进我们工作的同时,让我们关注更有价值的事情

2.2 IaC工具分类

IaC是一种思想,实现这种思想的工具有很多,大致分为五大类。

  • 专项脚本(为每一项任务写一个专项脚本,比如配置docker环境,配置web服务等。其维护难度相当大,可针对小规模、一次性的任务。)
  • 配置管理工具(Chef、Puppet、Absible、SaltStack属于此类,目的是在现有服务器上安装和管理软件,优于专项脚本,可用作大规模、分布式、统一管理的场景)
  • 服务器模板工具(Docker、Packer、Vagrant属于此类,使用容器镜像、虚拟机(VM)的方式拥有一个完全独立的服务器,然后在所有服务器上统一安装)
  • 编排工具(管理服务器模板工具创建虚拟机和容器等,具体实现包括K8s,Marathon/Mesos、AmazonElastic Container Service(Amazon ECS)、Docker Swarm和Nomad等等)
  • 服务开通工具(创建云资源,比如服务器,网络、防火墙设施、路由规则、负载均衡等等,具体实现包括Terraform、CloudFormation、OpenStack Heat、Pulumi等等)
相关文章
|
3月前
|
存储 边缘计算 5G
|
4月前
|
机器学习/深度学习 边缘计算 人工智能
云计算的未来:重塑技术基础设施
【10月更文挑战第7天】云计算的未来:重塑技术基础设施
|
4月前
|
存储 人工智能 弹性计算
阿里云何川:云计算,为数据基础设施的建设提速|数据对话
中国信通院工业互联网与物联网研究所特别策划“数据对话”专题,旨在通过专家的深度分析和独特视角,回答社会关切话题,探讨前沿技术和应用趋势。
|
4月前
|
存储 人工智能 弹性计算
阿里云何川:云计算,为数据基础设施的建设提速|数据对话
中国信通院工业互联网与物联网研究所特别策划“数据对话”专题,旨在通过专家的深度分析和独特视角,回答社会关切话题,探讨前沿技术和应用趋势。本期,我们邀请到阿里云弹性计算产品运营与生态合作负责人何川,围绕云计算如何加速数据基础设施建设及其未来发展趋势展开探讨。
|
8月前
|
边缘计算 人工智能 安全
云计算在现代企业运营中已经成为不可或缺的基础设施
【6月更文挑战第22天】云计算在现代企业运营中已经成为不可或缺的基础设施
109 6
|
9月前
|
存储 安全 开发工具
【计算巢】云计算:如何改变现代企业的IT基础设施
【5月更文挑战第31天】本文探讨了云计算如何重塑现代企业IT基础设施,通过IaaS、PaaS和SaaS三种服务模型提供灵活资源。云计算的优势在于灵活性、成本效益、可扩展性和高可用性。文中以Python和AWS SDK创建EC2实例为例,说明云计算应用,并列举了数据存储、灾难恢复、应用程序部署和企业协作等实际场景,强调云计算正成为企业的重要选择,未来将持续创造价值。
156 0
|
9月前
|
运维 安全 Devops
云计算环境下的网络安全策略与挑战构建高效稳定的云基础设施:DevOps与自动化运维实践
【5月更文挑战第27天】 随着企业数字化转型的加速,云计算已成为支撑现代业务架构的关键基础设施。然而,数据存储和服务交付模式的转变也带来了新的安全风险和挑战。本文探讨了在云计算环境中实现网络和信息安全的策略,并分析了当前面临的主要安全威胁。通过深入剖析云服务模型、加密技术、身份认证机制及合规性要求,我们提出了一系列创新的安全框架和解决方案,旨在为组织提供全面的安全防护,同时促进云计算资源的高效利用。
|
9月前
|
存储 大数据 数据挖掘
云计算与大数据:从基础设施到实际应用
云计算与大数据:从基础设施到实际应用
1227 0
|
9月前
|
运维 持续交付 云计算
云计算中的基础设施自动化:IaC(基础设施即代码)的崛起与实践
云计算中的基础设施自动化:IaC(基础设施即代码)的崛起与实践
300 0
|
存储 Shell API
「云计算」什么是不可变的基础设施?
「云计算」什么是不可变的基础设施?