ECS支持使用自定义镜像创建实例。该自定义镜像可以是您基于线下服务器、虚拟机或者其他云平台的云主机创建的。您导入的镜像需要满足一定镜像要求,更多详情,请参阅导入镜像注意事项。为缩短镜像制作及创建实例的周期,我们推荐您使用ECS镜像规范检测工具,本文简称检测工具,制作符合规范的镜像。检测工具能基于服务器环境检测各项配置指标、定位不合规原因、生成TXT和JSON格式检测报告并给出解决意见。

使用限制

目前检测工具仅支持检测Linux类型镜像,包括Ubuntu、CentOS、Debian、RedHat、SLES(SUSE Linux Enterprise Server)、OpenSUSE、FreeBSD、CoreOS和Others Linux发行版本。

使用示例

以CentOS 7.4 64位服务器为例。

  1. 登录您的服务器、虚拟机或者其他云平台的云主机。
  2. 下载 检测工具。
  3. 使用root权限运行image_check,避免检测工具无法读取有权限控制的配置文件。
    chmod +x image_check
    sudo image_check –p [目标路径]
    说明
    您可以使用-p [目标路径]指定检测报告的生成路径,不指定则默认输出在检测工具所在的路径。
  4. 等待检测工具检测系统配置。
    Begin check your system...
     The report is generating.
     -----------------------------------------
     The information you need to input when you import your image to Alibaba Cloud website:
     Current system: CentOS         # 系统信息1:服务器操作系统
     Architecture: x86_64           # 系统信息2:系统架构
     System disk size: 42 GB        # 系统信息3:服务器系统盘容量
     -----------------------------------------
     # 检测项
     Check driver                          [ OK ]
     Check shadow file authority           [ OK ]
     Check security                        [ OK ]
     Check qemu-ga                         [ OK ]
     Check network                         [ OK ]
     Check ssh                             [ OK ]
     Check firewall                        [ OK ]
     Check filesystem                      [ OK ]
     Check device id                       [ OK ]
     Check root account                    [ OK ]
     Check password                        [ OK ]
     Check partition table                 [ OK ]
     Check lvm                             [ FAILED ]
     Check lib                             [ OK ]
     Check disk size                       [ OK ]
     Check disk use rate                   [ WARNING ]
     Check inode use rate                  [ OK ]
     -----------------------------------------
     15 items are OK
     1 items are failed
     1 items are warning
     -----------------------------------------
     The report is generated: /root/image_check_report_2018-05-14_18-18-10.txt
     Please read the report to check the details
  5. 在相应位置查看检测报告。报告格式为image_check_report_日期_时间.txtimage_check_report.json

检测项

为避免使用您的自定义镜像创建的ECS实例功能不全,检测工具主要检测服务器中以下配置项。

检测项 不合规后果 合规建议
driver 无法正常启动ECS实例 安装虚拟化驱动,如安装 virtio 驱动
/etc/shadow 无法修改密码文件,进而无法根据自定义镜像创建ECS实例 不要使用chattr命令锁定/etc/shadow文件
SElinux 无法正常启动ECS实例 不要通过修改/etc/selinux/config开启 SELinux
qemu-ga ECS所需要的部分服务不可用,实例功能不全 卸载qemu-ga
network ECS实例网络功能不稳定 关闭或删除Network Manager并打开 network服务,新版Linux推荐使Network Manager和nmcli命令设置网络
ssh 无法从控制台远程连接ECS实例 打开SSH服务,不要设置PermitRootLogin
firewall 系统无法自动配置您的ECS实例环境 关闭防火墙Iptables、Firewalld、IPFILTER (IPF)、 IPFIREWALL (IPFW)或PacketFilter(PF)
file system 无法扩容磁盘
  • 推荐使用xfs、ext3、ext4文件系统
  • 容许使用ext2、ufs、udf文件系统
  • ext4文件系统不要使用64 bit feature
root 无法使用用户名和密码远程连接ECS 实例 保留root账号
passwd ECS实例无法新增用户 保留passwd命令,或重新安装passwd
分区表 无法正常启动ECS实例 采用MBR分区
Logical Volume Manager(LVM) 无法正常启动ECS实例 更换为其他分区服务
/lib 无法自动化配置ECS实例 /lib和/lib64 的指向位置不能为绝对路径,修改链接文件 /lib 和 /lib64 的指向位置为相对路径
system disk N/A 增加系统盘容量,系统盘空间最佳为 40GiB至500GiB。并在导入镜像时根据镜像的虚拟文件大小而非使用容量配置系统盘容量
disk usage 无法为ECS实例安装必要的驱动或服务 保持足够的磁盘空间
inode usage 无法为ECS实例安装必要的驱动或服务 保持足够的inode资源

检测工具会根据检测项给出OKFAILED或者WARNING检测结果。

  • OK:检测项均符合要求。
  • FAILED:检测项不符合要求,使用该自定义镜像创建的ECS实例无法正常启动。建议您修复报错项后再制作镜像,以提高实例启动效率。
  • WARNING:检测项不符合要求,使用该自定义镜像创建的ECS实例可以安全启动,但ECS无法通过有效途径干预您的实例配置。您可以选择立即修复,也可以暂时忽略问题前往制作镜像环节。

输出项

检测系统环境后,会输出TXT和JSON两种格式检测报告。输出路径可以使用-p [目标路径]指定,不指定则默认输出在检测工具所在的路径。

  • TXT格式报告名称为image_check_report_日期_时间.txt,报告内容包括服务器配置信息以及检测结果。以CentOS 7.4 64位服务器为例:
    The information you need to input when you import your image to Alibaba Cloud Website:
      Current system is: CentOS     #服务器操作系统
      Architecture: x86_64          #系统架构
      System disk size: 42 GB       #服务器系统盘容量
      -----------------------------------------
       Check driver                 #检测项名称
       Pass: kvm drive is exist     #检测结果
       Alibaba Cloud supports kvm virtualization technology
       We strongly recommend installing kvm driver.
  • JSON格式报告名称为image_check_report.json,报告内容包括服务器配置信息以及检测结果。以CentOS 7.4 64位服务器为例:
    "platform": "CentOS",      \\服务器操作系统
      "os_big_version": "7",     \\操作系统版本号(高位)
      "os_small_version": "4",   \\操作系统版本号(低位)
      "architecture": "x86_64",  \\系统架构
      "system_disk_size": "42",  \\服务器系统盘容量
      "version": "1.0.2",        \\检测工具版本
      "time": "2018-05-14_19-18-10", \\检测时间
      "check_items": [{
          "name": "driver",      \\检测项名称
          "result": "OK",        \\检测结果
          "error_code": "0",     \\错误码
          "description": "Pass: kvm driver exists.", \\描述
          "comment": "Alibaba Cloud supports kvm virtualization technology. We strongly recommend installing kvm driver."
      }]
    }

下一步

  1. 查看导入镜像注意事项
  2. 安装virtio驱动
  3. (可选)转换镜像格式
  4. 导入镜像
  5. 使用自定义镜像创建实例