The Gluster Blog

Gluster blog stories provide high-level spotlights on our users all over the world

RDO on Fedora 19

Gluster
2013-07-29

A few months back I installed RDO on a Fedora 18 and it just worked!  Unfortunately I ran into a few blockers when trying to install it on Fedora 19.  In this post I will describe my experiences of setting up RDO on Fedora 19 and how I made it work.

Cheat-Sheet

Here is the set of commands in order that I used to install RDO on Fedora 19.  An explaination of why each was done can be found in the later sections of the post

  1. yum update -y
  2. yum install -y http://repos.fedorapeople.org/repos/openstack/openstack-havana/rdo-release-havana-2.noarch.rpm
  3. yum install -y python-django14
  4. yum install -y ruby
  5. yum install -y openstack-packstack
  6. Fix nova_compute.pp
    1. Open /usr/lib/python2.7/site-packages/packstack/puppet/templates/nova_compute.pp
    2. Delete lines 40 – 45 (6 lines total)
  7. adduser jbresnah
  8. passwd jbresnah
  9. usermod -G wheel jbresnah
  10. su – jbresnah
  11. packstack –allinone –os-quantum-install=n
  12. sed -i ‘s/cluster-mechanism/ha-mechanism/’ /etc/qpidd.conf
  13. reboot

RDO

RDO is Red Hat’s community distribution of OpenStack.  The quick start for installing it can be found here.   The documentation there will be the most authoritative source as it will be kept up to date and this blog post will likely not.  That said,these are the steps I had to do in order to get the present day version of Fedora 19 to work with the current packstack.

Update the system, install initial dependencies and create a user

  1. yum update -y
  2. yum install -y http://repos.fedorapeople.org/repos/openstack/openstack-havana/rdo-release-havana-2.noarch.rpm

Not e that step #2 is includes the correct path to the Hanava release, which is different from the RDO instructions which point at the Grizzly release.

Bugs

Bug 1: puppet/util/command_line

Before continue with the installation instructions note that there are a couple of bugs to work around. The first manifests itself with the following error message:


2013-07-28 07:09:29::ERROR::ospluginutils::144::root:: LoadError: no such file to load -- puppet/util/command_line
require at org/jruby/RubyKernel.java:1027
require at /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:51
(root) at /usr/bin/puppet:3

Details on this bug can be found here: 961915 and 986154.

The work around is easy, simply install ruby with the following command:

yum install -y ruby

Bug 2: kvm.modules

The second bug results in this error:
ERROR : Error during puppet run : Error: /bin/sh: /etc/sysconfig/modules/kvm.modules: No such file or directory

Details on it can be found here.  To work around it do the following as root:

  1. Open /usr/lib/python2.7/site-packages/packstack/puppet/templates/nova_compute.pp
  2. Delete lines 40 – 45 (6 lines total)

Bug 3: django14

Another bug detailed here requires that you explicitly install django14.
yum install python-django14

Bug 4: qpidd

The file /etc/qpidd.cong has an invalid value in it.    To correct this run the following:

sed -i 's/cluster-mechanism/ha-mechanism/' /etc/qpidd.conf

Install OpenStack with packstack

At this point we are ready to install with packstack.  You need to run packstack as a non-root user:


su - jbresnah
packstack --allinone --os-quantum-install=n

Once this completes OpenStack should be installed and all set.  From there proceed with the instructions in the RDO Quick Start starting here.

Note: Running RDO in a Fedora 19 VM on Fedora 19

I tried this out in a VM and had some trouble.  My host OS is Fedora 19 and the VM in which I was installing RDO was also Fedora 19.   The problem is that on both the host and the guest the IP address for the network bridge was the same: 192.168.122.1.  This ultimately cause a failure in packstack:

ERROR : Error during puppet run : Error: /usr/sbin/tuned-adm profile virtual-host returned 2 instead of one of [0]

The solution is to edit the file (on the guest VM) /etc/libvirt/qemu/networks/default.xml and chance the ip address and dhcp range to a different IP addess, i used the following:

<network>
<name>default</name>
<uuid>e981cfed-949b-4763-be0b-3e5a91701882</uuid>
<bridge name="virbr0" />
<mac address='52:54:00:28:8E:A9'/>
<forward/>
<ip address="192.168.122.1" netmask="255.255.255.0">
<dhcp>
<range start="192.168.122.2" end="192.168.122.254" />
</dhcp>
</ip>
</network>

The re-run packstack with the answer file that was left in the users home directory:

packstack --answer-file=packstack-answers-20130729-111751.txt

BLOG

  • 06 Dec 2020
    Looking back at 2020 – with g...

    2020 has not been a year we would have been able to predict. With a worldwide pandemic and lives thrown out of gear, as we head into 2021, we are thankful that our community and project continued to receive new developers, users and make small gains. For that and a...

    Read more
  • 27 Apr 2020
    Update from the team

    It has been a while since we provided an update to the Gluster community. Across the world various nations, states and localities have put together sets of guidelines around shelter-in-place and quarantine. We request our community members to stay safe, to care for their loved ones, to continue to be...

    Read more
  • 03 Feb 2020
    Building a longer term focus for Gl...

    The initial rounds of conversation around the planning of content for release 8 has helped the project identify one key thing – the need to stagger out features and enhancements over multiple releases. Thus, while release 8 is unlikely to be feature heavy as previous releases, it will be the...

    Read more