| <!DOCTYPE html> |
| <html lang="en"> |
| <head> |
| <meta charset="utf-8"> |
| <title>Single Machine Guide - DevStack</title> |
| <meta name="description" content=""> |
| <meta name="author" content=""> |
| |
| <!-- Le HTML5 shim, for IE6-8 support of HTML elements --> |
| <!--[if lt IE 9]> |
| <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script> |
| <![endif]--> |
| |
| <!-- Le styles --> |
| <link href="../assets/css/bootstrap.css" rel="stylesheet"> |
| <link href="../assets/css/local.css" rel="stylesheet"> |
| <style type="text/css"> |
| body { padding-top: 60px; } |
| dd { padding: 10px; } |
| </style> |
| |
| <!-- Le javascripts --> |
| <script src="../assets/js/jquery-1.7.1.min.js" type="text/javascript" charset="utf-8"></script> |
| <script src="../assets/js/bootstrap.js" type="text/javascript" charset="utf-8"></script> |
| </head> |
| |
| <body> |
| |
| <div class="navbar navbar-fixed-top"> |
| <div class="navbar-inner"> |
| <div class="container"> |
| <a class="brand" href="/">DevStack</a> |
| <ul class="nav pull-right"> |
| <li><a href="../overview.html">Overview</a></li> |
| <li><a href="../changes.html">Changes</a></li> |
| <li><a href="../faq.html">FAQ</a></li> |
| <li><a href="https://git.openstack.org/cgit/openstack-dev/devstack">git.openstack.org</a></li> |
| <li><a href="https://review.openstack.org/#/q/status:open+project:openstack-dev/devstack,n,z">Gerrit</a></li> |
| </ul> |
| </div> |
| </div> |
| </div> |
| |
| <div class="container"> |
| <section id="overview"> |
| <h1>All-In-One: Dedicated Hardware</h1> |
| <p>Things are about to get real! Using OpenStack in containers or VMs is nice for kicking the tires, but doesn't compare to the feeling you get with hardware.</p> |
| </section> |
| |
| <section id="prerequisites"> |
| <div class="page-header"> |
| <h2>Prerequisites <small>Linux & Network</small></h2> |
| </div> |
| |
| <h3>Minimal Install</h3> |
| <p>You need to have a system with a fresh install of Linux. You can download the <a href="https://help.ubuntu.com/community/Installation/MinimalCD">Minimal CD</a> for Ubuntu releases since DevStack will download & install all the additional dependencies. The netinstall ISO is available for <a href="http://mirrors.kernel.org/fedora/releases/18/Fedora/x86_64/iso/Fedora-20-x86_64-netinst.iso">Fedora</a> and <a href="http://mirrors.kernel.org/centos/6.5/isos/x86_64/CentOS-6.5-x86_64-netinstall.iso">CentOS/RHEL</a>. You may be tempted to use a desktop distro on a laptop, it will probably work but you may need to tell Network Manager to keep its fingers off the interface(s) that OpenStack uses for bridging.</p> |
| |
| <h3>Network Configuration</h3> |
| <p>Determine the network configuration on the interface used to integrate your |
| OpenStack cloud with your existing network. For example, if the IPs given out on your network |
| by DHCP are 192.168.1.X - where X is between 100 and 200 you will be able to use IPs |
| 201-254 for <b>floating ips</b>.</p> |
| <p>To make things easier later change your host to use a static IP instead of DHCP (i.e. 192.168.1.201).</p> |
| </section> |
| |
| <section id="installation"> |
| <div class="page-header"> |
| <h2>Installation <small>shake and bake</small></h2> |
| </div> |
| |
| <h3>Add your user</h3> |
| <p>We need to add a user to install DevStack. (if you created a user during install you can skip this step and just give the user sudo privileges below)</p> |
| <pre>adduser stack</pre> |
| <p>Since this user will be making many changes to your system, it will need to have sudo privileges:</p> |
| <pre>apt-get install sudo -y || yum install -y sudo |
| echo "stack ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers</pre> |
| <p>From here on you should use the user you created. <b>Logout</b> and <b>login</b> as that user.</p> |
| |
| <h3>Download DevStack</h3> |
| <p>We'll grab the latest version of DevStack via https:</p> |
| <pre>sudo apt-get install git -y || yum install -y git |
| git clone https://git.openstack.org/openstack-dev/devstack |
| cd devstack</pre> |
| |
| <h3>Run DevStack</h3> |
| <p>Now to configure <code>stack.sh</code>. DevStack includes a sample in <code>devstack/samples/local.conf</code>. Create <code>local.conf</code> as shown below to do the following:</p> |
| <ul> |
| <li>Set <code>FLOATING_RANGE</code> to a range not used on the local network, i.e. 192.168.1.224/27. This configures IP addresses ending in 225-254 to be used as floating IPs.</li> |
| <li>Set <code>FIXED_RANGE</code> and <code>FIXED_NETWORK_SIZE</code> to configure the internal address space used by the instances.</li> |
| <li>Set <code>FLAT_INTERFACE</code> to the Ethernet interface that connects the host to your local network. This is the interface that should be configured with the static IP address mentioned above.</li> |
| <li>Set the administrative password. This password is used for the <b>admin</b> and <b>demo</b> accounts set up as OpenStack users.</li> |
| <li>Set the MySQL administrative password. The default here is a random hex string which is inconvenient if you need to look at the database directly for anything.</li> |
| <li>Set the RabbitMQ password.</li> |
| <li>Set the service password. This is used by the OpenStack services (Nova, Glance, etc) to authenticate with Keystone.</li> |
| </ul> |
| <p><code>local.conf</code> should look something like this:</p> |
| <pre>[[local|localrc]] |
| FLOATING_RANGE=192.168.1.224/27 |
| FIXED_RANGE=10.11.12.0/24 |
| FIXED_NETWORK_SIZE=256 |
| FLAT_INTERFACE=eth0 |
| ADMIN_PASSWORD=supersecret |
| MYSQL_PASSWORD=iheartdatabases |
| RABBIT_PASSWORD=flopsymopsy |
| SERVICE_PASSWORD=iheartksl</pre> |
| |
| <p>Run DevStack:</p> |
| <pre>./stack.sh</pre> |
| <p>A seemingly endless stream of activity ensues. When complete you will see a summary of |
| <code>stack.sh</code>'s work, including the relevant URLs, accounts and passwords to poke at your |
| shiny new OpenStack.</p> |
| |
| <h3>Using OpenStack</h3> |
| <p>At this point you should be able to access the dashboard from other computers on the |
| local network. In this example that would be http://192.168.1.201/ for the dashboard (aka Horizon). |
| Launch VMs and if you give them floating IPs and security group access those VMs will be accessible from other machines on your network.</p> |
| |
| <p>Some examples of using the OpenStack command-line clients <code>nova</code> and <code>glance</code> |
| are in the shakedown scripts in <code>devstack/exercises</code>. <code>exercise.sh</code> |
| will run all of those scripts and report on the results.</p> |
| |
| </section> |
| |
| <footer> |
| <p>© Openstack Foundation 2011-2013 — An <a href="https://wiki.openstack.org/wiki/Programs">OpenStack program</a> created by <a href="http://www.rackspace.com/cloud/private_edition/">Rackspace Cloud Builders</a></p> |
| </footer> |
| |
| </div> <!-- /container --> |
| |
| </body> |
| </html> |