Cherry-pick from the release-0.4 branch

* Fix issues in admin guide

   comments mentioned in https://review.openstack.org/#/c/65926/
   document style (XML style, formatting issues)

   Closes-Bug: 1268537

* Resolve documentation issues

   Fix comments that was not fixed in original
   Closes-bug: #1268537

* Update documentation for a release-0.4.1 release

   Closes-bug: #1268537

Change-Id: I5bf3f01500dc4023e5477e5173d4f6a9922bd034
This commit is contained in:
Dmitry Teselkin 2014-01-17 15:35:50 +04:00 committed by Ekaterina Fedorova
parent 094351ad46
commit 4cb3f3de6c
8 changed files with 1376 additions and 1221 deletions

View File

@ -656,7 +656,8 @@ initctl start murano-conductor
<section> <section>
<title>Murano Repository Service</title> <title>Murano Repository Service</title>
<para>Murano Repository provides access to metadata for Murano Conductor and Murano Dashboard. <para>Murano Repository provides access to metadata for Murano Conductor and Murano Dashboard.
It also allows to manage metadata objects via API.</para> It also allows to manage metadata objects via API.
Editing service definitions (and other data stored in Murano Repository) is made separately for each tenant.</para>
<para>This chapter describes the procedure of installation and configuration of Murano Repository.</para> <para>This chapter describes the procedure of installation and configuration of Murano Repository.</para>
<section> <section>
<title>Install</title> <title>Install</title>

View File

