探索云计算的明日:云原生架构与自动化运维

发表时间: 2023-12-06 14:37

1.云原生

云原生:技术的变革,一定是思想先行,云原生是一种构建和运行应用程序的方法,是一套技术体系和方法论

云原生架构:是一种面向云计算环境设计的应用程序架构。它强调了应用程序的可伸缩性、弹性、故障恢复和可维护性。与传统的单体应用程序不同,云原生应用程序通常由多个微服务组成,这些微服务可以独立部署、扩展和更新。

主要概括为4个要点:DevOps+持续交付+微服务+容器


2.自动化运维

自动化运维:通过自动化工具和流程来管理和维护IT基础设施的实践。它旨在减少手动操作、提高效率、降低错误率,并提供更高的可用性


1.自动化部署: 使用工具如Terraform、Ansible、Chef或Puppet自动化应用程序的部署和配置。


2.自动化伸缩: 使用自动化工具和云提供商的API来实现应用程序的自动伸缩。


3.自动化监控: 使用监控工具如Prometheus和Grafana来实时监控应用程序性能,并在有问题时自动发出警报。


4.自动化故障恢复: 配置自动故障检测和恢复机制,以确保应用程序的高可用性


2.1自动化部署工具


目前各大公有云以及云管理平台均提供了非常友好的交互界面(云管控制台界面),用户可以像超市买东西一样自助采购云资源。然而,当用户需要批量快速打包采购大量不同类型的云资源时,云管页面过多的交互反而降低了资源采购效率


阿里有自己的阿里云资源编排服务 ROS(Resource Orchestration Service),另外市面也有开源的,云厂商只需要对接就行了, 比如terraform。云厂商只需要实现他的provider。


AWS对应的Provider为aws,阿里云对应的Provider为alicloud,天翼云目前还没有实现。


查看是否有对应的provider:到( https://registry.terraform.io/browse/providers )去搜索,这里已经提供了极其丰富的Provider



terraform init

初始化Terraform。此步骤,Terraform会自动检测 provider.tf 文件中的 provider 字段,发送请求到Terraform官方GitHub下载最新版本腾讯云资源的模块和插件,


2.2 自动化部署工具实现的目标 代替


其实有3种方式能够实现自动化部署工具实现的功能


1.云服务商的控制台管理能力


2.使用管理系统(可能自研或者购买)调用公有云API做操作


3.基础设施即代码(IaC)框架





阿里的ROS


阿里云提供的一项简化云计算资源管理的服务。开发者和管理员可以编写模板,在模板中定义所需的阿里云资源(例如:ECS实例、RDS数据库实例)、资源间的依赖关系等。ROS的编排引擎将根据模板自动完成所有资源的创建和配置,实现自动化部署及运维。


还是要在控制台操作,作用感觉不大