ovirt4.1 搭建自承载引擎的虚拟化平台

本贴最后更新于 2394 天前,其中的信息可能已经沧海桑田

1. 平台系统及其他相关服务安装

1.1 内网DNS服务安装配置

安装bind相关服务

yum install bind bind-chroot bind-utils -y

配置bind

安装bind-chroot之后,bind的主配置文件如下

/var/named/chroot/etc/named.conf                          #bind服务主配置文件

/var/named/chroot/var/named                                 #域的zone配置文件

配置named.conf文件

内网服务器只需保留基本配置

options {
        directory       "/var/named";
        listen-on port 53       { any; };            #对所有地址生效
        listen-on-v6 port 53    { ::1; };
};

zone "meskvm.com" { #配置 meskvm 域名解析
type master;
file "meskvm.com.zone"; #meskvm 域的解析文件名
};
zone "0.168.192.in-addr.arpa" IN { #配置反向解析
type master;
file "192.168.0.rev"; #存放解析信息的文件名
};

配置域的zone配置文件

cd /var/named/chroot/var/named

vim meskvm.com.zone                                          #创建的文件名要与之前的配置文件相对应

				$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
       NS      @
       A       127.0.0.1
       AAAA    ::1
       IN      MX      10      mail.meskvm.com.     #邮件的MX记录
www   IN      A       192.168.0.16
engine  IN      A       192.168.0.213
mail    IN      A       192.168.0.217

重启named服务

service named restart

测试解析是否成功

dig engine meskvm.com

配置反向解析

vim 192.168.0.rev

			$TTL 1D
@       IN SOA  @ meskvm.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
       		NS      @
      		A       127.0.0.1
      		AAAA    ::1
11      PTR     node51.meskvm.com.
213     PTR     engine.meskvm.com.
211     PTR     node211.meskvm.com.

测试反向解析

nslookup 192.168.0.213

1.2 配置共享存储服务

配置nfs共享存储服务

yum install nfs-utils -y

mkdir /data/kvm/storage

chmod -R 777 /data/kvm/storage

echo "/data/kvm/storage *(rw)" >> /etc/exports

service nfs restart

chkconfig nfs on

配置glusterfs分布式文件系统

yum install glusterfs glusterfs-server glusterfs-fuse

chkconfig glusterfsd on

chkconfig glusterd on

service glusterfsd start

service glusterd start

mkdir /data/gluster

gluster peer probe 192.168.0.219                 #本机217不需要添加自己

gluster peer status

gluster volume create gv0 replica 2 transport tcp 192.168.0.217:/data/gluster 192.168.0.219:/data/gluster force

gluster volume start gv0

gluster volume info

共享卷信息如图01所示

图01

2. WEB管理端hosted-engine安装部署

2.1 使用ovirt的node镜像安装系统

下载node4镜像

http://mirror.isoc.org.il/pub/ovirt/ovirt-4.1/iso/ovirt-node-ng-installer/ovirt-node-ng-installer-ovirt-4.1-2017020112.iso

通过光盘安装系统

如图02所示选择 Install oVirt Node 4.1.0inux 7 安装node系统

选择系统语言。 图03

设定日期和时间。 图04

设定键盘。 图05

磁盘分区设置。 图06

开始安装ovirt-node。 图07

2.2 安装hosted-engine

自承载(self-hosted)引擎就是一个虚拟化环境,它的引擎(manager)运行在由这个引擎管理的一台主机的虚拟机上。虚拟机会作为主机配置的一部分被创建,在主机配置的过程中会并行安装并配置引擎。使用自承载引擎的主要好处是,部署ovirt时对硬件的要求更少,这是因为引擎本身在一个虚拟机上运行,而不再需要一个屋里硬件。另外,引擎会被配置为高可用性。当运行Manger的虚拟机出于维护模式,或出现故障时,虚拟机会被自动迁移到环境中的另一台宿主机上。为了实现高可用功能,最少需要两个自承载引擎主机

配置hosted-engine

执行命令 hosted-engine --deploy 并确认基础信息。   图08

按需求确认相关信息。  图09

设置engine的管理员密码及相关信息。 图10

配置信息确认。 图11

 确认配置完成。 图12

 用浏览器打开管理平台页面。 图13-14

3. 宿主机安装

3.1 通过ovirt的node镜像光盘安装宿主机系统

参照章节2.1

