ovirt,这是个人第二份工做,一个资本运做特别成功的公司,我很佩服老大们圈钱的能力,可是我并不喜欢他们对技术的追求,也是这个公司,让我明白了,从开源软件的二次开发,其实只要简单的换logo和图片就能够称之为商业软件,可是这种行为真的很难看,虽然我也作过- -java
其实ovirt 很好用,我从3.4一直用到了3.6,到如今公司的私有云平台依旧使用的ovirt作的IAAS层,由于不花钱,其实当时考虑过vmware的破解版,可是vmware想改一些东西太麻烦,搞这个起码还能够很愉快的登录到后台,出错能够进行恢复,下面来写一下关于使用一年ovirt的心得与体会吧node
从如下几点来讲吧python
1,什么是ovirtmysql
2,ovirt的组织架构sql
3,ovirt的三种搭建模式数据库
4,ovirt的排错centos
5,ovirt-engine cleanup方法api
6,ovirt-engine backup-recovery 方法服务器
1,什么是ovirt架构
ovirt是rhev的开源版,rhev全称为Red Hat Enterprise virtualization,红帽公司对企业推出的商业私有云平台的一个软件。其中能够作服务器虚拟化,桌面虚拟化,比较能拿得出手的功能
1,支持spice协议、RDP协议、vnc协议
2,支持物理设备直通
3,cloud-init,开机时作一些自动化安装工做,例如配置主机名,网卡信息,能够定义脚本装一下软件包等等。。
4,貌似能够直接接AWS的存储或者openstack的cinder,可是没用过,公司没有对应的环境
5,支持各类存储,nfs,posix,iscsi,FC
2,ovirt的组织架构
1,网页,网页采用GWT架构,基本国内没有作相关开发的人员,就这个编译环境搭建就特别麻烦,java写的,3版本的ovirt性能不好,若是客户端的机器性能比较低,那么虚拟机太多批量开机时都有可能卡死,网页支持java的api,和python的sdk接口,能够直接调用作二次开发
2,底层,kvm很少说了,就是virsh那一套
3,数据库,神奇的pgsql。用这个数据库,我只想说,老外果真跟中国人不同,中国人确定会选mysql。
4,操做系统,红帽作的,确定是rhel和centos 系列的系统
5,系统原生兼容glusterfs
3,ovirt的三种搭建模式
ovit分为管理端与运算端,管理端他们叫为engine,运算端统称为node,三种搭建模式分别为allinone,hosted-engine,普通模式
1,allinone,这种模式3.6之后就再也不支持了,以前基本做为测试环境
2,hosted-engine,管理端高可用模式,其中engine做为一台虚拟机漂在全部的node节点上,若是当engine所在的node节点锁坏,那么会自动迁移到另外一个node节点上。
3,普通模式,engine一台机器,node一台机器。engine是单点
4,ovirt的排错,遇到的问题还算很多,整理的文档也慢慢的都放在了这个博客上吧
1,ovirt-engine没法接入域控用户认证
2,如何解锁虚拟机,当engine管理页面中虚拟机被锁死了,那么可能须要进入后台进行一些数据库相关操做
#psql engine -U postgres -c "UPDATE vm_dynamic set status=0 where vm_guid=(select vm_guid from vms where vm_name='Win2008_QBPT');"
3,如何使用glusterfs服务,若是不使用原生的gluster服务,须要在iptables里开启对应端口
#vi /etc/sysconfig/iptables
-A INPUT -p tcp -m multiport --dports 24007:24047 -j ACCEPT
-A INPUT -p tcp -m multiport --dports 38465:38467 -j ACCEPT
4,模板解锁,同2同样,应付模板锁定状况
#psql engine -U postgres -c "update vm_static set template_status=0 where entity_type::text = 'TEMPLATE'::text and vm_name='模版名称'"
5,浪潮服务器安装软件后,没法建立虚拟机,他们的服务器太垃圾,出场没有UUID,须要找售后刷一下UUID
6,访问engine管理端页面登录帐号后,无限弹出请求服务器失败,状态码为404,
1,ip冲突
2,DNS解析错误
7,磁盘解锁
#update images set imagestatus=1 where imagestatus=2;
8,开启PCIE透传功能
(1)更改BIOS配置,在南北桥中有选项intel 为 vt-d,ADM为IOMMU,设置为enable开启状态,重启
(2)进入pcie硬件所在的node节点 调出命令行输入 #vi /boot/grub2/grub.cfg,添加intel_iommu = on
(3)重启node节点,重启后#dmesg | grep -e DMAR -e IOMMU查看透传功能是否开启
后续的操做步骤不方便传到博客上。请谅解,后续都是网页点点点了
(4)概念理论请百度搜kvm passthrough
9,ovirt更改时间
10,node节点忽然non-resposive,重启以后engine服务error vdsm没法启动
缘由:node节点硬盘空间满了
11,multipath:error getting device报错解决方法
1,在/etc/multipath.conf添加
blacklist {
devnode "^sda$"
devnode "^vda$"
}
2,持久化配置文件
# persist /etc/multipath.conf
5,ovirt-engine cleanup方法
#service ovirt-ha-broker stop
#service ovirt- ha-agent stop
#systemctl disable ovirt-ha-broker
#systemctl disable ovirt-ha-agent
#service vdsmd stop
#service supervdsmd stop
#service libvirtd stop
#rm /etc/libvirt/libvirtd.conf
#cp -r $CLEAN/libvirt/* /etc/libvirt/
#rm /etc/libvirt/nwfilter/vdsm-no-mac-spoofing.xml
#ln -s ../default.xml /etc/libvirt/qemu/networks/autostart
#cp -r $CLEAN/logrotate.d/* /etc/logrotate.d/
#rm /etc/ovirt-hosted-engine/answers.conf
#rm -rf /etc/ovirt-hosted-engine/firewalld
#cp -r $CLEAN/ovirt-hosted-engine-ha/* /etc/ovirt-hosted-engine-ha/
#cp -r $CLEAN/sysconfig/* /etc/sysconfig/
#rm /etc/vdsm/vdsm.conf
#rm /etc/pki/vdsm/*/*.pem
#/bin/rm /etc/pki/CA/cacert.pem
#/bin/rm /etc/pki/libvirt/*.pem
#/bin/rm /etc/pki/libvirt/private/*.pem
#chkconfig --levels 345 libvirtd on
6,ovirt-hosted-engine backup-recovery方法,个人新浪微博里有,地址https://weibo.com/p/1001603933316213527055