Install WebVirtMgr+KVM on Fedora 27

Fedora 27 Final hasn’t dropped yet (as of today, Nov 3, 2017) but it won’t stop those technologists among us who insist on showing some poor, defenseless code who’s boss.

After successfully surviving an upgrade from Fedora 25 to 27 Beta I knew it was time to keep moving forward.  Being a long time VMware and XenServer fan I have always been a bit spoiled when it comes to managing virtual machines.  Each hypervisor provides a fairly intuitive management interface with very little hassle in setting it up.

KVM has an abundance of available management tools here:

My requirements for a hypervisor manager were pretty short:

  1. WebUI
  2. “Easy” install
  3. Simple configuration

I would have likely found success MUCH FASTER had I not insisted on using the latest Beta release of Fedora.  For example, oVirt 4.2 is a beautiful solution that is the foundation of RHV.  However it only has repo’s for CentOS/RHEL/SUSE.

I REALLY wanted to use the on-prem, opensource version of which uses best of breed modern tech stack (MongoDB, ElasticSearch, RabbitMQ, Docker) but I couldn’t get it through the “create a user” stage and chose to pick our headline technology.  I’m going to chalk this up to some minor changes to the way that Docker-Compose works on FC27 and will DEFINITELY be trying this again in a few months when FC27 has been GA for a while.

Installing WebVirtMgr

Apologies to my former co-worker Thomas Cameron but I disabled SELinux and the firewall.  It’s a home server and I’m not going to enhance my career by mastering SELinux at this stage.

Disable firewall
sudo systemctl disable firewalld
sudo systemctl stop firewalld

Minor semantic change from yum to dnf

sudo dnf install -y git python-pip libvirt-python libxml2-python python-websockify supervisor nginx

If you receive an error you will need to fix the permissions:

usermod -a -G libvirt nginx
usermod -a -G kvm nginx


Windows 10 Anniversary Edition Build


Install the Linux Subsystem for Windows Anniversary Update:

Tabbed Console provided by ConEMU:

Create custom task for launching BASH to fix the following:

  • Launch BASH in the virtual home dir – Don’t muck around with Windows filesystem from Bash on Windows.  AT THE TIME OF THIS WRITING 8.18.2017 – Some of the permission mapping isn’t fully implemented and you can accidentally lose access to files via Explorer.  Keep the two worlds separate if you can spare the space.
  • Fix arrow keys in VIM.  (After 20+ years of working on *nix I haven’t broken the habit of using the arrow keys yet)
%windir%\System32\bash.exe ~ -cur_console:p



BSON 16MB limit is not that limiting

The maximum BSON document size is 16 megabytes.  — Source: MongoDB Docs

Here are the approximate English version word counts of some popular novels:

Harry Potter
The Philosopher(Sorcerer)’s Stone – 76,944 words @ 429K
The Chamber of Secrets – 85,141 words @ 481K
The Prisoner of Azkaban – 107,253 words @ 597K
The Goblet of Fire – 190,637 words @ 1100K
The Order of the Phoenix – 257,045 words @ 1500K
The Half-Blood Prince – 168,923 words @ 969K
The Deathly Hallows – 198,227 words @ 1200K
TOTAL RAW Text Size = 6276 KB or 6.2 MB

Lord of the Rings
The Hobbit – 95,022 words @ 522K
Fellowship of the Ring – 177,227 words @ 1005K
Two Towers – 143,436 words @ 820K
Return of the King – 134,462 words @ 711K
TOTAL RAW Text Size = 3058 KB or 3 MB

Customac or Hackintosh – It just works

Story time!

In March of 2013 I decided to build a new desktop for the sole purpose of running OSX.  I’ve enjoyed getting my job done on a Macbook for several years and thought having a desktop version would just be dandy.  Being a tinkerer, I couldn’t resist the challenge and flexibility of being able to boot into any OS of my choice.  Parts were ordered and I started with Mavericks.

It worked fine until my first update.  Not that the update broke anything but the anxiety of keeping up with updates while maintaining a 100% operational system was just too scary.  After all, I do need to get work done.  I nuked my install with Windows 8.1 and life was fine for a while.  Dual 22″ screens, SSD, and kickass video card is just too dang useful in any OS, I can suffer along right?