@ -47,6 +47,11 @@
qemu-kvm qemu-kvm
</para> </para>
</listitem> </listitem>
<listitem>
<para>
munin-libvirt-plugins
</para>
</listitem>
<listitem> <listitem>
<para> <para>
python-libvirt python-libvirt
@ -62,6 +67,16 @@
libvirt0 libvirt0
</para> </para>
</listitem> </listitem>
<listitem>
<para>
munin-libvirt-plugins
</para>
</listitem>
<listitem>
<para>
python-libvirt
</para>
</listitem>
<listitem> <listitem>
<para> <para>
virt-goodies virt-goodies
@ -97,22 +112,21 @@
<para> <para>
On Ubuntu you could install them using the command below: On Ubuntu you could install them using the command below:
</para> </para>
<screen> <screen>
># apt-get install ipxe-qemu kvm-ipxe qemu-kvm virt-goodies \ ># apt-get install ipxe-qemu kvm-ipxe qemu-kvm virt-goodies \
virtinst virt-manager libvirt0 libvirt-bin \ virtinst virt-manager libvirt0 libvirt-bin \
python python-libvirt \ munin-libvirt-plugins python python-libvirt \
python-libxml2 python-minimal python-pycurl \ python-libxml2 python-minimal python-pycurl \
python-pyorbit python-requests python-six \ python-pyorbit python-requests python-six \
samba samba-common openssh-server virt-top virt-what samba samba-common openssh-server virt-top virt-what
</screen> </screen>
</section> </section>
<section> <section>
<title>Build Linux Image</title> <title>Build Linux Image</title>
<para> <para>
<emphasis role="strong">Create a VM</emphasis> <emphasis role="strong">Create a VM</emphasis>
</para> </para>
<para> <para>This section describes steps required to build an image of Linux Virtual Machine
This section describes the steps required to build an image of Linux Virtual Machine
which could be used with Murano. There are two possible ways to create it - from which could be used with Murano. There are two possible ways to create it - from
CLI or using GUI tools. We describe both in this section. CLI or using GUI tools. We describe both in this section.
</para> </para>
@ -133,23 +147,23 @@
<para> <para>
Preallocate disk image Preallocate disk image
</para> </para>
<screen> <screen>
># qemu-img create -f qcow2 /var/lib/libvirt/images/cloud-linux.img 10G ># qemu-img create -f qcow2 /var/lib/libvirt/images/cloud-linux.img 10G
</screen> </screen>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Start the VM Start the VM
</para> </para>
<screen> <screen>
># virt-install --connect qemu:///system --hvm --name cloud-linux \ ># virt-install --connect qemu:///system --hvm --name cloud-linux \
--ram 2048 --vcpus 2 --cdrom /PATH_TO_YOUR_LINUX.ISO \ --ram 2048 --vcpus 2 --cdrom /PATH_TO_YOUR_LINUX.ISO \
--disk path=/var/lib/libvirt/images/cloud-linux.img, \ --disk path=/var/lib/libvirt/images/cloud-linux.img, \
format=qcow2,bus=virtio,cache=none \ format=qcow2,bus=virtio,cache=none \
--network network=default,model=virtio \ --network network=default,model=virtio \
--memballoon model=virtio --vnc --os-type=linux \ --memballoon model=virtio --vnc --os-type=linux \
--accelerate --noapic --keymap=en-us --video=cirrus --force --accelerate --noapic --keymap=en-us --video=cirrus --force
</screen> </screen>
</listitem> </listitem>
</orderedlist> </orderedlist>
</para> </para>
@ -162,9 +176,8 @@ format=qcow2,bus=virtio,cache=none \
<para> <para>
<orderedlist> <orderedlist>
<listitem> <listitem>
<para> <para>Launch <emphasis role="italic">virt-manager</emphasis> from shell
Launch <emphasis role="italic">virt-manager</emphasis> from shell as root as root </para>
</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
@ -201,18 +214,15 @@ format=qcow2,bus=virtio,cache=none \
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Add (or create new) HDD image with Disk bus <emphasis role="bold">VirtIO</emphasis> Add (or create new) HDD image with Disk bus <emphasis role="bold">VirtIO</emphasis> and storage format <emphasis role="bold">QCOW2</emphasis>
and storage format <emphasis role="bold">QCOW2</emphasis>
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>Set network device model <emphasis role="bold">VirtIO</emphasis>
Set network device model <emphasis role="bold">VirtIO</emphasis>
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>Start installation process and open guest vm screen through
Start installation process and open guest vm screen through
<emphasis role="bold">Console</emphasis> button <emphasis role="bold">Console</emphasis> button
</para> </para>
</listitem> </listitem>
@ -224,25 +234,22 @@ format=qcow2,bus=virtio,cache=none \
<para> <para>
<emphasis role="strong">Ubuntu 12.04 LTS x86_64</emphasis> <emphasis role="strong">Ubuntu 12.04 LTS x86_64</emphasis>
</para> </para>
<screen> <screen>
># apt-get -y update; apt-get -y dist-upgrade ># for action in update upgrade dist-upgrade;do apt-get -y $action;done
># apt-get install -y git unzip make cmake gcc \ ># apt-get install -y git unzip make cmake gcc python-dev python-pip openssh-server sudo
python-dev python-pip openssh-server </screen>
</screen>
<para> <para>
<emphasis role="strong">CentOS 6.4 x86_64</emphasis> <emphasis role="strong">CentOS 6.4 x86_64</emphasis>
</para> </para>
<screen> <screen>
># rpm -ivh http://dl.fedoraproject.org/pub/epel/6/\ ># rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
x86_64/epel-release-6-8.noarch.rpm ># for action in update upgrade;do yum -y $action; done
># yum -y update; yum -y upgrade ># yum install -y git unzip make cmake gcc python-devel python-pip openssh-server openssh-clients sudo
># yum install -y git unzip make cmake gcc \ </screen>
python-devel python-pip openssh-server openssh-clients sudo
</screen>
<para> <para>
<emphasis role="strong">murano-agent installation steps</emphasis> <emphasis role="strong">murano-agent installation steps</emphasis>
</para> </para>
<screen> <screen>
># mkdir -p /opt/git ># mkdir -p /opt/git
># cd /opt/git ># cd /opt/git
># git clone https://github.com/stackforge/murano-agent.git ># git clone https://github.com/stackforge/murano-agent.git
@ -252,10 +259,9 @@ x86_64/epel-release-6-8.noarch.rpm
# To install Murano Agent on Ubuntu run: # To install Murano Agent on Ubuntu run:
># ./setup.sh install ># ./setup.sh install
or
# To install Murano Agent on CentOS run:
># ./setup-centos.sh install ># ./setup-centos.sh install
</screen> </screen>
<para> <para>
<emphasis role="strong">cloud-init installation steps</emphasis> <emphasis role="strong">cloud-init installation steps</emphasis>
<itemizedlist> <itemizedlist>
@ -263,24 +269,24 @@ x86_64/epel-release-6-8.noarch.rpm
<para> <para>
<emphasis role="bold">Ubuntu</emphasis> <emphasis role="bold">Ubuntu</emphasis>
</para> </para>
<screen> <screen>
># apt-get install -y cloud-init cloud-initramfs-growroot ># apt-get install -y cloud-init cloud-initramfs-growroot
</screen> </screen>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
<emphasis role="bold">CentOS</emphasis> <emphasis role="bold">CentOS</emphasis>
</para> </para>
<screen> <screen>
># yum install -y cloud-init ># yum install -y cloud-init
</screen> </screen>
<note> <note>
<para> <para>
<emphasis role="bold">Ubuntu only</emphasis> <emphasis role="bold">Ubuntu only</emphasis>
</para> </para>
<screen> <screen>
># dpkg-reconfigure cloud-init ># dpkg-reconfigure cloud-init
</screen> </screen>
<para> <para>
Mark <emphasis role="bold">EC2</emphasis> data source support, save and exit or add manualy <emphasis role="bold">Ec2</emphasis> to the datasource_list variable in the /etc/cloud/cloud.cfg.d/90_dfkg.cfg Mark <emphasis role="bold">EC2</emphasis> data source support, save and exit or add manualy <emphasis role="bold">Ec2</emphasis> to the datasource_list variable in the /etc/cloud/cloud.cfg.d/90_dfkg.cfg
</para> </para>
@ -290,14 +296,12 @@ x86_64/epel-release-6-8.noarch.rpm
<para> <para>
<emphasis role="strong">Minimal cloud-init configuration options</emphasis> <emphasis role="strong">Minimal cloud-init configuration options</emphasis>
</para> </para>
<screen> <screen>
># vi /etc/cloud/cloud.cfg ># vi /etc/cloud/cloud.cfg:
</screen> user: ec2-user
<screen> disable_root: 1
user: ec2-user preserve_hostname: False
disable_root: 1 </screen>
preserve_hostname: False
</screen>
</listitem> </listitem>
</itemizedlist> </itemizedlist>
</para> </para>
@ -311,40 +315,40 @@ preserve_hostname: False
<para> <para>
<emphasis role="strong">Ubuntu</emphasis> <emphasis role="strong">Ubuntu</emphasis>
</para> </para>
<screen> <screen>
># useradd -m -G sudo -s /bin/bash ec2-user ># useradd -m -G sudo -s /bin/bash ec2-user
># passwd ec2-user ># passwd ec2-user
</screen> </screen>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
<emphasis role="strong">CentOS</emphasis> <emphasis role="strong">CentOS</emphasis>
</para> </para>
<screen> <screen>
># useradd -m -G wheel -s /bin/bash ec2-user ># useradd -m -G wheel -s /bin/bash ec2-user
># passwd ec2-user ># passwd ec2-user
</screen> </screen>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
<emphasis role="strong">Sudo</emphasis> <emphasis role="strong">Sudo</emphasis>
</para> </para>
<screen> <screen>
># echo "ec2-user ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/ec2-user ># echo "ec2-user ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/ec2-user
># chmod 440 /etc/sudoers.d/ec2-user ># chmod 440 /etc/sudoers.d/ec2-user
</screen> </screen>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
<emphasis role="strong">Disable SSH password-based logins in the /etc/ssh/sshd_config.</emphasis> <emphasis role="strong">Disable SSH password-based logins in the /etc/ssh/sshd_config.</emphasis>
</para> </para>
<screen> <screen>
... ...
GSSAPIAuthentication no GSSAPIAuthentication no
PasswordAuthentication no PasswordAuthentication no
PermitRootLogin no PermitRootLogin no
... ...
</screen> </screen>
</listitem> </listitem>
</itemizedlist> </itemizedlist>
</para> </para>
@ -355,18 +359,18 @@ PermitRootLogin no
<para> <para>
<emphasis role="strong">Ubuntu</emphasis> <emphasis role="strong">Ubuntu</emphasis>
</para> </para>
<screen> <screen>
># rm -f /etc/udev/rules.d/70-persistent-net.rules ># rm -rf /etc/udev/rules.d/70-persistent-net.rules
</screen> </screen>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
<emphasis role="strong">CentOS</emphasis> <emphasis role="strong">CentOS</emphasis>
Remove or comment out HWADDR and UUID in /etc/sysconfig/network-scripts/ifcfg-eth* Remove or comment out HWADDR and UUID in /etc/sysconfig/network-scripts/ifcfg-eth*
</para> </para>
<screen> <screen>
># rm -f /etc/udev/rules.d/70-persistent-net.rules ># rm -rf /etc/udev/rules.d/70-persistent-net.rules
</screen> </screen>
</listitem> </listitem>
</itemizedlist> </itemizedlist>
</para> </para>
@ -376,14 +380,14 @@ PermitRootLogin no
<formalpara> <formalpara>
<title>Convert the image from RAW to QCOW2 format if you made it as RAW</title> <title>Convert the image from RAW to QCOW2 format if you made it as RAW</title>
<para> <para>
The image must be converted from RAW format to QCOW2 before being imported into Glance. The image must be converted from RAW format to QCOW2 before being imorted into Glance.
</para> </para>
</formalpara> </formalpara>
<para> <para>
<screen> <screen>
># qemu-img convert -O qcow2 /var/lib/libvirt/images/cloud-linux.img \ ># qemu-img convert -O qcow2 /var/lib/libvirt/images/cloud-linux.img \
/var/lib/libvirt/images/cloud-linux.img.qcow2 /var/lib/libvirt/images/cloud-linux.img.qcow2
</screen> </screen>
</para> </para>
</section> </section>
<section> <section>
@ -392,13 +396,11 @@ PermitRootLogin no
Services deployed by Murano require specially prepared images. Services deployed by Murano require specially prepared images.
After images are created they should be registered in Openstack Glance - image operation service. After images are created they should be registered in Openstack Glance - image operation service.
</para> </para>
<screen> <screen>
># glance image-create --disk-format=qcow2 --container-format=bare \ ># glance image-create --disk-format=qcow2 --container-format=bare --is-public=true --file=cloud-linux.img --name=cloud-linux
--is-public=true --file=cloud-linux.img --name=cloud-linux </screen>
</screen>
<note> <note>
<para> <para>Image should be marked with an appropriate type. That could be done through the Horizon UI.
Image should be marked with an appropriate type. That could be done through the Horizon UI.
Navigate to Project -&gt; Environments -&gt; Marked Images -&gt; Mark Image and fill up form: Navigate to Project -&gt; Environments -&gt; Marked Images -&gt; Mark Image and fill up form:
<itemizedlist> <itemizedlist>
<listitem> <listitem>

