镜像检查

最近更新时间:2019-05-13 14:54:37

镜像规范检查工具

云主机支持使用自定义镜像创建实例。该自定义镜像可以是您基于线下服务器、虚拟机或者其他云平台的云主机创建的。您导入的镜像需要满足一定镜像要求,更多详情,请参阅导入镜像须知。为缩短镜像制作及创建实例的周期,我们推荐您使用此镜像规范检测工具,本文简称检测工具,制作符合规范的镜像。检测工具能基于服务器环境检测各项配置指标、定位不合规原因、生成 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 [目标路径]"指定检测报告的生成路径,不指定则默认输出在检测工具所在的路径。

  1. 等待检测工具检测系统配置。
image_check 1.0.0
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.

在相应位置查看检测报告。报告格式为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、ext3、ext4 文件系统
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.

2.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的话是可以导入的哦。

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

注册有礼