玩转ECS第1讲 | 云上自动化部署和运维的正确姿势

简介: 云上部署和运维相对于传统方法而言更加灵活,只需要编写一次模版就可以随时随地拉起一套环境,做到一键部署。同时支持多环境部署、操作可审计、支持DevOps实践。本次分享由阿里云资深技术专家吴君印为大家介绍介绍上云最正确的部署和运维方式,结合阿里的最佳实践,打造快速、安全、可复制、标准化的DevOps体验。

演讲嘉宾简介:吴君印,阿里云资深技术专家。负责ECS整体服务层面的技术和产品架构工作,并负责阿里云智能内部OnECS的技术和产品架构工作,包括产品ECS云助手,运维编排OOS,资源编排ROS以及内部OnECS产品宙斯,致力于打造以ECS为中心的系统管理、自动化和DevOps体验。

以下内容根据演讲视频以及PPT整理而成。观看回放
更多课程请进入玩转ECS详情页”了解

本次分享主要围绕以下三个方面:

    一、云上部署和运维的特点
    二、资源编排ROS
    三、运维编排OOS

今天主要分享的内容是云上自动化部署和运维的正确姿势,下面先来看看云上部署相比于传统的RDC部署有哪些不同。

一、云上部署和运维的特点

无论是部署还是运维,在云上都有如下四个特点:

image.png

首先,可重复。在云上部署相对于传统RDC部署而言更加灵活,只需要编写一次模版就可以随时随地拉起一套环境,做到一键部署。目前有两种类型的环境部署,一种是测试环境、预发环境、生产环境。第二种是在不同地域进行部署,如北京地域、上海地域以及杭州地域。

第二点,多环境保持一致。因为使用的是相同的模版进行部署,所有环境部署出来的结果都一样,这样可以避免人为错误,避免问题排查时的环境影响,环境造成的问题往往是最难排查的问题之一。

第三点,可审计。所有操作均通过API,所有API操作都可以被审计,集成操作审计服务ActionTrail即可。

第四点是DevOps。从环境部署到应用部署都模板化,版本管理使用Git,可以做代码评审、代码回滚。

资源编排ROS和运维编排OOS

阿里云针对云上部署和运维特点,推出了两个产品,包括资源编排ROS(Resource Orchestration Service)——解决自动化部署问题,运维编排OOS(Operation Orchestration Service)——解决自动化运维问题。两款编排产品除了支持ECS的实例,还支持其它阿里云的产品,如负载均衡,关系型数据库RDS,对象存储OSS等。

image.png

二、资源编排ROS

资源编排ROS的典型场景

资源编排ROS的典型场景主要有四种:
• 第一种是部署模版,资源编排ROS是通过模版方式达到可以重复部署的目的,使用模版可以在任何时间任何地点拉起一套环境。
• 第二种是MSP、ISV提供自己的部署模版,可以一键开出复杂的业务系统,如SAP HANA等系统,将部署时间缩短为几个小时。由于云上的环境都是标准的,只要有测试通过后的模版就可以在不同的环境、不同的账号中重复部署。
• 第三是解决方案中心,阿里云通过自身多年服务客户和双11的经验,总结了大量的最佳实践,在解决方案中心中提供了很多高质量的模版,支持开箱即用。
• 第四是CI/CD集成,在DevOps开发模式下,只有将部署模版放到CI/CD中才能打造DevOps的开发模式,轻松的做到蓝绿部署,并且支持阿里云云效。

image.png

ROS控制台及操作演示

下图是资源编排ROS主页https://rosnext.console.aliyun.com/ ,上方对ROS产品进行了简单的介绍;下方是常见的部署架构作为示例模版。

image.png

左侧菜单栏中有“我的模版”和“模版示例”,其中我的模版是需要自定义的模版,模版示例中提供了大量常见的部署形式,如Jenkins、Kafka等。解决方案中心中是由阿里云解决方案架构师团队、最佳实践团队、各业务方团队和资源编排团队合作共建,将阿里云多年沉淀的最佳实践和针对各种场景的解决方案沉淀为资编排源模版,用户可以使用这些最佳实践模版使得云上部署更加安全高效。

image.png

“资源类型”模块中展示了ROS支持的阿里云云产品。

image.png

下面以构建我的模版LNMP-deom-1作为例子,模版以JSON格式表达,也支持YAML格式,最重要的是,还提供了可视化的架构图。

image.png

可以发现所有的资源都在VPC内部,包括关系型数据库RDS和ECS实例。图中两个ECS实例挂在负载均衡LoadBalance下面。

image.png