I use various tools that give me a somewhat functional environment for my work (Cygwin, putty, etc.) but it never quite worked right if I had real work to do where I needed to send files, or copy/paste lines of code.  At the end of the day, I was just more productive on OSX even with less screen real-estate.

‘Why didn’t you install Linux?’  Says just about anyone who knows me and my love for that OS, but at the end of the day, I need to do work.  And that work involves doing demos and presentations using WebEx, GoToMeeting and various other tools that absolutely HATE Linux.  Besides, I get my Linux fill with my server, which I will detail in a future post.

Challenge accepted!

I went back to to see what progress had been made in the ‘Hackintosh’ world.  I found that they had adopted the name ‘Customac’, which I immediately liked the sound of but haven’t fully adopted yet.  I found that a new community developed custom BIOS for my board makes the OSX update process painless (no patching DSDT or manually editing plists after every update).

Thanks to the community for creating the tools that made this possible and honestly, quite painless.

Screen Shot 2015-12-30 at 3.43.25 PM

The Build

Purchased recommended (for Mar 2013) hardware:

Followed the guide for my motherboard:

Installation instructions with Unibeast and El Capitan (Thanks company Macbook!):

Only scary part was opting to use a community bios since Gigabyte essentially abandoned a REALLY feature rich motherboard.   Now I had Mavericks installed originally using the F11 version of the BIOS.  But I did have issues with USB3 and Sound working after coming back from sleep.  Not show stoppers just a hassle.  I decided to try out this new F12j community bios which fixes all of those issues without DSDT patching.  This makes applying OSX updates less of a potential headache as well.


Bus Speed Chart

According to this, a single port 10 GbE adapter needs (at minimum) to be placed in a server expansion slot that is a PCIe 1.0 x 8 (8 lane bus); a dual port adapter must go in a x16 slot if it is a PCIe 1.0 bus.

Any PCIe 2.0 expansion slot can handle a dual port 10 GbE adapter, since the slowest bus (x8) runs at 4,000 MB/s.

So, if you are providing a 10 GbE solution using older servers, check with the customer (or verify!) that they will have an open server expansion slot that is x8 or x16.

Bus speed requirements

Bus speed requirements are listed below:

·        4 Gb Fibre Channel requires 425 MB/sec

·        8 Gb Fibre Channel requires 850 MB/sec

·        10 GB Fibre Channel requires 1,250 MB/sec

Bus speeds in PCIe servers

PCIeXpress 1.0 x 1250
PCIeXpress 1.0 x 2500
PCIeXpress 1.0 x 41,000
PCIeXpress 1.0 x 82,000
PCIeXpress 1.0 x 164, 000
PCIeXpress 1.0 x 328,000
PCIeXpress 2.0 x 84,000
PCIeXpress 2.0 x 168,000
PCIeXpress 2.0 x 3216,000


Excel Sort IP Address

You are actually sorting the decimal value of the IP Address.

A2: IP Address


Home Lab Update 1

I have a machine booting ESXi 5.1 on Intel 520 180GB SSD.  Then then running FreeNAS-8.3.0-RELEASE-x64 (r12701M) on a VM that I have configured the 4 local 1TB 7200 RPM SATA disks as RDMs.

FreeNAS runs ZFS on the 4 x 1TB (rdm) drives.  I added 32GB vmdk on the SSD is used by FreeNAS as a ZFS cache.

NFS export list mount process requires the name resolution of the client. When a client initiates the request for a NFS share, the servers checks its export list for the requested directory and name of the client in this access list for that particular share. Now if server fails to resolve the name of the initiator it denies its request for mounting that share. In order to overcome this problem you must have a dns server in network or else you have you manually enter the names and IP address information in to hosts file of the server.  

That little bit of news was very helpful during this build as I had not been able to connect from the ESXi host to the FreeNAS VM running on that same host after much tinkering with permissions and network settings.  Opened up the console on the FreeNAS VM, edited /etc/hosts to give the ESXi server IP a host name.  BAM, NFS mounted with no problem.