3.2 将宿主机加入ovirt-engine管理平台

在浏览器打开控制台并添加主机。 图15-16

3.3 创建存储域及ISO域

创建存储域用来存储虚拟磁盘。 图17

 

创建ISO域,用来存储安装虚拟机时需要的ISO镜像文件。 图18

导入ISO镜像文件

在engine主机命令行界面输入命令 engine-iso-uploader list 查看ISO域列表。 图19

执行命令导入ISO镜像文件。 图20

3.4 创建虚拟机

创建虚拟机平配置磁盘及网络等信息。 图21

为虚拟机分配资源。 图22

配置控制台。 图23

配置主机选项。 图24

配置主机高可用性。 图25

设置光盘启动,然后开始安装虚拟机系统。 图26

虚拟机开机后,下载链接信息,并使用VNC连接虚拟机。 图27

VNC连接虚拟主机方法。 图28-29

安装完成后,即可关闭主机。下次启动主机时即从磁盘启动了。 图30-31

4. 用户配置管理

4.1 LDAP服务器搭建

安装ldap相关服务及软件

yum update -y

yum install openldap compat-openldap openldap-clients openldap-servers openldap-server-sql openldap-devel migrationtools -y

systemctl start slapd

systemctl enable slapd

配置ldap服务

执行以下命令,创建LDAP管理员密码,后文将用到此密码,请记录下来。 图32

创建/etc/openldap/slapd.d/cn=confiig/hdb.ldif  文件,并输入以下内容

dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcSuffix
olcSuffix: dc=meskvm,dc=com

dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootDN
olcRootDN: cn=ldapadm,dc=meskvm,dc=com

dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootPW
olcRootPW: {SSHA}7M+hzFZsWWwEoKrj/vGoilNE69zNVFwU

应用hdb.ldif文件。图33

查看被修改的文件 olcDatabase={2}hdb.ldif。图34

创建/etc/openldap/slapd.d/cn=config/monitor.ldif 文件,并输入以下内容。

dn: olcDatabase={1}monitor,cn=config
changetype: modify
replace: olcAccess
olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external, cn=auth" read by dn.base="cn=ldapadm,dc=meskvm,dc=local" read by * none

执行以下命令应用配置文件。 图35

创建签名证书和私钥,并修改所有者。 图36

创建/etc/openldap/slapd.d/certs.ldif 文件并输入以下内容

dn: cn=config
changetype: modify
replace: olcTLSCertificateFile
olcTLSCertificateFile: /etc/openldap/certs/meskvmcert.pem

dn: cn=config
changetype: modify
replace: olcTLSCertificateKeyFile
olcTLSCertificateKeyFile: /etc/openldap/certs/meskvmkey.pem

执行以下命令应用配置文件,并查看相关修改结果。 图37

执行以下命令确认配置文件正确性。 图38

执行以下命令复制数据库文件到指定目录

cp /usr/share/openldap-servers/DB_CONFIGexample /var/lib/ldap/DB_CONFIG

