ECS镜像(一)镜像产品及生态概览

本文涉及的产品
云服务器 ECS,每月免费额度200元 3个月
云服务器ECS,u1 2核4GB 1个月
简介: ECS 镜像(Image)是云服务器ECS运行环境的模版,其重要性不言而喻。为了更好的提升用户云上体验,阿里云在镜像服务能力及生态能力方面做了很多工作,下文将整体上从两个方面介绍ECS镜像: 镜像产品能力,可以通过镜像做什么?ECS针对镜像提供了哪些服务能力? 镜像产品生态,围绕镜像和ECS衍生了哪些产品?通过这些产品可以对用户产生哪些价值? 带着这些问题,让我们开始ECS镜像之旅。

ECS 镜像(Image)是云服务器ECS运行环境的模版,其重要性不言而喻。为了更好的提升用户云上体验,阿里云在镜像服务能力及生态能力方面做了很多工作,下文将整体上从两个方面介绍ECS镜像:

  1. 镜像产品能力,可以通过镜像做什么?ECS针对镜像提供了哪些服务能力?
  2. 镜像产品生态,围绕镜像和ECS衍生了哪些产品?通过这些产品可以对用户产生哪些价值?

带着这些问题,让我们开始ECS镜像之旅。

镜像产品

ECS镜像.png | center | 745x714

镜像分类

image.png | left | 748x138

如上图所示,在新购ECS的选择镜像的时候有四个分类,分别为系统镜像,市场镜像,自定义镜像,共享镜像。那么它们有何区别?我们该如何选择镜像呢?下面我们先对四种镜像类型做一个对比:

镜像类型
可用性
安全性
费用
限制
系统镜像
阿里云官方维护,经过严格的测试及
生产验证,可用性非常高。
免费
市场镜像
优质的第三方服务商提供,经过阿里云审核后上架,同时有售后技术支持,可用性通常较高。
较高
收费/免费
自定义镜像
由用户基于快照创建或者通过镜像导入方式上传,质量完全由用户自己把控,可用性稍差。
免费(基于市场镜像做的自定义镜像除外)
quota限制
共享镜像
共享镜像源不会经过阿里云官方审核,稳定性及安全性得不到保证。
免费(基于市场镜像做的自定义镜像除外)
quota限制

如果从从实践方面考虑,选择镜像建议是:

  1. 只需要一个纯净的OS环境,选择官方系统镜像。
  2. 需要一个完整的软件环境,比如PHP架构 LAMP,选择镜像市场。
  3. 希望基于当前实例配置复制新实例,使用自定义镜像。
  4. 希望将镜像共享给其它云账号,使用共享镜像。

镜像产品能力

阿里云镜像为了满足用户多种业务场景的需求,从OpenAPI到控制台均提供了完备的产品能力。

创建镜像

用途:通过创建镜像将ECS系统及软件环境打包,从而实现快速复制ECS的能力;实现云上及线下镜像资源的同步。

目前?用户制作镜像有两种方式,一种为基于阿里云的ECS实例及快照制作,另外一种是线下制作通过镜像导入上传到阿里云。

在线:通过ECS实例或系统盘快照制作

通过 CreateImage 创建镜像 , 支持三种方式

  • 基于ECS实例创建
  • 基于系统盘快照创建
  • 基于系统盘+数据盘快照创建(全镜像)
离线:线下制作通过镜像导入上传
典型场景
  • 应用扩容,扩容是最常见的运维操作之一,使用ECS做应用扩容的典型方式之一就是通过自定义镜像快速创建弹性ECS,大致过程如下:

    • 用户基于一台运行中了其扩容应用的ECS的实例制作自定义镜像,镜像完成后,用户将会得到一份完整的包含了系统+软件的镜像数据。
    • 使用自定义镜像创建所需的ECS,ECS启动成功后,引流到扩容ECS,比如挂载到类似slb的负载均衡设备。
  • 混合云部署,典型的混合云场景是单一公有云+私有云,为了实现云上及线下资源同步,这个时候可以借助镜像导入导出能力,以公有云镜像导出到私有云为例,大致过程如下:

    • 基于ECS或者系统盘镜像制作自定义镜像
    • 将自定义镜像导出到OSS
    • OSS下载镜像到私有云环境使用

导入镜像