View File

@ -13,8 +13,7 @@
<chapter xmlns="http://docbook.org/ns/docbook" <chapter xmlns="http://docbook.org/ns/docbook"
xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
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" 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">
version="5.0">
<title>Install Murano</title> <title>Install Murano</title>
<para>This chapter describes Murano services installation in virtual <para>This chapter describes Murano services installation in virtual
environment.</para> environment.</para>
@ -79,6 +78,9 @@
<para>Before installing any packages make sure that your system is <para>Before installing any packages make sure that your system is
updated and upgraded.</para> updated and upgraded.</para>
</note> </note>
<note>
To deploy web farm services Neutron LBaaS (Neutron extension package) should be installed in Openstack
</note>
</section> </section>
<section xml:id="venv"> <section xml:id="venv">
<title>Installing with virtual environment</title> <title>Installing with virtual environment</title>
@ -115,16 +117,17 @@ cd murano-api &amp;&amp; python ./tools/install_venv.py
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para>Config files are <filename>etc/murano-api.conf</filename> <para> Copy murano-api sample config file located at
where you just need to point out IP address where your RabbitMQ is <filename>etc/murano/murano-api.conf.sample</filename> to <filename>etc/murano/murano-api.conf</filename>.
running, and <filename>etc/murano-api-paste.ini</filename>, which In config file set up keystone endpoint in Openstack installation. Other settings are described in 'Murano Admin Guide'.
doesn&apos;t require any changes.</para> Config <filename>etc/murano/murano-api-paste.conf</filename>
doesn't require any modification.</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
And finally run Murano API: And finally run Murano API:
<programlisting> <programlisting>
./tools/with_venv.sh python muranoapi/cmd/api.py --config-file=./etc/murano-api.conf ./tools/with_venv.sh python muranoapi/cmd/api.py --config-file=./etc/murano/murano-api.conf
</programlisting> </programlisting>
</para> </para>
</listitem> </listitem>
@ -143,7 +146,7 @@ git clone https://github.com/stackforge/murano-conductor
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Execute a script located at the Execute the following script located at the
<filename>murano-conductor/tools</filename> <filename>murano-conductor/tools</filename>
directory to create virtual environment automatically: directory to create virtual environment automatically:
<programlisting> <programlisting>
@ -153,25 +156,17 @@ cd murano-conductor &amp;&amp; python ./tools/install_venv.py
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Murano Conductor config file located at Copy Murano Conductor sample config file located at
<filename>etc/conductor.conf</filename> <filename>etc/murano/conductor.conf.sample</filename> to <filename>etc/murano/conductor.conf</filename>.
For a local development comment data_dir parameter in this file: In config file set up keystone endpoint in Openstack installation.
<programlisting> All other possible configuration described in the Murano Admin Guide.
# Directory where conductor&apos;s data directory located.
# &quot;data&quot; must be subdirectory to this.
# data_dir = /etc/murano-conductor
</programlisting>
After that local
<filename>data</filename>
directory, which contain all necessary files will be used. All
other possible configuration described in the Murano Admin Guide.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Run Murano Conductor: Run Murano Conductor:
<programlisting> <programlisting>
./tools/with_venv.sh python muranoconductor/cmd/run.py --config-file=./etc/conductor.conf ./tools/with_venv.sh python muranoconductor/cmd/run.py --config-file=./etc/murano/conductor.conf
</programlisting> </programlisting>
</para> </para>
</listitem> </listitem>
@ -200,14 +195,14 @@ cd murano-repository &amp;&amp; python ./tools/install_venv.py
</listitem> </listitem>
<listitem> <listitem>
<para>Copy a config file <filename> <para>Copy a config file <filename>
etc/murano-repository.conf.sample</filename> to <filename> etc/murano/murano-repository.conf.sample</filename> to <filename>
etc/murano-repository.conf</filename> and point out Keystone parameters.</para> etc/murano/murano-repository.conf</filename> and point out Keystone parameters.</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
And finally run Murano Repository: And finally run Murano Repository:
<programlisting> <programlisting>
./tools/with_venv.sh python muranorepository/cmd/run.py --config-file=./etc/murano-repository.conf ./tools/with_venv.sh python muranorepository/cmd/run.py --config-file=./etc/murano/murano-repository.conf
</programlisting> </programlisting>
</para> </para>
</listitem> </listitem>
@ -262,11 +257,32 @@ cd murano-dashboard &amp;&amp; python ./tools/install_venv.py
<programlisting> <programlisting>
# cp muranodashboard/local/local_settings.py.example muranodashboard/local/local_settings.py # cp muranodashboard/local/local_settings.py.example muranodashboard/local/local_settings.py
</programlisting> </programlisting>
and set in just copied file the the actual IP address of the and set in just copied file the following parameters:
OpenStack end-point. If you haven&apos;t register murano-api <itemizedlist>
service in the keystone catalog you can set MURANO_API_URL in the <listitem>
same settings file. Note that local murano-api service will be <para>
using by default. <emphasis>MURANO_API_URL</emphasis> Required if murano-api service is not registered in keystone.
Provide valid URL where Murano API is running
</para>
</listitem>
<listitem>
<para>
<emphasis>MURANO_METADATA_URL</emphasis>
Required if murano-repository service is not registered in keystone.
Provide valid URL where Murano Repository service is running
</para>
</listitem>
<listitem>
<para><emphasis>NETWORK_TOPOLOGY</emphasis></para> - network configuration.
Duplicates murano-conductor setting (routed - default, flat, nova).
</listitem>
</itemizedlist>
Since all UI forms are described in Metadata Repository and kept in Django sessions - default Memcached as a session backend is not
suitable for a dynamic UI and we need to use Database backend. (It's already set up in murano settings file).
But this requires to synchronize database with the specified settings:
<programlisting>
./tools/with_venv.sh ./manage.py syncdb
</programlisting>
</para> </para>
</listitem> </listitem>
<listitem> <listitem>

View File

@ -86,6 +86,18 @@
</itemizedlist> </itemizedlist>
</entry> </entry>
</row> </row>
<row>
<entry>
February. 5, 2013
</entry>
<entry>
<itemizedlist spacing="compact">
<listitem>
<para>Update for Release-0.4.1</para>
</listitem>
</itemizedlist>
</entry>
</row>
</tbody> </tbody>
</tgroup> </tgroup>
</informaltable> </informaltable>

View File

@ -52,6 +52,16 @@
<entry>0.3</entry> <entry>0.3</entry>
<entry>2013-11-25</entry> <entry>2013-11-25</entry>
</row> </row>
<row>
<entry>Release-0.4</entry>
<entry>0.3</entry>
<entry>2013-12-20</entry>
</row>
<row>
<entry>Release-0.4.1</entry>
<entry>0.3</entry>
<entry>2014-02-05</entry>
</row>
</tbody> </tbody>
</tgroup> </tgroup>
</table> </table>

View File

@ -117,6 +117,11 @@ some_key2 = some_value2
RabbitMQ RabbitMQ
</para> </para>
</listitem> </listitem>
<listitem>
<para>
<link xlink:href="https://wiki.openstack.org/wiki/Neutron/LBaaS/HowToRun"> Neutron LBaaS (Neutron extension package)</link>
</para>
</listitem>
<listitem> <listitem>
<para>Windows Server 2012 Standard image imported into Glance. <para>Windows Server 2012 Standard image imported into Glance.
See <link linkend="Build Windows Image">Build Windows Image</link> chapter. See <link linkend="Build Windows Image">Build Windows Image</link> chapter.
@ -126,7 +131,7 @@ some_key2 = some_value2
<para>Samba share with prerequisites. See <link linkend="Samba">Install Samba</link></para> <para>Samba share with prerequisites. See <link linkend="Samba">Install Samba</link></para>
</listitem> </listitem>
<listitem> <listitem>
<para>OpenStack metadata service.</para> <para>OpenStack metadata service</para>
</listitem> </listitem>
</itemizedlist> </itemizedlist>
</listitem> </listitem>

View File

@ -125,6 +125,17 @@
</itemizedlist> </itemizedlist>
</td> </td>
</tr> </tr>
<tr>
<td colspan="1" align="center"> February. 6, 2014 </td>
<td colspan="3" align="center"> Release-0.4.1 </td>
<td colspan="4">
<itemizedlist>
<listitem>
<para>Update with Release-0.4.1 information</para>
</listitem>
</itemizedlist>
</td>
</tr>
</tbody> </tbody>
</informaltable> </informaltable>
</section> </section>

View File

@ -217,5 +217,103 @@ SSL_KEY_FILE=''
</listitem> </listitem>
</itemizedlist> </itemizedlist>
</section> </section>
<section>
<title>Custom devstack script</title>
<para>
It's just like regular devstack installation, but included all Murano services!
Follow the steps below:
</para>
<para><emphasis role="bold">System preparation</emphasis></para>
<para>
<itemizedlist>
<listitem>
<para><emphasis>Create user stack</emphasis></para>
<programlisting>
># adduser stack
</programlisting>
</listitem>
<listitem>
<para>Add user stack to sudoers rules</para>
<programlisting>
># echo 'stack ALL=(ALL) NOPASSWD: ALL' > /etc/sudoers.d/stack
># chmod 440 /etc/sudoers.d/stack
</programlisting>
</listitem>
</itemizedlist>
</para>
<para><emphasis role="bold"></emphasis>Installation</para>
<itemizedlist>
<listitem>
<para>Create folders where devstack will install all the files</para>
<programlisting>
># mkdir -p /opt/stack
># chown stack:stack /opt/stack
</programlisting>
</listitem>
<listitem>
<para>Change current user to "stack" and change directory to home</para>
<programlisting>
># su stack
>stack$ cd ~
</programlisting>
</listitem>
<listitem>
<para>Clone devstack repository and checkout havana branch</para>
<programlisting>
>stack$ cd
>stack$ git clone https://github.com/openstack-dev/devstack.git
>stack$ cd devstack
>stack$ git checkout stable/havana
</programlisting>
</listitem>
<listitem>
<para>Clone murano-deployment repository</para>
<programlisting>>stack$ cd
>stack$ git clone https://github.com/stackforge/murano-deployment.git</programlisting>
</listitem>
<listitem>
<para>Copy required files from murano-deployment to devstack, then configure local.conf.
You should set at least one configuration parameter there - HOST_IP address.</para>
<programlisting>
>stack$ cd
>stack$ cp -r murano-deployment/devstack-integration/* devstack/
</programlisting>
</listitem>
<listitem>
<para>Replace (or merge settings with) <filename>local.conf</filename> with another config file, if you need a different type of installation.
Available config files and installation types are:
<itemizedlist>
<listitem>
<para>
<filename>single-node.local.conf</filename> - single-node all-in-one installation. OpenStack + Murano will be installed on your node together.
</para>
</listitem>
<listitem>
<para>
<filename>devbox.local.conf</filename> - install Murano only. OpenStack must be installed on another node, and your node will be configured to use it.
</para>
</listitem>
</itemizedlist>
</para>
</listitem>
<listitem>
<para>Edit devstack's configuration file</para>
<programlisting>
>stack$ vim devstack/local.conf
</programlisting>
</listitem>
<listitem>
<para>From devstack directory, launch stack.sh</para>
<programlisting>
>stack$ ./stack.sh
</programlisting>
</listitem>
</itemizedlist>
<para>
Now you can operate with Openstack and Murano. Murano Dashboard panel should appears in horizon dashboard.
Just open URL http://&lsaquo;your hostname&rsaquo; in web browser and login with your credentials. Open Murano tab and enjoy.
</para>
</section>
</chapter> </chapter>