华为云用户手册

  • 1822网卡卸载实例不兼容Linux 3.16.x内核的问题 问题描述: 使用华为自研25GE智能高速网卡硬件卸载功能的弹性云服务器(包含但不限于c3ne、m3ne、c6、m6、g5、p2v、g5r、p2vs、p2s、pi2、fp1cn1、ai1、e3.26xlarge.14、e3.52xlarge.14、e3.52xlarge.20、kc1、km1)与Linux 3.16.x内核分支(3.16.47~3.16.x)操作系统版本存在兼容性问题,会概率性导致网络不通等现象。 涉及镜像: Debian 8.2.0 64bit、Debian 8.8.0公共镜像 解决方案: 当前已在相关规格下线Debian 8公共镜像。使用涉及镜像创建的云服务器尽快迁移到S3、C3上面。
  • InfiniBand网卡驱动 如果这个私有镜像用于创建H2型云服务器,需要在镜像中安装InfiniBand网卡驱动。请根据IB类型,在Mellanox官网选择相应版本的InfiniBand网卡驱动下载(建议选择4.2-1.0.0.0的驱动版本下载使用),并根据Mellanox提供的操作指导进行安装。 IB网卡类型:“Mellanox Technologies ConnectX-4 Infiniband HBA (MCX455A-ECAT)” Mellanox官网地址:http://www.mellanox.com/ 网卡驱动下载地址:https://network.nvidia.com/products/infiniband-drivers/linux/mlnx_ofed/ H2型云服务器介绍:超高性能计算型
  • 内核在网卡增删场景下,概率性导致系统异常的问题 问题描述: 在云服务器上进行网卡热插拔事件或者等价行为,概率性出现以下两种情况: 触发内核panic,OS自动重启 软中断使用率冲高,网络收发包异常 Patch链接如下:https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git/commit/?id=f00e35e259948b995aa1f3ee7fddb05f34a50157 涉及镜像: CentOS 7公共镜像及私有镜像 解决方案: 建议进行内核版本升级修复对应Bug,升级至CentOS 7内核版本3.10.0-1160.25.1.e17.x86_64。
  • Windows Server DHCP租约设置过长(大于99天),可能导致网络不通的问题 问题描述: Windows Server操作系统的DHCP Client服务存在已知问题,当租约设置过长(大于99天)会导致您的实例无法自动续约IP。当第一次的租约到期时会导致实例网络不通。 涉及镜像: Windows Server 2008、Windows Server 2012 R2、Windows Server 2016、Windows Server 2019公共镜像及私有镜像 解决方案: 调整实例所在的子网DHCP租约为1天或者无限租约。 执行以下命令,使租约设置生效。 如下操作会短暂影响网络连接,请暂停业务或者在业务低峰期进行操作。 ipconfig /renew
  • 部分内核TCP网络概率性不通 问题描述: 修复CVE-2019-11477(TCP SACK)的内核引入新问题,在Socket buffer很低的情况下可能导致网络不通。 涉及镜像: 镜像类型 内核版本 2019-06-26至2019-09-29期间的CentOS 7公共镜像 3.10.0-957.21.3.e17.x86_64 2019-06-26至2019-10-15期间的Ubuntu 16、Ubuntu 18公共镜像 Ubuntu 16.04:4.4.0-151-generic Ubuntu 18.04:4.15.0-52-generic 2019-06-26至2019-10-15期间的Debian 9.0公共镜像 4.9.0-9-amd64 2019-06-27至2019-10-15期间的Fedora 29、openSUSE 15.0公共镜像 Fedora 29:5.1.11-200.fc29.x86_64 openSUSE 15.0:4.12.14-1p150.12.64-default 解决方案: 升级到最新的内核。各镜像类型升级内核的命令如下: CentOS/Fedora:yum update kernel Ubuntu:apt-get update && apt-get install linux-image-generic openSUSE:zypper refresh && zypper install kernel-default Debian:apt-get update && apt search linux-image && apt-get install linux-image-xxx 其中,apt search linux-image可以查询最新的内核版本;apt-get install linux-image-xxx用于升级到最新内核版本。
  • UltraISO软件操作步骤 下载UltraISO,并安装至本地。 下载地址:https://www.ultraiso.com/ 下载VMTools驱动包,并解压至本地。 VMTools下载地址:https://ecs-instance-driver.obs.cn-north-1.myhuaweicloud.com/vmtools-windows.zip 不同版本Windows操作系统和VMTools软件包的对应关系,请参见相关软件及获取方式。 使用UltraISO打开ISO文件,如图2所示。 图2 打开ISO文件 ISO格式的镜像文件请使用UltraISO工具打开,请勿使用普通压缩工具打开,否则会丢失ISO的引导数据。 解压2中下载的“vmtools-windows.zip”文件,得到“vmtools-windows.iso”,再次解压后得到“vmtools-windows”文件夹,如图3所示。 图3 “vmtools-windows”文件夹 将4中解压的“vmtools-windows”文件夹整体拖到ISO文件父节点下,如图4所示。 图4 添加“vmtools-windows”文件夹至ISO文件中 在UltraISO中,将已集成VMTools驱动的ISO文件另存为iso格式,导出至本地。
  • AnyBurn软件操作步骤 下载AnyBurn,并安装至本地。 下载VMTools驱动包,并解压至本地。 VMTools下载地址:https://ecs-instance-driver.obs.cn-north-1.myhuaweicloud.com/vmtools-windows.zip 不同版本Windows操作系统和VMTools软件包的对应关系,请参见相关软件及获取方式。 使用AnyBurn打开ISO文件。 打开AnyBurn软件,选择“编辑镜像文件”。 选择ISO文件,单击“下一页”。 编辑ISO文件,集成VMTools驱动。 解压步骤2中下载的“vmtools-windows.zip”文件,得到“vmtools-windows.iso”,再次解压后得到“vmtools-windows”文件夹,如图所示。 图1 “vmtools-windows”文件夹 将解压的“vmtools-windows”文件夹整体拖到ISO文件父节点下(或单击“增加”并选择“vmtools-windows”文件夹),单击“下一页”。 指定保存的路径及ISO文件名称,选择文件保存为ISO格式,单击“开始生成”。 生成ISO文件结束后,请在保存路径下查看集成VMTools驱动的ISO文件。
  • 操作场景 由于Windows操作系统采用ide磁盘和virtio网卡,因此需要在注册为云平台的镜像前,先在Windows操作系统的ISO文件中集成VMTools驱动。由于ISO通常是将光盘文件做成一个文件,而部分光盘软件设定只能从光驱进行安装,直接解压后无法使用,因此需要用到虚拟光驱软件。 本节操作以AnyBurn、UltraISO软件为例,介绍如何为ISO文件集成VMTools驱动。 AnyBurn是一款轻量级但专业的CD/DVD/蓝光刻录软件,并提供免费版本。 UltraISO是收费软件,试用版的UltraISO软件不能保存大小超过300M的ISO文件,请使用正式版本的软件。
  • 采用官方源码编译安装方法 官方源码编译安装方法的Cloud-Init工具Github开源地址:https://github.com/canonical/cloud-init/ 执行以下命令,下载Cloud-Init压缩包,并将其复制至新建的“/tmp/CLOUD-INIT”文件夹。 0.7.6版本安装包下载地址:https://github.com/canonical/cloud-init/archive/refs/tags/0.7.6.zip 0.7.9版本安装包下载地址:https://github.com/canonical/cloud-init/archive/refs/tags/0.7.9.zip Cloud-Init所有版本安装包下载地址:https://github.com/canonical/cloud-init/releases wget https://github.com/canonical/cloud-init/archive/refs/tags/0.7.6.zip mkdir /tmp/CLOUD-INIT cp cloud-init-0.7.6.zip /tmp/CLOUD-INIT cd /tmp/CLOUD-INIT 执行如下命令,解压Cloud-Init压缩包。 unzip cloud-init-0.7.6.zip 执行如下命令进入cloud-init-0.7.6文件夹。 cd cloud-init-0.7.6 若cloud-init为18.3~22.3版本,则需要进行如下适配。否则跳过本步骤,继续执行下一步。 sed -i '/VALID_DMI_ASSET_TAGS =/a\VALID_DMI_ASSET_TAGS += ["HUAWEICLOUD"]' cloudinit/sources/DataSourceOpenStack.py cat cloudinit/sources/DataSourceOpenStack.py | grep VALID_DMI_ASSET_TAGS 确认执行结果如下图,表示语句添加成功。 按照操作系统类型,执行相应的命令安装Cloud-Init安装包。 CentOS6.x/SUSE11.x: python setup.py build python setup.py install --init-system sysvinit CentOS7.x/SUSE12.x: python setup.py build python setup.py install --init-system systemd Cloud-Init安装时需要添加syslog用户到adm组。存在syslog用户时直接添加syslog用户到adm组。不存在syslog用户时(如CentOS和SUSE),执行下列命令创建syslog用户,添加到adm组: useradd syslog groupadd adm usermod -g adm syslog 设置Cloud-Init相关服务为开机自启动。 若操作系统是sysvinit自启动管理服务,则执行以下命令进行设置。 chkconfig --add cloud-init-local; chkconfig --add cloud-init; chkconfig --add cloud-config; chkconfig --add cloud-final chkconfig cloud-init-local on; chkconfig cloud-init on; chkconfig cloud-config on; chkconfig cloud-final on service cloud-init-local status; service cloud-init status; service cloud-config status; service cloud-final status 若操作系统是systemd自启动管理服务,则执行以下命令进行设置。 systemctl enable cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service systemctl status cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service 执行如下命令检查Cloud-Init是否安装成功。 cloud-init -v cloud-init init --local 回显如下类似信息所示表示安装Cloud-Init成功。 cloud-init 0.7.6
  • 采用官方提供的包源安装Cloud-Init工具(优先推荐) 在不同操作系统的云服务器上安装Cloud-Init工具的方法不同,请在root用户下执行相关安装操作。 以下将介绍SUSE、CentOS、Fedora、Debian和Ubuntu操作系统安装Cloud-Init工具的具体方法。其他操作系统类型,请安装并配置对应类型的Cloud-Init工具,例如,使用CoreOS操作系统时需安装并配置coreos-cloudinit。 SUSE操作系统 SUSE操作系统的Cloud-Init网络安装地址: https://ftp5.gwdg.de/pub/opensuse/repositories/Cloud:/Tools/ http://download.opensuse.org/repositories/Cloud:/Tools/ 在上述提供的网络安装地址下选择相应操作系统版本的repo安装包进行安装。 以SUSE Enterprise Linux Server 12为例,Cloud-Init工具的安装步骤如下。 登录到创建Linux私有镜像所使用的云服务器。 执行以下命令,安装SUSE 12的网络安装源。 zypper ar https://ftp5.gwdg.de/pub/opensuse/repositories/Cloud:/Tools/SLE_12_SP3/Cloud:Tools.repo 执行以下命令,更新网络安装源。 zypper refresh 执行以下命令,安装Cloud-Init。 zypper install cloud-init 执行以下命令,设置Cloud-Init为开机自启动服务。 SUSE 11: chkconfig cloud-init-local on; chkconfig cloud-init on; chkconfig cloud-config on; chkconfig cloud-final on service cloud-init-local status; service cloud-init status; service cloud-config status; service cloud-final status SUSE 12以及openSUSE 12/13/42: systemctl enable cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service systemctl status cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service 对于SUSE和openSUSE操作系统,请执行以下步骤禁止动态修改云服务器名称。 执行以下命令,使用vi编辑器打开“dhcp”文件。 vi etc/sysconfig/network/dhcp 将“dhcp”文件中的“DHCLIENT_SET_HOSTNAME”的值修改为“no”。 CentOS操作系统 CentOS操作系统的Cloud-Init网络安装地址如表1所示。请在提供的网络安装地址下选择相应的epel-release安装包进行安装。 表1 Cloud-Init网络安装地址 操作系统类型 版本 网络安装地址 CentOS 6系列32位 https://archives.fedoraproject.org/pub/archive/epel/6/i386/ 6系列64位 https://archives.fedoraproject.org/pub/archive/epel/6/x86_64/ 7系列64位 https://archives.fedoraproject.org/pub/epel/7/x86_64/Packages/e/ 执行以下命令安装Cloud-Init: yum install 网络安装地址/epel-release-x-y.noarch.rpm yum install cloud-init “网络安装地址”表示Cloud-Init对应的epel-release安装包的地址,“x-y”表示当前操作系统对应的Cloud-Init epel-release版本号,执行命令时需参考表1以及实际使用的安装包版本进行替换。 以CentOS 6系列64位为例,当前版本号为6.8,则命令修改为: yum install https://archives.fedoraproject.org/pub/archive/epel/6/x86_64/epel-release-6-8.noarch.rpm 以CentOS 7系列64位为例,当前版本号为7.14。则命令修改为: yum install https://archives.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-14.noarch.rpm 执行以下命令,设置Cloud-Init为开机自启动服务。 systemctl enable cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service systemctl status cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service Fedora操作系统 安装Cloud-Init前,请确认操作系统已经配置好对应的网络安装源地址,请查看“/etc/yum.repo.d/fedora.repo”文件中是否已配置相关软件包安装源地址,如果没有配置相关地址源,请参考相关Fedora官网信息配置软件包安装源。 执行以下命令,安装Cloud-Init。 yum install cloud-init 执行以下命令,设置Cloud-Init为开机自启动服务。 systemctl enable cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service systemctl status cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service Debian和Ubuntu操作系统 安装Cloud-Init前,请确认操作系统已经配置好对应的网络安装源地址,请查看“/etc/apt/sources.list”文件中是否已配置相关软件包安装源地址,如果没有配置相关地址源,请参考Debian或者Ubuntu官网信息配置软件包安装源。 执行以下命令,安装Cloud-Init。 apt-get update apt-get install cloud-init 执行以下命令,设置Cloud-Init为开机自启动服务。 systemctl enable cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service systemctl status cloud-init-local.service cloud-init.service cloud-config.service cloud-final.service
  • 操作场景 为了保证使用私有镜像创建的新云服务器可以通过“用户数据注入”功能注入初始化自定义信息(例如为云服务器设置登录密码),请在创建私有镜像前安装Cloud-Init工具。 安装Cloud-Init工具时需要从官网下载并安装,因此,需要提前为云服务器绑定弹性公网IP。 不安装Cloud-Init工具,将无法对云服务器进行自定义配置,只能使用镜像原有密码登录云服务器。 使用公共镜像创建的云服务器,默认已经安装Cloud-Init,不需要执行安装及配置操作。 用户导入镜像创建的云服务器,请按照指导安装及配置Cloud-Init。配置Cloud-Init操作请参考配置Cloud-Init工具章节。
  • 检查是否已经安装Cloud-Init工具 请先执行如下步骤检查是否已安装Cloud-Init工具。 在不同的操作系统下,查看是否已经安装Cloud-Init工具的方法不同。以CentOS 6系列为例,执行以下命令查看是否安装Cloud-Init工具。 which cloud-init 回显类似如下,表示已经安装Cloud-Init工具,无需重复安装。 cloud-init-0.7.5-10.el6.centos.2.x86_64 无回显信息表示未安装Cloud-Init工具。 由于Cloud-Init工具存在多种安装方法,如果无回显信息,请再次使用rpm -qa |grep cloud-init命令进行检查。which cloud-init和rpm -qa |grep cloud-init任何一个命令显示已安装,表示操作系统已安装Cloud-Init工具。 如果已安装Cloud-Init工具,还需要执行以下操作: 请确认当前云服务器操作系统中的证书是否继续使用。如果不再使用该证书,请删除证书。 root用户对应目录下的文件(如“/$path/$to/$root/.ssh/authorized_keys”),执行以下命令: cd /root/.ssh rm authorized_keys 非root用户对应目录下的证书文件(如“/$path/$to/$none-root/.ssh/authorized_keys”),执行以下命令: cd /home/centos/.ssh rm authorized_keys 执行以下命令,清除Cloud-Init工具产生的缓存,确保使用该私有镜像创建的云服务器可以使用证书方式登录。 sudo rm -rf /var/lib/cloud/* 设置完成后请勿重启云服务器,否则,需重新设置。
  • 操作场景 通过云服务器或者外部镜像文件创建私有镜像时,如果云服务器或镜像文件所在虚拟机的网络配置是静态IP地址时,您需要修改网卡属性为DHCP,以使私有镜像发放的新云服务器可以动态获取IP地址。 本节以Windows Server 2008 R2操作系统为例。其他操作系统配置方法略有区别,请参考对应操作系统的相关资料进行操作,文档中不对此进行详细说明。 使用外部镜像文件创建私有镜像时,设置网卡属性操作需要在虚拟机内部完成,建议您在原平台的虚拟机实施修改后,再导出镜像。
  • SUSE/openSUSE系列操作系统相关操作 当操作系统版本低于SUSE 12 SP1或低于openSUSE 13时,请修改“/etc/sysconfig/kernel”文件,操作步骤请参考第一种情况。 当操作系统版本为SUSE 12 SP1时,修改“/etc/dracut.conf”文件,添加xen-pv以及virtio的驱动,操作步骤请参考第二种情况。 当操作系统版本高于SUSE 12 SP1或高于openSUSE 13版本时,修改“/etc/dracut.conf”文件,在add_drivers项中添加xen-pv和virtio的驱动,操作步骤请参考第三种情况。 当操作系统版本低于SUSE 12 SP1或低于openSUSE 13时,操作步骤如下。 SUSE系列操作系统首先应确认OS是否已经安装了xen-kmp包(xen-pv的驱动包),执行如下命令: rpm -qa |grep xen-kmp 回显类似如下: xen-kmp-default-4.2.2_04_3.0.76_0.11-0.7.5 如果没有安装xen-kmp的包,请到安装ISO中获取并安装。 执行如下命令,修改“/etc/sysconfig/kernel”文件。 vi etc/sysconfig/kernel 在INITRD_MODULES=""中添加xen-pv以及virtio的驱动(具体格式要根据OS本身的要求来决定)。 SIA10000xxxxx:~ # vi /etc/sysconfig/kernel # (like drivers for scsi-controllers, for lvm or reiserfs)#INITRD_MODULES="ata_piix ata_generic xen_vnif xen_vbd xen_platform_pci virtio_blk virtio_scsi virtio_net virtio_pci virtio_ring virtio" 执行mkinitrd命令,重新生成initrd。 如果引导的虚拟文件系统不是默认的initramfs或者initrd,则命令为:dracut -f 实际使用的initramfs或者initrd文件名。“实际使用的initramfs或者initrd文件名”可在menu.lst或者grub.cfg配置(“/boot/grub/menu.lst”或“/boot/grub/grub.cfg”或“/boot/grub2/grub.cfg”)中获取。 以SUSE 11 SP4为例,如下所示: default 0timeout 10gfxmenu (hd0,0)/boot/messagetitle sles11sp4_001_[_VMX_]root (hd0,0)kernel /boot/linux.vmx vga=0x314 splash=silent console=ttyS0,115200n8 console=tty0 net.ifnames=0 NON_PERSISTENT_DEVICE_NAMES=1 showoptsinitrd /boot/initrd.vmxtitle Failsafe_sles11sp4_001_[_VMX_]root (hd0,0)kernel /boot/linux.vmx vga=0x314 splash=silent ide=nodma apm=off noresume edd=off powersaved=off nohz=off highres=off processsor.max+cstate=1 nomodeset x11failsafe console=ttyS0,115200n8 console=tty0 net.ifnames=0 NON_PERSISTENT_DEVICE_NAMES=1 showoptsinitrd /boot/initrd.vmx 其中,initrd所在行的/boot/initrd.vmx为实际使用的initrd文件,执行的时候请按照dracut -f /boot/initrd.vmx执行。如果initrd所在行的initrd文件不包含/boot目录,如/initramfs-xxx,请在执行dracut命令时增加boot目录,例如:dracut -f /boot/initramfs-xxx。 执行如下命令,检查是否已经成功装载了XEN的PVOPS或者KVM的virtio相应模块。 lsinitrd /boot/initrd-`uname -r` | grep xen lsinitrd /boot/initrd-`uname -r` | grep virtio SIA10000xxxxx:~ # lsinitrd /boot/initrd-`uname -r` | grep xen-rwxr--r-- 1 root root 42400 Jun 22 2012 lib/modules/2.6.32-279.el6.x86_64/kernel/drivers/block/xen-blkfront.ko-rwxr--r-- 1 root root 44200 Jun 22 2012 lib/modules/2.6.32-279.el6.x86_64/kernel/drivers/net/xen-netfront.koSIA10000xxxxx:~ # lsinitrd /boot/initrd-`uname -r` | grep virtio-rwxr--r-- 1 root root 19248 Jun 22 2012 lib/modules/2.6.32-279.el6.x86_64/kernel/drivers/scsi/virtio_scsi.ko-rwxr--r-- 1 root root 23856 Jun 22 2012 lib/modules/2.6.32-279.el6.x86_64/kernel/drivers/block/virtio_blk.kodrwxr-xr-x 2 root root 0 Jul 12 14:53 lib/modules/2.6.32-279.el6.x86_64/kernel/drivers/virtio-rwxr--r-- 1 root root 15848 Jun 22 2012 lib/modules/2.6.32-279.el6.x86_64/kernel/drivers/virtio/virtio_ring.ko-rwxr--r-- 1 root root 20008 Jun 22 2012 lib/modules/2.6.32-279.el6.x86_64/kernel/drivers/virtio/virtio_pci.ko-rwxr--r-- 1 root root 12272 Jun 22 2012 lib/modules/2.6.32-279.el6.x86_64/kernel/drivers/virtio/virtio.ko-rwxr--r-- 1 root root 38208 Jun 22 2012 lib/modules/2.6.32-279.el6.x86_64/kernel/drivers/net/virtio_net.ko 重启云服务器。 重启完毕后,修改“/boot/grub/menu.lst”文件,增加xen_platform_pci.dev_unplug=all和修改root的配置。 修改前如下所示: ###Don't change this comment -YaST2 identifier: Original name: linux###title SUSE Linux Enterprise Server 11SP4 - 3.0.76-0.11 (default) root (hd0,0) kernel /boot/vmlinuz-3.0.76-0.11-default root=UUID=4eb40294-4c6f-4384-bbb6-b8795bbb1130 splash=silentcrashkernel=256M-:128M showopts vga=0x314initrd /boot/initrd-3.0.76-0.11-default 修改后如下所示: ###Don't change this comment -YaST2 identifier: Original name: linux###title SUSE Linux Enterprise Server 11SP4 - 3.0.76-0.11 (default) root (hd0,0) kernel /boot/vmlinuz-3.0.76-0.11-default root=UUID=4eb40294-4c6f-4384-bbb6-b8795bbb1130 splash=silentcrashkernel=256M-:128M showopts vga=0x314 xen_platform_pci.dev_unplug=all initrd /boot/initrd-3.0.76-0.11-default 确保磁盘root分区为UUID的表示形式。 xen_platform_pci.dev_unplug=all该参数的添加是为了屏蔽qemu设备。 SUSE 11 SP1 64bit ~ SUSE 11 SP4 64bit系统需要在“menu.lst”文件添加xen_platform_pci.dev_unplug=all,SUSE 12以后版本默认启用此功能,无需配置。 执行如下命令确认initrd中是否存在XEN驱动。 lsinitrd /boot/initrd-`uname -r` | grep xen lsinitrd /boot/initrd-`uname -r` | grep virtio SIA10000xxxxx:~ # lsinitrd /boot/initrd-`uname -r` | grep xen-rwxr--r-- 1 root root 42400 Jun 22 2012 lib/modules/2.6.32-279.el6.x86_64/kernel/drivers/block/xen-blkfront.ko-rwxr--r-- 1 root root 44200 Jun 22 2012 lib/modules/2.6.32-279.el6.x86_64/kernel/drivers/net/xen-netfront.koSIA10000xxxxx:~ # lsinitrd /boot/initrd-`uname -r` | grep virtio-rwxr--r-- 1 root root 19248 Jun 22 2012 lib/modules/2.6.32-279.el6.x86_64/kernel/drivers/scsi/virtio_scsi.ko-rwxr--r-- 1 root root 23856 Jun 22 2012 lib/modules/2.6.32-279.el6.x86_64/kernel/drivers/block/virtio_blk.kodrwxr-xr-x 2 root root 0 Jul 12 14:53 lib/modules/2.6.32-279.el6.x86_64/kernel/drivers/virtio-rwxr--r-- 1 root root 15848 Jun 22 2012 lib/modules/2.6.32-279.el6.x86_64/kernel/drivers/virtio/virtio_ring.ko-rwxr--r-- 1 root root 20008 Jun 22 2012 lib/modules/2.6.32-279.el6.x86_64/kernel/drivers/virtio/virtio_pci.ko-rwxr--r-- 1 root root 12272 Jun 22 2012 lib/modules/2.6.32-279.el6.x86_64/kernel/drivers/virtio/virtio.ko-rwxr--r-- 1 root root 38208 Jun 22 2012 lib/modules/2.6.32-279.el6.x86_64/kernel/drivers/net/virtio_net.ko 如果误将built-in形式存在内核中的驱动添加到initrd或initramfs文件中,不会影响云服务器正常使用,这里全写进去只是为了修改方便,但是使用lsinitrd命令无法检查到。可使用如下方法确定这些驱动是否以built-in形式存在内核中,例如: cat /boot/config-`uname -r` | grep CONFIG_VIRTIO | grep y cat /boot/config-`uname -r` | grep CONFIG_XEN | grep y 当操作系统版本为SUSE 12 SP1时,操作步骤如下。 执行以下命令,打开“/etc/dracut.conf”文件。 vi /etc/dracut.conf 按“i”进入编辑模式,在“add-drivers”项中添加xen-pv和virtio的驱动(具体格式要根据操作系统本身的要求来决定)。 [root@CTU10000xxxxx ~]# vi /etc/dracut.conf # additional kernel modules to the defaultadd_drivers+="ata_piix ata_generic xen_vnif xen_vbd xen_platform_pci virtio_blk virtio_scsi virtio_net virtio_pci virtio_ring virtio" 按“Esc”后,输入:wq,按“Enter”。 保存设置并退出“/etc/dracut.conf”文件。 执行以下命令,重新生成initrd。 dracut -f /boot/initramfs-文件名 如果引导的虚拟文件系统不是默认的initramfs,则命令为:dracut -f 实际使用的initramfs文件名或者initrd文件名。“实际使用的initramfs文件名或者initrd文件名”可在grub.cfg配置(“/boot/grub/grub.cfg”或“/boot/grub2/grub.cfg”或“/boot/grub/grub.conf”,具体路径根据OS不同会有所不同)中获取。 如果引导的虚拟文件系统是initramfs,执行以下命令,检查是否已经成功装载了原生的XEN和KVM驱动相应模块。 lsinitrd /boot/initramfs-`uname -r`.img | grep xen lsinitrd /boot/initramfs-`uname -r`.img | grep virtio 如果引导的虚拟文件系统是initrd,执行如下命令,检查是否已经成功装载了原生的XEN和KVM驱动相应模块。 lsinitrd /boot/initrd-`uname -r` | grep xen lsinitrd /boot/initrd-`uname -r` | grep virtio 当操作系统版本高于SUSE 12 SP1或高于openSUSE 13版本时,操作步骤如下。 以SUSE Linux Enterprise Server 12 SP2 (x86_64)为例,如下所示: 执行以下命令,打开“/etc/dracut.conf”文件。 vi /etc/dracut.conf 按“i”进入编辑模式,在“add_drivers”项中添加xen-pv和virtio的驱动(具体格式要根据操作系统本身的要求来决定)。 [root@CTU10000xxxxx ~]# vi /etc/dracut.conf # additional kernel modules to the defaultadd_drivers+="ata_piix ata_generic xen-blkfront xen-netfront virtio_blk virtio_scsi virtio_net virtio_pci virtio_ring virtio" 按“Esc”后,输入:wq,按“Enter”。 保存设置并退出“/etc/dracut.conf”文件。 执行以下命令,重新生成initrd。 dracut -f /boot/initramfs-文件名 如果引导的虚拟文件系统不是默认的initramfs,则命令为:dracut -f 实际使用的initramfs文件名或者initrd文件名。“实际使用的initramfs文件名或者initrd文件名”可在grub.cfg配置(“/boot/grub/grub.cfg”或“/boot/grub2/grub.cfg”或“/boot/grub/grub.conf”,具体路径根据OS不同会有所区别)中获取。 如果引导的虚拟文件系统是initramfs,执行以下命令,检查是否已经成功装载了原生的XEN和KVM驱动相应模块。 lsinitrd /boot/initramfs-`uname -r`.img | grep xen lsinitrd /boot/initramfs-`uname -r`.img | grep virtio 如果引导的虚拟文件系统是initrd ,执行如下命令,检查是否已经成功装载了原生的XEN和KVM驱动相应模块。 lsinitrd /boot/initrd-`uname -r` | grep xen lsinitrd /boot/initrd-`uname -r` | grep virtio 以引导的虚拟文件系统是initrd为例,回显信息如下所示: sluo-ecs-30dc:~ # lsinitrd /boot/initrd-`uname -r` | grep xen-rw-r--r-- 1 root root 69575 Oct 26 2016 lib/modules/4.4.21-69-default/kernel/drivers/block/xen-blkfront.ko-rw-r--r-- 1 root root 53415 Oct 26 2016 lib/modules/4.4.21-69-default/kernel/drivers/net/xen-netfront.kodrwxr-xr-x 2 root root 0 Sep 28 10:21 lib/modules/4.4.21-69-default/updates/pvdriver/xen-hcall-rwxr-xr-x 1 root root 8320 Sep 28 10:21 lib/modules/4.4.21-69-default/updates/pvdriver/xen-hcall/xen-hcall.kosluo-ecs-30dc:~ # lsinitrd /boot/initrd-`uname -r` | grep virtio-rw-r--r-- 1 root root 29335 Oct 26 2016 lib/modules/4.4.21-69-default/kernel/drivers/block/virtio_blk.ko-rw-r--r-- 1 root root 57007 Oct 26 2016 lib/modules/4.4.21-69-default/kernel/drivers/net/virtio_net.ko-rw-r--r-- 1 root root 32415 Oct 26 2016 lib/modules/4.4.21-69-default/kernel/drivers/scsi/virtio_scsi.kodrwxr-xr-x 2 root root 0 Sep 28 10:21 lib/modules/4.4.21-69-default/kernel/drivers/virtio-rw-r--r-- 1 root root 19623 Oct 26 2016 lib/modules/4.4.21-69-default/kernel/drivers/virtio/virtio.ko-rw-r--r-- 1 root root 38943 Oct 26 2016 lib/modules/4.4.21-69-default/kernel/drivers/virtio/virtio_pci.ko-rw-r--r-- 1 root root 24431 Oct 26 2016 lib/modules/4.4.21-69-default/kernel/drivers/virtio/virtio_ring.ko 如果误将built-in形式存在内核中的驱动添加到initrd或initramfs文件中,不会影响云服务器正常使用,这里全写进去只是为了修改方便,但是使用lsinitrd命令无法检查到。可使用如下方法确定这些驱动是否以built-in形式存在内核中,例如: cat /boot/config-`uname -r` | grep CONFIG_VIRTIO | grep y cat /boot/config-`uname -r` | grep CONFIG_XEN | grep y
  • Ubuntu/Debian系列操作系统相关操作 执行以下命令,打开“modules”文件。 vi /etc/initramfs-tools/modules 按“i”进入编辑模式,修改“/etc/initramfs-tools/modules”文件,添加xen-pv以及virtio的驱动(具体格式要根据操作系统本身的要求来决定)。 [root@CTU10000xxxxx ~]#vi /etc/initramfs-tools/modules …… # Examples: # # raid1 # sd_mOd xen-blkfrontxen-netfrontvirtio_blkvirtio_scsivirtio_netvirtio_pcivirtio_ringvirtio 按“Esc”后,输入:wq,按“Enter”。保存设置并退出“/etc/initramfs-tools/modules”文件。 执行以下命令,重新生成initrd。 update-initramfs -u 执行以下命令,检查是否已经成功装载了原生的XEN和KVM驱动相应模块。 lsinitramfs /boot/initrd.img-`uname -r` |grep xen lsinitramfs /boot/initrd.img-`uname -r` |grep virtio [root@ CTU10000xxxxx home]# lsinitramfs /boot/initrd.img-`uname -r` |grep xen lib/modules/3.5.0-23-generic/kernel/drivers/net/ethernet/qlogic/netxen lib/modules/3.5.0-23-generic/kernel/drivers/net/ethernet/qlogic/netxen/netxen_nic.ko lib/modules/3.5.0-23-generic/kernel/drivers/net/xen-netback lib/modules/3.5.0-23-generic/kernel/drivers/net/xen-netback/xen-netback.ko lib/modules/3.5.0-23-generic/kernel/drivers/block/xen-blkback lib/modules/3.5.0-23-generic/kernel/drivers/block/xen-blkback/xen-blkback.ko [root@ CTU10000xxxxx home]# lsinitramfs /boot/initrd.img-`uname -r` |grep virtio lib/modules/3.5.0-23-generic/kernel/drivers/scsi/virtio_scsi.ko 如果误将built-in形式存在内核中的驱动添加到initrd或initramfs文件中,不会影响云服务器正常使用,这里全写进去只是为了修改方便,但是使用lsinitrd命令无法检查到。可使用如下方法确定这些驱动是否以built-in形式存在内核中,例如: [root@ CTU10000xxxxx home]# cat /boot/config-`uname -r` | grep CONFIG_VIRTIO | grep yCONFIG_VIRTIO_BLK=yCONFIG_VIRTIO_NET=yCONFIG_VIRTIO=yCONFIG_VIRTIO_RING=yCONFIG_VIRTIO_PCI=yCONFIG_VIRTIO_MMIO_CM DLI NE_DEVI CES =y[root@ CTU10000xxxxx home]# cat /boot/config-`uname -r` | grep CONFIG_XEN | grep yCONFIG_XEN_BLKDEV_FRONTEND=yCONFIG_XEN_NETDEV_FRONTEND=y
  • CentOS/EulerOS系列操作系统相关操作 执行以下命令,打开“/etc/dracut.conf”文件。 vi /etc/dracut.conf 按“i”进入编辑模式,在“add_drivers”项中添加xen-pv和virtio的驱动(具体格式要根据操作系统本身的要求来决定)。 [root@CTU10000xxxxx ~]# vi /etc/dracut.conf # additional kernel modules to the default add_drivers+="xen-blkfront xen-netfront virtio_blk virtio_scsi virtio_net virtio_pci virtio_ring virtio" …… 按“Esc”后,输入:wq,按“Enter”。 保存设置并退出“/etc/dracut.conf”文件。 执行以下命令,重新生成initrd。 dracut -f /boot/initramfs-2.6.32-573.8.1.el6.x86_64.img 如果引导的虚拟文件系统不是默认的initramfs,则命令为:dracut -f 实际使用的initramfs文件名或者initrd文件名。“实际使用的initramfs文件名或者initrd文件名”可在grub.cfg配置(“/boot/grub/grub.cfg”或“/boot/grub2/grub.cfg”或“/boot/grub/grub.conf”,具体路径根据OS不同会有所区别)中获取。 如果引导的虚拟文件系统是initramfs,执行以下命令,检查是否已经成功装载了原生的XEN和KVM驱动相应模块。 lsinitrd /boot/initramfs-`uname -r`.img | grep xen lsinitrd /boot/initramfs-`uname -r`.img | grep virtio 如果引导的虚拟文件系统是initrd,执行如下命令,检查是否已经成功装载了原生的XEN和KVM驱动相应模块。 lsinitrd /boot/initrd-`uname -r` | grep xen lsinitrd /boot/initrd-`uname -r` | grep virtio 以引导的虚拟文件系统是initramfs为例,回显信息如下所示: [root@CTU10000xxxxx home]# lsinitrd /boot/initramfs-`uname -r`.img | grep xen -rwxr--r-- 1 root root 54888 Jul 16 17:53 lib/modules/2.6.32-573.8.1.el6.x86_64/kernel/drivers/block/xen-blkfront.ko -rwxr--r-- 1 root root 45664 Jul 16 17:53 lib/modules/2.6.32-573.8.1.el6.x86_64/kernel/drivers/net/xen-netfront.ko [root@CTU10000xxxxx home]# lsinitrd /boot/initramfs-`uname -r`.img | grep virtio -rwxr--r-- 1 root root 23448 Jul 16 17:53 lib/modules/2.6.32-573.8.1.el6.x86_64/kernel/drivers/block/virtio_blk.ko -rwxr--r-- 1 root root 50704 Jul 16 17:53 lib/modules/2.6.32-573.8.1.el6.x86_64/kernel/drivers/net/virtio_net.ko -rwxr--r-- 1 root root 28424 Jul 16 17:53 lib/modules/2.6.32-573.8.1.el6.x86_64/kernel/drivers/scsi/virtio_scsi.ko drwxr-xr-x 2 root root 0 Jul 16 17:53 lib/modules/2.6.32-573.8.1.el6.x86_64/kernel/drivers/virtio -rwxr--r-- 1 root root 14544 Jul 16 17:53 lib/modules/2.6.32-573.8.1.el6.x86_64/kernel/drivers/virtio/virtio.ko -rwxr--r-- 1 root root 21040 Jul 16 17:53 lib/modules/2.6.32-573.8.1.el6.x86_64/kernel/drivers/virtio/virtio_pci.ko -rwxr--r-- 1 root root 18016 Jul 16 17:53 lib/modules/2.6.32-573.8.1.el6.x86_64/kernel/drivers/virtio/virtio_ring.ko 如果误将built-in形式存在内核中的驱动添加到initrd或initramfs文件中,不会影响云服务器正常使用,这里全写进去只是为了修改的方便,但是使用lsinitrd命令无法检查到。可使用如下方法确定这些驱动是否以built-in形式存在内核中,例如: cat /boot/config-`uname -r` | grep CONFIG_VIRTIO | grep y cat /boot/config-`uname -r` | grep CONFIG_XEN | grep y
  • 操作步骤 请根据操作系统版本,修改不同的配置文件: CentOS/EulerOS系列操作系统 以CentOS 7.0为例,请修改“/etc/dracut.conf”文件,在add_drivers项中添加xen-pv以及virtio的驱动(xen-pv驱动:xen-blkfront、xen-netfront;virtio驱动:virtio_blk、virtio_scsi 、virtio_net、virtio_pci、virtio_ring、virtio)。驱动名之间以空格隔开,保存并退出“/etc/dracut.conf”文件,执行dracut -f命令,重新生成initrd。 操作方法可参见CentOS/EulerOS系列操作系统相关操作。 Ubuntu/Debian系列系统 请修改“/etc/initramfs-tools/modules”文件,添加xen-pv以及virtio的驱动(xen-pv驱动:xen-blkfront、xen-netfront;virtio驱动:virtio_blk、virtio_scsi 、virtio_net、virtio_pci、virtio_ring、virtio)。驱动名之间以空格隔开,保存并退出“/etc/initramfs-tools/modules”文件,执行update-initramfs -u命令,重新生成initrd。 操作方法可参见Ubuntu/Debian系列操作系统相关操作。 SUSE和openSUSE系列系统,根据操作系统版本不同,修改不同的配置文件。 当操作系统版本低于SUSE 12 SP1或低于openSUSE 13时,请修改“/etc/sysconfig/kernel”文件,在INITRD_MODULES=""添加xen-pv以及virtio的驱动(xen-pv驱动:xen_vnif、xen_vbd、xen_platform_pci;virtio驱动:virtio_blk、virtio_scsi 、virtio_net、virtio_pci、virtio_ring、virtio)。驱动名之间以空格隔开,执行mkinitrd命令,重新生成initrd。 当操作系统版本为SUSE 12 SP1时,修改“/etc/dracut.conf”文件,在add_drivers项中添加xen-pv以及virtio的驱动(xen-pv驱动:xen_vnif、xen_vbd、xen_platform_pci;virtio驱动:virtio_blk、virtio_scsi、virtio_net、virtio_pci、virtio_ring、virtio)。驱动名之间以空格隔开,执行命令dracut -f,重新生成initrd。 当操作系统版本高于SUSE 12 SP1或高于openSUSE 13版本时,修改“/etc/dracut.conf”文件,在add_drivers项中添加xen-pv和virtio的驱动(xen-pv驱动:xen-blkfront、xen-netfront;virtio驱动:virtio_blk、virtio_scsi 、virtio_net、virtio_pci、virtio_ring、virtio)。驱动名之间以空格隔开,保存并退出“/etc/dracut.conf”文件,执行dracut -f命令,重新生成initrd。 操作方法可参SUSE/openSUSE系列操作系统相关操作。 SUSE系列操作系统首先应确认OS是否已经安装了xen-kmp包(xen-pv的驱动包),执行以下命令: rpm -qa |grep xen-kmp 回显类似如下: xen-kmp-default-4.2.2_04_3.0.76_0.11-0.7.5 如果没有安装xen-kmp的包,请到ISO装机文件中获取并安装。 如果误将built-in形式的驱动添加到initrd或initramfs文件中,不会影响云服务器正常使用。
  • 创建过程 私有镜像创建过程如图1所示。 图1 Windows系统盘镜像创建过程 步骤说明如下: 准备符合平台要求的外部镜像文件,请参考准备镜像文件(Windows)。 上传外部镜像文件到OBS个人桶中,请参考上传镜像文件(Windows)。 通过管理控制台选择上传的镜像文件,并将镜像文件注册为私有镜像,请参考注册镜像(Windows)。 私有镜像注册成功后,使用该镜像创建新的云服务器,请参考使用镜像创建弹性云服务器(Windows)。
  • 创建方式导航 私有镜像是包含操作系统、预装的公共应用以及用户私有应用的镜像,仅用户个人可见。私有镜像包括系统盘镜像、数据盘镜像和整机镜像,由现有运行的云服务器创建而来,或由外部导入而来。 创建镜像不会影响云服务器上当前业务的运行,不会造成数据丢失,请放心使用。 本章介绍以下创建私有镜像的方法: 通过云服务器创建Windows系统盘镜像 通过云服务器创建Linux系统盘镜像 通过外部镜像文件创建Windows系统盘镜像 通过外部镜像文件创建Linux系统盘镜像 创建裸金属服务器系统盘镜像 通过数据盘创建数据盘镜像 通过外部镜像文件创建数据盘镜像 通过云服务器创建整机镜像 通过云服务器备份创建整机镜像 通过云备份创建整机镜像 通过ISO文件创建Windows系统盘镜像 通过ISO文件创建Linux系统盘镜像 图1 创建私有镜像全景图 系统盘镜像创建成功后,您可以使用镜像创建云服务器或者为已有云服务器切换操作系统。 父主题: 创建私有镜像
  • 创建过程 私有镜像创建过程如图1所示。 图1 Linux系统盘镜像创建过程 步骤说明如下: 准备符合平台要求的外部镜像文件,请参考准备镜像文件(Linux)。 上传外部镜像文件到OBS个人桶中,请参考上传镜像文件(Linux)。 通过管理控制台选择上传的镜像文件,并将镜像文件注册为私有镜像,请参考注册镜像(Linux)。 私有镜像注册成功后,使用该镜像创建新的云服务器,请参考使用镜像创建弹性云服务器(Linux)。
  • 操作步骤 执行以下命令,查看网络规则目录下的文件。 ls -l /etc/udev/rules.d 执行以下命令,删除网络规则目录下,文件名同时包含persistent和net的规则文件。 例如: rm /etc/udev/rules.d/30-net_persistent-names.rules rm /etc/udev/rules.d/70-persistent-net.rules 以上命令中斜体部分会根据用户的实际环境有区别。 对于CentOS 6系列的镜像,为避免网卡名发生漂移,您需要创建一个空的rules配置文件。 示例: touch /etc/udev/rules.d/75-persistent-net-generator.rules //命令中斜体部分会根据用户的实际环境有区别 清理网络规则。 若操作系统使用initrd系统映像,请执行以下操作: 执行以下命令,查看initrd开头且default结尾的initrd映像文件,是否存在同时包含persistent和net的网络设备规则文件(以下命令中斜体内容请以实际操作系统版本为准)。 lsinitrd /boot/initrd-2.6.32.12-0.7-default |grep persistent|grep net 否,结束。 是,执行下一步。 执行以下命令,备份initrd映像文件(以下命令中斜体内容请以实际操作系统版本为准)。 cp /boot/initrd-2.6.32.12-0.7-default /boot/initrd-2.6.32.12-0.7-default_bak 执行以下命令,重新生成initrd映像文件。 mkinitrd 若操作系统使用initramfs系统映像(如Ubuntu),请执行以下操作: 执行以下命令,查看initrd开头且generic结尾的initramfs映像文件,是否存在同时包含persistent和net的网络设备规则文件。 lsinitramfs /boot/initrd.img-3.19.0-25-generic|grep persistent|grep net 否,无需清理网络规则。 是,执行下一步。 执行以下命令,备份initrd映像文件。 cp /boot/initrd.img-3.19.0-25-generic /boot/initrd.img-3.19.0-25-generic_bak 执行以下命令,重新生成initramfs映像文件。 update-initramfs -u
  • 前提条件 请使用Administrator用户执行Sysprep。 一个全新激活的Windows云服务器每次最多执行一次Sysprep,不能连续多次执行。 如果云服务器是由镜像文件创建而来,那么仅支持使用原镜像自带的Sysprep版本,且Sysprep必须始终从“%WINDIR%\system32\sysprep”目录运行。 Windows必须保证是正版激活状态,并且必须保证剩余Windows重置计数大于等于1,否则不能执行Sysprep封装。 在Windows命令行中输入以下命令,在“Windows Script Host”弹出窗中查看还能执行Sysprep的次数。 slmgr.vbs /dlv 当“剩余Windows重置计数”的值为0时,无法执行Sysprep。 图1 Windows Script Host
  • 操作步骤 进入Cloudbase-Init工具安装路径。 以Cloudbase-Init工具安装在“C:\Program Files\Cloudbase Solutions\”目录下为例。请切换至C盘根目录下,执行以下命令,进入安装目录。 cd C:\Program Files\Cloudbase Solutions\Cloudbase-Init\conf 执行以下命令,对Windows系统进行封装。 C:\Windows\System32\sysprep\sysprep.exe /generalize /oobe /unattend:Unattend.xml 请务必在执行该命令时,包含“/unattend:Unattend.xml”,否则您当前云服务器的用户名密码等重要配置信息会被重置,后续使用该Windows私有镜像创建的云服务器启动后仍然需要手动执行操作系统设置。 执行完该命令后,云服务器会自动关机。请在关机后使用该云服务器创建镜像,可以保证后续使用该镜像创建的云服务器SID唯一。如果重新启动已经执行过Sysprep操作的Windows云服务器,则执行的Sysprep操作仅对当前云服务器生效,创建镜像前需要重新执行Sysprep操作。 对于Windows Server 2012以及Windows Server 2012 R2操作系统,当云服务器执行完Sysprep操作后,云服务器的Administrator帐号密码会被清除,请您登录云服务器后重新手动设置Administrator帐号的密码,此时在管理控制台界面中设置的云服务器密码将无效,请您妥善保管重新设置的密码。 使用的Windows操作系统需要采用域帐号登录时,请务必在创建私有镜像前执行Sysprep操作。执行Sysprep操作带来的影响请参考“Windows操作系统制作私有镜像为什么要执行Sysprep操作?”。 Windows云服务器中的Cloudbase-Init帐户为Cloudbase-Init代理程序的内置帐户,用于云服务器启动的时候获取元数据并执行相关配置。如果用户修改、删除此帐户或者卸载Cloudbase-Init代理程序会导致由此云服务器创建的Windows私有镜像所生成新的云服务器初始化的自定义信息注入失败。因此,不建议修改或删除Cloudbase-Init帐户。 图2 执行Sysprep操作
  • GPU驱动 如果这个私有镜像用于创建GPU加速型云服务器,需要在镜像中安装合适的GPU驱动来获得相应的GPU加速能力。GPU加速型实例中配备的NVIDIA Tesla GPU支持两种类型的驱动:Tesla驱动和GRID/vGPU驱动。 如果需要使用OpenGL/DirectX/Vulcan等图形加速能力,则需要安装GRID/vGPU驱动并自行配置使用GRID License。此外,GRID/vGPU驱动配合vDWS类型License,也支持CUDA,用来满足既需要计算加速也需要图形加速的场景。 如果需要使用NVIDIA CUDA计算加速能力,则需要安装Tesla驱动。 表1 GRID驱动安装方法 实例类型 安装方法 G1型 请参见“下载GRID驱动及License软件包”。 G3型 请参见“下载GRID驱动及License软件包”。
  • 附2:执行qemu-img-hw常见报错 问题描述: 执行qemu-img-hw命令时回显信息如下: ./qemu-img-hw: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./qemu-img-hw) 解决方法: 执行strings /lib64/libc.so.6 | grep GLIBC查看GLIBC版本,若由于版本过低造成,可安装高版本即可。依次执行下述命令: wget http://ftp.gnu.org/gnu/glibc/glibc-2.15.tar.gz wget http://ftp.gnu.org/gnu/glibc/glibc-ports-2.15.tar.gz tar -xvf glibc-2.15.tar.gz tar -xvf glibc-ports-2.15.tar.gz mv glibc-ports-2.15 glibc-2.15/ports mkdir glibc-build-2.15 cd glibc-build-2.15 ../glibc-2.15/configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin 此命令若报错“configure: error: no acceptable C compiler found in $PATH”,请先执行:yum -y install gcc make make install 问题描述: 执行qemu-img-hw命令时回显信息如下: ./qemu-img-hw: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory 解决方法:请先执行命令yum install libaio
  • 附1:qemu-img-hw常用命令 镜像文件格式转换:qemu-img-hw convert -p -O {目标镜像格式} {待转换镜像文件} {目标镜像文件} 上述命令中各参数对应的说明如下: -p:标识转换的进度条 -O:(必须是大写)后面的参数为转换出来的镜像格式 + 源镜像文件名称 + 目标镜像文件名称 示例:将qcow2格式转为zvhd2格式 qemu-img-hw convert -p -O zvhd2 test.qcow2 test.zvhd2 查询镜像文件信息:qemu-img-hw info {镜像文件} 示例:qemu-img-hw info test.zvhd2 查看帮助:qemu-img-hw -help
  • 前提条件 云服务器的状态为“运行中”。 需保证C盘可写入,且剩余空间大于300MB。 云服务器使用的VPC网络DHCP不能禁用。 云服务器网络正常通行。 云服务器安全组出方向规则满足如下要求: 协议:TCP 端口范围:80 远端地址:169.254.0.0/16 如果您使用的是默认安全组出方向规则,则已经包括了如上要求,可以正常初始化。默认安全组出方向规则为: 协议:ALL 端口范围:ALL 远端地址:0.0.0.0/16
  • 操作步骤 检查云服务器是否已安装密码重置插件CloudResetPwdAgent和CloudResetPwdUpdateAgent。检查方法如下: 查看任务管理器,如果找到cloudResetPwdAgent服务和cloudResetPwdUpdateAgent服务,如图1所示,表示云服务器已安装密码重置插件。 图1 判断是否已安装插件 是,结束。 否,执行2。 下载一键式重置密码插件。 云服务器需要绑定弹性公网IP才能自动更新一键式重置密码插件。 下载并解压软件包CloudResetPwdAgent.zip。 下载地址:https://cn-south-1-cloud-reset-pwd.obs.cn-south-1.myhuaweicloud.com/windows/reset_pwd_agent/CloudResetPwdAgent.zip 安装一键式重置密码插件。 依次双击“CloudResetPwdAgent.Windows”和“CloudResetPwdUpdateAgent.Windows”文件夹下的“setup.bat”,安装密码重置插件。 查看任务管理器,检查密码重置插件是否安装成功。 如果在任务管理器中查找到了cloudResetPwdAgent服务和cloudResetPwdUpdateAgent服务,表示安装成功,否则安装失败。 如果密码重置插件安装失败,请检查安装环境是否符合要求,并重试安装操作。
  • 操作场景 本节指导您基于Windows操作系统环境完成镜像文件快速导入,推荐使用Windows系统本地PC作为转换镜像格式和生成位表文件的环境。 Windows操作系统环境下,必须使用开源qemu-img工具进行镜像格式转换,qemu-img支持vhd、vmdk、qcow2、raw、vhdx、qcow、vdi或qed格式的镜像的相互转换,因此需要转换为raw格式,再使用CreateMF.jar工具生成位表文件。
  • 操作场景 为了保证使用私有镜像创建的新云服务器可以实现一键式重置密码功能(参见“在控制台重置云服务器密码”了解更多),建议您在创建私有镜像前安装密码重置插件CloudResetPwdAgent。 CloudResetPwdAgent安装包中包含CloudResetPwdAgent和CloudResetPwdUpdateAgent,请在下载并解压CloudResetPwdAgent安装包后依次安装。 使用公共镜像创建的云服务器,默认已经安装密码重置插件,不需要执行安装操作。 使用外部镜像文件创建的云服务器,请按照指导安装密码重置插件。
共100000条