---
title: "Ovirt 安装"
date: 2019-10-30T11:16:47+08:00
lastmod: 2019-10-30T11:16:47+08:00
tags: ["ovirt", "kvm", "虚拟化"]
categories: ["kvm"]
---

## 版本
Ovirt 4.1.7

## 操作系统初始配置
 角色    | 主机名  | 配置                 | IP          | 版本               | /etc/hosts 追加行
-------- | ------- | -------------------- | ----------- | ------------------ | -------------------
管理节点 | engine  | CPU: 多核<BR>RAM: 2G | 10.0.16.160 | CentOS 7.4 Minimal | 10.0.16.160 engine engine.ovirt<BR>10.0.16.161 host161
计算节点 | host161 | CPU: 多核<BR>RAM: 4G | 10.0.16.161 | CentOS 7.4 Minimal | 10.0.16.161 host161

- 建议保留操作系统自带的 NetworkManager 和 SELinux 服务
- 建议禁用操作系统自带的 firewalld 服务
- 时间同步，编辑 /etc/chrony.conf，修改 server 地址如下
    ```
    server s1c.time.edu.cn iburst
    server s2m.time.edu.cn iburst
    server s1b.time.edu.cn iburst
    server s1e.time.edu.cn iburst
    server s2a.time.edu.cn iburst
    server s2b.time.edu.cn iburst
    ```

- 重启时间同步服务
    ```
    systemctl restart chronyd
    ```

- 存储服务暂时采用计算节点的本机 NFS

## 导入 Ovirt yum 源
- 创建 ovirt.repo，内容如下
    ```
    [ovirt-4.1]
    name=Latest oVirt 4.1 Release
    baseurl=http://mirror.isoc.org.il/pub/ovirt/ovirt-4.1/rpm/el7/
    enabled=1
    skip_if_unavailable=0
    gpgcheck=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-ovirt-4.1
    [ovirt-4.1-epel]
    name=Extra Packages for Enterprise Linux 7 - $basearch
    baseurl=https://mirrors.tuna.tsinghua.edu.cn/epel/7/x86_64/
    failovermethod=priority
    enabled=1
    includepkgs=epel-release,python-uinput,puppet,python-lockfile,python-cpopen,python-ordereddict,python-pthreading,python-inotify,python-argparse,novnc,python-ply,python-kitchen,python-daemon,python-websockify,livecd-tools,spice-html5,mom,python-IPy,python-ioprocess,ioprocess,safelease,python-paramiko,python2-paramiko,python2-crypto,libtomcrypt,libtommath,python-cheetah,python-ecdsa,python2-ecdsa,python-markdown,rubygem-rgen,ovirt-guest-agent*,userspace-rcu,protobuf-java,objenesis,python34*,hystrix-core,archaius-core,rxjava,jctools,hystrix-metrics-event-stream,jackson-core,python-simplejson
    gpgcheck=1
    gpgkey=https://mirrors.tuna.tsinghua.edu.cn/epel/RPM-GPG-KEY-EPEL-7
    [ovirt-centos7]
    name=ovirt 4.1 CentOS 7
    baseurl=https://mirrors.tuna.tsinghua.edu.cn/centos/7/virt/x86_64/ovirt-4.1/
    enabled=1
    gpgcheck=0
    [centos-opstools-release]
    name=CentOS-7 - OpsTools - release
    baseurl=https://mirrors.tuna.tsinghua.edu.cn/centos/7/opstools/x86_64/
    enabled=1
    gpgcheck=0
    [patternfly-patternfly1]
    name=Copr repo for patternfly1 owned by patternfly
    baseurl=https://copr-be.cloud.fedoraproject.org/results/patternfly/patternfly1/epel-7-$basearch/
    type=rpm-md
    skip_if_unavailable=True
    gpgcheck=1
    gpgkey=https://copr-be.cloud.fedoraproject.org/results/patternfly/patternfly1/pubkey.gpg
    repo_gpgcheck=0
    enabled=1
    enabled_metadata=1
    ```

