We’re finally here. The Big Enchilada. The Full Monty. The Full HA. It’s actually not as scary as it seems. But it should be… what I mean is that we should take the time machine back a year so that you could do all of the HA stuff manually. That way you could feel the pain of your own typos as you set up 100 different services under cluster services.. The trepidation of starting things up after 3 weeks of following directions to the “T”, wondering “is this going to work” or “am I going to drop to the floor in fetal position as my co-workers mock me”?
That way, you could see what a luxury 90 minutes for a 4 node cluster is.. 🙂
Ok, so if you’ve followed the series up to this point, you know that we’ve now upgraded to RHEL-OSP 6 and the newer RHEL-OSP Installer. One of the biggest differences and upgrades that you will see is that the previous version of the Installer deploy Ceilomer or Heat when HA was chosen. It only deployed those services in non-HA. In the new version, as described in today’s post, everything that is fully supported by Red Hat is deployed and everything that is deployed is done so in an HA fashion.
BTW, write in the comments if you’ve upgraded and noticed some other differences.. like some things that have been taken out…
As usual, I’ve included a recorded demo/walk-through that I think you’ll find helpful. Still, a couple of pointers might be in order. Just as with anything else new and/or complicated, stick with the defaults and easy stuff first. Then make incremental changes. Build on your knowledge. That way, you’ll know what changed. “It worked when I chose VXLAN but not GRE”… not that there should be an issue there… My point is that OpenStack is complicated enough as it is, don’t go full gusto and throw in all the bells and whistles all at once. Besides you can’t learn it all at once. Get comfortable with installing it, then go after your natural interest (networking, storage, app deployment, etc..)
Anyway, back to the deployment. In the non-ha deployment, I used local storage. In the HA deployment, I went with NFS. It’s fairly straightforward, and in the enterprise if you’re using NetApp it’s awesome… (The NetApp Cinder drivers for block and file are great.) I just set up exports on my Installer host:
# cat /etc/exports /cinder 192.168.200.0/24(rw,no_root_squash) /glance 192.168.200.0/24(rw,no_root_squash) # systemctl enable nfs-server.service # systemctl enable rpcbind.service # systemctl restart rpcbind.service # systemctl restart nfs-server.service
Oh, and go ahead and set up users for Cinder and Glance on the NFS server too… but be sure that they match the UID and GID’s for what will be on the OpenStack nodes. Have the Cinder group own the Cinder export and the Glance group own the Glance export..
# id cinder uid=165(cinder) gid=165(cinder) groups=165(cinder) # id glance uid=161(glance) gid=161(glance) groups=161(glance)
From there, just build it like you built the non-HA deployments. Have your subnets ready – a tunnel subnet and a public subnet. Be sure that all of your interfaces are recognized BEFORE you hit “deploy”. And remember, because your Controller nodes are your Neutron nodes too in this scenario, they need 3 interfaces each. Your Compute node(s) need 2 – one for PXE/Mgmt, one for tunnel.
The last thing you need to do before kicking it off is ensuring that all of your interfaces are configured properly. We’ve done this in the previous posts, but the video has a brief reminder, but only for one of the hosts..
Here we go (Remember, it’s better in full screen, just give it a second to focus):
Hope this helps,