chown ldap.ldap /var/lib/ldap/*

执行以下命令,将所有的配置LDAP server,添加到LDAP schemas中

ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/cosine.ldif 
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/nis.ldif 
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/collective.ldif 
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/corba.ldif 
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/core.ldif 
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/duaconf.ldif 
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/dyngroup.ldif 
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/inetorgperson.ldif 
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/java.ldif 
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/misc.ldif 
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/openldap.ldif 
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/pmi.ldif 
ldapadd -Y EXTERNAL -H ldapi:/// -D "cn=config" -f /etc/openldap/schema/ppolicy.ldif	

使用migration tools  创建base.ldif文件

cd /usr/share/migrationtools

sed -i -e 's/ou=Group/ou=Groups/' migrate_common.ph
sed -i -e 's/padl.com/meskvm.com/' migrate_common.ph
sed -i -e 's/dc=padl,dc=com/dc=meskvm,dc=com/' migrate_common.ph
sed -i -e 's/$EXTENDED_SCHEMA = 0/$EXTENDED_SCHEMA = 1/' migrate_common.ph
./migrate_base.pl > /etc/openldap/base.ldif
cat /etc/openldap/base.ldif

确认base.ldif文件信息。 图39

执行以下命令应用base.ldif文件。图40

ldapadd –x –W –D “cn=ldapadm,dc=meskvm,dc=com” –f /etc/openldap/base.ldif

执行以下命令创建用户生成文件mestest1.ldif。图41

应用mestest1.ldif文件。图42

执行以下命令测试新增用户。 图43

配置防火墙及日志记录

firewall-cmd --permanent --add-service=ldap

firewall-cmd --reload

echo "local4.* /var/log/ldap.log" >> /etc/rsyslog.conf

systemctl restart rsyslog

至此LDAP服务配置完成

4.2 配置engine服务器与ldap服务相连

以下操作在虚拟平台管理主机上操作。图44

执行命令安装相关软件

yum install ovirt-engine-extension-aaa-ldap-setup ovirt-engine-extension-aaa-ldap -y

执行命令 ovirt-engine-extension-aaa-ldap-setup 并按相关提示完成配置。 图45-47

通过管理平台查看相关域用户。 图48

 

  • B3log

    B3log 是一个开源组织,名字来源于“Bulletin Board Blog”缩写,目标是将独立博客与论坛结合,形成一种新的网络社区体验,详细请看 B3log 构思。目前 B3log 已经开源了多款产品:SymSoloVditor思源笔记

    1090 引用 • 3467 回帖 • 297 关注
  • Linux

    Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 Unix 的多用户、多任务、支持多线程和多 CPU 的操作系统。它能运行主要的 Unix 工具软件、应用程序和网络协议,并支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

    914 引用 • 930 回帖 • 1 关注
  • 虚拟化
    6 引用 • 22 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...

推荐标签 标签

  • OpenShift

    红帽提供的 PaaS 云,支持多种编程语言,为开发人员提供了更为灵活的框架、存储选择。

    14 引用 • 20 回帖 • 596 关注
  • Caddy

    Caddy 是一款默认自动启用 HTTPS 的 HTTP/2 Web 服务器。

    10 引用 • 54 回帖 • 125 关注
  • 钉钉

    钉钉,专为中国企业打造的免费沟通协同多端平台, 阿里巴巴出品。

    15 引用 • 67 回帖 • 380 关注
  • 旅游

    希望你我能在旅途中找到人生的下一站。

    83 引用 • 894 回帖
  • CSDN

    CSDN (Chinese Software Developer Network) 创立于 1999 年,是中国的 IT 社区和服务平台,为中国的软件开发者和 IT 从业者提供知识传播、职业发展、软件开发等全生命周期服务,满足他们在职业发展中学习及共享知识和信息、建立职业发展社交圈、通过软件开发实现技术商业化等刚性需求。

    14 引用 • 155 回帖
  • FreeMarker

    FreeMarker 是一款好用且功能强大的 Java 模版引擎。

    23 引用 • 20 回帖 • 427 关注
  • GitHub

    GitHub 于 2008 年上线,目前,除了 Git 代码仓库托管及基本的 Web 管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。正因为这些功能所提供的便利,又经过长期的积累,GitHub 的用户活跃度很高,在开源世界里享有深远的声望,并形成了社交化编程文化(Social Coding)。

    207 引用 • 2031 回帖
  • BAE

    百度应用引擎(Baidu App Engine)提供了 PHP、Java、Python 的执行环境,以及云存储、消息服务、云数据库等全面的云服务。它可以让开发者实现自动地部署和管理应用,并且提供动态扩容和负载均衡的运行环境,让开发者不用考虑高成本的运维工作,只需专注于业务逻辑,大大降低了开发者学习和迁移的成本。

    19 引用 • 75 回帖 • 609 关注
  • Solo

    Solo 是一款小而美的开源博客系统,专为程序员设计。Solo 有着非常活跃的社区,可将文章作为帖子推送到社区,来自社区的回帖将作为博客评论进行联动(具体细节请浏览 B3log 构思 - 分布式社区网络)。

    这是一种全新的网络社区体验,让热爱记录和分享的你不再感到孤单!

    1424 引用 • 10041 回帖 • 469 关注
  • JavaScript

    JavaScript 一种动态类型、弱类型、基于原型的直译式脚本语言,内置支持类型。它的解释器被称为 JavaScript 引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在 HTML 网页上使用,用来给 HTML 网页增加动态功能。

    710 引用 • 1173 回帖 • 192 关注
  • Node.js

    Node.js 是一个基于 Chrome JavaScript 运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞 I/O 模型而得以轻量和高效。

    138 引用 • 268 回帖 • 219 关注
  • 30Seconds

    📙 前端知识精选集,包含 HTML、CSS、JavaScript、React、Node、安全等方面,每天仅需 30 秒。

    • 精选常见面试题,帮助您准备下一次面试
    • 精选常见交互,帮助您拥有简洁酷炫的站点
    • 精选有用的 React 片段,帮助你获取最佳实践
    • 精选常见代码集,帮助您提高打码效率
    • 整理前端界的最新资讯,邀您一同探索新世界
    488 引用 • 383 回帖
  • Sublime

    Sublime Text 是一款可以用来写代码、写文章的文本编辑器。支持代码高亮、自动完成,还支持通过插件进行扩展。

    10 引用 • 5 回帖 • 2 关注
  • Firefox

    Mozilla Firefox 中文俗称“火狐”(正式缩写为 Fx 或 fx,非正式缩写为 FF),是一个开源的网页浏览器,使用 Gecko 排版引擎,支持多种操作系统,如 Windows、OSX 及 Linux 等。

    7 引用 • 30 回帖 • 457 关注
  • WebSocket

    WebSocket 是 HTML5 中定义的一种新协议,它实现了浏览器与服务器之间的全双工通信(full-duplex)。

    48 引用 • 206 回帖 • 408 关注
  • 单点登录

    单点登录(Single Sign On)是目前比较流行的企业业务整合的解决方案之一。SSO 的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。

    9 引用 • 25 回帖 • 8 关注
  • Flutter

    Flutter 是谷歌的移动 UI 框架,可以快速在 iOS 和 Android 上构建高质量的原生用户界面。 Flutter 可以与现有的代码一起工作,它正在被越来越多的开发者和组织使用,并且 Flutter 是完全免费、开源的。

    39 引用 • 92 回帖 • 8 关注
  • MongoDB

    MongoDB(来自于英文单词“Humongous”,中文含义为“庞大”)是一个基于分布式文件存储的数据库,由 C++ 语言编写。旨在为应用提供可扩展的高性能数据存储解决方案。MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似 JSON 的 BSON 格式,因此可以存储比较复杂的数据类型。

    90 引用 • 59 回帖 • 4 关注
  • CentOS

    CentOS(Community Enterprise Operating System)是 Linux 发行版之一,它是来自于 Red Hat Enterprise Linux 依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定的服务器以 CentOS 替代商业版的 Red Hat Enterprise Linux 使用。两者的不同在于 CentOS 并不包含封闭源代码软件。

    238 引用 • 224 回帖 • 1 关注
  • Vditor

    Vditor 是一款浏览器端的 Markdown 编辑器,支持所见即所得、即时渲染(类似 Typora)和分屏预览模式。它使用 TypeScript 实现,支持原生 JavaScript、Vue、React 和 Angular。

    308 引用 • 1658 回帖 • 1 关注
  • IPFS

    IPFS(InterPlanetary File System,星际文件系统)是永久的、去中心化保存和共享文件的方法,这是一种内容可寻址、版本化、点对点超媒体的分布式协议。请浏览 IPFS 入门笔记了解更多细节。

    20 引用 • 245 回帖 • 232 关注
  • LeetCode

    LeetCode(力扣)是一个全球极客挚爱的高质量技术成长平台,想要学习和提升专业能力从这里开始,充足技术干货等你来啃,轻松拿下 Dream Offer!

    209 引用 • 72 回帖
  • gRpc
    10 引用 • 8 回帖 • 48 关注
  • MySQL

    MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司。MySQL 是最流行的关系型数据库管理系统之一。

    673 引用 • 535 回帖
  • ngrok

    ngrok 是一个反向代理,通过在公共的端点和本地运行的 Web 服务器之间建立一个安全的通道。

    7 引用 • 63 回帖 • 597 关注
  • Hibernate

    Hibernate 是一个开放源代码的对象关系映射框架,它对 JDBC 进行了非常轻量级的对象封装,使得 Java 程序员可以随心所欲的使用对象编程思维来操纵数据库。

    39 引用 • 103 回帖 • 676 关注
  • 又拍云

    又拍云是国内领先的 CDN 服务提供商,国家工信部认证通过的“可信云”,乌云众测平台认证的“安全云”,为移动时代的创业者提供新一代的 CDN 加速服务。

    21 引用 • 37 回帖 • 505 关注