概述

自 SMTX OS 社区版发布以来,有许多用户下载了和尝试部署 SMTX OS ,在过程中遇到一些问题并在社区中提问,本文是将这些有代表性的问题集合在一起,并按照不同阶段进行分类,希望能帮助用户快速获得解决问题的思路。

另外,如用户希望全面了解 SMTX OS 部署过程,请参考以下两篇文章:

社区版安装部署指南:https://www.smartx.com/web-docs/docs/installation_guide/installation_guide_01.html

极限挑战:如何用2台服务器搭建超融合集群:https://zhuanlan.zhihu.com/p/433473572

目录

SMTX OS 社区版安装使用中常见问题合集(产品前期了解篇)

SMTX OS 社区版安装使用中常见问题合集(部署准备篇)

SMTX OS 社区版安装使用中常见问题合集(系统安装篇)

SMTX OS 社区版安装使用中常见问题合集(使用过程篇)

使用过程篇

问题:请问哪里有 Rest API 接口描述文档呢 ?

回答:API 文档集成在管理控制台,登录节点管理控制台,设置菜单中有 API 文档。

问题:社区版创建虚拟机安装 Windows 2016 系统时找不到可以安装的(磁盘)驱动,是需要调磁盘的格式吗?

回答:SMTX OS 的虚拟机默认使用 Virtio 磁盘总线,而 Windows 系统没有内置 Virtio 驱动,需要加载 Virtio 驱动进行安装。详细过程如下:

下载 Virtio 镜像:https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.185-2/virtio-win-0.1.185.iso

win20161.png

下载 Virtio 镜像,并上传到 CloudTower,虚拟机同时挂载 Windows 安装镜像和 Virtio 镜像,重新开始 Windows 安装,还是到了上图的位置(依然没有识别到虚拟硬盘),点击加载驱动程序,如下图,选择对应的文件夹
win20162.png

扫描后会显示如下图的驱动程序
win20163.png

成功加载驱动后就能正常识别硬盘大小了,然后就可以正常安装操作系统了。
win20164.png

问题:请解释一下 IDE 和 Virtio 两种总线的区别,对虚拟机的性能有没有差别?

回答:实际上 ELF 中的虚拟机可以为虚拟磁盘提供三种总线模式,其中 IDE 总线是全虚拟化的虚拟硬件,开销大,存储性能较差,但兼容性,无需安装驱动即可识别;而 Virtio 和 SCSI 这两种模式都是基于半虚拟化实现的 IO 虚拟硬件,开销小,存储性能好,但 Windows 操作系统没有内置 Virtio 设备驱动,需要额外安装驱动。推荐虚拟机使用 Virtio 或 Virtio SCSI 总线,这样性能更好。

问题:请问在 WEB 管理页面里的虚拟机列表菜单中能直接看到虚机的 IP 吗?需要怎么操作?

回答:需要安装 VM Tools 工具,安装后可支持虚拟机显示 IP 主机名等信息

问题:一台虚拟机无法改变分辨率,试过其他两种显卡类型也不行?

回答:这种情况应该是虚拟机没有正确安装虚拟显卡的驱动,可以通过安装 VM Tools 或者访问 Virtio 驱动镜像进行安装驱动,即可解决。

问题:社区版新建了个分布式交换机,无法删除?

回答:如果分布式交换机包含连接了已存在的虚拟机,是不允许删除的,如果要删除分布式交换机,需要将关联的虚拟机取消相关虚拟网络,以及手工删除虚拟网络后并确保分布式交换机上没有任何虚拟网络后,才能删除分布式交换机。

问题:SLB 的负载均衡模式都需要对交换机做什么配置?

回答:SLB 负载均衡模式是基于 MAC 和 vLAN ID 的负载均衡模式,无需交换机做设置,即可支持。如果选用 TCP 负载均衡模式,交换机则需要启用 LACP 功能。

问题:在管理界面卸载缓存盘的话,会影响下次启动吗?

回答:如果主机有 2 块缓存盘,是允许在线卸载缓存盘的,不影响下次启动,但是会触发数据恢复,因此不要随意卸载缓存盘,除非是缓存盘有故障警报或者损坏的情况。

