Add getting-started guide

Also changed:
1) User guide updated: table with service description for AD was added
2) Add information for configuration OPENSTACK_HOST in installation guide
3) Some style for this documents was added
Change-Id: Iaff2b841990e10e8c2cfd657a01ca76514491f10
This commit is contained in:
Ekaterina Fedorova 2013-09-10 15:40:58 +04:00
parent 467491526d
commit 37402e3cd0
16 changed files with 2002 additions and 1063 deletions

View File

@ -224,6 +224,7 @@ admin_password = password
</programlisting>
</listitem>
<listitem>
<anchor xml:id="murano_api_endpoint"></anchor>
<para>Register murano-api service in Openstack. </para>
<para>Note: you need to be authorized in Openstack to run this commands. To do this, you can run something like (having changed variables to appropriate values)</para>
<programlisting>
@ -231,8 +232,6 @@ admin_password = password
source $(YOUR_OPENSTACK_DIR)/openrc $(LOGIN) $(PASSWORD)
]]>
</programlisting>
<anchor xml:id="murano_api_endpoint"></anchor>
<programlisting>
<![CDATA[
keystone service-create --name muranoapi --type murano --description "Murano-Api Service"
@ -512,6 +511,12 @@ sh setup-centos.sh install
</programlisting>
</listitem>
</itemizedlist>
<para>
This script will supplement openstack dashboard configuration and the panel with Murano "Environments" should appear.
Don't forget to <link linkend="murano_api_endpoint"> register </link>
Murano API in keystone and set OPENSTACK_HOST in
<link xlink:href="http://docs.openstack.org/developer/horizon/topics/settings.html#openstack-host">horizon settings</link>.
</para>
</section>
</section>
<section xml:id="ssl">

View File

@ -22,7 +22,7 @@
<artifactId>murano-getting-started-guide</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Murano Deployment Guide</name>
<name>Murano Getting Started Guide</name>
<build>
<plugins>
<plugin>
@ -38,6 +38,10 @@
</execution>
</executions>
<configuration>
<htmlCustomization>${basedir}/src/docbkx/style/config.xsl
</htmlCustomization>
<htmlStylesheet>${basedir}/src/docbkx/style/getting-started.css
</htmlStylesheet>
<xincludeSupported>true</xincludeSupported>
<chunkSectionDepth>100</chunkSectionDepth>
</configuration>

View File

@ -0,0 +1,161 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2013 Mirantis, Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<chapter xml:id="Appendix" xmlns="http://docbook.org/ns/docbook"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xlink="http://www.w3.org/1999/xlink"
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>Appendix</title>
<para>
<emphasis role="bold">Murano VM</emphasis>
<note>
<para>
Your VM MUST be attached to the network with Internet access
and openstack management network (lab network) access.
</para>
</note>
</para>
<para>
<emphasis>Ubuntu Server 12.04 LTS x86_64</emphasis>
</para>
<para>Installation steps:</para>
<itemizedlist>
<listitem>
<para>Install minimal version of the system</para>
</listitem>
<listitem>
<para>When prompted, mark OpenSSH Server to be installed
</para>
</listitem>
<listitem>
<para>Login as root</para>
</listitem>
<listitem>
<para>Enable Cloud Archive repository</para>
</listitem>
<listitem>
<para>Update installed OS and packages</para>
</listitem>
<listitem>
<para>Add lines below to the
<filename>/etc/apt/sources.list.d/grizzly.list</filename>
file
<programlisting>
deb http://ubuntu-cloud.archive.canonical.com/ubuntu
precise-updates/grizzly main
deb http://archive.gplhost.com/debian grizzly main
deb http://archive.gplhost.com/debian grizzly-backports main
</programlisting>
</para>
</listitem>
<listitem>
<para>Update the system
<programlisting>
># apt-get update
># apt-get install ubuntu-cloud-keyring
># apt-get install gplhost-archive-keyring
># apt-get upgrade
</programlisting>
</para>
</listitem>
<listitem>
<para>Install additional packages
<programlisting>
># apt-get install mc unzip git make gcc
python-setuptools python-pip
</programlisting>
</para>
</listitem>
</itemizedlist>
<para>
<emphasis>CentOS 6.4 x86_64</emphasis>
</para>
<para>Installation steps:</para>
<itemizedlist>
<listitem>
<para>Install minimal version of the system.</para>
</listitem>
<listitem>
<para>When prompted, mark OpenSSH Server to be installed</para>
</listitem>
<listitem>
<para>Login as root</para>
</listitem>
<listitem>
<para>Enable RedHat Openstack and Epel repository</para>
</listitem>
<listitem>
<para>Update installed OS and packages</para>
</listitem>
<listitem>
<para>Add repositories and update OS
<programlisting>
># yum install -y http://rdo.fedorapeople.org/openstack/
openstack-grizzly/rdo-release-grizzly.rpm
># yum install -y http://mirror.yandex.ru/
epel/6/x86_64/epel-release-6-8.noarch.rpm
># yum update
># yum upgrade
</programlisting>
</para>
</listitem>
<listitem>
<para>Install additional packages
<programlisting>
># yum install mc unzip git make gcc python-setuptools
python-pip upstart
</programlisting>
</para>
</listitem>
</itemizedlist>
<para>
Most of dependent packages will be installed
automatically with setup scripts.
<note>
<para>
Some words about pip (python-pip) version. In order to have
proper versions of python dependency packages installed,
pip version MUST be 1.4 or higher!
</para>
</note>
</para>
<para>How-to determine python-pip version:</para>
<programlisting>
># pip --version
</programlisting>
<para>How-to upgrade pip to latest version:
<programlisting>
># pip install --upgrade pip
># pip install
https://pypi.python.org/packages/source/p/pip/pip-1.4.1.tar.gz
</programlisting>
<note>
<para>
You should pay attention to python-pip after upgrade to
version 1.4, because its filesystem location can change
from /usr/bin/pip to /usr/local/bin/pip!
</para>
</note>
</para>
<para>How to handle this situation:</para>
<programlisting>
># rm /usr/bin/pip
># ln -s /usr/local/bin/pip /usr/bin/pip
</programlisting>
</chapter>

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,107 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2013 Mirantis, Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<chapter xmlns="http://docbook.org/ns/docbook"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xlink="http://www.w3.org/1999/xlink"
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>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
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
cases in order to set up a complex Windows Environment with multiple
dependant services.
</para>
<para>
The service addresses following use cases:
<itemizedlist>
<listitem>
<para>Self-provisioning of predefined Windows services with their dependencies</para>
</listitem>
<listitem>
<para>Automation of administrative tasks during data center roll-out</para>
</listitem>
<listitem>
<para>Custom windows application as a windows service</para>
</listitem>
</itemizedlist>
</para>
<para>
The solution provides higher level of abstraction for manipulation
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>
</listitem>
<listitem>
<para>Windows Environment - a logical unit for all Services and represents a classical Windows Datacenter.
</para>
</listitem>
<listitem>
<para>Windows VM instance - a VM which hosts a Windows Service. A Windows Service might be deployed over several Windows VM instances.</para>
</listitem>
</itemizedlist>
</para>
<para>
The Key Features of the Service are the following:
<orderedlist>
<listitem>
<para>Native to OpenStack</para>
</listitem>
<listitem>
<para>Introduces abstraction level for Windows Environments</para>
</listitem>
<listitem>
<para>Supports Availability Zones and Disaster Recovery scenarios</para>
</listitem>
<listitem>
<para>Uses native Windows features for HA solutions</para>
</listitem>
</orderedlist>
</para>
<section>
<title>Document change history</title>
<para>The following table describes the most recent changes:</para>
<informaltable rules="all" frame="all">
<thead>
<tr>
<td align="center" colspan="1">Revision Date</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="4">
<itemizedlist>
<listitem>
<para>Initial document creation.</para>
</listitem>
</itemizedlist>
</td>
</tr>
</tbody>
</informaltable>
</section>
</chapter>

View File

@ -0,0 +1,559 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2013 Mirantis, Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<chapter xmlns="http://docbook.org/ns/docbook"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xlink="http://www.w3.org/1999/xlink"
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>Setup Devbox</title>
<para>There are a few ways to install Murano devbox</para>
<itemizedlist>
<listitem>
<para>using Vagrant automation tool</para>
</listitem>
<listitem>
<para>using a script to install all components automatically
</para>
</listitem>
<listitem>
<para>install everything manually</para>
</listitem>
</itemizedlist>
<note>
<para>
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.</para>
<para><emphasis role="bold">Prepare Environment (Ubuntu)</emphasis></para>
<itemizedlist>
<listitem>
<para>Install VirtualBox:</para>
</listitem>
</itemizedlist>
<programlisting>
># apt-get install virtualbox
</programlisting>
<itemizedlist>
<listitem>
<para>Install VirtualBox Extension Pack.
</para>
</listitem>
<listitem>
<para>Install Vagrant:</para>
</listitem>
</itemizedlist>
<programlisting>
># apt-get install vagrant --no-install-recommends
</programlisting>
<itemizedlist>
<listitem>
<para>Upgrade the Vagrant:</para>
</listitem>
</itemizedlist>
<programlisting>
># 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>
</listitem>
</itemizedlist>
<programlisting>
>$ git clone https://github.com/stackforge/murano-deployment.git
</programlisting>
<itemizedlist>
<listitem>
<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
</programlisting>
<itemizedlist>
<listitem>
<para>IMPORTANT STEP: Edit the lab-binding.rc file - replace
all the markers *** to your settings. For example:
</para>
</listitem>
</itemizedlist>
<programlisting>
# Lab Settings
#-------------
# Address of the host which provides Keystone service.
#
# LAB_HOST='192.168.1.2'
LAB_HOST='***.***.***.***'
...
</programlisting>
<itemizedlist>
<listitem>
<para>Launch the box:</para>
</listitem>
</itemizedlist>
<programlisting>
>$ ./launch-the-box.sh
</programlisting>
<itemizedlist>
<listitem>
<para>The script will do the following:</para>
</listitem>
<listitem>
<para>Vagrant will do the rest:</para>
</listitem>
<listitem>
<para>When everything is done open the http://127.0.0.1:8080/horizon link.
</para>
</listitem>
</itemizedlist>
</section>
<section xml:id="AutomatedWay">
<title>Automated Way</title>
<para>
Build your VM using instructions from <link linkend="Appendix">Murano VM</link> first.
</para>
<itemizedlist>
<listitem>
<para>Create a folder to hold cloned repositories</para>
</listitem>
</itemizedlist>
<programlisting>
># mkdir -p /opt/git
</programlisting>
<itemizedlist>
<listitem>
<para>Clone murano-deployment repository</para>
</listitem>
</itemizedlist>
<programlisting>
># cd /opt/git># git clone git://github.com/stackforge/murano-deployment.git
</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</para>
</listitem>
</itemizedlist>
<programlisting>
># cd /opt/git/murano-deployment/devbox-scripts
># ./murano-git-install.sh prerequisites
</programlisting>
<itemizedlist>
<listitem>
<para>Configure lab binding configuration file
<filename>/etc/murano-deployment/lab-binding.rc</filename>
</para>
</listitem>
</itemizedlist>
<programlisting>
LAB_HOST='***.***.***.***'
AUTH_URL="http://$LAB_HOST:5000/v2.0"
ADMIN_USER='admin'
ADMIN_PASSWORD='***'
RABBITMQ_LOGIN='muranouser'
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>
<itemizedlist>
<listitem>
<para>Install Murano components</para>
</listitem>
</itemizedlist>
<programlisting>
># ./murano-git-install.sh install
</programlisting>
<itemizedlist>
<listitem>
<para>Login to the Dashboard using URL http://uth_port = 35357;your VM IP>/dashboard</para>
</listitem>
</itemizedlist>
</section>
<section>
<title>Manual Way</title>
<para>Build your VM using instructions from
<link linkend="Appendix">Murano VM</link>
first.
</para>
<para>
Package for Ubuntu and CentOS already in progress and will soon
be accessible for users. While they are not available, we provide
information about how to get and install all murano services from
source code below. We made setup scripts for automated installation
of our products which accepts install and uninstall command line
arguments. Service startup jobs are handled by Upstart.
</para>
<para>At first we need to create a working directory.</para>
<note> <para>All installation steps require the superuser rights.</para></note>
<programlisting>
># mkdir -p /opt/git &amp;&amp; cd /opt/git
</programlisting>
<note>
<para>
Please, track actual projects stable branch, at the time of
writing current stable branch is - release-0.2
</para>
</note>
<para>
<emphasis role="bold">Murano-Api</emphasis></para>
<itemizedlist>
<listitem>
<para>Get source code</para>
</listitem>
</itemizedlist>
<programlisting>
># git clone https://github.com/stackforge/murano-api -b release-0.2
># chmod +x murano-api/setup*.sh
</programlisting>
<itemizedlist>
<listitem>
<para>Install the component</para>
</listitem>
</itemizedlist>
<programlisting>
># murano-api/setup.sh install
</programlisting>
<itemizedlist>
<listitem/>
</itemizedlist>
<programlisting>
># murano-api/setup-centos.sh install
</programlisting>
<para>Configuration:</para>
<programlisting>
># cd /etc/murano-api &amp;&amp; cp murano-api-paste.ini.sample \
murano-api-paste.ini
># cd /etc/murano-api &amp;&amp; cp murano-api.conf.sample murano-api.conf
</programlisting>
<note>
<para>
Before start service, set proper configuration values in
configuration files mentioned above.
</para>
</note>
<para>
Service control:
</para>
<programlisting>
># start murano-api
># stop murano-api
># restart murano-api
># status murano-api
</programlisting>
<para><emphasis role="bold">Murano-Conductor</emphasis></para>
<itemizedlist>
<listitem>
<para>Get source code</para>
</listitem>
</itemizedlist>
<programlisting>
># git clone https://github.com/stackforge/murano-conductor \
-b release-0.2
># chmod +x murano-conductor/setup*.sh
</programlisting>
<itemizedlist>
<listitem>
<para>Install the component</para>
</listitem>
</itemizedlist>
<programlisting>
># murano-conductor/setup.sh install
</programlisting>
<itemizedlist>
<listitem>
<para><emphasis>on CentOS</emphasis></para>
</listitem>
</itemizedlist>
<programlisting>
># murano-conductor/setup-centos.sh install
</programlisting>
<para>Configuration</para>
<programlisting>
># cd /etc/murano-conductor &amp;&amp; cp \
conductor-paste.ini.sample conductor-paste.ini
># cd /etc/murano-conductor &amp;&amp; cp \
conductor.conf.sample conductor.conf
</programlisting>
<note>
<para>
Before starting the service, set proper configuration values in
configuration files mentioned above.
</para>
</note>
<para>Service control:</para>
<programlisting>
># start murano-conductor
># stop murano-conductor
># restart murano-conductor
># status murano-conductor
</programlisting>
<para>
<emphasis role="bold">Murano-Dashboard</emphasis></para>
<para>At first, Install OpenStack dashboard(Horizon)  and dependent
packages.
</para>
<para>How-to do this:</para>
<itemizedlist>
<listitem>
<para><emphasis>On Ubuntu</emphasis></para>
</listitem>
</itemizedlist>
<programlisting>
># apt-get install -y memcached libapache2-mod-wsgi openstack-dashboard
># dpkg --purge openstack-dashboard-ubuntu-theme # optional step
</programlisting>
<para>After installation is complete, openstack dashboard should be
available at: http://&lt;your VM IP>/horizon
</para>
<itemizedlist>
<listitem>
<para><emphasis>on CentOS</emphasis></para>
</listitem>
</itemizedlist>
<programlisting>
># yum install python-netaddr.noarch \
python-keystoneclient.noarch \
python-django-horizon.noarch \
python-django-openstack-auth.noarch \
 httpd.x86_64 mod_wsgi.x86_64 \
openstack-dashboard.noarch --assumeyes
># chkconfig httpd on
</programlisting>
<para>After installation is complete, openstack dashboard should be available
at: http://&lt;your VM IP>/dashboard
</para>
<para>Installation of the murano-dashboard is described below.</para>
<itemizedlist>
<listitem>
<para>Get source code</para>
</listitem>
</itemizedlist>
<programlisting>
># git clone https://github.com/stackforge/murano-dashboard
-b release-0.2
># chmod +x murano-dashboard/setup*.sh
</programlisting>
<itemizedlist>
<listitem>
<para>Install the component</para>
<para><emphasis>On Ubuntu</emphasis>
<programlisting>
># murano-dashboard/setup.sh install
</programlisting>
</para>
<para>
<emphasis>on CentOS</emphasis>
<programlisting>
># murano-dashboard/setup-centos.sh install
</programlisting>
</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>
<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>
<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>
</listitem>
</itemizedlist>
<programlisting>
[DEFAULT]
...
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
...
[rabbitmq]
host = &lt;rabbitmq ip>
port = 5672
login = &lt;rabbitmq login>
password = &lt;rabbitmq password>
virtual_host = &lt;rabbitmq vhost>
...
</programlisting>
<itemizedlist>
<listitem>
<para>murano-api-paste.ini</para>
</listitem>
</itemizedlist>
<programlisting>
...
[filter:authtoken]
auth_host = &lt;keystone_ip>
auth_port = 35357
auth_protocol = http
admin_tenant_name = admin
admin_user = admin
admin_password = admin_password
...
</programlisting>
</section>
<section>
<title>Murano-Conductor</title>
<para>
Configuration files of the murano-conductor service reside at
<filename>/etc/murano-conductor </filename>directory. Basic configuration parameters are
listed below:
</para>
<itemizedlist>
<listitem>
<para>conductor.conf</para>
</listitem>
</itemizedlist>
<programlisting>
[DEFAULT]
log_file = /var/log/murano-conductor.log
[keystone]
# URL of OpenStack KeyStone service REST
API.
# Typically only hostname (or IP) needs to be
changed
auth_url = http://keystone_ip:5000/v2.0
...
...
[rabbitmq]
host = &lt;rabbitmq ip>
port = 5672
login = &lt;rabbitmq login>
password = &lt;rabbitmq password>
virtual_host = &lt;rabbitmq vhost>
...
</programlisting>
<itemizedlist>
<listitem>
<para>conductor-paste.ini</para>
</listitem>
</itemizedlist>
<para>Its empty but must exist.</para>
</section>
<section>
<title>Murano-Dashboard</title>
<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>
directory. It should point to the OpenStack controller node.
</para>
<programlisting>
# optional, but sometimes very useful to set DEBUG to True
DEBUG = True
...
OPENSTACK_HOST =
“openstack_controller_address”
...
</programlisting>
</section>
</section>
</chapter>

View File

@ -0,0 +1,405 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2013 Mirantis, Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<chapter xmlns="http://docbook.org/ns/docbook"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xlink="http://www.w3.org/1999/xlink"
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>Setup Lab Environment</title>
<section>
<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.
</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:
</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.
</para>
</listitem>
<listitem>
<para>Install all the latest updates.</para>
</listitem>
</itemizedlist>
<programlisting>
># apt-get update
># apt-get -y upgrade
</programlisting>
<itemizedlist>
<listitem>
<para>Create a user <emphasis>stack</emphasis></para>
</listitem>
</itemizedlist>
<programlisting>
># adduser stack
</programlisting>
<itemizedlist>
<listitem>
<para>Add user <emphasis>stack</emphasis> to sudoers</para>
</listitem>
</itemizedlist>
<programlisting>
># echo stack ALL=(ALL) NOPASSWD:ALL' > /etc/sudoers.d/stack
># chmod 0440 /etc/sudoers.d/stack
</programlisting>
<itemizedlist>
<listitem>
<para>Create a folder for OpenStack installation files
</para>
</listitem>
</itemizedlist>
<programlisting>
># mkdir /opt/stack
># chown stack:stack /opt/stack
</programlisting>
<itemizedlist>
<listitem>
<para>Clone the <emphasis>devstack</emphasis> repo</para>
</listitem>
</itemizedlist>
<programlisting>
># su stack
>$ cd
>$ git clone https://github.com/openstack-dev/devstack.git
</programlisting>
<itemizedlist>
<listitem>
<para>Checkout the stable/grizzly branch</para>
</listitem>
</itemizedlist>
<programlisting>
>$ cd devstack
>$ git checkout stable/grizzly
</programlisting>
<itemizedlist>
<listitem>
<para>Get <filename>localrc</filename> and <filename>local.sh</filename> files</para>
</listitem>
</itemizedlist>
<programlisting>
>$ wget https://raw.github.com/stackforge/murano-deployment/release-0.2/
getting-started/localrc
>$ wget https://raw.github.com/stackforge/murano-deployment/release-0.2/
getting-started/local.sh -O local.sh-O local.sh
>$ chmod +x local.sh
</programlisting>
<itemizedlist>
<listitem>
<para>Start <emphasis>devstack</emphasis></para>
</listitem>
</itemizedlist>
<programlisting>
>$ ./stack.sh
</programlisting>
<para>
When stack.sh finishes execution your OpenStack
installation is ready.
</para>
</section>
<section xml:id="Samba">
<title>Prepare Shared Prerequisites</title>
<para><emphasis role="bold">Configure Samba Share</emphasis></para>
<para>
<itemizedlist>
<listitem>
<para>Install SAMBA</para>
</listitem>
</itemizedlist>
<programlisting>
># apt-get update
># apt-get install samba
</programlisting>
<itemizedlist>
<listitem>
<para>Create shared folder</para>
</listitem>
</itemizedlist>
<programlisting>
># mkdir -p /opt/samba/share
>#chown nobody:nogroup /opt/samba/share
</programlisting>
<itemizedlist>
<listitem>
<para>Edit /etc/samba/smb.conf</para>
</listitem>
</itemizedlist>
<programlisting>
...
[global]    
...    
security = user
...
[share]
   comment = Deployment Share
path = /opt/samba/share  
browsable = yes
guest ok = yes    
guest account = nobody
   read only = no
create mask = 0755
</programlisting>
<itemizedlist>
<listitem>
<para>Restart services</para>
</listitem>
</itemizedlist>
<programlisting>
># restart smbd># restart nmdb
</programlisting>
</para>
<para><emphasis role="bold">Copy Prerequisites Into The Share</emphasis></para>
<itemizedlist>
<listitem>
<para>Create folder structure</para>
</listitem>
</itemizedlist>
<programlisting>
># mkdir -p “/opt/samba/share/Prerequisites/IIS”
># mkdir -p “/opt/samba/share/Prerequisites/SQL Server/2012”
># mkdir -p “/opt/samba/share/Prerequisites/SQL Server/Tools”
</programlisting>
<itemizedlist>
<listitem>
<para>Add files to the folder structure under
/opt/samba/share folder:
</para>
</listitem>
</itemizedlist>
</section>
<section>
<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
on the same host where OpenStack is installed. This section describe
steps required to build such an image.
</para>
<para><emphasis role="bold">Prepare Build Environment</emphasis></para>
<itemizedlist>
<listitem>
<para>
Samba should be already installed (See <link linkend="Samba">Configure samba share</link>)
</para>
</listitem>
<listitem>
<para>Clone murano-deployment repository</para>
</listitem>
</itemizedlist>
<programlisting>
># cd /opt/git
># git clone git://github.com/stackforge/murano-deployment.git
</programlisting>
<itemizedlist>
<listitem>
<para>Change directory to <filename>murano-deployment/image-builder</filename>
folder
</para>
</listitem>
</itemizedlist>
<programlisting>
># cd /opt/git/murano-deployment/image-builder
</programlisting>
<itemizedlist>
<listitem>
<para>Create folder structure for image builder</para>
</listitem>
</itemizedlist>
<programlisting>
># make build-root
</programlisting>
<itemizedlist>
<listitem>
<para>
Download and put the following files to the specified paths under
<filename>/opt/image-builder </filename>folder:
<orderedlist>
<listitem>
<para>
<link xlink:href="http://technet.microsoft.com/en-us/evalcenter/hh670538.aspx">
Windows 2012 Server ISO evaluation version</link>: libvirt/images/ws­2012­eval.iso
</para>
</listitem>
<listitem>
<para>
<link xlink:href="http://alt.fedoraproject.org/pub/alt/virtio-win/stable/virtio-win-0.1-52.iso">
VirtIO drivers
</link>
should be placed to libvirt/images/virtio-win-0.1-52.iso
</para>
</listitem>
<listitem>
<para>
<link xlink:href=" http://www.cloudbase.it/downloads/CloudbaseInitSetup_Beta.msi">
CloudBase-Init for Windows:
</link>
share/files/CloudbaseInitSetup_Beta.msi
</para>
</listitem>
<listitem>
<para>
<link xlink:href="http://www.farmanager.com/files/Far30b3525.x64.20130717.msi">
Far Manager:
</link>
share/files/Far30b3367.x64.20130426.msi
</para>
</listitem>
<listitem>
<para>
<link xlink:href="https://msysgit.googlecode.com/files/Git-1.8.3-preview20130601.exe">
Git client
</link>
share/files/Git-1.8.1.2-preview20130201.exe
</para>
</listitem>
<listitem>
<para>
<link xlink:href="http://download.sysinternals.com/files/SysinternalsSuite.zip">
Sysinternals
</link>
Suiteshare/files/SysinternalsSuite.zip
</para>
</listitem>
<listitem>
<para>
<link xlink:href="https://www.dropbox.com/sh/zthldcxnp6r4flm/-k1Om_V6XR">
unzip.exe tool
</link>
share/files/unzip.exe
</para>
</listitem>
<listitem>
<para>
<link xlink:href="http://www.microsoft.com/en-us/download/details.aspx?id=34595">
PowerShell v3
</link>
share/files/Windows6.1-KB2506143-x64.msu
</para>
</listitem>
<listitem>
<para>
<link xlink:href="http://www.microsoft.com/en-us/download/details.aspx?id=17718">
.NET 4.0:
</link>
share/files/dotNetFx40_Full_x86_x64.exe
</para>
</listitem>
<listitem>
<para>
<link xlink:href="http://www.microsoft.com/en-us/download/details.aspx?id=30653">
.NET 4.5:
</link>
share/files/dotNetFx45_Full_setup.exe
</para>
</listitem>
<listitem>
<para>
<link xlink:href="https://www.dropbox.com/sh/zthldcxnp6r4flm/-k1Om_V6XR ">
Murano Agent
</link>
share/files/MuranoAgent.zip
</para>
</listitem>
</orderedlist>
</para>
</listitem>
<listitem>
<para>Test that all required files are in place</para>
</listitem>
</itemizedlist>
<programlisting>
># make test-build-files
</programlisting>
<para>
<emphasis role="bold">Build The Image</emphasis></para>
<itemizedlist>
<listitem>
<para>Get list of supported images</para>
</listitem>
</itemizedlist>
<programlisting>
># make
</programlisting>
<itemizedlist>
<listitem>
<para>Run image build process</para>
</listitem>
</itemizedlist>
<programlisting>
># make ws-2012-std
</programlisting>
<itemizedlist>
<listitem>
<para>Wait until process finishes</para>
</listitem>
<listitem>
<para>The image file ws-2012-std.qcow2 will be stored in <filename>
/opt/image-builder/share/images </filename> folder.
</para>
</listitem>
</itemizedlist>
<para><emphasis role="bold">Import Windows Image Into Glance</emphasis></para>
<para>Now when youve built a Windows Image it must be imported into Glance.
</para>
<itemizedlist>
<listitem>
<para>Import openrc file which contains environment
variables definitions required by OpenStack components
</para>
</listitem>
</itemizedlist>
<programlisting>
>$ source openrc
</programlisting>
<itemizedlist>
<listitem>
<para>
Import the Windows Server 2012 image into Glance
<programlisting>
>$ cd /opt/image-builder/share/images
>$ glance image-create --name ws-2012-std --disk-format qcow2 \
--container-type bare --file ws-2012-std.qcow2 \
--is-public true \
--property murano_image_info='{"type":"ws-2012-std",\
"title":"Windows Server 2012 Standard"}'
</programlisting>
</para>
<warning>
<para>
The value of the --property argument named
murano_image_info is a JSON string. Only double quotes are
valid in JSON, so please type the string exactly as in the
example above.
</para>
</warning>
</listitem>
</itemizedlist>
</section>
</chapter>

View File

@ -0,0 +1,155 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2013 Mirantis, Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<chapter xmlns="http://docbook.org/ns/docbook"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xlink="http://www.w3.org/1999/xlink"
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>Troubleshooting</title>
<para>
Set debug options to "true" in all config files - dashboard, api,
conductor.
<note>
<para>
The following debug sequence should be used when you have
no idea about why the system isn't working. If you have one, you
may skip unnecessary sections.
</para>
</note>
First, stop both murano-api and murano-conductor services. We
will start them one by one from the console.
</para>
<para><emphasis role="bold">Murano-Api</emphasis></para>
<itemizedlist>
<listitem>
<para>Open new console</para>
</listitem>
<listitem>
<para>Start api service manually</para>
</listitem>
</itemizedlist>
<programlisting>
># murano-api --config-dir /etc/murano-api \
> /var/log/murano-api-live.log &amp;
># tailf /var/log/murano-api-live.log
</programlisting>
<itemizedlist>
<listitem>
<para>Open dashboard, create and send to deploy some simple
environment.
</para>
</listitem>
<listitem>
<para>Open RabbitMQ web console, open your vhost and ensure
that queues were created and there is at least one message.
</para>
</listitem>
<listitem>
<para>Check log for errors - there shouldn't be any</para>
</listitem>
<listitem>
<para>Keep murano-api service running.</para>
</listitem>
</itemizedlist>
<para><emphasis role="bold">Murano-Conductor</emphasis></para>
<itemizedlist>
<listitem>
<para>Open new console</para>
</listitem>
<listitem>
<para>Start conductor from console</para>
</listitem>
</itemizedlist>
<programlisting>
># muranoconductor --config-dir /etc/murano-conductor > \
/var/log/murano-conductor-live.log &amp;
># tailf /var/log/murano-conductor-live.log
</programlisting>
<itemizedlist>
<listitem>
<para>Check that there is no python exceptions in the log. Some
errors like 404 are ok, as conductor tries to delete
environment that doesn't exist.
</para>
</listitem>
<listitem>
<para>Check heat stack status. It should not be in FAILED
state. If it is - check heat and nova error log to find the
cause.
</para>
</listitem>
<listitem>
<para>Keep murano-conductor service running.</para>
</listitem>
</itemizedlist>
<para>Now, the environment should be created, and instance(s)
launched.
</para>
<para>
Next, check if instances were configured correctly by the
cloudbase init tool.
</para>
<para>
Log in to any instance and open powershell log file at <filename>
C:\Murano\PowerShell.log</filename>. There shouldn't be any exceptions logged.
Other symptoms of successful configuration is that the instance was
renamed and you have to press &lt;Ctrl>+&lt;Alt>+&lt;Del>
to log into. Unconfigured instance has autologon enabled for the
first logon, so if console is open, the instance is not configured
(yet).
</para>
<para>Check that Murano Agent has correct config file. If there is a
.bak file, then it was changed by the init script. Check the file,
 ensure that it has correct values.
</para>
<para>Check Murano Agent log file. There should be logged all tasks
received by the agent from the conductor.
</para>
<para>Check PowerShell log. There should be messages about all
functions, executed on the instance.
</para>
<section>
<title>Log files</title>
<para><emphasis role="bold">Murano Log Files</emphasis></para>
<itemizedlist>
<listitem>
<para>/var/log/murano-api.log</para>
</listitem>
<listitem>
<para>/var/log/murano-conductor.log</para>
</listitem>
<listitem>
<para>/var/log/apache2/errors.log
</para>
</listitem>
<listitem>
<para>/var/log/httpd/errors.log</para>
</listitem>
</itemizedlist>
<para><emphasis role="bold">Windows Log Files</emphasis></para>
<itemizedlist>
<listitem>
<para>C:\Murano\PowerShell.log</para>
</listitem>
<listitem>
<para>C:\Murano\Agent\log.txt</para>
</listitem>
</itemizedlist>
</section>
</chapter>

View File

@ -0,0 +1,69 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2013 Mirantis, Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<book xmlns="http://docbook.org/ns/docbook"
xmlns:xi="http://www.w3.org/2001/XInclude"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xlink="http://www.w3.org/1999/xlink"
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>Murano Getting Started Guide</title>
<info>
<author>
<personname>
<firstname/>
<surname/>
</personname>
<affiliation>
<orgname>Mirantis, Inc.</orgname>
</affiliation>
</author>
<copyright>
<year>2013</year>
<holder>Mirantis, Inc.</holder>
</copyright>
<releaseinfo>v0.1</releaseinfo>
<productname>Murano™</productname>
<pubdate>2013-09-04</pubdate>
<legalnotice role="apache2">
<annotation>
<remark>Copyright details are filled in by the template. Change
the value of the role
attribute on the legalnotice element to change the license.
</remark>
</annotation>
</legalnotice>
<abstract>
<para>This document is intended for individuals who wish to
use our product or intend to contribute.
</para>
</abstract>
<cover>
<para>this is a placeholder for the front cover</para>
</cover>
<cover>
<para>this is a placeholder for the back cover</para>
</cover>
</info>
<xi:include href="./content/overview.xml" xlink:title="Overview" />
<xi:include href="./content/before_you_begin.xml" xlink:title="Before You Begin"/>
<xi:include href="./content/setup_lab_environment.xml" xlink:title="Setup Lab Environment"/>
<xi:include href="./content/setup_devbox.xml" xlink:title="Setup Devbox"/>
<xi:include href="./content/troubleshooting.xml" xlink:title="Troubleshooting"/>
<xi:include href="./content/appendix.xml" xlink:title="Appendix"/>
</book>

View File

@ -0,0 +1,10 @@
<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:fo="http://www.w3.org/1999/XSL/Format"
version="1.0">
<xsl:param name="use.id.as.filename" select="'1'"/>
<xsl:param name="admon.graphics" select="'1'"/>
<xsl:param name="admon.graphics.path"></xsl:param>
<xsl:param name="chunk.section.depth" select="0"></xsl:param>
<xsl:param name="html.stylesheet" select="'getting-started.css'"/>
</xsl:stylesheet>

View File

@ -0,0 +1,54 @@
img {
max-width: 100%;
width: auto;
height: auto;
}
body {
font-family: luxi sans,sans-serif;
}
.screen {
font-family: monospace;
font-size: 1em;
display: block;
padding: 10px;
border: 1px solid #bbb;
background-color: #eee;
color: #000;
overflow: auto;
border-radius: 2.5px;
-moz-border-radius: 2.5px;
margin: 0.5em 2em;
}
.programlisting {
font-family: monospace;
font-size: 1em;
display: block;
padding: 10px;
border: 1px solid #bbb;
background-color: #ddd;
color: #000;
overflow: auto;
border-radius: 2.5px;
-moz-border-radius: 2.5px;
margin: 0.5em 2em;
}
a[href] {
text-decoration: none;
color: #0a5ba8;
}
a[href]:hover {
text-decoration:underline
}
a:visited {
color: #131580;
}
a:active {
color: #0a5ba8;
}

View File

@ -38,6 +38,10 @@
</execution>
</executions>
<configuration>
<htmlCustomization>${basedir}/src/docbkx/style/config.xsl
</htmlCustomization>
<htmlStylesheet>${basedir}/src/docbkx/style/user-guide.css
</htmlStylesheet>
<xincludeSupported>true</xincludeSupported>
<chunkSectionDepth>100</chunkSectionDepth>
<postProcess>

View File

@ -53,8 +53,8 @@
All services should be created in the context of Environment
- virtual Windows Data Center. After Environment is created services prototypes
and then deploy the Environment. When deploy process is done instances
with your service will be spawned in Openstack.
To create service prototype navigate to environment services by
with your services will be spawned in Openstack.
To create a service prototype navigate to environment services by
clicking on the environment name (or on the "Services" button) and click
the "Create Service" button.
</para>
@ -64,7 +64,7 @@
</imageobject>
</mediaobject>
<para>
You have opportunity to create one of the following services:
You have an opportunity to create one of the following services:
</para>
<mediaobject>
<imageobject role="fo">
@ -74,14 +74,14 @@
<para>
Once you choose service that you want to create click "Next" and fill the form.
Forms for each service are specific.
To see more information about filling the form for a specified service follow one of the link below:
To see more information about filling the form for a specific service follow one of the link below:
</para>
<itemizedlist>
<listitem>
<para>
<emphasis role="bold"><link linkend="AD">Active Directory:</link></emphasis>
Active Directory is a directory service implemented by Microsoft for Windows domain networks.
In one installation in addition to primary Domain Controller
In one installation, in addition to primary Domain Controller,
you can add optional count of secondary Domain Controllers.
Any other services you are intending to create can be
joined to that domain.
@ -154,11 +154,105 @@
</mediaobject>
<section xml:id="AD">
<title>Active Directory</title>
<para>
After you picked the Active Directory service in service creation
wizard you'll see the following form:
</para>
<mediaobject>
<imageobject role="fo">
<imagedata fileref="../images/ad.png" scalefit="1" width="100%" contentdepth="100%"/>
<imagedata fileref="../images/ad.png" width="100%" contentdepth="100%" format="PDF" />
</imageobject>
</mediaobject>
<para>
Enter or select values for this fields:
</para>
<informaltable rules="all" frame="border"
width="100%" cellpadding="3" cellspacing="3">
<col width="25%" align="left" style="font-weight:bold" valign="top"/>
<col width="70%" style="padding:6px"/>
<tbody>
<tr>
<td style="font-weight:bold">
<para>Domain name</para>
</td>
<td >
<para>
Enter a desired name for a new domain. This name should fit to
DNS Domain Name requirements: it should contain
only A-Z, a-z, 0-9, (.) and (-) and should not end with a dash.
DNS server will be automatically set up on each of the Domain
Controller instances.
Period characters are allowed only when they
are used to delimit the components of domain style
names. Single-level domain is not appropriate.
Note: Only first 15 characters or characters
before first period is used as NetBIOS name.
</para>
</td>
</tr>
<tr>
<td><para>Instance Count</para></td>
<td>
<para>
You can create several Active Directory instances by setting
instance number larger than one. One primary
Domain Controller and a few secondary DCs will be created.
</para>
</td>
</tr>
<tr>
<td><para>Account Name</para></td>
<td >
<para>
You account will have Active Directory administrator rights.
So initial value is "Administrator" but you can change it to any name you like.
</para>
</td>
</tr>
<tr>
<td><para>Administrator password</para></td>
<td>
<para>
Windows requires strong password for service administration.
Your password should have at least one letter
in each
register, a number and a special character.
Password length should be
a minimum of 7 characters.
Once you forget your password you won't be able
to
operate the service until recovery password
would be entered. So it's
better for Recovery and Administrator password
to be different.
</para>
</td>
</tr>
<tr>
<td><para>Confirm password</para></td>
<td>
<para>Password confirmation is required.</para>
</td>
</tr>
<tr>
<td><para>Recovery password</para></td>
<td>
<para>
Restrictions are the same as for the Administrator password.
Please provide password that is different from Administrator.
It's not required for form validation though.
</para>
</td>
</tr>
<tr>
<td><para>Confirm password</para></td>
<td>
<para>Password confirmation is required.</para>
</td>
</tr>
</tbody>
</informaltable>
</section>
<section xml:id="IIS">
<title>Internet Information Service</title>
@ -207,16 +301,137 @@
<imagedata fileref="../images/cluster1.png" scalefit="1" width="100%" contentdepth="100%"/>
</imageobject>
</mediaobject>
<para>Enter or select values for the following fields:</para>
<informaltable rules="all" frame="border" width="100%" cellpadding="3"
cellspacing="3">
<col width="25%" align="left" style="font-weight:bold"
valign="top"/>
<col width="70%" style="padding:6px"/>
<tbody>
<tr>
<td style="font-weight:bold">
<para>Service Name</para>
</td>
<td>
<para>
Enter a desired name for a service. Just A-Z,
a-z, 0-9, dash and underline are allowed.
</para>
</td>
</tr>
<tr>
<td>
<para>Administrator password</para>
</td>
<td>
<para>
Windows requires strong password for service
administration.
Your password should have at least one letter
in each register, a number and a special character.
Password length should be a minimum of 7 characters.
</para>
</td>
</tr>
<tr>
<td>
<para>Confirm password</para>
</td>
<td>
<para>Password confirmation is required.</para>
</td>
</tr>
<tr>
<td>
<para>Active Directory is configured by the System Administrator
</para>
</td>
<td>
<para>
Enable this option only if you have properly configured rules
that will include service to the domain, that already exists in you environment.
Once you set this option to true, additional fields will appear. (See information below)
</para>
</td>
</tr>
<tr>
<td>
<para>Domain</para>
</td>
<td>
<para>
Service should be joined to the Active
Directory
domain. Please, create Active Directory Service
prototype first.
</para>
</td>
</tr>
<tr>
<td>
<para>Mixed-mode Authentication</para>
</td>
<td>
<para>
Mixed authentication mode allows the use of Windows
credentials but supplements them with local SQL
Server user accounts that the administrator may create and
maintain within SQL Server. If this mode is on SA password is required
</para>
</td>
</tr>
<tr>
<td>
<para>SA Password</para>
</td>
<td>
<para>
Set system administrator password for the MS SQL Server.
Password requirements are the same as previous.
</para>
</td>
</tr>
</tbody>
</informaltable>
<para>
In case pre-configured AD is enabled following fields will appeared:
</para>
<mediaobject>
<imageobject role="fo">
<imagedata fileref="../images/cluster1a.png" scalefit="1" width="100%" contentdepth="100%"/>
</imageobject>
</mediaobject>
<informaltable rules="all" frame="border" width="100%" cellpadding="3"
cellspacing="3">
<col width="25%" align="left" style="font-weight:bold"
valign="top"/>
<col width="70%" style="padding:6px"/>
<tbody>
<tr>
<td style="font-weight:bold">
<para>Active Directory User</para>
<para>Active Directory Password</para>
</td>
<td>
<para>
Specify administrator user credentials to the existent AD domain
(to which service service will be join according to your system automation setup)
</para>
</td>
</tr>
</tbody>
</informaltable>
<mediaobject>
<imageobject role="fo">
<imagedata fileref="../images/cluster2.png" scalefit="1" width="100%" contentdepth="100%"/>
</imageobject>
</mediaobject>
<mediaobject>
<imageobject role="fo">
<imagedata fileref="../images/cluster3.png" scalefit="1"
width="100%" contentdepth="100%"/>
</imageobject>
</mediaobject>
</section>
</section>
<section>
@ -242,7 +457,7 @@
</mediaobject>
<para>
You can monitor deploying process. Just go to the Log tab on service
detailed page where you can get by clicking on the service name.
detailed page, where you can get by clicking on the service name.
</para>
<mediaobject>
<imageobject role="fo">
@ -258,7 +473,7 @@
</imageobject>
</mediaobject>
<para>
As long as installation and configuration are in progress environment
As long as installation and configuration are in progress, environment
is in <emphasis>Deploying</emphasis> state. Depending on how many
services you are deploying or how many nodes in your cluster, process of spawning instances,
installation and post installation settings takes from 10 minutes up to one hour.
@ -269,7 +484,7 @@
</imageobject>
</mediaobject>
<para>
If installation process finished without any errors environment changes its status to
If installation process finished without any errors, environment changes its status to
<emphasis>Ready:</emphasis>
</para>
<mediaobject>
@ -282,7 +497,7 @@
<title>Working with deployed environment</title>
<para>
Congratulations! After some time waiting you are able to operate with the services.
To get information about installed services navigate to service detailed page.
To get information about installed services, navigate to service detailed page.
To do that click on the environment name and then on the name of the service you what to know about.
</para>
<mediaobject>
@ -326,9 +541,9 @@
<section xml:id="redeploy">
<title>Redeploying Murano Environment</title>
<para>
Murano gives opportunity to supplement already deployed environment.
If you deployed the Active Directory service and want to create
any other service just create desired service prototype and click on the "Deploy Environment" button.
Murano gives an opportunity to supplement already deployed environment.
Thus if you already deployed the Active Directory service and want to add
any other services just create desired service prototype and click the "Deploy Environment" button.
During service prototype creation you can join this service to the existent Active Directory domain.
</para>
</section>
@ -410,7 +625,7 @@
<section xml:id="edit">
<title>Renaming Murano Environment</title>
<para>
It's possible to change name of your environment: just click the "More-> Edit Environment" button on environment index page:
It's possible to change a name of your environment: just click the "More-> Edit Environment" button on environment index page:
</para>
<mediaobject>
<imageobject role="fo">
@ -433,7 +648,6 @@
<title>Troubleshooting</title>
<para><emphasis role="bold"> How to debug OpenStack Heat?</emphasis></para>
<para>
If you can execute Heat command via console interface - all good. It is
the most simple way to check Heat state on the node - jest execute CLI
command 'heat list'.
@ -443,18 +657,18 @@
</para>
<para><emphasis role="bold"> If 'heat list' returns 503 error</emphasis></para>
<para>
It is means that OpenStack Heat configuration files contains incorrect
It means that OpenStack Heat configuration files contain incorrect
credentials. Need to set 'user' = 'heat' and change passwords
'verybadpass' in all configuration files from directory /etc/heat/
</para>
<para><emphasis role="bold">If 'heat list' hangs up</emphasis></para>
<para>
Sometimes ypu can see that 'heat list' hangs up. The root of this
Sometimes you can see that 'heat list' hangs up. The root of this
problem - connection to the rabbitMQ.
</para>
<para><emphasis role="bold">How I can connect to LoadBalancer instance in Server Farms?</emphasis></para>
<para>
First of all you should have KeyPair file 'murano-lb-key', you can
First of all you should have KeyPair file 'murano-lb-key'. You can
create this file using commands
<programlisting>
<![CDATA[
@ -462,7 +676,7 @@ nova keypair-add murano-lb-key > murano-lb-key.priv
chmod 600 murano-lb-key.priv
]]>
</programlisting>
And after that you should create server farms with this KeyPair.
And after that server farms need to be created with this KeyPair.
The second step is to 'how to connect to VM with LoadBalancer':
<programlisting>
<![CDATA[
@ -472,18 +686,17 @@ ssh -i murano-lb-key.priv root@10.0.0.3
</para>
<para><emphasis role="bold">Murano dashboard can not connect to Murano API. How I can fix it?</emphasis></para>
<para>
This is problem has two ways to fix:
This problem has two ways to fix:
Add string
<programlisting>
<![CDATA[
MURANO_API_URL='http://localhost:8082'
]]>
</programlisting>
to file /etc/openstack-dashboard/local_settings (or
/etc/openstack-dashboard/local_settings.py - it is depends on OpenStack
to the /etc/openstack-dashboard/local_settings (or
/etc/openstack-dashboard/local_settings.py - it depends on OpenStack
configuration)
and after that need to restart web server.
and after that web server restart is needed.
Add keystone endpoints for Murano API
<programlisting>
<![CDATA[
@ -513,21 +726,21 @@ initctl start murano-api
problem? </emphasis>
</para>
<para>
Sometimes we can see in logs of the deployments:
Sometimes we can see in deployments logs:
<programlisting>
<![CDATA[
2013-08-06 09:10:07 - Unable to deploy instance ipkrmhk0vzq4b6 (asp-farm_instance_0) due to Unexpected state
2013-08-06 09:10:07 - Unable to create a Server Farm load balancer on unit ipkrmhk0vzq4b6 (asp-farm_instance_0) due to Unexpected state
]]>
</programlisting>
The root of this problem in incorrect configuration - Heat can not
The root of this problem is incorrect configuration - Heat can not
create Load Balancer instance. Please, remember that you should have
admin access for project in OpenStack to deploy LoadBalancer and also,
admin access for the project in OpenStack to deploy LoadBalancer and also,
you should have KeyPair with default name 'murano-lb-key'.
</para>
<para><emphasis role="bold">Error in Murano API logs 'No module named helpers.token_sanitizer'</emphasis></para>
<para>
This is problem with pip version. Need to install pip 1.4 and after that reinstall murano-client, murano-common and murano-api.
This pip version problem. Need to install pip 1.4 and after that reinstall murano-client, murano-common and murano-api.
</para>
</section>
</chapter>

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View File

@ -0,0 +1,10 @@
<?xml version='1.0'?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:fo="http://www.w3.org/1999/XSL/Format"
version="1.0">
<xsl:param name="use.id.as.filename" select="'1'"/>
<xsl:param name="admon.graphics" select="'1'"/>
<xsl:param name="admon.graphics.path"></xsl:param>
<xsl:param name="chunk.section.depth" select="0"></xsl:param>
<xsl:param name="html.stylesheet" select="'user-guide.css'"/>
</xsl:stylesheet>

View File

@ -0,0 +1,55 @@
img {
max-width: 800px;
width: auto;
height: auto;
}
body {
font-family: luxi sans,sans-serif;
}
.screen {
font-family: monospace;
font-size: 1em;
display: block;
padding: 10px;
border: 1px solid #bbb;
background-color: #eee;
color: #000;
overflow: auto;
border-radius: 2.5px;
-moz-border-radius: 2.5px;
margin: 0.5em 2em;
}
.programlisting {
font-family: monospace;
font-size: 1em;
display: block;
padding: 10px;
border: 1px solid #bbb;
background-color: #BDBDBD;
color: #000;
overflow: auto;
border-radius: 2.5px;
-moz-border-radius: 2.5px;
margin: 0.5em 2em;
}
a[href] {
text-decoration: none;
color: #0a5ba8;
}
a[href]:hover {
text-decoration:underline
}
a:visited {
color: #131580;
}
a:active {
color: #0a5ba8;
}