接着可以使用此模版创建资源栈,之后通过事件tab知道每一步创建步骤。在资源tab中看到所有被模版创建的资源,只需要点击资源ID,就可以打开实例详情页面。在输出tab在有显示一个网站链接,可以发现此次网站部署成功。参数tab中提供了每次模版的参数。当用户手动修改一些资源,与模版出现不一致时,可以使用检查资源偏差查看不同点。

image.png

三、运维编排OOS

运维编排OOS的典型场景

运维编排OOS的典型场景同样分为四种:
• 首先是批量操作实例和执行远程命令,例如启动、停止等,相比于其它方式无需密码,无需登录,无需使用跳板机,且无需担心安全问题,运维编排使用了阿里云RAM进行控制。
• 第二种场景是定时运维,在固定的时间执行制定的命令,相当于云上Cron服务,并且免托管,分布式。
• 第三种场景是支持报警和事件驱动运维,当某个事件发生时自动触发告警任务。
• 第四是提供大量丰富的公共模版,阿里云总结了大量的典型运维场景,并将总结成果开源到了Github上,欢迎大家贡献优质模版,共同打造运维社区。

image.png

OOS控制台及操作演示

下图是运维编排OOS主页https://oos.console.aliyun.com/ ,左侧菜单栏中有批量操作实例模块,任务类型包含发送进程命令、批量下载文件、实例操作、实例属性修改等。批量管理软件模块中可以批量的给实例下载和安装常见的软件,在我的软件模块可以自行部署和卸载。

image.png

定时开关机模块中可以选择在指定的时间关闭、开启或重启实例。在包年包月的服务器情况下,客户需要在固定的时间升级临时宽带,等高峰过去后再下降,以达到节约成本的目的。在创建更新镜像模块中可以基于已有的实例进行更新,也可以基于已有的镜像创建实例,进一步更新,再创建新的镜像。

定时运维模块可以在固定的时间和固定的地域执行指定的任务。告警与事件运维模块中若控制台上显示当某个事件发生时自动触发模版,比如CPU使用率过高时重启实例操作。

image.png

所有的模版都提供了可视化视图,提供了更加直观的展示方式,还提供了YAML和JSON两种格式的文本,方便用版本管理软件如Git进行管理。

image.png

下图展示的是批量操作实例,发送远程命令,命令内容是发送输出命令。之后选择实例,可以手动选择,可以指定实例标题,也可以指定实例资源组,或者上传csv文件,从ECS实例表中导出csv文件来选择实例。

image.png

在高级选项部分可以配置执行模式,如出现错误时继续执行还是暂停实例,设置并发速率,允许的最大错误次数等。

image.png

此外还有更加快速的执行实例命令方式,在实例列表模块中选择具体的实例,进入实例详情页后会显示本实例远程命令,显示了历史的执行命令,同时可以发送新的远程命令。其次在实例列表中同时选择多台实例,选择更多,发送远程命令,这时多台实例就可以同时执行命令。

image.png

使用ROS、OOS的部分阿里云产品

下图中列出了支持ROS、OOS的常见阿里云产品,包括ACS容器服务、FC函数计算、SLS日志服务、SMC服务迁移中心等等,这与产品本身的部署场景契合。

image.png

云产品需要支持多种地域,阿里云有22个地域,使用ROS和OSS可以最大提高部署和运维效率。阿里云对内部系统变更有非常严格的要求,需要提供信息完整的变更单、申请、审批、以及需要为变更过程中可能出现的问题提前准备脚本。因此OSS会预先提供变更模版和回滚模版,从而提供自动化运维程度,降低人工错误。

客户对自动化运维有不同的需要,从下图左侧可以分出运维的几个层次,从最底层的手动运维、到半手工,半自动化运维、再到高度自动化运维、标准化运维以及智能运维(AIOps)、大部分客户的需求集中在中间三层,大部分的公司处于半手工,半自动化运维,异或高度自动化的方式,少部分的公司更加激进的走到了更加标准化运维,享受到了更加DevOps的方式,阿里云自动化部署ROS和自动化运维OOS的主打场景可以满足这三个主要层次的自动化需求。

image.png

今天的分享到此结束,感兴趣的同学可持续关注云上自动化部署ROS和运维OOS产品动态。