问题:安装 Everoute 之后,在集群资源充足的情况下,CloudTower  为什么提示 HA 资源不足告警?

回答:因为在 3 节点集群上部署 Everoute,默认会部署 3 个 Everoute Controller,虚拟机分别放置在 3 个不同节点上,以确保 Everoute 服务的高可用。而触发该告警的原因是:系统发现当集群中任意 1 个节点故障, 该节点上的 Everoute Controller 本应通过 HA 功能在其他可用节点中恢复,但由于集群可用节点只剩下 2 个,无法保证 3 个 Everoute Controller 分别运行在不同节点,因此系统提示 HA 资源不足。在大于 3 节点的集群不会触发该报警,但由于社区版最大规模是 3 节点,因此一定会触发该告警,但不会影响日常使用。

问题:业务网口设置为 trunk 模式后,业务虚拟交换机找不到在哪里设置?

回答:当物理交换机对应端口配置好 trunk 模式之后,在集群中创建【虚拟分布式交换机】,关联对应的网口(调整为 trunk 模式的网口)。分布式交换机创建完成后,接着创建【虚拟机网络】,关联对应的虚拟分布式交换机,并设置 VLAN ID 和虚拟网络名称即可使用。

trunk.png

问题:CloudTower 上传 ISO 速度比较慢,有速度限制吗?

回答:当前 CloudTower 社区版(2.3.0)对上传 ISO 设置了限速(2M/s 以下),主要是防止上传过程中占用过多的带宽(如业务网络与管理网络共享带宽则有可能影响业务虚拟机网络访问)。新发布的版本其 ISO 上传速度将提升至最高 30M/s。

问题:在 Fisheye 上传的 ISO 镜像,为什么在 CloudTower 无法看到?

回答:Fisheye 属于 SMTX OS 集群应急管理平台,正常情况下 ISO 应该在 CloudTower 的内容库菜单中上传。在 Fisheye 上传的 ISO 信息无法同步到 CloudTower,需通过 CloudTower 重新上传 ISO。

问题:怎样设置副本数?副本数能否针对单独的存储卷设置?可以设置单副本吗?

回答:副本设置可在创建虚拟机时选择对应的副本策略。副本数可以针对虚拟机不同的虚拟磁盘分别进行设置。当前可支持的副本策略有 2 副本和 3 副本,但不支持设置单副本,主要因为单副本不具备任何数据冗余保护功能。

问题:虚拟磁盘大小为什么与虚拟机系统内显示的大小不一致?

回答:SMTX OS 虚拟磁盘容量的单位是 GiB(1GiB=1024MiB=1024*1024*1024 byte),而在操作系统内查询磁盘大小通常是以 GB(1GB=1000MB=1000*1000*1000 byte)为单位,因此导致两者显示的容量会不一致。

问题:社区版如何从 2 节点扩展至 3 节点?

回答:社区版推荐 3 节点部署,如前期资源比较紧张,可先进行两节点部署(2 节点集群不支持高可用),后续再扩容为标准的 3 节点集群(支持高可用)。扩容操作需在 CloudTower 界面上进行,扩容成功后需要执行后台命令进行角色转换(2 节点扩展至 3 节点必须的操作),详细方法可以在社区群咨询。

问题:SMTX OS 安装 Windows 虚拟机时需要加载 virtio 硬盘驱动,但 PVE 就不需要安装 virtio 驱动?

回答:PVE 在安装类型为 Windows 的虚拟机时,默认使用 IDE 磁盘总线,而不是性能更好的 virtio 总线(Windows 光盘中不带 virtio 驱动),因此,PVE 在安装 Windows 操作系统时并不需要额外加载 virtio 驱动。而 SMTX OS 安装虚拟机的时候默认会选用性能更好的 Virtio 总线,因此需要额外加载驱动。

问题:SMTX OS 虚拟机的文件格式是什么?

回答:SMTX OS 的虚拟机磁盘不是以文件的形式存在的,而是以虚拟卷(块设备)的形式存在。同时,SMTX OS 支持通过虚拟机磁盘文件以及 OVF 的方式进行导入。

