type
status
date
summary
slug
tags
category
password
icon
本教程讲述oVirt4.4本地存储架构的部署过程,其中Engine管理台采用HostedEngine方式部署(即Engine作为一个虚机),本教程编写时最新的版本为v4.4.10,同一个大版本下不同小版本之间部署可能略有差异,但基本过程是一致的。

一、准备硬件

1台X86服务器/主机:
  • CPU>=4核;
  • 内存>=8GiB;
  • 硬盘1块:>=300GiB;
  • 网卡:>=1GbE*1;
1台PC:
  • Win或Linux均可,用于访问Node和Engine的WEB管理台,建议安装使用Chrome浏览器;
注意:
  • 以上基本为最低配置要求,生产环境因根据业务负载要求选择合理的硬件资源配置;
  • 在本次部署中,Engine以虚机的形式运行在Node主机上,所以只需一台机器即可,部署完成后也可再添加其它主机,由于Engine是部署在Node主机本地提供的NFS存储上,所以不支持高可用;
  • 这台X86服务器在实验环境下可使用虚机进行部署测试,使用VMware虚机部署可能会遇到问题,请参考oVirt中文社区的其它文章寻找解决办法;
  • 因为了截图和演示方便,本教程中使用已有oVirt环境中的1台虚机部署;

二、下载安装包

注意都要获取当前大版本对应的最新部署安装包,尤其是Node ISO要和Engine RPM对应起来,都用最新的就没问题,Virt-Viewer及Virtio-Win是辅助。

三、规划网络

根据你的网络实际情况为Node和Engin规划网络信息,如下:
Engine:
  • 域名:engine240.com;
  • IP:192.168.105.240;
  • Netmask:255.255.255.0;
  • Gateway:192.168.105.254
Node:
  • 域名:node241.com;
  • IP:192.168.105.241;
  • Netmask:255.255.255.0;
  • Gateway:192.168.105.254
注意:
  • 应确保所规划的域名不能够在外网解析,即安装部署前域名不能ping通;

四、安装Node

分别使用Node ISO通过CD引导安装用于Node的主机;
  • 这里推荐使用软碟通UltraISO制作镜像
    • 由于实测需要写入RAW模式否则无法从boot正常安装
    • 下载:提取码:52pj
    • notion image
  • 安装过程是图形化界面,正常按步骤安装即可:
1、语言选择中文即可;
2、键盘选择“汉语”;
3、安装目的地选中本地磁盘,选中“自动”分区,注意如果磁盘上有其它数据的话要执行回收空间操作;
4、时间和日期选择“亚洲/上海”时区;
5、网络和主机名处要根据上面我们规划的网络信息配置,包括主机名(这个地方直接用域名做主机名了)和IP信息
6、安装过程中配置root密码
7、安装完成后重启主机;
(注意:如果采用oVirt中文社区的离线版本部署,则不需要执行下面针对软件源的操作。)
通过ssh登录到该主机上,将/etc/yum.repos.d/下的文件删除掉(可以备份到其它目录下),如下:

五、部署HostedEngine

添加域名解析
  • 修改Node主机的/etc/hosts文件
  • 增加Node主机和Engine的域名解析,如下:
安装Engine Appliance RPM包
  • 将上面下载的Engine RPM包上传到Node主机上的任意目录,例如/root目录下,执行以下命令安装:
(注意:本文采用oVirt中文社区提供的离线版本部署,不需要执行安装engine rpm包这步。)
创建NFS存储
  • 执行命令在/data/images下新建一个nfs目录,并将其权属修改为vdsm:kvm,如下:
  • 编辑/etc/exports文件
  • 增加如下内容:
  • 重启nfs服务并设置为开机自启动
通过Cockpit执行部署过程
然后打开浏览器,输入上面Node主机的Cockpit Web管理台的地址(端口号是9090),如https://192.168.105.241:9090,使用root帐号登录,如下:
notion image
进入HostedEngine标签页,点击HostedEngine下方的“Start”按钮,如下:
notion image
根据我们上面的规划情况,填写Engine的相关配置信息,如下:
notion image
点击Next,在这一步中,配置Engine Web管理门户中admin帐号的密码,如下:
notion image
点击Next,这一步检查下信息是否正确,没问题就点击Prepare VM即可,如下:
notion image
等待Engine虚拟机准备完成即可,此步可能会有报错,解决方法见文章末尾处,如果正常没有报错,点Next下一步即可:
notion image
点击Next,配置用于存放Engine的存储,存储类型选“NFS”,存储链接填“192.168.105.241:/data/images/nfs
notion image
点击Next后等待部署完成即可,弹出部署成功窗口后点Close,然后会询问是否退出向导,点Yes,注意然后会询问是否激活Engine清理工具,一定要点No,否则就要重新部署了,如下:
notion image
notion image
notion image

六、配置Engine管理台

1.访问Engine管理台

在你的PC的hosts文件里增加Engine的域名解析,Win10系统在C:\Windows\System32\drivers\etc路径下,
使用浏览器访问https://engine240.com(如果想通过ip访问,请参考下文相关问题)
使用admin帐号登录(密码是我们部署时设置的密码),如下:
notion image

2.修改存储类型为本地

进入Engine管理台的“计算->数据中心”页面,选中Default数据中心,点击编辑按钮,如下:
notion image
存储类型选择“本地”,如下:
notion image

3.新建本地数据存储域

进入Engine管理台“存储->域”页面,点击“新建域”,如下:
notion image
在弹出的新建域对话框中,填写名称(这里起名data,可以起其它名字),域功能选择“数据”,存储类型选择“主机本地”,路径填写“/data/images/rhev”(注意这个路径是默认存在的,如果使用其它路径,需要新创建并修改权限):
notion image
点确定后等待创建完成即可。

