一、云服务器ECS的概念
云服务器Elastic Compute Service(ECS)是阿里云提供的一种基础云计算服务。使用云服务器ECS就像使用水、电、煤气等资源一样便捷、高效。您无需提前采购硬件设备,而是根据业务需要,随时创建所需数量的云服务器ECS实例。在使用过程中,随着业务的扩展,您可以随时扩容磁盘、增加带宽。如果不再需要云服务器,也能随时释放资源,节省费用。
下图列出了ECS涉及的所有资源,包括实例规格、块存储、镜像、快照、带宽和安全组。您可以通过 云服务器管理控制台 或者 阿里云 App 及API配置您的ECS资源。
二、ECS相关概念
(1)地域和可用区:指ECS实例所在的物理位置。
(2)实例:等同于一台虚拟机,包含CPU、内存、操作系统、网络、磁盘等最基础的计算组件。
(3)实例规格:指实例的配置,包括vCPU核数、内存、网络性能等。实例规格决定了ECS实例的计算和存储能力。
(4)镜像:指ECS实例运行环境的模板,一般包括操作系统和预装的软件。操作系统支持多种Linux发行版本和不同的Windows版本。
(5)块存储:包括基于分布式存储架构的 云盘和共享块存储,以及基于物理机本地硬盘的 本地存储。
(6)快照:指某一个时间点上一块弹性块存储的数据备份。
(7)网络类型:
1)专有网络:基于阿里云构建的一个隔离的网络环境,也称为VPC,VPC之间逻辑上彻底隔离。更多信息,请参考 专有网络VPC。
2)经典网络:统一部署在阿里云公共基础设施内,规划和管理由阿里云负责。
(8)安全组:由同一地域内具有相同保护需求并相互信任的实例组成,是一种虚拟防火墙,用于设置实例的网络访问控制。
三、管理云服务器ECS
(1)管理控制台:阿里云提供的Web服务页面,方便您管理云服务器ECS。
1)创建并管理ECS实例:
a.登录 云服务器ECS管理控制台。
b.在左侧导航栏,单击 实例。
c.在 实例列表 页面,单击 创建实例,进入 创建 页面
d.完成 基础配置。
@1、选择 计费方式。本示例中,选择 按量付费
@2、选择地域和可用区,如华东 1,可用区默认选择随机分配。(注意:实例创建完成后,不可更改地域和可用区。)
@3、选择实例规格并设置实例数量。(注意:可供选择的实例规格族由您所选择的地域决定。)
@4、选择镜像。
@5、选择存储。
e.单击 下一步:网络和安全组,完成网络和安全组设置。
@1、选择网络类型为 专有网络。
@2、设置公网带宽。
@3、选择安全组。(注意:如果您没有创建安全组,可以使用默认安全组。)
@4、添加弹性网卡。(注意:如果所选实例规格不支持弹性网卡,跳过这一步。 )
f.单击 下一步:系统配置。
@1、您可以选填此页面中的选项,建议设置 登录凭证 和 实例名称。
g.单击 下一步:分组设置。
@1、您可以选填此页面中的选项,有多台实例时,建议添加标签方便管理。
h.单击 下一步:确认订单。
@1、确认所选配置,您也可以单击编辑图标返回修改配置。
i.阅读和确认 云服务器ECS服务条款,然后单击 创建实例。
j.远程连接ECS实例。根据ECS实例使用的操作系统不同,使用不同的方式连接:
@1、无论什么操作系统,均能 使用管理终端连接ECS实例,一般用于故障排查和运维。
@2、Linux或类Unix系统的实例:使用用户名密码验证连接Linux实例 或者 使用SSH密钥对连接Linux实例。
@3、Windows实例:使用软件连接Windows实例。
k.停止ECS实例 。
@1、登录 ECS管理控制台。
@2、在左侧导航栏里,单击 实例。
@3、选择地域。
@4、找到需要停止的实例,在 操作 列,选择 更多 > 实例状态 > 停止。如果您需要同时停止多台 运行中 的实例,可以选中多台实例,并在实例列表底部,单击 停止。
@5、根据实例的计费方式和网络类型,执行不同的操作:
i、预付费实例或者经典网络按量付费实例:在 停止实例 对话框里,选择 停止方式(停止或强制停止),并单击 确定。
ii、按量付费的VPC类型ECS实例:
1.如果您启用了 默认VPC内实例停机不收费,确认弹出的 提醒 信息后,在 停止实例 对话框里,您需要同时选择 停止方式(停止或强制停止)和 停止模式(停止后是否保留实例并继续收费),再单击 确定。
2.如果您没有启用 默认VPC内实例停机不收费,在 停止实例 对话框里,选择 停止方式(停止或强制停止)。
(实例停机不收费 是指通过 控制台、StopInstance 接口或者 阿里云CLI 使按量付费的VPC类型ECS实例进入 已停止(Stopped
)状态后,该实例的计算资源(即vCPU和内存)和公网IP地址不再产生费用,但云盘仍旧计费。注意:1.如果您是进入实例的操作系统中停止实例,该实例会继续产生费用。2.如果您通过控制台、API接口或者阿里云CLI停止实例,该实例的计算资源(即vCPU和内存)不再产生费用。)
@6、(可选)如果您使用的是阿里云主账号,您需要获取并输入手机验证码,再单击 确定。
(成功停止实例后,实例会进入 已停止 状态。对于按量付费的VPC类型ECS实例,如果选择停止后不保留实例,则实例列表中对应的 停止模式 列会显示为 停机不收费,否则,显示为 保留并收费。其他类型的ECS实例,停止模式 不显示信息。 )
l.释放实例。(立即释放、开启自动释放和关闭释放)
@1、登录 ECS管理控制台。
@2、在左侧导航栏中,单击 实例。
@3、选择地域。
@4、设置释放:
1.如果您要释放单个实例:找到需要释放的实例,在 操作 列中,选择 更多 > 实例状态 > 释放设置。
2.如果您要释放多个实例:根据 付费方式 筛选按量计费实例,选择需要释放的多个实例,在列表下方,单击 释放设置。
@5、在弹出的窗口中,有以下两种选择:
1.立即释放:单击 下一步,并单击 确认。 输入您收到的手机验证码,单击 确认。
2.定时释放:开启自动释放开关,并设置释放的日期和时间。最早只能设置在30分钟后自动释放实例。单击 下一步,然后单击 确认。
输入您收到的手机验证码,然后单击 确认。
2)创建并管理云盘:
a.创建云盘。
@1、登录 ECS管理控制台。
@2、在左侧导航栏中,单击 存储 > 云盘。
@3、在 磁盘列表 页右上角,单击 创建云盘 进入 创建 页面。
@4、选择地域和可用区。 (注意:挂载云盘时,实例与云盘必须在同一个地域和可用区。)
@5、选择云盘的类型、大小,确认是否 加密,并设置购买量。您也可以选择 用快照创建云盘。
@6、认当前配置和 配置费用。
@7、单击 确认订单,并根据页面引导完成创建。
b.挂载云盘。
》》在实例管理管理页面挂载云盘:(若要在一台ECS实例上挂载多块云盘,在实例管理页面操作比较方便。)
@1、登录 ECS管理控制台。
@2、左侧导航栏中,单击 实例。
@3、选择地域。
@4、找到需要挂载云盘的实例,单击实例ID。
@5、在左侧导航栏中,单击 本实例磁盘,并在磁盘列表右上方单击 挂载云盘。
@6、在弹出对话框中,完成以下设置:
1.目标磁盘:只能选择同一可用区里状态为 待挂载 的云盘。
2.磁盘随实例释放:如果选中,当实例释放时,该云盘也会同时释放。
3.自动快照随磁盘释放:如果选中,当云盘释放时,该云盘创建的所有自动快照都会一起释放,但手动快照不会释放。建议您不要选择该选项,保留备份数据。
4.完成设置后,单击 确定,并单击 执行挂载。
@7、刷新本实例磁盘列表。(如果该云盘的状态变为 使用中,表示挂载成功。)
@8、根据云盘的内容和ECS实例的操作系统,您必须执行不同的操作使云盘可用。如下表所示:
云盘的内容 | 实例的操作系统 | 后续操作 |
---|---|---|
全新的空云盘 | Linux | Linux 格式化和挂载数据盘。大于2 TiB的云盘,请参见 分区格式化大于2 TiB云盘。 |
Windows | Windows 格式化数据盘。大于2 TiB的云盘,请参见 分区格式化大于2 TiB云盘。 | |
使用快照创建的云盘 | Linux | 连接实例并执行 mount 命令挂载分区后,才能正常使用云盘。 |
Windows | 不需要执行其他操作,能直接使用云盘。 |
》》在云盘管理页面挂载云盘:(若要将多块云盘挂载到不同的ECS实例上,在云盘管理页面操作比较方便。)
@1、登录 ECS管理控制台。
@2、在左侧导航栏中,选择 存储 > 云盘。
@3、选择地域。
@4、找到 待挂载 云盘,在 操作 列中,选择 更多 > 挂载。
@5、在弹出对话框中,完成以下设置:
1.目标实例:只能选择同一可用区的ECS实例。
2.磁盘随实例释放:如果选中,当实例释放时,该云盘也会同时释放。
3.自动快照随磁盘释放:如果选中,当云盘释放时,该云盘创建的所有自动快照都会一起释放,但手动快照不会释放。建议您不要选择该选项,保留备份数据。
4.完成设置后,单击 执行挂载。
@6、刷新云盘列表。(如果该云盘的状态变为 使用中,表示挂载成功。 )
@7、根据云盘的内容和ECS实例的操作系统,您必须执行不同的操作使云盘可用。如下表所示:
云盘的内容 | 实例的操作系统 | 后续操作 |
---|---|---|
全新的空云盘 | Linux | Linux 格式化和挂载数据盘。大于2 TiB的云盘,请参见 分区格式化大于2 TiB云盘。 |
Windows | Windows 格式化数据盘。大于2 TiB的云盘,请参见 分区格式化大于2 TiB云盘。 | |
使用快照创建的云盘 | Linux | 连接实例并执行 mount 命令挂载分区后,才能正常使用云盘。 |
Windows | 不需要执行其他操作,能直接使用云盘。 |
c.在 Linux 格式化和挂载数据盘 或 Windows 格式化数据盘。
》》Linux 格式化数据盘:
@1、远程连接实例。
@2、运行 fdisk -l
命令查看实例是否有数据盘。如果执行命令后,没有发现 /dev/vdb,表示您的实例没有数据盘,无需格式化数据盘,请忽略本文后续内容。 (说明 如果数据盘设备名为 dev/xvd?,表示您使用的是非 I/O 优化实例。其中 ? 是 a−z 的任一个字母。)
@3、创建一个单分区数据盘,依次执行以下命令:
1.运行 fdisk /dev/vdb
:分区数据盘。
2.输入 n
并按回车键:创建一个新分区。
3.输入 p
并按回车键:选择主分区。因为创建的是一个单分区数据盘,所以只需要创建主分区。 (说明 如果要创建 4 个以上分区,您应该创建至少一个扩展分区,即选择 e
(extended)。)
4.输入分区编号并按回车键。因为这里仅创建一个分区,可以输入 1
。
5.输入第一个可用的扇区编号:按回车键采用默认值 1。
6.输入最后一个扇区编号:因为这里仅创建一个分区,所以按回车键采用默认值。
7.输入 wq
并按回车键,开始分区。
[root@iXXXXXXX ~]# fdisk /dev/vdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x5f46a8a2.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable. Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite) WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-41610, default 1): 1
Last cylinder, +cylinders or +size{K,M,G} (1-41610, default 41610):
Using default value 41610
Command (m for help): wq
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
@4、查看新的分区:运行命令 fdisk -l
。
@5、在新分区上创建一个文件系统:运行命令 mkfs.ext3 /dev/vdb1
。以下是要创建一个ext3文件系统。可根据自己的需要,选择创建其他文件系统(例如:使用mkfs.vfat创建VFAT文件系统)
@6、(建议)备份 etc/fstab:运行命令 cp /etc/fstab /etc/fstab.bak
。
@7、向 /etc/fstab 写入新分区信息:运行命令 echo /dev/vdb1 /mnt ext3 defaults 0 0 >> /etc/fstab
。 (说明 Ubuntu 12.04 不支持 barrier,所以对该系统正确的命令是: echo '/dev/vdb1 /mnt ext3 barrier=0 0 0' >> /etc/fstab
。 )如果需要把数据盘单独挂载到某个文件夹,比如单独用来存放网页,请将以上命令 /mnt
替换成所需的挂载点路径。
@8、查看 /etc/fstab 中的新分区信息:运行命令 cat /etc/fstab。
@9、挂载文件系统:运行命令 mount /dev/vdb1 /mnt
。
@10、查看目前磁盘空间和使用情况:运行命令 df -h
。如果出现新建文件系统的信息,说明挂载成功,可以使用新的文件系统了。
[root@iXXXXXXX ~]# mount /dev/vdb1 /mnt
[root@iXXXXXXX ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 40G 6.6G 31G 18% /
tmpfs 499M 0 499M 0% /dev/shm
/dev/vdb1 20G 173M 19G 1% /mnt
挂载操作完成后,不需要重启实例即可开始使用新的文件系统。
》》Windows 格式化数据盘:
@1、远程连接实例。
@2、在 Windows Server 桌面,右键单击 开始 图标,选择 磁盘管理。(未格式化分区的数据盘(磁盘 2)处于 脱机 状态。 )
@3、右键单击磁盘 2 周边的空白区,在弹出菜单中,选择 联机。
联机后,磁盘 2 的状态显示为 没有初始化。
@4、右键单击磁盘 2 周边的空白区,在弹出菜单中,选择 初始化磁盘。
@5、在 初始化磁盘 对话框里,选择 磁盘2,并选择磁盘分区形式:
1.MBR 目前仍是最常用的分区形式,但是,MBR 只支持处理不大于 2 TiB 的数据盘,而且,只支持分 4 个主区,如果您要将磁盘分成更多的区,需要将某个主区作为扩展区并在其中创建逻辑分区。
2.GPT 是一种新的分区形式,早期版本的 Windows 不能识别这种分区形式。GPT 能处理的数据盘容量由操作系统和文件系统决定。在 Windows 操作系统里,GPT 最多可以支持 128 个主分区。
@6、在 磁盘管理 窗口,右键单击磁盘 2 的 未分配 区域,选择 新建简单卷。
@7、在 新建简单卷向导 中,完成以下操作:
1.单击 下一步。
2.指定卷大小:指定简单卷大小。如果您只要创建一个主区,使用默认值。单击 下一步。
3.分配驱动器号和路径:选择一个驱动器号(即盘符),如本示例中选择 F。单击 下一步。
4.格式化分区:选择格式化设置,包括文件系统、分配单元大小和卷标,确认是否 执行快速格式化 和 启用文件和文件夹压缩。这里使用默认设置。单击 下一步。
5.开始创建新简单卷。当向导对话框里出现以下截图中的信息时,说明已经完成新简单卷的创建。单击 完成 关闭 新建简单卷向导。
d.创建快照 备份数据。
》》在ECS管理控制台上创建快照的步骤如下:(也可以使用ECS API CreateSnapshot 创建快照。)
@1、登录 ECS管理控制台。
@2、选择地域。
@3、在左侧导航栏,单击 实例。
@4、找到需要创建快照的实例,单击 管理。
@5、单击左侧 本实例磁盘,然后单击对应磁盘右侧的 创建快照。一次只能选择一块磁盘,磁盘属性 可以是系统盘和数据盘。
@6、输入快照的名称,单击 确定。
@7、单击左侧 本实例快照 查看快照任务。您可以看到快照进度、预计剩余时间和快照状态。
e.卸载云盘。
》》在实例管理页面卸载云盘:(您要从某台实例上卸载一块或多块云盘)
@1、远程连接实例,在实例内部卸载磁盘或分区。根据操作系统不同,您需要执行不同的操作,如下表所示:
操作系统 | 操作 |
---|---|
Linux | 运行 umount [磁盘分区] 。比如:umount /dev/vdb1 。 |
Windows |
@2、登录 ECS管理控制台。
@3、在左侧导航栏中,单击 实例。
@4、选择地域。
@5、找到需要操作的实例,单击实例ID,进入实例管理页面。
@6、在左侧导航栏中,单击 本实例磁盘。
@7、找到需要卸载的云盘,在 操作 栏中,选择 更多 > 卸载。
支持卸载的云盘必须具备以下属性:
- 磁盘状态 必须为 使用中。
- 可卸载 必须为 支持。
- 磁盘属性 必须为 数据盘。
@8、在弹出对话框中,单击 确认卸载。(当云盘的状态变为 待挂载 时,表明您已经成功卸载云盘。 )
》》在云盘管理页面卸载云盘:(您已经明确知道要卸载哪块云盘)
@1、远程连接实例,在实例内部卸载磁盘或分区。(此步骤同在实例管理页面)
@2、登录 ECS管理控制台。
@3、在左侧导航栏中,选择 存储 > 云盘。
@4、选择地域。
@5、找到需要卸载的云盘,在 操作 栏中,选择 更多 > 卸载。
支持卸载的云盘必须具备以下属性:
- 磁盘状态 必须为 使用中。
- 可卸载 必须为 支持。
- 磁盘属性 必须为 数据盘。
@6、在弹出对话框中,单击 确认卸载。(当云盘的状态变为 待挂载 时,表明您已经成功卸载云盘。)
f.释放云盘。
@1、登录 ECS管理控制台。
@2、在左侧导航栏中,选择 存储 > 云盘。
@3、选择地域。
@4、找到需要释放的云盘(状态为 待挂载),在 操作 列中,选择 更多 > 释放。
@5、在弹出的对话框中,确认信息后,单击 确认释放。
3)创建和管理快照:
@1、创建快照,可分为:
》》创建快照:(也可以使用ECS API CreateSnapshot 创建快照。)
1.登录 ECS管理控制台。
2.选择地域。
3.在左侧导航栏,单击 实例。
4.找到需要创建快照的实例,单击 管理。
5.单击左侧 本实例磁盘,然后单击对应磁盘右侧的 创建快照。一次只能选择一块磁盘,磁盘属性 可以是系统盘和数据盘。
6.输入快照的名称,单击 确定。
7.单击左侧 本实例快照 查看快照任务。您可以看到快照进度、预计剩余时间和快照状态。
》》创建或修改自动快照策略,并 为磁盘设置自动快照策略,定期自动创建快照:
1.登录 ECS管理控制台。
2.在左侧导航栏中,选择 快照和镜像 > 自动快照策略。
3.在 自动快照策略 页面上: (如果要创建策略:单击右上角的 创建策略;如果要修改策略:找到需要修改的策略,在 操作 列,单击 修改策略。)
4.在 创建策略 或者 修改策略 对话框中,定义自动快照策略:
- 按界面提示指定合法的策略名称。
- 选择 创建时间:选择每天固定时间创建自动快照。每天00:00~23:00共24个整点可选,可多选。
- 选择每周的 重复日期:即选择每周创建快照的日期,周一至周日可选,可多选。
- 选择自动快照的 保留时间:默认保留30天,您可以自行设置保留时间,1~65536可选。您也可以选择持续保留自动快照。
- 说明 快照数量达到快照额度上限后,系统会自动删除最早创建的自动快照,手动快照不受影响。
5.为磁盘设置自动快照策略:
》》磁盘入口: 只对某个磁盘执行自动快照策略,请从磁盘入口操作。
i、登录 云服务器管理控制台。
ii、选择地域。
iii、单击左侧导航中的 云盘。
iiii、找到需要执行策略的磁盘,然后单击右侧的 设置自动快照策略。
iiiii、您可以启动自动快照功能,并选择需要使用的快照策略。单击确定。
》》快照入口: 统一对多个磁盘或全部磁盘执行自动快照策略,请从自动快照入口操作。
i、ii:同上
iii、单击左侧导航中的 快照 > 自动快照策略。
iiii、找到需要执行的自动快照策略,单击其右侧的 设置磁盘。
iiiii、单击 未设置策略磁盘 页签,找到要执行策略的磁盘,单击其右侧的 执行快照策略;或者选择多个磁盘,单击下面的 执行快照策略。
iiiiii、如果想要取消快照策略,单击 已设置策略磁盘 页签,找到要执行策略的磁盘,单击其右侧的 取消快照策略;或者选择多个磁盘,单击下面的 取消快照策略。
@2、查看快照容量
@3、为了节省快照存储空间,删除不必要的快照。
4)创建并管理自定义镜像:
a.自定义镜像一般通过以下方式获取:
@1、使用快照创建自定义镜像
1.登录 云服务器管理控制台。
2.选择地域。
3.在左侧导航栏里,单击 实例。
4.找到目标实例,单击实例ID,或者在 操作 列,单击 管理。
5.在左侧导航栏里,单击 本实例快照。找到目标系统盘,在 操作 列,单击 创建自定义镜像。
(注意:快照的磁盘属性必须是系统盘。数据盘不能用于创建自定义镜像;也可以通过 快照 > 快照列表,选择一个磁盘属性为系统盘的快照,再 创建自定义镜像。)
6.在弹出的 创建自定义镜像 对话框中,完成以下操作:
- 确认快照ID。
- 指定自定义镜像的名称和描述。
- (可选)如果您希望在创建的镜像中同时包含数据盘的信息,应该选择 添加数据盘快照,并单击 增加 来添加数据盘。
-
说明 请将数据盘中的敏感数据删除之后再创建自定义镜像,避免数据安全隐患。
如果快照ID为空,则该磁盘会作为空盘创建,默认容量为5 GiB。
如果选择了快照,则磁盘容量为快照的容量。
7. 单击 创建。自定义镜像创建成功。您可以单击左侧导航中的 镜像,然后查看刚创建的镜像。
@2、使用实例创建自定义镜像
1.登录 ECS 管理控制台。
2.在实例列表页面顶部,选择目标实例所在的地域。
3.单击左侧导航栏中的 实例。
4.找到需要的实例。单击列表最右侧的 更多 > 磁盘和镜像 > 创建自定义镜像。
5.输入镜像名称和描述信息。 6.单击 创建。
@3、使用Packer创建自定义镜像(Packer是一款轻量级的镜像定义工具,能够运行在常用的主流操作系统(如Windows、Linux和macOS)上)
1.安装Packer
i、连接并登录到Linux服务器。
ii、执行命令 cd /usr/local/bin
进入 /usr/local/bin 目录。(说明 /usr/local/bin 目录为环境变量目录,您可以将Packer安装到该目录下或其他已添加到环境变量的目录下。)
iii、执行命令 wget https://releases.hashicorp.com/packer/1.1.1/packer_1.1.1_linux_amd64.zip
获取Packer安装包。您可以访问 Packer 下载页面 获取其他版本Packer安装包。
iiii、执行命令 unzip packer_1.1.1_linux_amd64.zip
解压文件。
iiiii、执行命令 packer -v
验证Packer安装状态。若Linux服务器返回Packer版本号,表示您已正确安装Packer。若Linux服务器提示 command not found
表示Packer未正确安装。
2.定义Packer模板
》》使用Packer创建自定义镜像时,需要创建一个JSON格式的模板文件。在该模板文件中,您需要指定创建自定义镜像的 Alicloud Image Builder(生成器) 和 Provisioners(配置器)。Packer具有多种配置器,可用于配置自定义镜像的内容生成方式,以下以常用的 Shell 配置器为例,定义Packer模板。
{
"variables": {
"access_key": "{{env `ALICLOUD_ACCESS_KEY`}}",
"secret_key": "{{env `ALICLOUD_SECRET_KEY`}}"
},
"builders": [{
"type":"alicloud-ecs",
"access_key":"{{user `access_key`}}",
"secret_key":"{{user `secret_key`}}",
"region":"cn-beijing",
"image_name":"packer_basic",
"source_image":"centos_7_02_64_20G_alibase_20170818.vhd",
"ssh_username":"root",
"instance_type":"ecs.n1.tiny",
"internet_charge_type":"PayByTraffic",
"io_optimized":"true"
}],
"provisioners": [{
"type": "shell",
"inline": [
"sleep 30",
"yum install redis.x86_64 -y"
]
}]
}
需要自定义以下参数值:
参数 | 描述 |
---|---|
access_key | 您的AccessKeyID
说明 由于AccessKey权限过大,为防止错误操作,建议您
创建 RAM 用户,并使用RAM子账号
创建AccessKey。
|
secret_key | 您的AccessKeySecret。 |
region | 创建自定义镜像时使用临时资源的地域。 |
image_name | 自定义镜像的名称。 |
source_image | 基础镜像的名称,可以从阿里云公共镜像列表获得。 |
instance_type | 创建自定义镜像时生成的临时实例的类型。 |
internet_charge_type | 创建自定义镜像时临时实例的公网带宽付费类型。 |
provisioners | 创建自定义镜像时使用的 Packer 配置器 类型。 |
3.使用Packer创建自定义镜像
》》指定Packer模板文件生成自定义镜像:
i、导入您的AccessKeyID:运行 export ALICLOUD_ACCESS_KEY=您的 AccessKeyID
。
ii、导入您的AccessKeySecret:运行 export ALICLOUD_SECRET_KEY=您的 AccessKeySecret
。
iii、执行命令 packer build alicloud.json
创建自定义镜像。
@4、不同地域之间 复制镜像 (在ECS管理控制台上复制镜像,也可以使用ECS API CopyImage和CancelCopyImage完成复制镜像任务。)
1.登录ECS管理控制台。
2.择地域。
3.在左侧导航栏中,选择快照和镜像 > 镜像。
4.选中需要复制的镜像,镜像类型必须是自定义镜像,在操作列中,单击复制镜像。 (说明 如果您要复制的自定义镜像大于200 GiB,需要提交工单处理。当您单击 复制镜像时,系统会引导您提交工单。)
5.在复制镜像对话框中,您可以看到选中的自定义镜像的ID,您需要完成以下设置:
i、选择目标地域。
ii、写镜像在目标地域显示的自定义镜像名称和自定义镜像描述。
iii、单击确定。
6.切换到目标地域,查看自定义镜像的复制进度。当进度显示为100%时,说明任务完成。(说明 如果 进度没到100%, 状态为 创建中时,您可以随时点击 取消复制。取消任务后,目标地域的镜像列表中不再显示该自定义镜像。)
@5、不同账号之间 共享镜像(在管理控制台上共享镜像,也可以使用 ECS API ModifyImageSharePermission 和 DescribeImageSharePermission 完成共享镜像。)
1.登录 ECS 管理控制台。
2.选择地域。
3.在左侧导航栏中,选择 快照和镜像 > 镜像。
4.选择一份 自定义镜像,在 操作 列中,单击 共享镜像。
5.在共享镜像页面,账号类型 选择 aliyunUid,在 账号 对话框中输入待共享的用户 ID。
6.(可选)被共享者可以在ECS管理控制台同一地域中的 快照和镜像 > 镜像 > 共享镜像 页面查看共享镜像。
@6、导入自定义镜像(将本地物理镜像文件导入ECS适用于在云上部署业务的场景,在阿里云管理控制台上导入自定义镜像,也可以使用ECS API ImportImage 导入自定义镜像。)
1.使用OSS的第三方工具客户端、API或者OSS SDK上传制作好的自定义镜像。
2.登录 ECS管理控制台。
3.在左侧导航栏里,选择 快照和镜像 > 镜像。
4.在镜像列表页,单击 导入镜像。
5.在 导入镜像 对话框里,单击提示信息第3步里的 确认地址。
6.在 云资源访问授权 窗口,勾选 AliyunECSImageImportDefaultRole
和 AliyunECSExportDefaultRole
,单击 同意授权 授权ECS服务访问您的OSS资源。
7.在镜像列表页,再次单击 导入镜像。
8.在 导入镜像 对话框里,完成以下设置:
- 镜像所在地域:上传镜像文件的OSS Bucket所在的地域。
- OSS Object 地址:从OSS控制台获取的镜像文件Object地址。
- 镜像名称:指定自定义镜像镜像文件导入后显示的名称。长度为2−128个字符,以大小写字母或中文开头,可包含数字、点号(.)、下划线(_)、半角冒号(:)和连字符(-)。
- 操作系统:根据您的镜像操作形同类型选择 Windows 或 Linux。如果您要导入的是非标准平台自定义镜像镜像,应选择 Linux。
- 系统盘大小:系统盘大小范围为40 GiB−500 GiB。
- 系统架构:64位操作系统选择 x86_64,32位操作系统选择 i386。
- 系统平台:下拉列表里提供的选项由 操作系统 的选项决定,选择适用于您的镜像的系统平台。
- 镜像格式:仅支持RAW,qcow2和VHD格式,推荐使用传输内容更小的qcow2或者VHD格式。
- 镜像描述:填写镜像描述信息,便于后续管理。
- 添加数据盘镜像:同时导入包含数据盘的自定义镜像镜像,支持的数据盘容量范围为5 GiB−2000 GiB。
9.信息确认无误后,单击 确定,创建一个导入自定义镜像镜像的任务。
10.(可选)您可以在您导入地域的镜像列表中查看导入进度。在任务完成前,您都可以通过 任务管理,找到该导入的自定义镜像镜像,取消导入镜像任务。
@7、使用 Packer 创建并导入本地镜像(前提条件:您已经 创建 AccessKey,用于输出到配置文件 centos.json 里;您已经 开通OSS服务,便于上传镜像文件到云平台。说明:由于 AccessKey 权限过大,为防止数据泄露,建议您 创建 RAM 用户,并使用 RAM 用户子账号 创建 AccessKey。)
1.运行 egrep "(svm|vmx)" /proc/cpuinfo
确保您的源服务器或者虚拟机是否支持 KVM。当返回下列信息时,表示支持 KVM。
pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch epb intel_pt tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid mpx rdseed adx smap clflushopt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
2.若您的源服务器或者虚拟机支持 KVM,运行以下命令安装 KVM。
sudo apt-get install qemu-kvm qemu virt-manager virt-viewer libvirt-bin bridge-utils #安装 KVM 及相关控件。
sudo virt-manager #开启 virt-manager。
3.安装 Packer。
4.依次执行以下命令定义 Packer 模板:(说明 以下示例制作的本地镜像基于 CentOS 6.9 操作系统)
cd /user/local #切换所在目录。
wget https://raw.githubusercontent.com/alibaba/packer-provider/master/examples/alicloud/local/centos.json #下载阿里云官方发行的 centos.json 配置文件。
wget https://raw.githubusercontent.com/alibaba/packer-provider/master/examples/alicloud/local/http/centos-6.9/ks.cfg #下载阿里云官方发行的 ks.cfg 配置文件。
mkdir -p http/centos-6.9 #创建目录。
mv ks.cfg http/centos-6.9/ #移动文件 ks.cfg 到目录 http/centos-6.9 中。
5.依次执行以下命令创建本地镜像。:
export ALICLOUD_ACCESS_KEY=您的 AccessKeyID #导入您的 AccessKeyID。
export ALICLOUD_SECRET_KEY=您的 AccessKeySecret #导入您的 AccessKeySecret。
packer build centos.json #创建本地镜像。
6.等待一段时间后,在对应地域的 ECS 控制台镜像详情页 查看上传结果
5)创建并管理安全组:
@1、创建安全组:(一台ECS实例必须至少属于一个安全组,如果您要创建VPC类型安全组,必须先 管理专有网络。VPC里的安全组,可以跨交换机,但是不能跨VPC。)
1.登录 ECS管理控制台。
2.在左侧导航栏中,选择 网络和安全 > 安全组。
3.选择地域。
4.单击 创建安全组。
5.在弹出的 创建安全组 对话框中,完成以下配置:
- 模板:根据安全组中实例上需要部署的服务,选择合适的模板,简化安全组规则配置,如下表所示:
场景 | 模板 | 说明 |
安全组中的Linux实例上需要部署Web服务 | Web Server Linux | 默认放行TCP 80、TCP 443、TCP 22和ICMP协议入方向访问 |
安全组中的Windows实例上需要部署Web服务 | Web Server Windows | 默认放行TCP 80、TCP 443、TCP 3389和ICMP协议入方向访问 |
没有特殊的需求 | 自定义 | 安全组创建成功后,根据需要的服务 添加安全组规则 |
* 安全组名称:按页面提示要求设置安全组名称。
@2、添加安全组规则。
1.登录 云服务器ECS管理控制台。
2.在左侧导航栏中,选择 网络和安全 > 安全组。
3.选择地域。
4.找到要配置授权规则的安全组,在 操作 列中,单击 配置规则。
5.在 安全组规则 页面上,单击 添加安全组规则:(如果您不需要设置ICMP、GRE协议规则,或者您想使用下表中列出的协议的默认端口,单击 快速创建规则。 说明 每个安全组的入方向规则与出方向规则的总数不能超过100条。)
协议 | 端口 |
---|---|
SSH | 22 |
talnet | 23 |
HTTP | 80 |
HTTPS | 443 |
MS SQL | 1443 |
Oracle | 1521 |
MySQL | 3306 |
RDP | 3389 |
PostgreSQL | 5432 |
Redis | 6379 |
6.在弹出的对话框中,设置以下参数:
- 网卡类型:
- 如果是专有网络类型的安全组,不需要选择这个参数。需要注意以下信息:
- 如果您的实例能访问公网,可以设置公网和内网的访问规则。
- 如果您的实例不能访问公网,只能设置内网的访问规则。
- 如果是经典网络的安全组,选择 公网 或 内网。
- 如果是专有网络类型的安全组,不需要选择这个参数。需要注意以下信息:
- 规则方向:
- 出方向:是指ECS实例访问内网中其他ECS实例或者公网上的资源。
- 入方向:是指内网中的其他ECS实例或公网上的资源访问ECS实例。
- 授权策略:选择 允许 或 拒绝。(说明 这里的 拒绝 策略是直接丢弃数据包,不给任何回应信息。如果2个安全组规则其他都相同只有授权策略不同,则 拒绝 授权生效, 接受 授权不生效。)
- 协议类型 和 端口范围:端口范围的设置受协议类型影响。下表是协议类型与端口范围的关系。 (说明 公网出方向的STMP端口25默认受限,无法通过安全组规则打开,但是您可以 申请解封端口25。)
协议类型 | 端口范围 | 应用场景 |
---|---|---|
全部 | 显示为-1/-1,表示不限制端口。不能设置。 | 可用于完全互相信任的应用场景。 |
全部ICMP(IPv4) | 显示为-1/-1,表示不限制端口。不能设置。 | 使用 ping 程序检测实例之间的通信状况。 |
全部ICMP(IPv6) | 显示为-1/-1,表示不限制端口。不能设置。 | 使用 ping6 程序检测实例之间的通信状况。 |
全部GRE | 显示为-1/-1,表示不限制端口。不能设置。 | 用于VPN服务。 |
自定义TCP | 自定义端口范围,有效的端口值是1 ~ 65535,端口范围的合法格式是开始端口/结束端口。即使是一个端口,也需要采用合法格式设置端口范围,比如:80/80表示端口80。 | 可用于允许或拒绝一个或几个连续的端口。 |
自定义UDP | ||
SSH | 显示为22/22。 连接ECS实例后您能修改端口号,具体操作,请参见 修改服务器默认远程端口。 | 用于SSH远程连接到Linux实例。 |
TELNET | 显示为23/23。 | 用于Telnet远程登录实例。 |
HTTP | 显示为80/80。 | 实例作为网站或Web应用服务器。 |
HTTPS | 显示为443/443。 | 实例作为支持HTTPS协议的网站或Web应用服务器。 |
MS SQL | 显示为1433/1433。 | 实例作为MS SQL服务器。 |
Oracle | 显示为1521/1521。 | 实例作为Oracle SQL服务器。 |
MySQL | 显示为3306/3306。 | 实例作为MySQL服务器。 |
RDP | 显示为3389/3389。 连接ECS实例后您能修改端口号,具体操作,请参见 修改服务器默认远程端口。 | 实例是Windows实例,需要远程桌面连接实例。 |
PostgreSQL | 显示为5432/5432。 | 实例作为PostgreSQL服务器。 |
Redis | 显示为6379/6379。 | 实例作为Redis服务器。 |
* 授权类型 和 授权对象:授权对象的设置受授权类型影响,以下是两者之间的关系。
授权类型 | 授权对象 |
---|---|
IPv4地址段访问 | 填写单一IP地址或者CIDR网段格式,如:12.1.1.1或13.1.1.1/25。如果填写0.0.0.0/0表示允许或拒绝所有IP地址的访问,设置时请务必谨慎。 |
IPv6地址段访问 | 填写单一IP地址或者CIDR网段格式,如:2001:0db8::1428:xxxx或2001:0db8::1428:xxxx/128。如果填写:: / 0表示允许或拒绝所有IP地址的访问,设置时请务必谨慎。 |
安全组访问 | 只对内网有效。授权本账号或其他账号下某个安全组中的实例访问本安全组中的实例,实现内网互通。
|
* 优先级:1 ~ 100,数值越小,优先级越高。
7.单击 确定,即成功地为指定安全组添加了一条安全组规则。
@3、将ECS实例 加入、移出安全组。
1.登录 云服务器 ECS 管理控制台。
2.在左侧导航栏中,单击 实例。
3.选择 地域。
4.在 实例列表 页面中,找到需要加入安全组的实例,单击 操作 列下的 管理。
5.单击 本实例安全组。
6.单击 加入安全组。
7.选择需要加入的安全组。如果您需要加入多个安全组,选择安全组后单击 加入多个安全组,将会显示一个选择栏,选中的安全组自动添加到选择栏中。
8.单击 确定。
@4、删除安全组规则。
1.登录 云服务器 ECS 管理控制台。
2.在左侧导航栏里,单击 安全组。
3.选择安全组所在的地域。
4.找到需要取消规则的安全组,在 操作 列中,单击 配置规则。
5.在安全组规则管理页面,找到需要取消的安全组规则方向:
i、如果是经典网络安全组:公网入方向、公网出方向、内网入方向、内网出方向。
ii、如果是 VPC 安全组:入方向 和 出方向。
6.找到需要删除的安全组规则,在 操作 列中,单击 删除。
7.在弹出的 删除安全组规则 对话框中,阅读提示信息,确认无误后,单击 确定。
@5、删除安全组。(删除安全组必须满足的条件:安全组里已经没有ECS实例;安全组没有被其他安全组 添加安全组规则)如果该安全组被其他安全组授权,您将看到如下图所示的错误信息。删除相应的授权规则:
1.登录 ECS管理控制台。
2.在左侧导航栏里,选择 网络和安全 > 安全组。
3.选择地域。
4.选中一个或多个安全组,在列表底部,单击 删除。
5.在 删除安全组 对话框里,确认信息后,单击 确定。
@6、克隆安全组:(为了方便部署业务)
1.登录 云服务器 ECS 管理控制台。
2.在左边导航栏里,单击 安全组。
3.选择地域。
4.在安全组列表里,找到需要克隆的安全组,在 操作 列中,单击 克隆。
5.在 克隆 对话框里,设置新安全组的信息:
i、目标地域:选择新安全组适用的地域。目前并不支持所有的地域。支持的地域以控制台显示为准。
ii、安全组名称:设置新安全组的名称。
iii、网络类型:选择新安全组适用的网络类型。如果选择专有网络,您还需要在目标地域选择一个可用的专有网络。
6.确认无误后,单击 确定。 (创建成功后,克隆 对话框会自动关闭。您可以在 安全组列表 里看到克隆出来的新安全组。)
@7、还原安全组规则:(如果新的安全组规则对线上业务产生了不利影响,您可以全部或部分 还原安全组规则)
目前还原安全组规则有以下限制:
- 原安全组与目标安全组必须在同一个地域。
- 原安全组与目标安全组必须为同一种网络类型。
- 目标安全组中如果有系统级的安全组规则(优先级为 110),还原时无法创建该类规则,还原后,原安全组中的规则可能会与预期不同。如果您需要这些安全组规则,请手动创建相似规则(优先级可以设为 100)。
1.登录 云服务器 ECS 管理控制台。
2.左边导航栏里,单击 安全组。
3.选择地域。
4.在安全组列表里,找到需要还原规则的安全组作为原安全组,在 操作 列中,单击 还原规则。
5.在 还原规则 对话框里:
i、选择 目标安全组:目标安全组必须与原安全组拥有不一样的规则。
ii、选择 还原策略:
*如果您需要原安全组与目标安全组拥有完全一致的规则,您应该选择 全部还原。
*如果您只需要在原安全组中添加只有目标安全组中才有的规则,您应该选择 部分还原。
接:云服务器ECS