问题:SMTX OS 平台测试过安装 debian9 么,安装系统后无法正常加载系统?

回答:SmartX 虚拟化平台 ELF 支持安装 debian9,但 debian9 对虚拟硬件有一定要求,磁盘需要选择 SCSI 总线,而虚拟显卡需要选择 VGA,这样就能正常完成系统安装并启动系统。

问题:如果要对集群进行维护、更换硬件需要进行什么流程?需要手动迁移虚拟机然后直接关机吗?开机后是不是等集群恢复了,再继续弄下一台?

回答:对节点进行硬件维护可以为节点开启维护模式(仅支持 3 节点或以上规模集群)后进行。SMTX OS 商业版可在 CloudTower 上操作,但社区版当前版本未支持该功能,需要手工执行以下步骤:

  1. 登录任意节点执行 sudo sh/usr/share/upgrade/upgrade_cluster/script/pre_check.sh,输出 pre check success 则预检查通过;如预检查失败,则需要根据提示处理之后再次进行检查;
  2. 将待维护节点上的虚拟机执行在线迁移至其他节点;
  3. 登录待维护节点,执行 sudo shutdown -h now,进行下电维护处理;
  4. 维护完成后,重新开启节点,等待集群状态恢复正常后(如有数据恢复,需等待数据恢复完成),回迁虚拟机;
  5. 如果有多个节点需要维护,需要依次按照前面的步骤执行。

问题:如何将社区版集群新加入的物理服务器转换为主节点?

回答:通过 CloudTower 添加节点成功后,需要登录到前面 2 个节点(添加节点前就存在)中的其中一个节点,执行 sudo zbs-cluster convert_to_master x.x.x.x 。x.x.x.x 指的是第 3 个添加的节点的存储 IP。

问题:Nutanix 的虚拟机中的 raw 格式磁盘如何导入到 SmartX?

回答:Nutanix 导出的 raw 磁盘,可登录 SmartX 节点管理页面 Fisheye,访问虚拟卷菜单,选择导入虚拟机磁盘;导入成功后,手工创建虚拟机并挂载已导入的虚拟磁盘即可。

nutanix.png

问题:CloudTower 有 API 文档么?

回答:有的,在线 API 访问链接(最新):https://code.smartx.com。社区版相关文档资料链接:https://pan.baidu.com/s/1Xy6uIcLtIygAidFdzVQLQA,提取码:yt0o。

问题:通过 Fisheye 创建的网络有办法更换为 CloudTower 创建的么?

回答:Fisheye 属于集群紧急管理页面,不应通过它去创建虚拟网络。日常操作应在 CloudTower 上进行。如果已经通过  Fisheye 创建了虚拟网络,可先将该虚拟网络关联的虚拟机移出,或调整到其他虚拟网络(该操作可能引起虚拟机网络中断)。清空虚拟网络后,可通过 Fisheye 界面删除该虚拟网络。然后再通过 CloudTower 新创建对应的虚拟网络,并将之前的虚拟机重新关联到该网络即可。

问题:CloudTower 的分组没法跟用户或者角色绑定么?比如一个组的人可以看到本组的机器。

回答:目前可以通过虚拟机分组去实现分组显示,也可以创建不同的管理角色。社区版后面也会加入 LDAP 用户的支持。

问题:在集群中卸载 SSD 的时间挺长的,是为了不影响集群所以限速了是吗?

回答:执行卸载 SSD 操作后,系统会将 SSD 的数据通过数据迁移的方式迁移到其他节点,同时系统会根据集群的负载情况对迁移进行限速,卸载时需要等待 SSD 上的数据完成迁移,因此持续时间会比较长。

问题:raw 的磁盘文件如何挂载到新的虚拟机上面啊,直接 convert 成虚拟盘吗?

回答:raw 格式的磁盘文件,可以直接在 Fisheye 虚拟卷界面进行上传,上传成功后,新建虚拟机,并选择该虚拟卷。

问题:第三方 KVM 平台中 Windows 虚拟机迁移到 SMTX OS 后,为什么控制台鼠标没有反应(但键盘可以输入)?