用途:将线下的镜像导入到阿里云环境用于创建ECS
步骤:
  1. 建议参考 导入镜像注意事项 ,检测镜像是否满足需求。
  2. 建议安装cloud-init以保证镜像的hostname,yum源等配置正确,参考cloud-init安装手册
  3. 检测镜像格式是否为vhd或者raw(qcow2格式即将支持),如果不是先将格式转换为vhd或者raw, 镜像转换可以参考 使用qemu-img转换镜像格式
  4. 将?镜像上传至同一地域的OSS,参考镜像导入手册进行导入操作。
  5. 控制台查看导入进度,进度100%后镜像可用,通常镜像的导入时间取决于镜像大小,请耐心等待。

为了保证导入镜像创建ECS的成功率,导入前需特别关注导入镜像注意事项

典型场景
  • 上云,从计算资源从线下迁移到云上,可以借助导入自定义镜像到云上到方式,导入成功后即可通过镜像创建ECS。

导出镜像

用途:将阿里云自定义镜像在线下集群或者私有云环境使用,可以使用镜像导出功能。
步骤:
  1. 首先通过在线创建自定义镜像
  2. 镜像状态可用时,通过镜像导出 功能将其导出到同一地域到OSS中
  3. 将OSS文件下载到线下环境使用
典型场景

将云上ECS的系统及软件环境复制到线下环境。

复制镜像

用途:跨地域使用相同的自定义镜像创建ECS
步骤:
  1. 创建自定义镜像
  2. 通过控制台/API将自定义镜像复制到指定地域

    1. 只支持复制到本地域外到其它中国大陆地域
    2. 复制到海外地域需要 提工单申请
  3. 复制操作成功后需耐心等待复制任务进度完成,耗时通常取决于镜像大小及地域。

镜像复制的本质是快照的复制,所以会占用用户快照容量quota,且快照目前已收费,会产生一定的快照费用。

典型场景
  • 应用多地域部署,随之应用高可用及国际化的趋势,部署方式上通常需要多地域+海外节点部署,快速实现跨地域克隆ECS的方式之一就是通过镜像复制将一个镜像复制到多个地域,通过自定义镜像快速创建ECS。

共享镜像

用途:将镜像共享给其它阿里云账号
步骤:
  1. 镜像owner将镜像授权给指定阿里云账号,最多授权50个用户。
  2. 授权用户可以查询到共享镜像且使用其创建ECS

共享镜像本质上是自定义镜像,阿里云不保证完整性及安全性,用户使用共享镜像要谨慎!

修改镜像

目前仅支持镜像名称与描述的修改。

镜像生态

镜像生态.png | center | 748x300

上文介绍了镜像的创建,导入,导出,复制等基础能力,下文将重点介绍ECS镜像生态体系。

用户数据与Cloudinit

用户数据

__用户数据即UserData(下文了为了简化统一使用UserData)__,是阿里云 ECS 提供的一种自定义实例启动行为及传入数据的功能,该功能兼容 Windows 实例及 Linux 实例,主要有两种用途:

  • 作为实例自定义脚本,在启动实例时执行。
  • 作为普通数据,将一定的信息传入实例中,您可以在实例中引用这些数据。

举个例子,使用UserData配置yum源,DNS,NTP,脚本如下。