- 分发 ovirt.repo 到全部服务器的 /etc/yum.repos.d/ 下
- 下载[RPM-GPG-ovirt-4.1](http://mirror.isoc.org.il/pub/ovirt/keys/RPM-GPG-ovirt-v2)，分发到全部服务器的 /etc/pki/rpm-gpg/ 下
- 在全部服务器上，执行以下命令:
    ```bash
    yum clean all
    yum makecache fast
    yum repolist #此时能看到新增加的 ovirt.repo 文件中的 yum 源
    ```

## 配置管理节点(engine)
- 在 engine 上分发免密登陆各计算节点(host)的密钥
    ```bash
    ssh-keygen #全部默认回车即可
    ssh-copy-id host161
    ```
- 安装 ovirt-engine 软件包
    ```bash
    yum install ovirt-engine
    ```
- 配置 engine
    ```bash
    engine-setup
    #进入交互中，根据提示选择适合自己的选项
    ```
- 配置完成后，engine 服务启动
- 在个人 PC 上配置好 "10.0.16.160 engine engine.ovirt"，浏览器打开 https://engine.ovirt

## 配置计算节点(host161)
- 打开 ovirt 管理 web 界面: http://engine.ovirt，以 admin 身份登陆
- 打开 "主机" 标签页，单击左上角的 "新建"
- 在打开 "新建主机" 窗口中，选择 "主机集群"，填写 "名称"、"地址"、"ssh端口"、"用户名" 等信息
- 选择 "ssh公共密钥"，复制右侧文本框中的公钥到目标计算节点(host161)的 /root/.ssh/authorized_keys 中
- 单击 "确定"，host161 开始自动安装，通过 web 界面底部的详情窗格中可以看到安装过程
- host 安装完成后会自动启动，状态变成 "up"

## 配置存储
- 服务器数量有限，这里直接在计算节点上启动 NFS
- 在 host161 上编辑 /etc/exports，增加如下配置
    ```
    /NFS/iso1 10.0.16.160(rw,no_all_squash,async)
    /NFS/iso1 10.0.16.161(rw,no_all_squash,async)
    /NFS/data1 10.0.16.161(rw,no_all_squash,async)
    ```
- 在 host161 上创建可读写的 nfs 目录，启动 NFS
    ```bash
    mkdir /NFS/{data1,iso1}
    chmod -R 0777 /NFS
    systemctl start nfs
    systemctl enable nfs
    ```
- 打开 ovirt 管理 web 界面: http://engine.ovirt，以 admin 身份登陆
- 打开 "存储" 标签页，单击左上角的 "新建域"
- 在打开的 "新建域" 窗口中，选择 "域功能"-"Data", "存储类型"-"NFS", "使用主机"-"host161", "名称"-"data1"
- 在 "导出路径" 文本框中输入: 10.0.16.161:/NFS/data1
- 单击 "确定"，DATA 存储域 "data1" 开始自动配置
- 自动配置成功后，该 DATA 存储域状态自动切换为 "Active"
- 再次单击 "新建域"，在 "新建域" 窗口中选择 "域功能"-"ISO", "名称"-"iso1", 其他项与 DATA 存储域配置一致
- 在 "导出路径" 文本框中输入: 10.0.16.161:/NFS/iso1
- 单击 "确定"，ISO 存储域 "iso1" 开始自动配置，完成后，该存储域状态自动切换为 "Active"

## 导入操作系统 iso
- 前面的存储创建好后，ovirt 就可以用了，接下来是导入 iso 镜像
- 从 engine 导入 iso 文件
    ```bash
    engine-iso-uploader --iso-domain=iso1 upload {filename.iso}
    #密码是 web 管理界面 admin 用户的密码
    ```
- iso 文件导入成功后，就可以用来创建虚拟机了