相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
8天前
|
运维 应用服务中间件 网络安全
自动化运维的新篇章:使用Ansible进行服务器配置管理
【10月更文挑战第34天】在现代IT基础设施的快速迭代中,自动化运维成为提升效率、确保一致性的关键手段。本文将通过介绍Ansible工具的使用,展示如何实现高效的服务器配置管理。从基础安装到高级应用,我们将一步步揭开自动化运维的神秘面纱,让你轻松掌握这一技术,为你的运维工作带来革命性的变化。
|
24天前
|
机器学习/深度学习 人工智能 运维
企业内训|LLM大模型在服务器和IT网络运维中的应用-某日企IT运维部门
本课程是为某在华日资企业集团的IT运维部门专门定制开发的企业培训课程,本课程旨在深入探讨大型语言模型(LLM)在服务器及IT网络运维中的应用,结合当前技术趋势与行业需求,帮助学员掌握LLM如何为运维工作赋能。通过系统的理论讲解与实践操作,学员将了解LLM的基本知识、模型架构及其在实际运维场景中的应用,如日志分析、故障诊断、网络安全与性能优化等。
54 2
|
1月前
|
运维 Linux Apache
,自动化运维成为现代IT基础设施的关键部分。Puppet是一款强大的自动化运维工具
【10月更文挑战第7天】随着云计算和容器化技术的发展,自动化运维成为现代IT基础设施的关键部分。Puppet是一款强大的自动化运维工具,通过定义资源状态和关系,确保系统始终处于期望配置状态。本文介绍Puppet的基本概念、安装配置及使用示例,帮助读者快速掌握Puppet,实现高效自动化运维。
52 4
|
4天前
|
机器学习/深度学习 数据采集 人工智能
智能运维:从自动化到AIOps的演进与实践####
本文探讨了智能运维(AIOps)的兴起背景、核心组件及其在现代IT运维中的应用。通过对比传统运维模式,阐述了AIOps如何利用机器学习、大数据分析等技术,实现故障预测、根因分析、自动化修复等功能,从而提升系统稳定性和运维效率。文章还深入分析了实施AIOps面临的挑战与解决方案,并展望了其未来发展趋势。 ####
|
9天前
|
弹性计算 运维
新 企业级ECS集群运维管理训练营 打卡学习领好礼
新 企业级ECS集群运维管理训练营 打卡学习领好礼
38 3
|
13天前
|
机器学习/深度学习 数据采集 运维
智能化运维:机器学习在故障预测和自动化响应中的应用
智能化运维:机器学习在故障预测和自动化响应中的应用
38 4
|
16天前
|
运维 应用服务中间件 调度
自动化运维:使用Ansible实现服务器批量管理
【10月更文挑战第26天】在当今快速发展的IT领域,自动化运维已成为提升效率、降低人为错误的关键技术手段。本文通过介绍如何使用Ansible这一强大的自动化工具,来简化和加速服务器的批量管理工作,旨在帮助读者理解自动化运维的核心概念和实践方法。文章将围绕Ansible的基础使用、配置管理、任务调度等方面展开,通过实际案例引导读者深入理解自动化运维的实现过程,最终达到提高运维效率和质量的目的。
|
27天前
|
运维 负载均衡 安全
自动化运维:使用Ansible进行服务器配置管理
【10月更文挑战第15天】在本文中,我们将探讨如何利用Ansible这一强大的自动化工具来简化和加速服务器的配置管理工作。通过实际案例和代码示例,我们将展示Ansible如何帮助运维人员高效地进行软件部署、系统更新和日常维护任务,从而提升工作效率并减少人为错误。
|
1月前
|
存储 运维 监控
高效运维:从基础架构到自动化管理的全面指南
【10月更文挑战第11天】 本文将深入探讨如何通过优化基础架构和引入自动化管理来提升企业IT运维效率。我们将从服务器的选择与配置、存储解决方案的评估,到网络的设计与监控,逐一解析每个环节的关键技术点。同时,重点讨论自动化工具在现代运维中的应用,包括配置管理、持续集成与部署(CI/CD)、自动化测试及故障排除等方面。通过实际案例分析,展示这些技术如何协同工作,实现高效的运维管理。无论是IT初学者还是经验丰富的专业人员,都能从中获得有价值的见解和实操经验。
61 1
|
1月前
|
运维 Java Linux
【运维基础知识】Linux服务器下手写启停Java程序脚本start.sh stop.sh及详细说明
### 启动Java程序脚本 `start.sh` 此脚本用于启动一个Java程序,设置JVM字符集为GBK,最大堆内存为3000M,并将程序的日志输出到`output.log`文件中,同时在后台运行。 ### 停止Java程序脚本 `stop.sh` 此脚本用于停止指定名称的服务(如`QuoteServer`),通过查找并终止该服务的Java进程,输出操作结果以确认是否成功。
35 1

相关产品

  • 云服务器 ECS