#!/bin/sh
# Modify DNS
echo "nameserver 8.8.8.8" | tee /etc/resolv.conf
# Modify yum repo and update
rm -rf /etc/yum.repos.d/*
touch myrepo.repo
echo "[base]" | tee /etc/yum.repos.d/myrepo.repo
echo "name=myrepo" | tee -a /etc/yum.repos.d/myrepo.repo
echo "baseurl=http://mirror.centos.org/centos" | tee -a /etc/yum.repos.d/myrepo.repo
echo "gpgcheck=0" | tee -a /etc/yum.repos.d/myrepo.repo
echo "enabled=1" | tee -a /etc/yum.repos.d/myrepo.repo
yum update -y
# Modify NTP Server
echo "server ntp1.aliyun.com" | tee /etc/ntp.conf
systemctl restart ntpd.service

UserData将会在ECS启动时由Cloudinit进行调度配置。

当然我们在vm内部也可以访问到UserData,有以下两种方式:

  • 访问 100.100.100.200/latest/user-data 获取
  • 查看文件 /var/lib/cloud/instance/user-data.txt

Cloudinit

__Cloudinit组件__,开源项目,本质上是一系列python脚本及组件用来在云主机启动时配置ECS, 阿里云的系统镜像默认都安装了Cloudinit组件,我们也建议用户自定义镜像安装cloudinit。

可以理解为Cloudinit是UserData的执行引擎。

更多可以参考 userdata for ECS使用场景

实例标识

实例标识提供了一种验证ECS身份的机制,用户可以通过验证ECS身份为阿里云ECS来做一些事情,比如镜像或者软件的license控制,更多可以参考 ECS实例标识介绍及实践

迁云工具

可以帮助用户完成从线下物理资源或者其它云厂商到阿里云云资源到迁移,即同时支持p2v,v2v。同时迁云工具同时支持windows及linux系统,具体操作可以参考:使用迁云工具将服务器迁移至阿里云。

镜像商品

阿里云2014年5月开始支持第三方ISV上架镜像商品,镜像商品通常由行业内拥有丰富云服务器维护配置到服务商提供且经过阿里云的审核,无论从可用性及安全性均可以得到很好的保障,有以下优势:

  • 按需定制软件环境,可以实现一键部署。
  • 可用性及安全性高,阿里云审核保障镜像安全性。
  • 镜像商品有完善的售后技术支持。
  • 计费模式灵活,目前支持:后付费,按量计费;包月;包周

其它

后续我们还会陆续提供镜像检测,修复的能力,来帮助用户提升自定义镜像的成功率及降低制作成本。

下期看点

镜像制作工具Packer实践,我们一起来制作镜像!

相关实践学习
一小时快速掌握 SQL 语法
本实验带您学习SQL的基础语法,快速入门SQL。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
5天前
|
弹性计算 前端开发 持续交付
云效产品使用常见问题之导入ECS主机到资源池找不到导入的入口如何解决
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
5天前
|
存储 弹性计算 算法
倚天产品介绍|倚天ECS加速国密算法性能
倚天ECS是阿里云基于平头哥自研数据中心芯片倚天710推出arm架构实例,采用armv9架构,支持SM3/SM4指令,可以加速国密算法性能。本文基于OpenSSL 3.2和Tongsuo 实测对比了倚天ECS g8y实例和Intel g7 实例国密性能。为用户选择ECS提供参考。
|
5天前
|
弹性计算 安全 关系型数据库
ECS实例问题之更新镜像后实例启动失败如何解决
ECS(Elastic Compute Service,弹性计算服务)是云计算服务提供商提供的一种基础云服务,允许用户在云端获取和配置虚拟服务器。以下是ECS服务使用中的一些常见问题及其解答的合集:
259 2
|
3天前
|
SQL 分布式计算 关系型数据库
实时计算 Flink版产品使用合集之MySQL CDC Connector是否需要在Flink服务器上单独部署
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
11 0
|
4天前
|
SQL 弹性计算 分布式计算
实时计算 Flink版产品使用合集之如果产品是基于ak的,可以提交sql任务到ecs自建hadoop集群吗
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
15 0
|
5天前
|
分布式计算 Java 数据库连接
实时数仓 Hologres产品使用合集之该创建外部表maxCompute的这个服务器列表如何解决
实时数仓Hologres是阿里云推出的一款高性能、实时分析的数据库服务,专为大数据分析和复杂查询场景设计。使用Hologres,企业能够打破传统数据仓库的延迟瓶颈,实现数据到决策的无缝衔接,加速业务创新和响应速度。以下是Hologres产品的一些典型使用场景合集。
27 0
|
5天前
|
弹性计算 运维 Java
Serverless 应用引擎产品使用之在Serverless 应用引擎中,将 Java 应用从 ECS 迁移到 SAE如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
46 2
|
5天前
|
弹性计算 运维 Serverless
Serverless 应用引擎产品使用之在阿里函数计算中,使用阿里云API或SDK从函数计算调用ECS实例的服务如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
48 4
|
5天前
|
机器学习/深度学习 人工智能 TensorFlow
人工智能平台PAI产品使用合集之如何在CPU服务器上使用PAIEasyRec进行分布式训练
阿里云人工智能平台PAI是一个功能强大、易于使用的AI开发平台,旨在降低AI开发门槛,加速创新,助力企业和开发者高效构建、部署和管理人工智能应用。其中包含了一系列相互协同的产品与服务,共同构成一个完整的人工智能开发与应用生态系统。以下是对PAI产品使用合集的概述,涵盖数据处理、模型开发、训练加速、模型部署及管理等多个环节。
|
5天前
|
运维 Serverless 文件存储
Serverless 应用引擎产品使用之阿里函数计算中stable. diffusion应用的服务器可以使用那种99元100G一年的道用型nas如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
32 0

相关产品

  • 云服务器 ECS

  • http://www.vxiaotou.com