This page explains how to install a fuel master node using Jessie.

Setting up a server with the correct IPs

Install a Jessie machine. Set eth0 to whatever is convenient for you (a public IP address, dhcp, etc.). Setup eth1 to use 10.20.0.2, as this is the default for Fuel, and it'd be hard to use something else for the moment (this would involve a lot of manual config work).

Add the apt-repository

Add this to your sources.list:

deb http://mitaka-jessie.pkgs.mirantis.com/debian jessie-mitaka-backports main
deb-src http://mitaka-jessie.pkgs.mirantis.com/debian jessie-mitaka-backports main

deb http://mitaka-jessie.pkgs.mirantis.com/debian jessie-mitaka-backports-nochange main
deb-src http://mitaka-jessie.pkgs.mirantis.com/debian jessie-mitaka-backports-nochange main

then run apt-get update.

Prepare the bootstrap image

To do hardware discovery, Fuel starts an OS using PXE. In Debian, this is done by preparing a Debian live distribution using live build. To install the script do:

apt-get install fuel-bootstrap-iso

You should then edit /etc/fuel-bootstrap-iso/config and fix the different addresses to match your needs. Currently, I do use an approx mirror in my laptop, plus a full copy of the Mitaka release also hosted in my laptop, which is why the default isn't what's convenient for the general public. Please bare with this: it's easy to fix for your own use. In most cases, you will want to set DEBIAN_REPO_MASTER_IP to "mitaka-jessie.pkgs.mirantis.com", and FUELBOOTSTRAP_SETUP_DEBIAN_MIRROR to something like httpredir.debian.org (unless you're doing like me and use approx...). It could be done this way:

sed -i 's|^DEBIAN_REPO_MASTER_IP=.*|DEBIAN_REPO_MASTER_IP=mitaka-jessie.pkgs.mirantis.com' /etc/fuel-bootstrap-iso/config
sed -i 's|^FUELBOOTSTRAP_SETUP_DEBIAN_MIRROR=.*|FUELBOOTSTRAP_SETUP_DEBIAN_MIRROR=http://httpredir.debian.org/debian' /etc/fuel-bootstrap-iso/config

Then apply the changes to the live build config, so it goes in its different config files (you can have a look at what this trivial script does, it's just a few sed operations to setup the repo addrs):

fuel-bootstrap-iso-param-lb-config

and finally build the bootstrap ISO image:

build-fuel-bootstrap-iso

Install the Fuel master node

The easiest way is to just use the openstack-deploy script, available in the openstack-deploy package. This will do all of the install for you.

apt-get install openstack-deploy
openstack-deploy --non-interactive fuel-master-node

If everything goes well, you should then be able to browse the Fuel web interface using http(s)://IP-OF-ETH0/fuel/ and you can login using "admin" as login, with the Keystone admin password written in openrc.sh and osinstallrc.

Next up?

Try a deployment, and help fixing the remaining issues. Currently, the Debian fuel master node is able to provision Debian OS on slaves, but then it fails when starting to do the puppet jobs. That's what we should fix now!

Another area where contributors would be welcome is packaging fuel-ui in a Debian policy compliant way. The work to do it involve packaging all of the fuel-ui ?JavaScript build-dependencies as nodejs-* packages (and all of their dependencies). That's a huge piece of work. Otherwise, fuel-ui will have to be pushed to non-free, as it needs networking to build (ie: to run npm install).