Edited a Getting Started Guide

Change-Id: I7ded81cb76dc289469ec928632cd465c5601faa1
This commit is contained in:
bigden 2013-09-26 14:35:17 +04:00
parent 597395cc3e
commit 51705879bd
4 changed files with 407 additions and 193 deletions

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2013 Mirantis, Inc.
@ -21,25 +21,28 @@
xsi:schemaLocation="http://docbook.org/ns/docbook http://www.docbook.org/xml/5.0/xsd/docbook.xsd
http://www.w3.org/1999/xlink http://www.w3.org/1999/xlink.xsd"
version="5.0">
<title>Before You Begin</title>
<title>Before you begin</title>
<para><emphasis role="bold">Naming Conventions</emphasis>
</para>
<para>To clearly separate commands and parts of configuration files we use boxes, like shown below:</para>
<programlisting>
[Some config]
...
# Part of config file here
some_key1 = some_value1
some_key2 = some_value2
...
</programlisting>
<programlisting>
&gt;$ echo Execute this command as regular user
&gt;# echo Execute this command as root
</programlisting>
<para>
All commands start either with &gt;$ mark or with &gt;# mark.
The difference is that first should be executed as regular user, while second - as superuser (root).
</para>
<programlisting>
&gt;$ echo Execute this command as regular user
&gt;# echo Execute this command as root
</programlisting>
<para><emphasis role="bold"> Use Appropriate Branch</emphasis></para>
<para>There are a few branches that can be found in all Murano repositories: master, release-0.1,
release-0.2 and so on. Branch master is the most recent between the releases, but not as stable as release-x.x branches.</para>
<para>Master is a brunch for a development purposes. For stable releases appropriate branch names are using:
release-0.1, release-0.2 and so on.</para>
<para><emphasis role="bold">Use Separate vHost in <link linkend="Rabbit">RabbitMQ</link></emphasis></para>
<para>
In general it is OK to configure Murano services to use the root (/) vHost in RabbitMQ and use the same user credentials as OpenStack services use.
@ -52,33 +55,22 @@
<para>this prevents message stealing from queues</para>
</listitem>
<listitem>
<para>this simplifies debugging</para>
<para>this simplify debugging</para>
</listitem>
</itemizedlist>
</para>
<para>
If you are planning to use only one devbox then you may stay with /
vHost.
Steps required to configure your own vHost are described in <link
If you are planning to use only one devbox then you may stay vHost with /.
Required steps to configure your own vHost are described in <link
linkend="Rabbit">RabbitMQ Configuration Notes</link>.
</para>
<section>
<title>System Requirements</title>
<title>System requirements</title>
<itemizedlist>
<listitem>
<para><emphasis>OpenStack Lab</emphasis> - a single node Openstack environment.</para>
</listitem>
<listitem>
<para>
<emphasis>Devbox</emphasis> - a machine where all murano components and services are running.
This machine should have access to the Openstack Lab.
</para>
</listitem>
</itemizedlist>
<section>
<title>OpenStack Lab</title>
<para><emphasis role="bold">OpenStack Lab</emphasis> - a single node Openstack environment. See <link linkend="Setup Lab Environment">setup lab environment</link></para>
<para>
<emphasis role="bold">Supported OS</emphasis>
<emphasis>Supported OS:</emphasis>
</para>
<itemizedlist>
<listitem>
@ -86,7 +78,7 @@
</listitem>
</itemizedlist>
<para>
<emphasis role="bold"><anchor xml:id="LabHardware"></anchor>Hardware Requirements</emphasis>
<emphasis><anchor xml:id="LabHardware"></anchor>Hardware requirements:</emphasis>
</para>
<itemizedlist>
<listitem>
@ -96,40 +88,53 @@
<para>RAM: 12+ GB</para>
</listitem>
<listitem>
<para>HDD (select any option)</para>
</listitem>
<para>HDD:</para>
<itemizedlist>
<listitem>
<para>1x SSD 500+ GB</para>
</listitem>
<listitem>
<para>1x HDD (7200 rpm) 500+ GB and 1x SSD 250+ GB (system onto the HDD and SSD drive for VM images)</para>
</listitem>
<listitem>
<para> 1x HDD (15000 rpm) 500+ GB </para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>NIC: 1x Ethernet 1+ Gbps</para>
<para>NIC: 1x Ethernet 100Мbps (recommended 1Gbps)</para>
</listitem>
</itemizedlist>
<para>
<emphasis role="bold">Software Requirements</emphasis>
<emphasis>Software requirements:</emphasis>
</para>
<itemizedlist>
<listitem>
<para>Heat installed</para>
<para>Heat</para>
</listitem>
<listitem>
<para>
RabbitMQ configured (+ additional vhosts and user
accounts)
RabbitMQ
</para>
</listitem>
<listitem>
<para>Windows Server 2012 Standard image imported into Glance
(described later)
<para>Windows Server 2012 Standard image imported into Glance.
See <link linkend="Build Windows Image">Build Windows Image</link> chapter.
</para>
</listitem>
<listitem>
<para>Samba share with prerequisites (described later)</para>
<para>Samba share with prerequisites. See <link linkend="Samba">Install Samba</link></para>
</listitem>
<listitem>
<para>OpenStack metadata service.</para>
</listitem>
</itemizedlist>
</section>
<section>
<title>Devbox</title>
</listitem>
<listitem>
<para>
<emphasis role="bold">Devbox</emphasis> - a machine where all murano services will be running.
This machine should have access to the Openstack Lab. See <link linkend="Setup Devbox">Setup Devbox</link> chapter.
</para>
<para>
We suggest to use virtual machine for Murano, as it allows you to
backup your VM easily.
@ -137,7 +142,7 @@
could be used. KVM, VMWare and VirtualBox were tested with success.
</para>
<para>
<emphasis role="bold">Supported OS</emphasis>
<emphasis>Supported OS:</emphasis>
</para>
<itemizedlist>
<listitem>
@ -148,7 +153,7 @@
</listitem>
</itemizedlist>
<para>
<emphasis role="bold">Hardware Requirements</emphasis>
<emphasis>"Hardware" requirements:</emphasis>
</para>
<itemizedlist>
<listitem>
@ -161,22 +166,65 @@
<para>HDD: 20 GB</para>
</listitem>
<listitem>
<para>1 NIC</para>
<para>NIC: 1x Ethernet 100Мbps</para>
</listitem>
</itemizedlist>
<para>
<emphasis role="bold">Software Requirements</emphasis>
<emphasis>Software Requirements:</emphasis>
</para>
<itemizedlist>
<listitem>
<para>Packages:</para>
<para><emphasis>Ubuntu:</emphasis></para>
<itemizedlist>
<listitem>
<para>gcc</para>
</listitem>
<listitem>
<para>python-pip</para>
</listitem>
<listitem>
<para>python-dev</para>
</listitem>
<listitem>
<para>libxml2-dev</para>
</listitem>
<listitem>
<para>libxslt-dev</para>
</listitem>
<listitem>
<para>libffi-dev</para>
</listitem>
</itemizedlist>
<para>
<emphasis>CentOS</emphasis>
</para>
<itemizedlist>
<listitem>
<para>gcc</para>
</listitem>
<listitem>
<para>python-pip</para>
</listitem>
<listitem>
<para>python-devel</para>
</listitem>
<listitem>
<para>libxml2-devel</para>
</listitem>
<listitem>
<para>libxslt-devel</para>
</listitem>
<listitem>
<para>libffi-devel</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>X Server is NOT required and system runlevel 3 is
preferred.
</para>
<para>X Server is NOT required and system runlevel 3 is preferred.</para>
</listitem>
</itemizedlist>
</section>
</listitem>
</itemizedlist>
</section>
</chapter>
</chapter>

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2013 Mirantis, Inc.
@ -24,7 +24,7 @@
<title>About Murano</title>
<para>
Murano is a new service which allows a non-experienced user to deploy
reliable Windows based environments in a “push-the-button” manner. The
reliable Windows based environments in OpenStack with the "One Click". The
key goal is to provide a UI and API enabling the deployment and
operation of Windows Environments at the Windows Services abstraction
level. The service is able to orchestrate complex circular dependent
@ -35,7 +35,7 @@
The service addresses following use cases:
<itemizedlist>
<listitem>
<para>Self-provisioning of predefined Windows services with their dependencies</para>
<para>Self-deploying of predefined Windows services with their dependencies</para>
</listitem>
<listitem>
<para>Automation of administrative tasks during data center roll-out</para>
@ -50,7 +50,7 @@
Windows Environments. Key concepts are:
<itemizedlist>
<listitem>
<para>Windows Service - a service such as Active Directory, MSSQL, or IIS, which usually consists of multiple virtual machines and has multiple dependencies.
<para>Windows Service - a service such as Active Directory, MsSQL, or IIS, which usually consists of multiple virtual machines (VM) and has multiple dependencies.
</para>
</listitem>
<listitem>
@ -75,7 +75,7 @@
<para>Supports Availability Zones and Disaster Recovery scenarios</para>
</listitem>
<listitem>
<para>Uses native Windows features for HA solutions</para>
<para>Uses native Windows features for High Availabillity (HA) solutions</para>
</listitem>
</orderedlist>
</para>
@ -86,12 +86,14 @@
<thead>
<tr>
<td align="center" colspan="1">Revision Date</td>
<td align="center" colspan="3">Version of Murano</td>
<td align="center" colspan="4">Summary of Changes</td>
</tr>
</thead>
<tbody>
<tr>
<td colspan="1" align="center">September. 4, 2013</td>
<td colspan="3" align="center">Release-0.2</td>
<td colspan="4">
<itemizedlist>
<listitem>
@ -104,4 +106,4 @@
</informaltable>
</section>
</chapter>
</chapter>

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2013 Mirantis, Inc.
@ -36,16 +36,13 @@
</listitem>
</itemizedlist>
<note>
<para>
The preferred way is to use script for automated
installation. It is described in
The preferred way is to use script for automated installation. It is described in
<link linkend="AutomatedWay">Automated Way </link>section below.
</para>
</note>
<section>
<title>Vagrant Way</title>
<para>The simplest way to get working Murano devbox is Vagrant tool. This tool is available for Ubuntu only.</para>
<para><emphasis role="bold">Prepare Environment (Ubuntu)</emphasis></para>
<para>The simplest way to get working Murano devbox is Vagrant tool. On this page describes how to create the Murano DevBox on Ubuntu Desktop.</para>
<para><emphasis role="bold">Prepare Environment</emphasis></para>
<itemizedlist>
<listitem>
<para>Install VirtualBox:</para>
@ -56,7 +53,11 @@
</programlisting>
<itemizedlist>
<listitem>
<para>Install VirtualBox Extension Pack.
<para>Install VirtualBox Extension Pack.</para>
<para>To install Extension Pack please go to the Dowload section on virtualbox.org
(<link xlink:href="https://www.virtualbox.org/wiki/Downloads">https://www.virtualbox.org/wiki/Downloads</link>),
then select and download appropriate Extension Pack package. When downloaded, open it with VirtualBox
(you could simply double-click the file) and install the package.
</para>
</listitem>
<listitem>
@ -75,34 +76,31 @@
># wget http://files.vagrantup.com/
packages/7ec0ee1d00a916f80b109a298bab08e391945243/
vagrant_1.2.7_x86_64.deb
</programlisting>
<programlisting>
># dpkg --install vagrant_1.2.7_x86_64.deb
</programlisting>
<para><emphasis role="bold">Launch The Box</emphasis></para>
<itemizedlist>
<listitem>
<para>Clone murano-vagrant repository</para>
<para>Clone murano-deployment repository:</para>
</listitem>
</itemizedlist>
<programlisting>
>$ git clone https://github.com/stackforge/murano-deployment.git
># git clone https://github.com/stackforge/murano-deployment.git
</programlisting>
<itemizedlist>
<listitem>
<para>Change directory to cloned repository folder</para>
<para>Change directory to cloned repository folder:</para>
</listitem>
</itemizedlist>
<programlisting>
>$ cd murano-deployment/getting-started
>$ git checkout -b release-0.2 origin/release-0.2
># cd murano-deployment/getting-started
># git checkout -b release-0.2 origin/release-0.2
</programlisting>
<itemizedlist>
<listitem>
<para>IMPORTANT STEP: RabbitMQ credentials are specified to default in lab-binding.rc so don't forget to change them if necessary.
For example: - replace all the markers *** to your settings:
</para>
<para><emphasis role="bold">IMPORTANT STEP</emphasis>: RabbitMQ credentials are specified to default in
<filename>murano-deployment/getting-started/localrc</filename> so don't forget to change them by
replacing all the markers *** to your settings:</para>
</listitem>
</itemizedlist>
<programlisting>
@ -125,48 +123,43 @@ LAB_HOST='***.***.***.***'
<itemizedlist>
<listitem>
<para>The script will do the following:</para>
<para>- Download the predefined vagrnat box with Ubuntu Server 12.04;</para>
<para>- Register it in Vagrant;</para>
<para>- Start the box using vagrant.</para>
</listitem>
<listitem>
<para>Vagrant will do the rest:</para>
<para>- Vagrant will do the rest:</para>
<para>- Launch and initialize the box;</para>
<para>- Execute the provision.sh script which will install Murano onto the box.</para>
</listitem>
<listitem>
<para>When everything is done open the http://127.0.0.1:8080/horizon link.
<para>When everything is done open the link http://127.0.0.1:8080/horizon
</para>
</listitem>
</itemizedlist>
</section>
<section xml:id="AutomatedWay">
<title>Automated Way</title>
<para>This easy way can be used on Ubuntu Server 12.04 x86-64 and CentOS 6.4 x86-64. Also, you can use virtual machines on VMWare, VirtualBox, KVM with these operating systems.</para>
<itemizedlist>
<listitem>
<para>Create a folder to hold git repositories</para>
<para>Create a folder to hold git repositories:</para>
</listitem>
</itemizedlist>
<programlisting>
># mkdir -p /opt/git cd /opt/git &amp;&amp; cd /opt/git
># mkdir -p /opt/git &amp;&amp; cd /opt/git
</programlisting>
<itemizedlist>
<listitem>
<para>Clone murano-deployment repository</para>
<para>Clone murano-deployment repository from branch release-0.2:</para>
</listitem>
</itemizedlist>
<programlisting>
># git clone git://github.com/stackforge/murano-deployment.git
># git clone git://github.com/stackforge/murano-deployment.git -b release-0.2
</programlisting>
<itemizedlist>
<listitem>
<para>
Change directory to murano-deployment and switch to release-0.2 branch
</para>
</listitem>
</itemizedlist>
<programlisting>
># cd /opt/git/murano-deployment
># git checkout -b release-0.2 origin/release-0.2
</programlisting>
<itemizedlist>
<listitem>
<para>Install prerequisites. On this step some additional system packages will be installed</para>
<para>Install prerequisites and configure devbox.</para>
</listitem>
</itemizedlist>
<programlisting>
@ -175,8 +168,7 @@ LAB_HOST='***.***.***.***'
</programlisting>
<itemizedlist>
<listitem>
<para>Configure lab binding configuration file
<filename>/etc/murano-deployment/lab-binding.rc</filename>
<para>Press Enter to configure lab binding configuration file <filename>/etc/murano-deployment/lab-binding.rc</filename>
</para>
</listitem>
</itemizedlist>
@ -193,9 +185,8 @@ RABBITMQ_PASSWORD='murano'
RABBITMQ_VHOST='muranovhost'
BRANCH_NAME='release-0.2'
</programlisting>
<para>It's recommended to use separate vHost in
<link linkend="Rabbit">RabbitMQ</link>
</para>
<para>It's recommended to use separate vHost in <link linkend="Rabbit">RabbitMQ</link>.</para>
<para>Then some additional system packages will be installed.</para>
<itemizedlist>
<listitem>
<para>Install Murano components</para>
@ -206,65 +197,58 @@ BRANCH_NAME='release-0.2'
</programlisting>
<itemizedlist>
<listitem>
<para>Login to the Dashboard using URL http://uth_port = 35357;your VM IP>/dashboard</para>
<para>When everything is done login to the Dashboard using URL http://your_IP/horizon for Ubuntu and http://your_IP/dashboard for CentOS </para>
</listitem>
</itemizedlist>
</section>
<section>
<title>Murano Services Configuration</title>
<para>This chapter descrides how to configure Murano services
and services communicating with Murano.</para>
<section xml:id="Rabbit">
<title>RabbitMQ Configuration Notes</title>
<para>OpenStack rabbitMQ credentials could be used for murano services,
but prefered way is to make additional changes into rabbitMQ
configuration, like own vhost, login and password. These steps
require superuser rights and should be run on the OpenStack
controller node where rabbitMQ service resides.
</para>
<para>How to do this:
<programlisting>
># rabbitmqctl add_user muranouser muranopassword
># rabbitmqctl set_user_tags muranouser administrator
># rabbitmqctl add_vhost muranovhost
># rabbitmqctl set_permissions -p muranovhost muranouser ".*" ".*" ".*"
</programlisting>
</para>
</section>
<section xml:id="ManualWay">
<title>Manual Way</title>
<para>By this way you can install and configure all Murano services separately</para>
<section>
<title>Keystone Configuration Notes</title>
<para>Service entry for murano-api and endpoint associated with it
could also be  configured in the keystone. If there is no record
about murano-api in the keystone murano-dashboard would try to
reach murano-api service at localhost on the default murano-api
port 8082.
</para>
<para>How to add service record into the keystone using python keystone
client:
<programlisting>
># keystone service-create --name muranoapi --type murano \
--description "Murano-Api Service"
</programlisting>
This command returns UUID of the created service record, which
should be used below.
<programlisting>
># keystone endpoint-create \
  --service-id UUID_from_above \
  --publicurl http://murano_vm_address:8082 \
  --internalurl http://murano_vm_address:8082 \
  --adminurl http://murano_vm_address:8082 \
</programlisting>
</para>
</section>
<section>
<title>Murano-Api Configuration</title>
<title>Murano-API</title>
<para>Make sure the <link linkend="Rabbit">RabbitMQ</link> and <link linkend="Keystone">Keystone</link> is configured correctly</para>
<itemizedlist>
<listitem>
<para>Create a folder to hold git repositories:</para>
</listitem>
</itemizedlist>
<programlisting>
># mkdir -p /opt/git &amp;&amp; cd /opt/git
</programlisting>
<itemizedlist>
<listitem>
<para>Clone murano-api repository from branch release-0.2:</para>
</listitem>
</itemizedlist>
<programlisting>
># git clone git://github.com/stackforge/murano-api.git -b release-0.2 &amp;&amp; cd /opt/git/murano-api
</programlisting>
<itemizedlist>
<listitem>
<para>Install Murano-API:</para>
<para><emphasis>On Ubuntu:</emphasis></para>
<programlisting>
># sh setup.sh install
</programlisting>
<para><emphasis>On CentOS:</emphasis></para>
<programlisting>
># sh setup-centos.sh install
</programlisting>
<para>Successful installation ends with message like this:</para>
<programlisting>
Successfully installed muranoapi
Cleaning up...
LOG:> Making sample configuration files at "/etc/murano-api"
LOG:> Reloading initctl
LOG:> Please, make proper configuration,located at "/etc/murano-api", before starting the "murano-api" daemon!
</programlisting>
<para>Configuration files of the murano-api service reside at <filename>
/etc/murano-api</filename> directory. Basic configuration parameters are
listed below.
</para>
<itemizedlist>
<listitem>
<para>murano-api.conf</para>
<para>murano-api.conf:</para>
</listitem>
</itemizedlist>
<programlisting>
@ -274,26 +258,23 @@ bind_host = 0.0.0.0
bind_port = 8082
log_file = /var/log/murano-api.log
...
[database]
...
#connection = mysql://mysqluser:mysqlpassword@mysqlhost:3306/murano
connection = sqlite:////etc/murano-api/murano.sqlite
connection = sqlite:///murano.sqlite
...
[rabbitmq]
host = &lt;rabbitmq ip>
host = &lt;rabbitmq_ip>
port = 5672
ssl = False
login = &lt;rabbitmq login>
password = &lt;rabbitmq password>
virtual_host = &lt;rabbitmq vhost>
...
</programlisting>
<itemizedlist>
<listitem>
<para>murano-api-paste.ini</para>
<para>murano-api-paste.ini:</para>
</listitem>
</itemizedlist>
<programlisting>
@ -302,14 +283,63 @@ virtual_host = &lt;rabbitmq vhost>
auth_host = &lt;keystone_ip>
auth_port = 35357
auth_protocol = http
admin_tenant_name = admin
admin_tenant_name = &lt;tenant_name>
admin_user = admin
admin_password = admin_password
admin_password = &lt;admin_keystone_password>
signing_dir = /tmp/keystone-signing-muranoapi
...
</programlisting>
</section>
</listitem>
</itemizedlist>
<itemizedlist>
<listitem>
<para>Start Murano-API:</para>
<para><emphasis>On Ubuntu:</emphasis></para>
<programlisting>
># service murano-api start
</programlisting>
<para><emphasis>On CentOS:</emphasis></para>
<programlisting>
># initctl start murano-api
</programlisting>
</listitem>
</itemizedlist>
</section>
<section>
<title>Murano-Conductor</title>
<itemizedlist>
<listitem>
<para>Go to a git folder:</para>
</listitem>
</itemizedlist>
<programlisting>
># cd /opt/git
</programlisting>
<itemizedlist>
<listitem>
<para>Clone murano-conductor repository from branch release-0.2:</para>
</listitem>
</itemizedlist>
<programlisting>
># git clone git://github.com/stackforge/murano-conductor.git -b release-0.2 &amp;&amp; cd /opt/git/murano-conductor
</programlisting>
<itemizedlist>
<listitem>
<para>Install Murano-Conductor:</para>
<para><emphasis>On Ubuntu:</emphasis></para>
<programlisting>
># sh setup.sh install
</programlisting>
<para><emphasis>On CentOS:</emphasis></para>
<programlisting>
># sh setup-centos.sh install
</programlisting>
</listitem>
</itemizedlist>
<itemizedlist>
<listitem>
<para>
Configuration files of the murano-conductor service reside at
<filename>/etc/murano-conductor </filename>directory. Basic configuration parameters are
@ -348,13 +378,80 @@ virtual_host = &lt;rabbitmq vhost>
<itemizedlist>
<listitem>
<para>conductor-paste.ini</para>
<para>Its empty but must exist.</para>
</listitem>
</itemizedlist>
<para>Its empty but must exist.</para>
</listitem>
</itemizedlist>
<itemizedlist>
<listitem>
<para>Start Murano-Conductor:</para>
<para><emphasis>On Ubuntu:</emphasis></para>
<programlisting>
># service murano-conductor start
</programlisting>
<para><emphasis>On CentOS:</emphasis></para>
<programlisting>
># initctl start murano-conductor
</programlisting>
</listitem>
</itemizedlist>
</section>
<section>
<title>Murano-Dashboard</title>
<para> Murano-dashboard does not need to be configured, but we need to
<para>Murano-Dashboard required additional repositories are installed and your system is updated and upgraded.
It can be checked with steps in the appendix of administrator guide.</para>
<warning>
<para>This installation is not capable with Horizon installed by devstack</para>
</warning>
<itemizedlist>
<listitem>
<para>If there is no openstack dashboard package in your environment install it now with all dependencies:</para>
<para><emphasis>On Ubuntu:</emphasis></para>
<para>Deleting an Ubuntu theme is an optional step but recommended. </para>
<programlisting>
># apt-get install memcached libapache2-mod-wsgi openstack-dashboard
># dpkg --purge openstack-dashboard-ubuntu-theme
</programlisting>
<para><emphasis>On CentOS:</emphasis></para>
<programlisting>
># yum install make gcc memcached python-memcached mod_wsgi openstack-dashboard python-netaddr.noarch
</programlisting>
</listitem>
</itemizedlist>
<itemizedlist>
<listitem>
<para>Go to a git folder:</para>
</listitem>
</itemizedlist>
<programlisting>
># cd /opt/git
</programlisting>
<itemizedlist>
<listitem>
<para>Clone murano-dashboard repository from branch release-0.2:</para>
</listitem>
</itemizedlist>
<programlisting>
># git clone git://github.com/stackforge/murano-dashboard .git -b release-0.2 &amp;&amp; cd /opt/git/murano-dashboard
</programlisting>
<itemizedlist>
<listitem>
<para>Install Murano-Dashboard:</para>
<para><emphasis>On Ubuntu:</emphasis></para>
<programlisting>
># sh setup.sh install
</programlisting>
<para><emphasis>On CentOS:</emphasis></para>
<programlisting>
># sh setup-centos.sh install
</programlisting>
</listitem>
</itemizedlist>
<itemizedlist>
<listitem>
<para> Murano-dashboard does not need to be configured, but we need to
set up proper OPENSTACK_HOST variable in the OpenStack dashboard
configuration file, which resides at
<filename> /etc/openstack-dashboard </filename>
@ -369,6 +466,35 @@ OPENSTACK_HOST =
“openstack_controller_address”
...
</programlisting>
</listitem>
</itemizedlist>
<itemizedlist>
<listitem>
<para>Start Murano-Dashboard:</para>
<para><emphasis>On Ubuntu:</emphasis></para>
<programlisting>
># service apache2 restart
</programlisting>
<para><emphasis>On CentOS:</emphasis></para>
<programlisting>
># service httpd restart
</programlisting>
</listitem>
</itemizedlist>
<itemizedlist>
<listitem>
<para>Open your browser:</para>
<para><emphasis>For Ubuntu:</emphasis></para>
<programlisting>
http://your_devbox_ip/horizon
</programlisting>
<para><emphasis>For CentOS:</emphasis></para>
<programlisting>
http://your_devbox_ip/dashboard
</programlisting>
</listitem>
</itemizedlist>
Login with Keystone credentials and check that "Environments" panel appears at the horizon "Project" tab.
</section>
</section>
</chapter>

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2013 Mirantis, Inc.
@ -26,26 +26,22 @@
<title>Install OpenStack</title>
<para>
To install Murano you need a working copy of OpenStack.
If you already have a Openstack installation make sure it meets the requirements
described in <link linkend="LabHardware">this</link> chapter.
To install Openstack that will be ready to use with Murano
follow the instructions below.
If you already have a Openstack installation make sure it meets the <link linkend="System Requirements">system requirements</link>.
To install Openstack that will be ready to use with Murano follow the instructions below.
</para>
<para><emphasis role="bold">Using Devstack</emphasis></para>
<para>
Currently the most simple way to build a lab is to use
devstack. The steps are quite simple:
Currently the most simple way to build a lab is to use devstack.
The steps are quite simple:
</para>
<itemizedlist>
<listitem>
<para>
Install and configure OS on your hardware. The
recommended OS is Ubuntu Server 12.04 x64. Minimal
configuration would be enough.
Install and configure OS on your hardware. The supported OS is Ubuntu Server 12.04 x64.
</para>
</listitem>
<listitem>
<para>Install all the latest updates.</para>
<para>Install all the latest updates:</para>
</listitem>
</itemizedlist>
<programlisting>
@ -54,7 +50,7 @@
</programlisting>
<itemizedlist>
<listitem>
<para>Create a user <emphasis>stack</emphasis></para>
<para>Create a user <emphasis role="bold">stack</emphasis>:</para>
</listitem>
</itemizedlist>
<programlisting>
@ -62,7 +58,7 @@
</programlisting>
<itemizedlist>
<listitem>
<para>Add user <emphasis>stack</emphasis> to sudoers</para>
<para>Add user <emphasis role="bold">stack</emphasis> to sudoers:</para>
</listitem>
</itemizedlist>
<programlisting>
@ -71,7 +67,7 @@
</programlisting>
<itemizedlist>
<listitem>
<para>Create a folder for OpenStack installation files
<para>Create a folder for OpenStack installation files:
</para>
</listitem>
</itemizedlist>
@ -81,7 +77,7 @@
</programlisting>
<itemizedlist>
<listitem>
<para>Clone the <emphasis>devstack</emphasis> repo</para>
<para>Clone the <emphasis role="bold">devstack</emphasis> repo</para>
</listitem>
</itemizedlist>
<programlisting>
@ -91,7 +87,7 @@
</programlisting>
<itemizedlist>
<listitem>
<para>Checkout the stable/grizzly branch</para>
<para>Checkout the <emphasis role="bold">stable/grizzly</emphasis> branch</para>
</listitem>
</itemizedlist>
<programlisting>
@ -129,7 +125,7 @@
<para>
<itemizedlist>
<listitem>
<para>Install SAMBA</para>
<para>Install SAMBA:</para>
</listitem>
</itemizedlist>
<programlisting>
@ -138,7 +134,7 @@
</programlisting>
<itemizedlist>
<listitem>
<para>Create shared folder</para>
<para>Create shared folder:</para>
</listitem>
</itemizedlist>
<programlisting>
@ -147,7 +143,7 @@
</programlisting>
<itemizedlist>
<listitem>
<para>Edit /etc/samba/smb.conf</para>
<para>Edit /etc/samba/smb.conf:</para>
</listitem>
</itemizedlist>
<programlisting>
@ -167,7 +163,7 @@
</programlisting>
<itemizedlist>
<listitem>
<para>Restart services</para>
<para>Restart services:</para>
</listitem>
</itemizedlist>
<programlisting>
@ -178,7 +174,7 @@
<para><emphasis role="bold">Copy Prerequisites Into The Share</emphasis></para>
<itemizedlist>
<listitem>
<para>Create folder structure</para>
<para>Create folder structure:</para>
</listitem>
</itemizedlist>
<programlisting>
@ -230,7 +226,7 @@
</listitem>
<listitem>
<para>
<link xlink:href="http://www.asp.net/mvc/mvc4">
<link xlink:href="http://go.microsoft.com/fwlink/?LinkID=239644&amp;clcid=0x409">
Microsoft® System CLR Types for Microsoft® SQL Server® 2012
</link>:
<filename>Prerequisites/SQL Server/Tools/SQLSysClrTypes.msi</filename>
@ -241,7 +237,7 @@
</listitem>
</itemizedlist>
</section>
<section>
<section xml:id="Build Windows Image">
<title>Build Windows Image</title>
<para>A pre-built Windows Image is required to create environments
in Murano. Because of its size its better to build the image
@ -256,7 +252,7 @@
</para>
</listitem>
<listitem>
<para>Clone murano-deployment repository</para>
<para>Clone <emphasis role="bold">murano-deployment</emphasis> repository:</para>
</listitem>
</itemizedlist>
<programlisting>
@ -266,7 +262,7 @@
<itemizedlist>
<listitem>
<para>Change directory to <filename>murano-deployment/image-builder</filename>
folder
folder:
</para>
</listitem>
</itemizedlist>
@ -275,7 +271,7 @@
</programlisting>
<itemizedlist>
<listitem>
<para>Create folder structure for image builder</para>
<para>Create folder structure for image builder:</para>
</listitem>
</itemizedlist>
<programlisting>
@ -378,7 +374,7 @@
</para>
</listitem>
<listitem>
<para>Test that all required files are in place</para>
<para>Test that all required files are in place:</para>
</listitem>
</itemizedlist>
<programlisting>
@ -389,7 +385,7 @@
<emphasis role="bold">Build The Image</emphasis></para>
<itemizedlist>
<listitem>
<para>Get list of supported images</para>
<para>Get list of supported images:</para>
</listitem>
</itemizedlist>
<programlisting>
@ -397,7 +393,7 @@
</programlisting>
<itemizedlist>
<listitem>
<para>Run image build process</para>
<para>Run image build process:</para>
</listitem>
</itemizedlist>
<programlisting>
@ -408,7 +404,7 @@
<para>Wait until process finishes</para>
</listitem>
<listitem>
<para>The image file ws-2012-std.qcow2 will be stored in <filename>
<para>The image file <filename>ws-2012-std.qcow2</filename> will be stored in <filename>
/opt/image-builder/share/images </filename> folder.
</para>
</listitem>
@ -418,8 +414,8 @@
</para>
<itemizedlist>
<listitem>
<para>Import openrc file which contains environment
variables definitions required by OpenStack components
<para>Import <filename>openrc</filename> file which contains environment
variables definitions required by OpenStack components:
</para>
</listitem>
</itemizedlist>
@ -429,7 +425,7 @@
<itemizedlist>
<listitem>
<para>
Import the Windows Server 2012 image into Glance
Import the Windows Server 2012 image into Glance:
</para>
</listitem>
</itemizedlist>
@ -448,4 +444,46 @@
</para>
</warning>
</section>
</chapter>
<section xml:id="Rabbit">
<title>RabbitMQ Configuration Notes</title>
<para>OpenStack rabbitMQ default credentials could be used for murano services,
but prefered way is to make additional changes into rabbitMQ
configuration, like own vhost, login and password. These steps
require superuser rights and should be run only on the OpenStack
controller node where rabbitMQ service resides.
</para>
<para>How to do this:
<programlisting>
># rabbitmqctl add_user muranouser muranopassword
># rabbitmqctl set_user_tags muranouser administrator
># rabbitmqctl add_vhost muranovhost
># rabbitmqctl set_permissions -p muranovhost muranouser ".*" ".*" ".*"
</programlisting>
</para>
</section>
<section xml:id="Keystone">
<title>Keystone Configuration Notes</title>
<para>Service entry for murano-api and endpoint associated with it
could also be configured in the keystone. If there is no record
about murano-api in the keystone murano-dashboard would try to
reach murano-api service at localhost on the default murano-api
port 8082.
</para>
<para>How to add service record into the keystone using python keystone
client:
<programlisting>
># keystone service-create --name muranoapi --type murano \
--description "Murano-Api Service"
</programlisting>
This command returns UUID of the created service record, which
should be used below.
<programlisting>
># keystone endpoint-create \
  --service-id UUID_from_above \
  --publicurl http://murano_vm_address:8082 \
  --internalurl http://murano_vm_address:8082 \
  --adminurl http://murano_vm_address:8082 \
</programlisting>
</para>
</section>
</chapter>