回答:可以查看是否有驱动冲突,一般情况是其他 KVM 平台使用了 usb-tablet 虚拟外设引起的。可尝试登录 Windows 虚拟机,在设备管理器中,卸载 usb-tablet 设备后再进行尝试。

问题:系统警告存储平均延时过大,一般要查哪些因素呢?

回答:触发存储平均延时过大警告一般有两个可能性:1. 某块磁盘(或者对应的磁盘控制器)发生故障了,导致访问延时增大,这种情况可以查看系统是否有磁盘健康相关的警告并作进一步的处理;2. 缓存空间比例过小,部分热数据无法在缓存命中。这种情况下可通过监控分析菜单查看集群的缓存命中率,如果缓存命中率持续偏低,则需要考虑扩展缓存空间。

问题:两个集群之间的 ISO 镜像可以共用吗?

回答:可以共用,如果当前这个集群上没有该镜像,通过内容库将镜像分发到对应集群,即可使用。

问题:安装了 VM Tools 之后,Web 控制台不支持修改某个虚拟机的系统密码吗?

回答:安装 vmtools 之后,在 CloudTower 中找到对应虚拟机的基本信息菜单,其中可以重置密码。如果没有该选项,请确认安装 vmtools 是否成功,或者 vmtools 版本是否过旧。

问题:SmartX 的时间同步是先由集群的 leader 与 NTP Server 通讯并同步,然后 leader 负责内部节点时间同步的机制吧? 那虚拟机迁移取的是硬件时间还是 SMTX OS 的系统时间?

回答:SMTX OS 的 NTP 服务可以应对两种场景:

场景1:

有外部 NTP 服务源的情况下,leader 负责与外部 NTP 服务器同步时间,然后集群中其他节点与 leader 进行同步进而确保整个集群所有节点的时间都是同步的。而在线迁移或者数据同步都会依赖这个时间的。

场景2: 

如果没有外部 NTP 服务器,那么 leader 不会跟外部进行同步,其他节点会跟 leader 同步时间,也可以保证整个集群的时间是一致的,但无法保证与标准时间是同步的。

问题:社区版从 3 节点扩展到 4 节点的操作为什么会失败?

回答:社区版许可单集群最大节点规模是 3 个节点,因此无法扩展至 4 节点集群。如需构建 4 节点或以上规模的集群可以选择 SMTX OS 的商业版本,版本之间的详细差异请查阅规格表:https://www.smartx.com/smtx-os/spec/

问题:新建了虚拟机,挂载了光盘,怎么不自动进入安装界面呢?

回答:如果是 Windows 虚拟机,并且是 uefi 的启动模式,没有在提示时间内按任意键进行安装,则会进入 uefi shell 。重启虚拟机,在提示时间内按任意键进入系统安装,或在刚开始启动时按 esc 键,然后进入 boot manager,选择 cdrom 启动。

问题:CloudTower 界面中的虚拟机 CPU 插槽对应的物理服务器是?

回答:物理 CPU 插槽和虚拟机的 CPU 插槽并没有一一对应的关系。如:一台物理服务器有  2 个 CPU 插槽(socket),每个 CPU 有 10 核(core),那么实际上就有 20 core 了,加上 CPU 超线程的功能,就可以在不超分的情况下变成 40 个 vCPU;而 40个 vCPU 是总数,具体可以分配到虚拟 CPU 插槽和虚拟 CPU 核数的乘积,如 4 vSocket x 10 vCore = 40 vCPU,也可以是 2 vSocket x 20 vCore = 40 vCPU。

问题:Windows 7 虚拟机设置了 1 核 8 插槽无法识别?

回答:Windows 7 操作系统属于桌面操作系统,不支持多 CPU 插槽,只能识别 2 个 CPU 插槽,这种情况下,可以将虚拟机从 1 核 8 插槽调整为 2 插槽 4 核,系统就能识别了。

问题:虚拟机执行一致性快照后,查看快照容量大小为 0,这正常么?

回答:SMTX OS 上的虚拟机执行快照后,如果虚拟机的数据没有发生变化,快照是不占空间的。当后面数据发生变化,快照的空间会随之增长。

继续阅读