Made to be as simple as possible, but not too simple...
Read the great documentation for developers/admins at
This will vastly help you understand what the configurations and options do when ANVIL configures them.
Since RHEL requires a tty to perform
sudo commands we need
to disable this so
sudo can run without a tty. This seems needed
since nova and other components attempt to do
sudo commands. This
isn’t possible in RHEL unless you disable this (since those
instances won’t have a tty).
$ sudo visudo
Then comment out line
Also disable selinux:
$ sudo vi /etc/sysconfig/selinux
Change SELINUX=enforcing to SELINUX=disabled then reboot.
$ sudo reboot
Create specifc user to isolate all the Anvil processes from root user
$ sudo useradd <username>
$ sudo passwd <username>
Set user as sudoer
$ sudo visudo
Add <username> ALL=(ALL) ALL
Make all the rest of actions as <username> user
$ sudo su - <username>
$ sudo yum install git -y
We’ll grab the latest version of ANVIL via git:
$ git clone https://git.openstack.org/openstack/anvil.git
$ cd anvil
Any configuration to be updated should now be done.
Please edit the corresponding yaml files in
conf/components/personas to fit your desired configuration of nova/glance
and the other OpenStack components.
You can use
-p <conf/components/required_file.yaml> to specify a
To specify which versions of OpenStack components you want to install select
or edit an origins configuration file from
You can use
-o <conf/origins/origins_file.yaml> to specify this
different origins file.
Respository notes for those with RedHat subscriptions¶
To enable the needed repositories for various requirements please also run:
sudo subscription-manager repos --enable rhel-6-server-optional-rpms
You can also include the RDO repositories (which has even more of the needed requirements). This will ensure that anvil has to build less dependencies overall.
In order to ensure that anvil will have its correct dependencies you need to first run the bootstrapping code that will setup said dependencies for your operating system.
sudo ./smithy --bootstrap
Now prepare OpenStacks components by running the following:
./smithy -a prepare
You should see a corresponding OpenStack repositories getting downloaded using git, python setups occurring and configuration files being written as well as source rpm packages being built and a repository setup from those components .
Now build OpenStacks components by running the following:
sudo ./smithy -a build
You should see a corresponding OpenStack components and dependencies at this stage being packaged into rpm files and two repositories being setup for you . One repository will be the dependencies that the OpenStack components need to run and th other will be the OpenStack components themselves.