4.上传ISO镜像

早期oVirt版本(4.3之前)ISO镜像只能上传到ISO域中,现在的版本可以将ISO镜像直接上传到数据域中了,而且按照官方的说明,ISO域将被遗弃掉,但目前的版本仍可以创建ISO域(包括最新的V4.4的版本),个人仍觉得ISO域在某些场景下更为方便。
下面分别介绍下ISO镜像上传到数据域和ISO域的方法:

①直接上传到数据域

进入“存储”->“磁盘”页面,点击右上角的操作“上传”->“开始”;
notion image
弹出上传镜像对话框,点击“选择文件”选择要上传的iso镜像,下面选择要上传到的数据中心和存储域,其它的不用管;
notion image
点击确定后,在磁盘列表中能看到上传进度,等待上传成功即可;
notion image

②使用ISO域

首先要先创建一个ISO域,到“存储”->“域”页面,右上角“新建域”,打开新建域对话框;
可以创建本地的ISO域,需要提前在主机本地创建好目录,推荐/data/images/isos,并将改目录权限修改为vdsm:kvm;
notion image
notion image
创建完ISO域后,就可以上传ISO镜像了,可以使用SCP工具将ISO镜像上传到ISO域目录下,注意ISO域存放镜像的目录(如下图,就是这个1111111111111111111111111111111111…………….):
notion image
上传完成后可以在该域的镜像页面下查看到:
notion image
也可以创建NFS类型的ISO域,注意路径那里填写NFS的导出目录路径,上传ISO同样可以将ISO镜像文件拷贝到那个“11111111111111….”目录下。

七、相关问题

1.安装时无法下载仓库数据

在PrepareVM过程中,报错:
解决办法:
在PrepareVM过程中,到Get local VM IP这一步时,如下:
notion image
迅速在host1主机上执行(注意最后的ip地址换成你环境中hosts1的ip):
然后通过virt-viewer连接HostedEngine虚机,连接地址:vnc://192.168.105.241:5910,然后使用root帐号登录到系统中(密码为部署是所配置),将/etc/yum.repos.d/目录清空或者移动到其它目录下:
notion image

2.通过IP访问Engine管理台

ovirt-engine部署完成后,默认是需要通过域名访问的,我们可以通过配置来通过ip访问,方法如下:
ssh到ovirt-engine这台虚机中,
在/etc/ovirt-engine/engine.conf.d这个目录下,新建“99-custom-sso-setup.conf”这个文件
文件内容为(此处的ip地址根据你的实际环境填写):
然后重启engine服务,
然后可以在浏览器里通过ip访问了:

3.Cockpit无法登录(此浏览器过旧)

notion image
对于在RHEL / CentOS / Rocky Linux上遇到问题,ssh到ovirt-engine这台虚机中,使用以下命令进行修复。

4.ovirt-guest-agent安装

在虚拟机管理页面,可以看到虚拟机无法显示其IP,这时候需要在虚拟机内安装guest服务
notion image
前面的黄色叹号就是警告这个
notion image
  • CentOS 7 / RHEL 7:要安装的软件包称为ovirt-guest-agent
  • CentOS 8/RHEL 8:已更改,软件包称为qemu-guest-agent

CentOS 7

  • 安装
  • 设置自启动(不加--now的话,重启后也能显示虚机IP)
  • 查看运行状态

Ubuntu 16后的版本

  • 安装
  • 设置自启动(不加--now的话,重启后也能显示虚机IP)
  • 查看运行状态

5.解决oVirt证书过期问题

该解决方案适用于数据中心中多于一台主机的情况。

① 查看当前证书有效时间

  • 查看管理台(Engine)证书的有效时间范围
notion image
  • 查看主机(node)证书的有效时间范围
notion image

② 修改时间(选做)

如果已经过期,需要将主机(node)和管理台(Engine)的系统时间到当前证书有效时间范围内,让状态恢复正常。

③ 重新生成证书

Ⅰ 修改证书的有效时间

  • 管理台(Engine)终端
  • vi /usr/share/ovirt-engine/bin/pki-enroll-request.sh
    • notion image

Ⅱ 重新生成根证书

注:默认根证书的有效期为10年,可以不执行该操作
  • 管理台(Engine)终端
    • 生成根证书
      • notion image
    • 备份旧证书,新证书替换旧证书,最后查看情况
      • notion image
       

Ⅲ 设置HA的维护模式为global模式

  • 主机(node)终端

Ⅳ 执行脚本生成证书

  • 管理台(Engine)终端
  • 重启相关服务(Engine)
  • 执行完上面的脚本会重新更新以下证书
notion image

Ⅴ 关闭HA的全局维护模式

  • 主机(node)终端

Ⅵ 修改 engine 数据库信息

  • 管理台(Engine)终端
notion image
  • 重启管理台服务

④ 所有主机执行“注册证书”操作

操作步骤:
  • 首先迁移主机上的虚拟机到其它主机上(关闭也可以)
  • 然后主机执行“维护”操作。
      • notion image
  • 然后点击“注册证书”按钮。
      • notion image
  • 注册证书操作完成后,主机会变为维护状态,点击“激活”按钮将主机激活。
      • notion image
  • 在主机终端中执行以下命令:

⑤ 再次修改时间(选做)

  • 将主机和管理台的系统时间调整到当前时间
    PS:转载来源:oVirt中文社区(www.cnovirt.com
    MySQL 别使用 UTF-8!请用utf8mb4Linux Command - 开源Linux指令查询说明书
    Loading...