CTDB – GlusterFS NFS Event Monitor Script

Posted on by 2 comments

There is no CTDB monitor script for the GlusterFS NFS implementation as you cannot use the normal NFS event script that comes with CTDB, this is because GlusterFS manages NFS.

Without a proper monitoring script CTDB will not initiate a failover when NFS services fail, below I have created a script to solve this problem.


CentOS 7 – SELinux

I am assuming you already have SELinux working and configured for your GlusterFS / CTDB environment. If so you will need to add an additional policy for my event script to work properly.

Continue reading

Category: Coding, CTDB

Python – Generate or Apply Rules For Iptables to Block DNS Queries Based on Domain Names

Posted on by 1 comment

This code will generate or apply rules for IPtables to block DNS queries based on domain names. I wrote this script because I did not want to manually convert each section of the domain into hex with their respective sizes every time I needed to block a random set of domains.



Category: Coding, Python

Installing oVirt 3.5 on CentOS 7 (Hosted Engine)

Posted on by 22 comments

I have had many people come to my blog looking how to install oVirt 3.5 software on the new CentOS 7. Much of this content is the same as my 3.4 post, but I thought I would keep it separate. Below are simple step by step instructions for installing the node and getting it configured for the hosted engine.

Installation Requirements

Please Note: Installing Hosted Engine on CentOS 7 requires oVirt 3.5.1
Please Note: Both the node and engine will be running CentOS 7 (Minimal Installation)
Please Note: Ensure the host is fully updated via “yum update” and rebooted before proceeding



Ensure you have set up hostnames for the host and engine. If you do not have a DNS server configured and you are only testing oVirt on a single server, you can use /etc/hosts instead. I have the following:

Engine: Hostname: engine.xrsa.net, IP Address:
Hostname: ovirt01.xrsa.net, IP Address:


Ensure you have set up NFS mount points for the engine and virtual machines. If you do not have a shared NFS server and you are only testing oVirt on a single server, you can configure NFS locally on the host instead as shown below.

Please Note: UID/GID of 36:36 is vdsm:kvm which is created when you install oVirt. However, you do not require this user to be created for NFS to work properly.

Verify you can see and properly mount the correct mount points.

Continue reading

Category: Virtualization

Running VMware ESXi under oVirt

Posted on by 9 comments

Getting VMware ESXi to install and run properly under oVirt was an interesting experience. However, it does require patching Qemu.

If you’re not too fussed about patching SRPMS, I have already patched and uploaded the RPMS for you.

Please note: I am assuming your oVirt host is Fedora 20. You may skip Step 1 if you have already installed my patched RPMS. However, read on if your curious why the patches are needed.

Step 1 – Patching Qemu

Current SRPM for patching Qemu is here: qemu-1.6.2-7.fc20.src.rpm

Please note: I am using the SRPM from the Fedora repository instead of the latest source from Qemu. I prefer it this way as it reduces potential compatibility issues.

QEMU Patch1: VMware IO Port Emulation

When you install ESXi it will attempt to use this incomplete emulated port and PSOD, you need to disable this in Qemu itself with the following patch:

Dagrh has submitted a patch upstream, which is a better version of the above patch and its merged with all major versions of qemu.

QEMU Patch2: vmxnet3 Does Not Pad Short Frames

I fully installed VMware ESXi and realized networking was not working as expected. It was pretty bizarre as the ESXi guest would receive packets from a routed network without issues.

Oddly though, any Linux guests on the same bridge and host could communicate with each other but failed to communicate with the ESXi guest itself or the guests ESXi hosted. I have to thank Paul Sherratt for helping me figure out this odd networking issue. The problem was that short Ethernet frames were not being padded, ESXi would simply discard these frames including ARP Requests and this prevented communication.

So I thought the best way to fix this problem was to write a patch and get vmxnet3 to pad short frames itself. This will ensure frames do not get discarded by the ESXi guest.

I have submitted this patch upstream. This patch has been merged with all major versions of qemu.

Continue reading

Category: Virtualization

Installing oVirt 3.4 (Hosted Engine)

Posted on by 0 comment

There are many free virtualization technologies out there such as:

– VMware ESXi / VMware Player
– VirtualBox
– KVM / QEMU (Supports Live Migration)

However, these free versions offer no enterprise features and only allow you to manage a single server. This means no cluster management, vMotion or HA.

This moves us on to oVirt, which is the free upstream project of RHEV. oVirt supports many features such as vMotion and HA. The hosted engine allows you to run the engine as a virtual machine on top of the hosts it manages, this means you now utilize HA for the engine itself.

Installation Requirements

Please Note: Fedora 20 / CentOS 7 / RHEL 7 does not work with the hosted engine in oVirt 3.4. If you wish to use these please follow my guide: Installing oVirt 3.5 on CentOS 7 (Hosted Engine)


Operating System

CentOS 6.5 or Fedora 19 / 20

For the oVirt host install, I am going to use Fedora 20 and for the oVirt hosted engine install I am going to use Fedora 19. Don’t worry though I will include installing with CentOS 6.5 as well.

Continue reading

Category: Virtualization

New Blog

Posted on by 0 comment

Hello World

This is my new blog, I have not long finished configuring my new server for this site.

I am going to use this blog to post things that I have dealt with and things that I find interesting. Hopefully someone out there may find some use out of it, if only for the entertainment value if nothing else.

Category: Misc