华为云用户手册

  • 在子账户做的私有镜像,主账户创建云服务器的时候可以选择到吗? 可以。 子账户做的私有镜像,主账户和其他子账户(如果有)均可以看到。 如果该私有镜像为系统盘镜像或整机镜像,主账户和其他子账户创建云服务器时,选择“私有镜像”,然后在下拉列表中可以选择该镜像。 如果该私有镜像为数据盘镜像,主账户和其他子账户创建云硬盘时,选择数据源为“从镜像创建”,然后在弹出的对话框中选择该镜像。 另外,主账户创建的私有镜像,所有子账户都可以看到。
  • 创建成功的整机镜像在哪里查看数据盘信息? 整机镜像创建成功后,镜像列表和详情中只显示系统盘信息(即“磁盘容量”参数),数据盘信息可以在云服务器备份或云备份中查看。究竟在云服务器备份中查看,还是在云备份中查看,取决于整机镜像的创建方式。 以在云备份中查看为例,方法如下: 在私有镜像列表中,单击整机镜像名称。 进入镜像详情页面。 找到“来源”参数,单击其后的备份ID。 进入云备份详情页面。 图1 镜像详情 单击“磁盘级备份”页签,列表中展示了系统盘和数据盘的详细信息。 图2 磁盘级备份
  • 华为云提供的公共镜像能否直接下载到本地,怎么操作? 暂不支持直接下载公共镜像,您可以先通过公共镜像创建云服务器,再将云服务器制作为私有镜像,然后导出私有镜像至个人OBS桶,再下载至本地。 参考链接如下: 通过云服务器创建系统盘镜像 导出镜像 Windows、SUSE、Red Hat、Ubuntu、Oracle Linux操作系统的公共镜像及此类公共镜像创建的私有镜像,均不支持导出。 若您使用Windows、SUSE、Red Hat、Ubuntu、Oracle Linux私有镜像文件(非来源于华为云提供的公共镜像)通过线下导入的方式创建云服务器,基于该云服务器制作的系统盘镜像支持导出。 父主题: 镜像导出类
  • 问题描述弹性云服务器弹性云服务器弹性云服务器 Windows操作系统镜像执行Sysprep之后,使用该镜像创建的弹性云服务器启动时出现如下图的提示信息: 图1 提示信息 且弹出如下提示信息: Windows无法分析或处理 pass [ specialize ] 的无人参与应答文件。应答文件中指定的设置无法应用。处理组件设置时检测到错误 [ Microsoft-Windows-Shell-Setup ]。 单击提示框的“确定”,弹出如下提示信息: 计算机意外地重新启动或遇到错误。Windows安装无法继续。若要安装Windows,请单击“确定”重新启动计算机,然后重新启动安装。 在“C:\Windows\Panther”路径下打开“setupact.log”文件,查看云服务器日志中是否存在如下信息。 图2 查看云服务器日志
  • 处理方法 使用公共镜像创建弹性云服务器(由于执行Sysprep有次数限制,建议您使用公共镜像重新创建弹性云服务器)。 您可以选择新建“Unattend.xml”文件或者修改系统自带的“Unattend.xml”。 你可以自行选择新建“Unattend.xml”文件(如果使用新建“Unattend.xml”文件,请确保执行Sysprep时使用的是新建的“Unattend.xml”文件),内容及书写规范请参考微软官网链接: https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/update-windows-settings-and-scripts-create-your-own-answer-file-sxs https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/sysprep--system-preparation--overview 修改“C:\Program Files\Cloudbase Solutions\Cloudbase-Init\conf”目录下的“Unattend.xml”文件,删除“RunSynchronous”版块。 图3 删除RunSynchronous版块 执行Sysprep。详细操作请参考“执行Sysprep”章节。 如果使用自行新建的“Unattend.xml”文件,执行Sysprep时请注意对应的“Unattend.xml”路径,确保使用的是新建的“Unattend.xml”文件。 使用执行Sysprep后的弹性云服务器重新创建镜像。
  • Linux操作系统(手动配置启用IPv6) CentOS 6.x和Debian操作系统的云服务器内部配置IPv6自动获取功能之后,将该云服务器制作为私有镜像,使用该镜像在非IPv6网络环境中创建云服务器时,由于等待获取IPv6地址超时,导致云服务器启动较慢,您可以参考设置云服务器获取IPv6地址超时时间设置获取IPv6地址超时时间为30s,然后再重新制作私有镜像。 执行如下命令,查看当前云服务器是否启用IPv6。 ip addr 如果没有开启IPv6协议栈,则只能看到IPv4地址,如下图所示,请参考2先开启IPv6协议栈。 图19 未开启IPv6协议栈 如果已开启IPv6协议栈,则可以看到LLA地址(fe80开头)。 图20 已开启IPv6协议栈 如果已开启IPv6协议栈并且已获取到IPv6地址,则会看到如下地址: 图21 已开启IPv6协议栈并且已获取到IPv6地址 Linux公共镜像均已开启IPv6协议栈,如图20所示; 开启Linux云服务器IPv6协议栈。 执行如下命令,确认内核是否支持IPv6协议栈。 sysctl -a | grep ipv6 如果有输出信息,表示内核支持IPv6协议栈。 如果没有任何输出,说明内核不支持IPv6协议栈,需要执行2.b加载IPv6模块。 执行以下命令,加载IPv6模块。 modprobe ipv6 修改“/etc/sysctl.conf”配置文件,增加如下配置: net.ipv6.conf.all.disable_ipv6=0 保存配置并退出,然后执行如下命令,加载配置。 sysctl -p 手动配置启用IPv6。操作系统不同,步骤有所差别。 Ubuntu 18.04/20.04操作系统 云服务器配置 动态获取IPv6。 执行以下命令,进入“/etc/netplan/”。 cd /etc/netplan 执行以下命令,查询配置文件名。 ls 图22 查询配置文件名 执行以下命令,编辑“01-network-manager-all.yaml”配置文件。 vi 01-network-manager-all.yaml 在“01-network-manager-all.yaml”下增加如下内容,注意yaml文件格式及缩进: ethernets: eth0: dhcp6: true 图23 修改结果 修改完成后保存退出。 执行以下命令,使更改生效。 sudo netplan apply Ubuntu 22.04操作系统云服务器配置动态获取IPv6。 执行以下命令,进入“/etc/netplan/”。 cd /etc/netplan 执行以下命令,查询配置文件名。 ls 图24 查询配置文件名 执行以下命令,编辑“01-netcfg.yaml”配置文件。 vi 01-netcfg.yaml 在“01-netcfg.yaml”中增加如下内容,注意yaml文件格式及缩进: ethernets: eth0: dhcp6: true 图25 修改结果 修改完成后保存退出。 执行以下命令,使更改生效。 sudo netplan apply 执行以下命令,编辑“/etc/NetworkManager/NetworkManager.conf”文件。 vi /etc/NetworkManager/NetworkManager.conf 在“NetworkManager.conf”中增加如下内容,注意文件格式及缩进: [main] plugins=ifupdown,keyfile dhcp=dhclient [ifupdown] managed=true [device] wifi.scan-rand-mac-address=no 图26 修改结果 执行以下命令,使配置生效。 systemctl restart NetworkManager Debian操作系统云服务器配置动态获取IPv6。 编辑“/etc/network/interfaces”文件,使之包含以下内容: auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp iface eth0 inet6 dhcp pre-up sleep 3 如果有多个网卡,则在“/etc/network/interfaces”文件中,增加对应网卡的配置,以eth1为例,需要增加: auto eth1 iface eth1 inet dhcp iface eth1 inet6 dhcp pre-up sleep 3 执行如下命令重启网络服务。 service networking restart 如果将网卡进行down/up操作之后无法获取IPv6地址,也可以通过此命令重启网络服务。 执行步骤1检查是否已开启动态IPv6。 CentOS/EulerOS/Fedora操作系统云服务器配置动态获取IPv6。 编辑主网卡配置文件“/etc/sysconfig/network-scripts/ifcfg-eth0”。 补充如下配置项: IPV6INIT=yes DHCPV6C=yes 编辑“/etc/sysconfig/network”,按如下所示添加或修改以下行。 NETWORKING_IPV6=yes CentOS 6系列从网卡需要编辑对应的配置文件,以eth1为例,编辑“/etc/sysconfig/network-scripts/ifcfg-eth1”。 补充如下配置项: IPV6INIT=yes DHCPV6C=yes CentOS 6.3系统中默认ip6tables会过滤dhcpv6-client请求,所以CentOS 6.3除了需要编辑“ifcfg-eth*”文件外,还需要额外添加一条允许dhcpv6-client请求的ip6tables规则。操作如下: 执行以下命令,添加ip6tables规则。 ip6tables -A INPUT -m state --state NEW -m udp -p udp --dport 546 -d fe80::/64 -j ACCEPT 执行以下命令,保存ip6tables规则。 service ip6tables save 图27 命令示例 (可选配置)CentOS 7/CentOS 8系列需要将扩展网卡的IPv6 LLA地址模式修改为EUI64。 执行如下命令查看网卡信息。 nmcli con 图28 查看网卡信息 将eth1的IPv6 LLA地址模式按以下命令修改为EUI64: nmcli con modify "Wired connection 1" ipv6.addr-gen-mode eui64 CentOS不同系列,网卡信息存在差异,命令中的“Wired connection 1”需要根据实际查询的网卡信息的“NAME”列进行替换。 通过ifconfig命令将eth1进行down/up操作。 ifdown eth1 ifup eth1 重启网络服务。 CentOS 6系列执行以下命令,重启网络服务。 service network restart CentOS 7/EulerOS/Fedora系列执行以下命令,重启网络服务。 systemctl restart NetworkManager 执行步骤1检查是否已开启动态IPv6。 SUSE/openSUSE/CoreOS操作系统云服务器配置动态获取IPv6。 SUSE 11 SP4不支持IPv6自动获取。 SUSE 12 SP1、SUSE 12 SP2无需特殊配置。 openSUSE 13.2、openSUSE 42.2无需特殊配置。 CoreOS 10.10.5无需特殊配置。
  • 检查云服务器网络配置状态 执行以下命令,检查云服务器网络服务状态是否正常。 systemctl status NetworkManager 如果网络服务状态正常,则执行结果中服务处于active (running)状态且是enable的。 图29 网络服务器状态 执行以下命令,检查云服务器网卡获取IP地址的方式。 cat /etc/sysconfig/network-scripts/ifcfg-ethx “ethx”需替换为具体的网卡,例如eth0。 该命令以CentOS 7为例进行介绍。 图30 网卡获取IP地址的方式 如果BOOTPROTO字段的值为dhcp:表示云服务器网卡通过动态DHCP获取IP地址,继续执行3。 如果BOOTPROTO字段的值为static:表示云服务器网卡通过静态配置的方式设置网络,继续执行4。 如果云服务器网卡通过动态DHCP获取IP地址,则需要执行以下命令,确认DHCP相关进程是否正常。 systemctl status NetworkManager 回显中包含相关网卡的dhclient进程则代表正常。 图31 检查DHCP进程 如果云服务器网卡通过静态配置的方式设置网络,则需要执行以下命令,确认IP地址配置是否生效。 ip a 回显中IP配置字段是forever则代表配置已经生效。 图32 检查静态配置
  • 设置云服务器获取IPv6地址超时时间 CentOS 6.x和Debian操作系统的云服务器内部配置IPv6自动获取功能之后,将该云服务器制作为私有镜像,使用该镜像在非IPv6网络环境中创建云服务器时,由于等待获取IPv6地址超时,导致云服务器启动较慢,您可以参考本节操作设置获取IPv6地址超时时间为30s,然后再重新制作私有镜像。 CentOS 6.x: 执行以下命令编辑“dhclient.conf”文件。 vi /etc/dhcp/dhclient.conf 按“i”进入编辑模式,在文件中增加timeout属性。 timeout 30; 输入:wq保存后退出。 Debian 7.5: 执行以下命令编辑“networking”文件。 vi /etc/init.d/networking 按“i”进入编辑模式,增加延迟命令timeout,修改点如下图所示。 图33 修改点1 图34 修改点2 Debian 8.2.0/8.8.0 执行以下命令编辑“network-pre.conf”文件。 vi /lib/systemd/system/networking.service.d/network-pre.conf 按“i”进入编辑模式,在文件中增加timeout属性。 [Service] TimeoutStartSec=30 Debian 9.0 执行以下命令编辑“networking.service”文件。 vi /etc/system/system/network-online.target.wants/networking.service 按“i”进入编辑模式,将TimeoutStartSec=5min改为TimeoutStartSec=30。
  • 操作场景 IPv6的使用,可以有效弥补IPv4网络地址资源有限的问题。如果当前云服务器使用IPv4,那么启用IPv6后,云服务器可在双栈模式下运行,即云服务器可以拥有两个不同版本的IP地址:IPv4地址和IPv6地址,这两个IP地址都可以进行内网/公网访问。 按照约束与限制中的网络环境要求创建的云服务器,有些不能动态获取到IPv6地址,需要进行相关配置才行。如果云服务器使用的是公共镜像,则支持情况如下: Windows公共镜像默认已开启IPv6动态获取功能,无需配置,文中的Windows 2012操作系统和Windows 2008操作系统部分供您验证、参考。 Linux公共镜像开启动态获取IPv6功能时,需要先判断是否支持IPv6协议栈,再判断是否已开启动态获取IPv6。目前,所有Linux公共镜像均已支持IPv6协议栈。
  • Linux操作系统(自动配置启用IPv6) ipv6-setup-xxx工具能为开启IPv6协议栈的Linux操作系统自动配置动态获取IPv6地址。其中,xxx表示工具系列:rhel或debian。 您也可以参考Linux操作系统(手动配置启用IPv6)手动配置启用IPv6。 ipv6-setup-xxx工具运行时会自动重启网络服务,导致网络短暂不可用。 CentOS 6.x和Debian操作系统的云服务器内部配置IPv6自动获取功能之后,将该云服务器制作为私有镜像,使用该镜像在非IPv6网络环境中创建云服务器时,由于等待获取IPv6地址超时,导致云服务器启动较慢,您可以参考设置云服务器获取IPv6地址超时时间设置获取IPv6地址超时时间为30s,然后再重新制作私有镜像。
  • 约束与限制 请确保云服务器所在的子网已开启IPv6功能。 若云服务器所在子网未开启IPv6功能,需参考开启网卡IPv6功能进行开启,开启后不允许关闭。 请确保云服务器规格支持IPv6功能。 不同区域、不同可用区支持IPv6双栈的云服务器规格不同。E CS 是否支持IPv6双栈,请选择区域、可用区后,以控制台的显示为准,查询方法如下图所示。 图1 查询支持IPv6的ECS规格 当ECS规格列表中包含“IPv6”参数,且取值为“是”时,表示该ECS规格支持IPv6。 规格是否支持IPv6由“可用区”和“规格”两个参数决定。 如果设置“可用区”后,规格列表中不显示“IPv6”参数或参数值为“否”,表示当前规格不支持IPv6。 请确保创建云服务器时已选择“自动分配IPv6地址”。 图2 选择“自动分配IPv6地址” 云服务器启动之后动态插拔的网卡不支持IPv6地址动态获取功能。 仅弹性云服务器支持IPv6双栈,裸金属服务器不支持。 同一个网卡上,只能绑定一个IPv6地址。 云服务器网络配置需处于正常状态。 检查网络配置是否正常的方法,请参见检查云服务器网络配置状态。 如果网络配置不正常,请提交工单获取技术支持。
  • 操作导航 Windows系统:本文以Windows 2012版本、Windows 2008版本为例,介绍Windows操作系统启用IPv6的方法,如表1所示。 Linux系统:本文提供了自动配置、手动配置两种方式启用IPv6,推荐您使用自动配置方法,如表1所示。 对于CentOS 6.x和Debian操作系统,云服务器内部配置IPv6自动获取功能之后,将该云服务器制作为私有镜像,使用该镜像在非IPv6网络环境中创建云服务器时,由于等待获取IPv6地址超时,导致云服务器启动较慢,此时您可以参考设置云服务器获取IPv6地址超时时间操作。 表1 不同操作系统启用IPv6操作指导 操作系统 方式 操作指导 Windows 2012 自动配置启用IPv6 Windows 2012操作系统 Windows 2008 自动配置启用IPv6 Windows 2008操作系统 Linux 自动配置启用IPv6(推荐) Linux操作系统(自动配置启用IPv6) Linux 手动配置启用IPv6 Linux操作系统(手动配置启用IPv6)
  • 执行网卡多队列的配置脚本 Windows操作系统暂未商用支持网卡多队列,如果对Windows操作系统镜像添加网卡多队列标签,开启网卡多队列功能,可能会引起操作系统启动速度变慢等问题。 针对Linux操作系统, 镜像服务 提供了自动开启网卡多队列功能的配置脚本。如果弹性云服务器有多张网卡,执行配置脚本后,所有网卡均会自动开启多队列。 登录弹性云服务器,查看网卡支持和已开启的队列数。 ethtool -l 网卡 示例: [root@localhost ~]# ethtool -l eth0 #查询网卡eth0的队列数 Channel parameters for eth0: Pre-set maximums: RX: 0 TX: 0 Other: 0 Combined: 4 #表示此网卡最多支持设置4个队列 Current hardware settings: RX: 0 TX: 0 Other: 0 Combined: 1 #表示当前已开启的是1个队列 如果返回信息中,两个“Combined”字段取值相同,则表示网卡已开启多队列,无需执行以下操作。 执行以下命令,下载配置脚本“multi-queue-hw”。 wget https://ecs-instance-driver.obs.cn-north-1.myhuaweicloud.com/multi-queue-hw 其中,下载地址为:https://ecs-instance-driver.obs.cn-north-1.myhuaweicloud.com/multi-queue-hw 执行以下命令,添加执行权限。 chmod +x multi-queue-hw 执行以下命令,将脚本“multi-queue-hw”放到目录/etc/init.d下。 mv multi-queue-hw /etc/init.d 如果出现如下提示信息,请输入“y”。 mv: overwrite '/etc/init.d/multi-queue-hw'? 执行以下命令,运行脚本“multi-queue-hw”。 /etc/init.d/multi-queue-hw start 运行脚本后,立即生效。但关机弹性云服务器后,网卡多队列功能将自动失效。 为了使网卡多队列功能开机自动生效,各个OS需要增加开机启动配置: CentOS/Red Hat/Fedora/EulerOS/Suse/openSUSE使用如下命令,增加开机启动项,使网卡多队列配置开机: chkconfig multi-queue-hw on Ubuntu使用如下命令,增加开机启动项: update-rc.d multi-queue-hw defaults 90 10 Debian使用如下命令,增加开机启动项: systemctl enable multi-queue-hw
  • 操作步骤 请根据操作系统版本,修改不同的配置文件: 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文件中,不会影响云服务器正常使用。
  • 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
  • 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-blkfront xen-netfront virtio_blk virtio_scsi virtio_net virtio_pci virtio_ring virtio 按“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 y CONFIG_VIRTIO_BLK=y CONFIG_VIRTIO_NET=y CONFIG_VIRTIO=y CONFIG_VIRTIO_RING=y CONFIG_VIRTIO_PCI=y CONFIG_VIRTIO_MMIO_CM DLI NE_DEVI CES =y [root@ CTU10000xxxxx home]# cat /boot/config-`uname -r` | grep CONFIG_XEN | grep y CONFIG_XEN_BLKDEV_FRONTEND=y CONFIG_XEN_NETDEV_FRONTEND=y
  • 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 0 timeout 10 gfxmenu (hd0,0)/boot/message title 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 showopts initrd /boot/initrd.vmx title 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 showopts initrd /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的PV或者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.ko SIA10000xxxxx:~ # 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.ko drwxr-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=0x314 initrd /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.ko SIA10000xxxxx:~ # 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.ko drwxr-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 default add_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 default add_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.ko drwxr-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.ko sluo-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.ko drwxr-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
  • 导入和快速导入、导出和快速导出功能对比 对比项 说明 相关操作 导入 将外部镜像文件导入华为云控制台,制作成私有镜像。 支持的格式包括:vmdk、vhd、qcow2、raw、vhdx、qed、vdi、qcow、zvhd2和zvhd。 最大可支持128GB。 导入过程中系统会在后台进行驱动注入等优化操作,因此相比快速导入耗时会长一些。 通过外部镜像文件创建系统盘镜像 通过外部镜像文件创建数据盘镜像 快速导入 对于raw、zvhd2格式的外部镜像文件,在导入华为云控制台时,可以勾选“开启快速通道”(如图1所示),系统不会进行驱动注入等优化操作,需要用户自行确认已完成以下准备: raw格式镜像文件:确认镜像文件已经转换为raw格式,按照要求完成了镜像优化,且已生成位表文件。 zvhd2格式镜像文件:确认镜像文件已经转换为zvhd2格式,并按照要求完成了镜像优化。 最大可支持1TB。 快速导入镜像文件 导出 将华为云控制台上的私有镜像导出到OBS个人桶,下载到本地后可供其他云平台使用。 镜像文件必须小于等于128GB(大于128GB时请使用快速导出功能)。 在导出时,可以指定导出的镜像格式,目前支持qcow2、vmdk、vhd和zvhd。 导出镜像 快速导出 在导出镜像页面,可以勾选“使用快速导出”(如图2),此时,不可指定导出格式。但是可以在导出后使用镜像转换工具将镜像转换为需要的格式。 镜像文件无大小限制。 加密镜像无法使用快速导出功能。 导出镜像 图1 快速导入镜像文件 图2 快速导出 父主题: 镜像导出类
  • 操作场景 OVA(Open Virtualization Appliance:开放虚拟化设备)是一个单一的压缩文件,其中包含了OVF文件包中的所有文件,即OVF的一种压缩模式,后缀为.ova。OVF(Open Virtualization Format:开放虚拟化格式)是一个文件夹,其中包含的文件是定义和部署虚拟机时必须用到的。OVF一般包含三种文件类型,分别为.ovf文件、.mf文件、.vmdk文件。 .ovf是一个XML描述符,定义了虚拟机的元数据信息,如名称、硬件要求,并且包含了OVF文件包中其他文件的参考信息。 .mf文件是一些文件SHA的集合,目的是为了防止镜像文件被非法篡改。 .vmdk文件包含了虚拟磁盘资源,OVF包中可以包含多个.vmdk文件,用来创建不同的磁盘镜像。 本文介绍将OVF、OVA文件导入云平台的操作方法。
  • 操作步骤 手动提取OVF或OVA模板中的可用文件(.vmdk文件),使用控制台的外部镜像文件创建系统盘镜像或数据盘镜像的方式进行导入。 下述内容以OVF或OVA模板中只有一个vmdk文件为例,若存在多个vmdk文件(假设为3个,1个系统盘文件,2个数据盘文件),请分别将其上传至OBS桶,注册为系统盘镜像和数据盘镜像。 虚拟机为Windows操作系统 如果选择导出OVF模板并存储于C盘OvfLib文件夹,定义模板名称为MyVm,导出完成后生成的文件夹内容如下。其中.vmdk文件可以上传至云平台。 ├C │ ├OvfLib │ ├MyVm │ ├MyVm.ovf │ ├MyVm.mf │ ├MyVm-disk1.vmdk 如果选择导出OVA格式,定义模板名称为MyVm,则会创建C:\MyVm.ova文件。解压后得到的.vmdk文件可以上传至云平台。 当前云平台支持导入vhd、vmdk、qcow2、raw、vhdx、qcow、vdi、qed、zvhd或zvhd2等格式镜像文件创建私有镜像。 详细指导请参见“通过外部镜像文件创建系统盘镜像”或“通过外部镜像文件创建数据盘镜像”。 虚拟机为Linux操作系统 如果选择导出OVF模板,请将生成后的文件夹中的.vmdk文件上传至云平台。 如果选择导出OVA模板,定义模板名称为MyVm,请执行以下操作。 执行如下命令,用file命令查看OVA文件。 file MyVm.ova 回显如下: MyVm.ova: POSIX tar archive (GNU) 使用tar命令可以看到,其中包含了两个文件: $tar tf MyVm.ova MyVm.ovf MyVm.vmdk 执行如下命令,解压OVA文件压缩包。 tar xvf MyVm.ova 解压后的文件夹包含如下文件: MyVm.ovf MyVm.vmdk 其中,vmdk格式的镜像文件可以上传至云平台。 当前云平台支持导入vhd、vmdk、qcow2、raw、vhdx、qcow、vdi、qed、zvhd或zvhd2等格式镜像文件创建私有镜像。 详细指导请参见“通过外部镜像文件创建系统盘镜像”或“通过外部镜像文件创建数据盘镜像”。
  • 操作系统服务与支持计划 Huawei Cloud EulerOS 版本 停止服务与支持日期 Huawei Cloud EulerOS 2.0 2028-06-30 Huawei Cloud EulerOS 1.1 2026-06-30 EulerOS 版本 停止服务与支持日期 EulerOS 2.0SP8 2024-06-30 EulerOS 2.0SP5 2023-06-30 EulerOS 2.0SP3 2022-09-30 EulerOS 2.0SP2 2021-12-30 EulerOS 2.0SP1 2020-12-30 CentOS 版本 主要支持结束时间 扩展支持结束时间 CentOS 8 2021-12-31 2021-12-31 CentOS 7 2020-08-06 2024-06-30 CentOS 6 2017-05-10 2020-11-30 Debian 版本 停止支持日期 Debian 13 暂无明确时间 Debian 12 暂无明确时间 Debian 11 暂无明确时间 Debian 10 2022-09-10 Debian 9 2020-07-18 Debian 8 2018-06-17 Debian 7 2016-04-25 Ubuntu 版本 停止支持日期 Ubuntu 22.04 LTS 2032-04 Ubuntu 20.04 LTS 2030-04 Ubuntu 18.04 LTS 2028-04 Ubuntu 16.04 LTS 2026-04 Ubuntu 14.04 LTS 2024-04 Red Hat 版本 完全支持停止日期 Red Hat 9 2027-05-31 Red Hat 8 2024-05-31 Red Hat 7 2019-08-06 Red Hat 6 2016-05-10 FreeBSD 版本 停止维护更新日期 FreeBSD 13.0 FreeBSD 13.1发布后3个月 FreeBSD 12.3 2022-08-21 FreeBSD 12.2 2022-03-31 FreeBSD 12.1 2021-01-31 FreeBSD 12.0 2020-02-04 FreeBSD 11.4 2021-09-30 FreeBSD 11.3 2020-09-30 FreeBSD 11.2 2019-10-31 FreeBSD 11.1 2018-09-30 FreeBSD 11.0 2017-11-30 OpenSUSE 版本 停止维护更新日期 OpenSUSE 15.3 2022-11-30 OpenSUSE 15.2 2022-01-04 OpenSUSE 15.1 2021-02-02 OpenSUSE 15.0 2019-12-03 OpenSUSE 42.3 2019-07-01 OpenSUSE 42.2 2018-01-26 OpenSUSE 42.1 2017-05-17 SUSE Linux 版本 一般支持日期 拓展支持日期 SUSE Linux Enterprise Server 15 SP4 SUSE Linux Enterprise Server 15 SP5发布后的6个月 暂无明确时间 SUSE Linux Enterprise Server 15 SP3 2022-12-31 2025-12-31 SUSE Linux Enterprise Server 15 SP2 2021-12-31 2024-12-31 SUSE Linux Enterprise Server 15 SP1 2021-01-31 2024-06-31 SUSE Linux Enterprise Server 15 2019-12-31 2022-12-31 SUSE Linux Enterprise Server 12 SP5 2024-10-31 2027-10-31 SUSE Linux Enterprise Server 12 SP4 2020-06-30 2023-06-30 SUSE Linux Enterprise Server 12 SP3 2019-06-30 2022-06-30 SUSE Linux Enterprise Server 12 SP2 2018-03-31 2021-03-31 SUSE Linux Enterprise Server 12 SP1 2017-05-31 2020-05-31 SUSE Linux Enterprise Server 12 2016-06-30 2019-07-01 Fedora 版本 停止支持日期 Fedora 35 2022-12-13 Fedora 34 2022-06-07 Fedora 33 2021-11-30 Fedora 32 2021-05-25 Fedora 31 2020-11-24 Fedora 30 2020-05-26 Fedora 29 2019-11-26 Fedora 28 2019-05-28 Fedora 27 2018-11-30 Rocky Linux 版本 停止维护更新日期 Rocky Linux 8.5 2031-11-14 AlmaLinux 版本 停止维护更新日期 AlmaLinux 8.5 2031-11 Windows Server 版本 主要支持结束时间 扩展支持结束时间 Windows Server 2019 2024-01-09 2029-01-09 Windows Server 2016 2022-01-11 2027-01-12 Windows Server 2012 2018-10-09 2023-10-10 Windows Server 2012 R2 2018-10-19 2023-10-10 Windows Server 2008 已停止 已停止 Windows Server 2003 已停止 已停止
  • Linux操作系统 检查pvdriver相关驱动是否存在,如果存在,将删除相关驱动。 修改grub和syslinux配置文件,增加内核启动参数,并将磁盘分区名改成“UUID=磁盘分区的UUID”。 检查“/etc/fstab”文件中的磁盘分区名并修改成“UUID=磁盘分区的UUID”。 检查“initrd”文件是否含有XEN和IDE驱动,若不含有,则加载XEN和IDE驱动。 修改xwindow配置文件“/etc/X11/xorg.conf”文件,避免图形化界面显示失败。 删除VMware tools对应的服务。 记录最近一次自动化配置对镜像做的修改,记录文件位置为“/var/log/rainbow_modification_record.log”。 Linux操作系统会拷贝自带的virtio前端驱动到initrd或initramfs中去。具体支持情况请参见“外部镜像文件支持的格式和操作系统类型”。 对于如下场景的镜像文件,勾选“进行后台自动化设置”后,该功能不生效: /usr目录被单独分区的镜像文件 使用xfs文件系统的Fedora 29 64bit、Fedora 30 64bit、CentOS 8.0 64bit镜像 使用ext4文件系统的SUSE 12 SP4 64bit镜像
  • 备份和镜像的区别 云备份和镜像服务区别主要有以下几点,如表1所示。 表1 备份和镜像的区别 对比维度 云备份 镜像服务 概念 备份是将云服务器或者云硬盘某一时间节点的状态、配置和数据信息保存下来,以供故障时进行恢复,其目的是为了保证数据安全,提升高可用性。 镜像相当于云服务器的“装机盘”,它提供了启动云服务器所需的所有信息,其目的是为了创建云服务器,批量部署软件环境。系统盘镜像包含运行业务所需的操作系统、应用软件,数据盘包含业务数据。整机镜像是系统盘镜像和数据盘镜像的总和。 使用方式 数据存储位置:与服务器/磁盘数据分开存储,存储在对象存储(OBS)中。如果将创建备份的云硬盘删除,对应的备份不会被同时删除。 操作对象:保存云服务器/磁盘指定时刻的数据,可以设置自动备份和过期自动删除。 用途:备份可以恢复数据至原服务器/磁盘中,也可以直接创建新的磁盘或整机镜像。 是否可以导出至本地:否。 数据存储位置:与服务器/磁盘数据分开存储,存储在对象存储(OBS)中。如果将创建镜像的服务器/磁盘删除,对应的镜像不会被同时删除。 操作对象:可以将服务器的系统盘和数据盘制作为私有镜像,也可以通过外部镜像文件制作私有镜像。 用途:系统盘镜像或整机镜像可以创建新的服务器,数据盘镜像可以创建新的磁盘,实现业务迁移。 是否可以导出至本地:是。整机镜像不支持导出至本地。 应用场景 适用场景: 数据备份与恢复 业务快速部署和迁移 适用场景: 服务器上云或云上迁移 部署特定软件环境 批量部署软件环境 服务器运行环境备份 优势 支持自动备份,可以定时定量保留服务器/磁盘某一时间节点的数据。 可以备份系统盘。可以将本地或者其他云平台的服务器数据盘镜像文件导入至镜像服务中。导入后,可使用该镜像创建新的云硬盘。 备份和镜像虽然存储在 对象存储服务 中,但不占用用户的资源,所以用户无法从对象存储服务中看到备份和镜像数据。备份的费用按照备份服务的计费标准收取,镜像仅按照对象存储服务的标准收取存储费用。
  • 状态码 常用状态码请参见表1。 表1 请求状态返回码 状态码 描述 说明 200 OK 服务器已成功处理了请求。 400 Bad Request 非法请求。 建议直接修改该请求,不要重试该请求。 403 Forbidden 请求被拒绝访问。 返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 413 Request Entity Too Large 由于请求的实体过大,服务器无法处理,因此拒绝请求。为防止客户端的连续请求,服务器可能会关闭连接。如果只是服务器暂时无法处理,则会包含一个Retry-After的响应信息。 500 Internal Server Error 服务端能被请求访问到,但是不能理解用户的请求。 父主题: 附录
  • 响应消息体(可选) 该部分可选。响应消息体通常以结构化格式(如JSON或XML)返回,与响应消息头中Content-Type对应,传递除响应消息头之外的内容。 对于AR导航接口,返回如下消息体。 { "path": [ { "building": "楼层描述1", "floor": "楼层信息1", "linkID": "路段ID1", "status": "路段的导航状态或类型1", "x": "x坐标1", "y": "y坐标1", "z": "z坐标1" }, { "building": "楼层描述n", "floor": "楼层信息n", "linkID": "路段IDn", "status": "路段的导航状态或类型n", "x": "x坐标n", "y": "y坐标n", "z": "z坐标n" } ], "result":"状态码" } 当接口调用出错时,会返回错误码及错误信息说明,错误响应的Body体格式如下所示。 { "error_code": "NAVI.0002", "error_msg": "Navi failed, please check parameters." } 其中,error_code表示错误码,error_msg表示错误描述信息。
  • 请求消息体(可选) 该部分可选。请求消息体通常以结构化格式(如JSON或XML)发出,与请求消息头中Content-Type对应,传递除请求消息头之外的内容。若请求消息体中的参数支持中文,则中文字符必须为UTF-8编码。 每个接口的请求消息体内容不同,也并不是每个接口都需要有请求消息体(或者说消息体为空),GET、DELETE操作类型的接口就不需要消息体,消息体具体内容需要根据具体接口而定。 对于AR导航接口,您可以从接口的请求部分看到所需的请求参数及参数说明。将消息体加入后的请求如下所示。 POST https://koomap.cn-north-4.myhuaweicloud.com/v1/algo/navi Content-Type: application/json X-Auth-Token:xxxxxxxx { "domainId": "域id", "uuid": "用户唯一标识", "payload": { "utm": "地区UTM编码", "from": { "x": "起点位置x坐标", "y": "起点位置y坐标", "z": "起点位置z坐标" }, "to": { "x": "终点位置x坐标", "y": "终点位置y坐标", "z": "终点位置z坐标" } } } 到这里为止这个请求需要的内容就具备齐全了,您可以使用curl、Postman或直接编写代码等方式发送请求调用API。
  • 请求URI 请求URI由如下部分组成: {URI-scheme}://{Endpoint}/{resource-path}?{query-string} 尽管请求URI包含在请求消息头中,但大多数语言或框架都要求您从请求消息中单独传递它,所以在此单独强调。 表1 URI中的参数说明 参数 描述 URI-scheme 表示用于传输请求的协议,当前KooMap所有API均采用HTTPS协议。 Endpoint 指定承载REST服务端点的服务器 域名 或IP,不同服务不同区域的Endpoint不同,当前KooMap只在“华北-北京四”部署,Endpoint为“koomap.cn-north-4.myhuaweicloud.com”。 resource-path 资源路径,即API访问路径。从具体API的URI模块获取,例如“AR导航”API的resource-path为“/v1/algo/navi”。 query-string 可选参数,用于查询指定参数数据。设置查询参数时,查询参数前面需要带一个“?”,形式为“参数名=参数取值”,例如“?limit=10”,表示查询不超过10条数据。 例如您需要获取KooMap在“华北-北京四”区域的Token,则需使用“华北-北京四”区域的Endpoint(koomap.cn-north-4.myhuaweicloud.com),并在AR导航接口的URI部分找到resource-path(/v1/algo/navi),拼接起来如下所示。 https://koomap.cn-north-4.myhuaweicloud.com/v1/algo/navi 图1 URI示意图 为查看方便,在每个具体API的URI部分,只给出resource-path部分,并将请求方法写在一起。这是因为URI-scheme都是HTTPS,而Endpoint在同一个区域也相同,所以简洁起见将这两部分省略。
  • 请求方法 HTTP请求方法(也称为操作或动词),它告诉服务您正在请求什么类型的操作。 表2 HTTP方法 方法 说明 GET 请求服务器返回指定资源。 POST 请求服务器新增资源或执行non-CRUD操作。 DELETE 请求服务器删除指定资源,如删除对象等。 PUT 请求服务器更新指定资源。 HEAD 请求服务器资源头部。 PATCH 请求服务器更新资源的部分内容。当资源不存在的时候,PATCH可能会去创建一个新的资源。 在AR导航的URI部分,您可以看到其请求方法为“POST”,则其请求为: POST https://koomap.cn-north-4.myhuaweicloud.com/v1/algo/navi
  • 请求消息头 附加请求头字段,如指定的URI和HTTP方法所要求的字段。例如定义消息体类型的请求头“Content-Type”,请求鉴权信息等。 详细的公共请求消息头字段请参见表3。 表3 公共请求消息头 名称 描述 是否必选 示例 Content-Type 消息体的类型(格式),当前只支持application/json。 是 application/json X-Auth-Token 用户Token。 用户Token也就是调用获取用户Token接口的响应值,该接口是唯一不需要认证的接口。 请求响应成功后在响应消息头(Headers)中包含的“X-Subject-Token”的值即为Token值。 是 使用Token认证时该字段必选。 注:以下仅为Token示例片段 MIIPAgYJKoZIhvcNAQcCo...ggg1BBIINPXsidG9rZ
  • API概览 云地图服务 接口的分类与说明如表1所示。 表1 API概览 类型 说明 视觉定位 通过拍摄一系列具有已知位置的图像并分析它们的关键视觉特征(例如建筑物或桥梁的轮廓)来创建地图,以创建这些视觉特征的大规模且可快速搜索的索引。将设备图像中的特征与索引中的特征进行比较,可获得目标设备的位姿。 AR导航 基于摄像头实时捕捉的实景画面,将地图导航信息通过数字内容的形态叠加在实景画面中,生成虚拟的3D导航指引。
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全