镜像检查

最近更新时间:2020-02-20 16:05:14

云主机支持使用自定义镜像创建实例。

该自定义镜像可以是您基于线下服务器、虚拟机或者其他云平台的云主机创建的。您导入的镜像需要满足一定镜像要求,更多详情,请参阅导入镜像须知

为缩短镜像制作及创建实例的周期,我们推荐您使用此镜像规范检测工具,本文简称检测工具,制作符合规范的镜像。检测工具能基于服务器环境检测各项配置指标、定位不合规原因、生成 TXT 和 JSON 格式检测报告并给出解决意见。

使用限制

目前检测工具仅支持检测 Linux 类型镜像,包括 Ubuntu、CentOS、Debian、RedHat、Fedora 和 Other Linux 发行版本。

使用实例

以CentOS 6.8 64位服务器为例。

  1. 登陆服务器、虚拟机或者其他云平台的云服务器。

  2. 【下载镜像检查工具】

  3. 使用root权限运行image_check。

    chmod +x image_check
    sudo image_check

    也可使用-p [目标路径]命令指定检测报告的生成路径,不指定则默认输出到检测工具所在的路径。

  4. 等待检测工具检测系统配置。

    image_check 1.0.2
    Begin check your system......
    The inspection report is generating.
    The infomation you need to input when you import your image to Kingsoft 
    Cloud website:
    Current system: CentOS 6.8
    Architecture: x86_64
    System disk size: 21 GB
    
    Check driver                  [  OK  ]
    Check shadow file authority        [  OK  ]
    Check security                [WARNING]
    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 lib                    [  OK  ]
    Check disk size                [FAILED]
    Check disk use rate             [  OK  ]
    Check inode use rate            [  OK  ]
    
    13 items are OK.
    1 items are failed.
    1 items are warning.
    
    The report is generated: /tmp/image_check_report_2018-07-13_22-46-53.txt
    Please read the report to check the details.
  5. 在相应位置查看检测报告。报告格式为 image_check_report_日期_时间.txt 或 image_check_report.json。

检测项

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

检测项
不合规后果
合规建议
driver 实例无法正常开机 安装虚拟化virtio驱动
/etc/shadow 无法修改密码文件,控制台变更密码服务将不能使用 不要使用chattr命令锁定/etc/shadow文件
SElinux 实例可能出现异常现象,影响使用 不要通过修改/etc/selinux/config开启 SELinux
network 实例网络功能不稳定 关闭或删除Network Manager并打开network服务
ssh 无法从控制台远程连接实例 打开SSH服务,不要设置PermitRootLogin (用#注释即可)
firewall 实例可能出现异常现象,影响使用 关闭防火墙Iptables、Firewalld
file system 实例创建失败、实例无法正常工作 使用 xfs、ext2、ext3、ext4 文件系统
device id 实例创建失败、实例黑屏 修改 /etc/fstab 和 grub 配置文件,使用 UUID 或者 /dev/vda*
root account 无法使用用户名和密码远程连接实例 保留root账号
passwd 实例无法新增用户 保留passwd命令,或重新安装passwd
partition table 无法正常启动实例 采用MBR分区
lib 无法自动化配置实例 /lib/lib64的指向位置不能为绝对路径,修改链接文件/lib/lib64的指向位置为相对路径
disk size N/A 系统盘大小需要满足导入要求
disk usage 无法为实例配置网络 保留足够的磁盘空间
inode usage 无法为实例配置网络 保留足够的inode资源
ubuntu account 无法登陆实例 保证Ubuntu镜像中有“ubuntu”用户

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

  • OK:检测项均符合要求。
  • FAILED:检测项不符合要求,使用该自定义镜像创建的实例无法正常启动。建议您修复报错项,否则镜像在导入时会失败。
  • WARNING:检测项不符合要求,使用该自定义镜像创建的实例可以启动,但实例可能在使用时出现异常现象,影响您的效率。您可以选择立即修复,也可以暂时忽略问题。

输出项

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

  1. TXT 格式报告名称为 image_check_report_日期_时间.txt,报告内容包括服务器配置信息以及检测结果。以 CentOS 6.8 64 位服务器为例:
The infomation you need to input when you import your image to Kingsoft Cloud website:
Current system is: CentOS 6.8    服务器操作系统及其版本
Architecture: x86_64   系统架构
System disk size: 21 GB    服务器系统容量
The program can obtain system version information from any of these files, but please ensure that these files retain the original content.
Do not modify /etc/issue, /etc/*release*, or /etc/debian_version (this file is not available for all distributions).
 Failure to do so will result in the system's release being unrecognized and causing system creation to fail.

Check driver 检测项名称
Pass: kvm driver exists. 检测结果 

Kingsoft Cloud supports kvm virtualization technology.
We strongly recommend installing kvm driver.
  1. JSON 格式报告名称为 image_check_report.json,报告内容包括服务器配置信息以及检测结果。以 CentOS 6.8 64 位服务器为例:
"platform":"CentOS",      \\服务器操作系统
 "os_big_version":"6",     \\操作系统版本号(高位)
 "os_small_version":"8",    \\操作系统版本号(低位)
 "architecture":"x86_64",   \\系统架构
 "system_disk_size":"21",   \\服务器系统盘容量
 "version":"1.0.0",       \\检测工具版本
 "time":"2018-07-13_23-42-21",   \\检测时间
 "check_items":[{
      "name":"driver",       \\检测项名称
      "result":"OK",        \\检测结果
      "error_code":"0",      \\错误码
      "descrption":"Pass: kvm driver exists.",  \\描述
      "comment":"Kingsoft Cloud supports kvm virtualization technology. We strongly recommend installing kvm driver. "
 }]
}

PS:报告中显示的服务器系统盘容量大小是近似值,单位为GB。检测时是精确到bit进行的。所以如果发现报告显示的是21GB,但是检查项"disk size"为OK的话是可以导入的哦。

金山云,开启您的云计算之旅

免费注册