cloudstack-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From pdion...@apache.org
Subject [1/2] This merge close PR: #14 and #18
Date Tue, 29 Jul 2014 00:41:24 GMT
Repository: cloudstack-docs-install
Updated Branches:
  refs/heads/4.3 11dcd6b79 -> 7b1cc3862


http://git-wip-us.apache.org/repos/asf/cloudstack-docs-install/blob/7b1cc386/source/qig.rst
----------------------------------------------------------------------
diff --git a/source/qig.rst b/source/qig.rst
index b682183..cdd69c3 100644
--- a/source/qig.rst
+++ b/source/qig.rst
@@ -1,29 +1,49 @@
+.. Licensed to the Apache Software Foundation (ASF) under one
+   or more contributor license agreements.  See the NOTICE file
+   distributed with this work for additional information#
+   regarding copyright ownership.  The ASF licenses this file
+   to you 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.
+
+
 Quick Installation Guide for CentOS
 ===================================
 
-
 Overview
 --------
 
 What exactly are we building?
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-Infrastructure-as-a-Service (IaaS) clouds can be a complex thing to build, and by definition
they have a plethora of options,
-which often lead to confusion for even experienced admins who are newcomers to building cloud
platforms. The goal for
-this runbook is to provide a straightforward set of instructions to get you up and running
with CloudStack with a minimum
-amount of trouble.
+Infrastructure-as-a-Service (IaaS) clouds can be a complex thing to build, and 
+by definition they have a plethora of options, which often lead to confusion 
+for even experienced admins who are newcomers to building cloud platforms. The 
+goal for this runbook is to provide a straightforward set of instructions to 
+get you up and running with CloudStack with a minimum amount of trouble.
 
 
 High level overview of the process
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-This runbook will focus on building a CloudStack cloud using KVM with CentOS 6.4 with NFS
storage on a flat layer-2
-network utilizing layer-3 network isolation (aka Security Groups), and doing it all on a
single piece of hardware.
+This runbook will focus on building a CloudStack cloud using KVM with CentOS 
+6.4 with NFS storage on a flat layer-2 network utilizing layer-3 network 
+isolation (aka Security Groups), and doing it all on a single piece of 
+hardware.
 
-KVM, or Kernel-based Virtual Machine is a virtualization technology for the Linux kernel.
KVM supports native virtualization
-atop processors with hardware virtualization extensions.
+KVM, or Kernel-based Virtual Machine is a virtualization technology for the 
+Linux kernel. KVM supports native virtualization atop processors with hardware 
+virtualization extensions.
 
-Security Groups act as distributed firewalls that control access to a group of virtual machines.
+Security Groups act as distributed firewalls that control access to a group of 
+virtual machines.
 
 
 Prerequisites
@@ -31,161 +51,189 @@ Prerequisites
 
 To complete this runbook you'll need the following items:
 
-1. At least one computer which supports hardware virtualization.
-2. The `CentOS 6.4 x86_64 minimal install CD <http://mirrors.kernel.org/centos/6.4/isos/x86_64/CentOS-6.4-x86_64-minimal.iso>`_
-3. A /24 network with the gateway being at xxx.xxx.xxx.1, no DHCP should be on this network
and none of the computers running CloudStack will have a dynamic address. Again this is done
for the sake of simplicity.
+#. At least one computer which supports hardware virtualization.
+
+#. The `CentOS 6.4 x86_64 minimal install CD 
+   <http://mirrors.kernel.org/centos/6/isos/x86_64/>`_
+
+#. A /24 network with the gateway being at xxx.xxx.xxx.1, no DHCP should be on 
+   this network and none of the computers running CloudStack will have a 
+   dynamic address. Again this is done for the sake of simplicity.
+
 
 Environment
 -----------
 
-Before you begin , you need to prepare the environment before you install CloudStack. We
will go over the steps to
-prepare now.
+Before you begin , you need to prepare the environment before you install 
+CloudStack. We will go over the steps to prepare now.
+
 
 Operating System
 ~~~~~~~~~~~~~~~~
 
-Using the CentOS 6.4 x86_64 minimal install ISO, you'll need to install CentOS on your hardware.
The defaults will
-generally be acceptable for this installation.
+Using the CentOS 6.4 x86_64 minimal install ISO, you'll need to install CentOS 
+on your hardware. The defaults will generally be acceptable for this 
+installation.
+
+Once this installation is complete, you'll want to connect to your freshly 
+installed machine via SSH as the root user. Note that you should not allow 
+root logins in a production environment, so be sure to turn off remote logins 
+once you have finished the installation and configuration.
 
-Once this installation is complete, you'll want to connect to your freshly installed machine
via SSH as the root user. Note
-that you should not allow root logins in a production environment, so be sure to turn off
remote logins once you have
-finished the installation and configuration.
 
 .. _conf-network:
 
 Configuring the network
 ^^^^^^^^^^^^^^^^^^^^^^^
 
-By default the network will not come up on your hardware and you will need to configure it
to work in your environment.
-Since we specified that there will be no DHCP server in this environment we will be manually
configuring your network
-interface. We will assume, for the purposes of this exercise, that eth0 is the only network
interface that will be connected
-and used.
+By default the network will not come up on your hardware and you will need to 
+configure it to work in your environment. Since we specified that there will 
+be no DHCP server in this environment we will be manually configuring your 
+network interface. We will assume, for the purposes of this exercise, that 
+eth0 is the only network interface that will be connected and used.
 
-Connecting via the console you should login as root. Check the file /etc/sysconfig/network-scripts/ifcfg-eth0,
-it will look like this by default:
+Connecting via the console you should login as root. Check the file 
+/etc/sysconfig/network-scripts/ifcfg-eth0, it will look like this by default:
 
-  ::
+::
 
    DEVICE="eth0"
    HWADDR="52:54:00:B9:A6:C0"
    NM_CONTROLLED="yes"
    ONBOOT="no"
 
-Unfortunately, this configuration will not permit you to connect to the network, and is also
unsuitable for our purposes with
-CloudStack. We want to configure that file so that it specifies the IP address, netmask,
etc., as shown in the following
-example:
+Unfortunately, this configuration will not permit you to connect to the 
+network, and is also unsuitable for our purposes with CloudStack. We want to 
+configure that file so that it specifies the IP address, netmask, etc., as 
+shown in the following example:
+
+.. note:: 
+   You should not use the Hardware Address (aka the MAC address) from our 
+   example for your configuration. It is network interface specific, so you 
+   should keep the address already provided in the HWADDR directive.
 
-  .. note:: You should not use the Hardware Address (aka the MAC address) from our example
for your configuration. It is
-     network interface specific, so you should keep the address already provided in the HWADDR
directive.
+:: 
 
-  :: 
+   DEVICE=eth0
+   HWADDR=52:54:00:B9:A6:C0
+   NM_CONTROLLED=no
+   ONBOOT=yes
+   BOOTPROTO=none
+   IPADDR=172.16.10.2
+   NETMASK=255.255.255.0
+   GATEWAY=172.16.10.1
+   DNS1=8.8.8.8
+   DNS2=8.8.4.4
 
-    DEVICE=eth0
-    HWADDR=52:54:00:B9:A6:C0
-    NM_CONTROLLED=no
-    ONBOOT=yes
-    BOOTPROTO=none
-    IPADDR=172.16.10.2
-    NETMASK=255.255.255.0
-    GATEWAY=172.16.10.1
-    DNS1=8.8.8.8
-    DNS2=8.8.4.4
+.. note:: 
+   IP Addressing - Throughout this document we are assuming that you will have 
+   a /24 network for your CloudStack implementation. This can be any RFC 1918 
+   network. However, we are assuming that you will match the machine address 
+   that we are using. Thus we may use 172.16.10.2 and because you might be 
+   using the 192.168.55.0/24 network you would use 192.168.55.2
 
-  .. note:: IP Addressing
-     Throughout this document we are assuming that you will have a /24 network for your CloudStack
implementation. This can be any RFC 1918 network. However, we are assuming that you will match
the machine address that we are using. Thus we may use 172.16.10.2 and because you might be
using the 192.168.55.0/24 network you would use 192.168.55.2
+Now that we have the configuration files properly set up, we need to run a few 
+commands to start up the network: 
 
-Now that we have the configuration files properly set up, we need to run a few commands to
start up the network: 
+.. sourcecode:: bash
 
-  .. sourcecode:: bash
+   # chkconfig network on
 
-     # chkconfig network on
+   # service network start
 
-     # chkconfig network start
 
 .. _conf-hostname:
 
 Hostname
 ^^^^^^^^
 
-CloudStack requires that the hostname be properly set. If you used the default options in
the installation, then your
-hostname is currently set to localhost.localdomain. To test this we will run:
+CloudStack requires that the hostname be properly set. If you used the default 
+options in the installation, then your hostname is currently set to 
+localhost.localdomain. To test this we will run:
 
-  .. sourcecode:: bash
+.. sourcecode:: bash
 
-     # hostname --fqdn
+   # hostname --fqdn
 
 At this point it will likely return: 
 
-  .. sourcecode:: bash
+.. sourcecode:: bash
 
-     localhost
+   localhost
 
-To rectify this situation - we'll set the hostname by editing the /etc/hosts file so that
it follows a similar format to this
-example:
+To rectify this situation - we'll set the hostname by editing the /etc/hosts 
+file so that it follows a similar format to this example:
 
-  .. sourcecode:: bash
+.. sourcecode:: bash
 
-     127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
-     ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
-     172.16.10.2 srvr1.cloud.priv
+   127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
+   ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
+   172.16.10.2 srvr1.cloud.priv
 
 After you've modified that file, go ahead and restart the network using:
 
-  .. sourcecode:: bash
+.. sourcecode:: bash
 
-     # service network restart
+   # service network restart
+
+Now recheck with the hostname --fqdn command and ensure that it returns a FQDN 
+response
 
-Now recheck with the hostname --fqdn command and ensure that it returns a FQDN response
 
 .. _conf-selinux:
 
 SELinux
 ^^^^^^^
 
-At the moment, for CloudStack to work properly SELinux must be set to permissive. We want
to both configure this for
-future boots and modify it in the current running system.
+At the moment, for CloudStack to work properly SELinux must be set to 
+permissive. We want to both configure this for future boots and modify it in 
+the current running system.
 
-To configure SELinux to be permissive in the running system we need to run the following
command:
+To configure SELinux to be permissive in the running system we need to run the 
+following command:
 
-  .. sourcecode:: bash
+.. sourcecode:: bash
 
-     # setenforce 0
+   # setenforce 0
 
-To ensure that it remains in that state we need to configure the file /etc/selinux/config
to reflect the permissive
-state, as shown in this example:
+To ensure that it remains in that state we need to configure the file 
+/etc/selinux/config to reflect the permissive state, as shown in this example:
 
-  .. sourcecode:: bash
+.. sourcecode:: bash
+
+   # This file controls the state of SELinux on the system.
+   # SELINUX= can take one of these three values:
+   # enforcing - SELinux security policy is enforced.
+   # permissive - SELinux prints warnings instead of enforcing.
+   # disabled - No SELinux policy is loaded.
+   SELINUX=permissive
+   # SELINUXTYPE= can take one of these two values:
+   # targeted - Targeted processes are protected,
+   # mls - Multi Level Security protection.
+   SELINUXTYPE=targeted
 
-     # This file controls the state of SELinux on the system.
-     # SELINUX= can take one of these three values:
-     # enforcing - SELinux security policy is enforced.
-     # permissive - SELinux prints warnings instead of enforcing.
-     # disabled - No SELinux policy is loaded.
-     SELINUX=permissive
-     # SELINUXTYPE= can take one of these two values:
-     # targeted - Targeted processes are protected,
-     # mls - Multi Level Security protection.
-     SELINUXTYPE=targeted
 
 .. _conf-ntp:
 
 NTP
 ^^^
 
-NTP configuration is a necessity for keeping all of the clocks in your cloud servers in sync.
However, NTP is not installed
-by default. So we'll install and and configure NTP at this stage. Installation is accomplished
as follows:
+NTP configuration is a necessity for keeping all of the clocks in your cloud 
+servers in sync. However, NTP is not installed by default. So we'll install 
+and and configure NTP at this stage. Installation is accomplished as follows:
+
+.. sourcecode:: bash
 
-  .. sourcecode:: bash
+   # yum -y install ntp
 
-     # yum -y install ntp
+The actual default configuration is fine for our purposes, so we merely need 
+to enable it and set it to start on boot as follows:
 
-The actual default configuration is fine for our purposes, so we merely need to enable it
and set it to start on boot as
-follows:
+.. sourcecode:: bash
 
-  .. sourcecode:: bash
+   # chkconfig ntpd on
+   # service ntpd start
 
-     # chkconfig ntpd on
-     # service ntpd start
 
 .. _qigconf-pkg-repo:
 
@@ -194,333 +242,413 @@ Configuring the CloudStack Package Repository
 
 We need to configure the machine to use a CloudStack package repository. 
 
-  .. note:: The Apache CloudStack official releases are source code. As such there are no
'official' binaries available. The full installation guide describes how to take the source
release and generate RPMs and and yum repository. This guide attempts to keep things as simple
as possible, and thus we are using one of the community-provided yum repositories.
+.. note:: 
+   The Apache CloudStack official releases are source code. As such there are 
+   no 'official' binaries available. The full installation guide describes how 
+   to take the source release and generate RPMs and and yum repository. This 
+   guide attempts to keep things as simple as possible, and thus we are using 
+   one of the community-provided yum repositories.
+
+To add the CloudStack repository, create /etc/yum.repos.d/cloudstack.repo and 
+insert the following information.
 
-To add the CloudStack repository, create /etc/yum.repos.d/cloudstack.repo and insert the
following information.
+::
 
-  ::
+   [cloudstack]
+   name=cloudstack
+   baseurl=http://cloudstack.apt-get.eu/rhel/4.3/
+   enabled=1
+   gpgcheck=0
 
-    [cloudstack]
-    name=cloudstack
-    baseurl=http://cloudstack.apt-get.eu/rhel/4.3/
-    enabled=1
-    gpgcheck=0
 
 NFS
 ~~~
 
-Our configuration is going to use NFS for both primary and secondary storage. We are going
to go ahead and setup two
-NFS shares for those purposes. We'll start out by installing nfs-utils.
+Our configuration is going to use NFS for both primary and secondary storage. 
+We are going to go ahead and setup two NFS shares for those purposes. We'll 
+start out by installing nfs-utils.
 
-  .. sourcecode:: bash
+.. sourcecode:: bash
 
-     # yum install nfs-utils
+   # yum install nfs-utils
 
-We now need to configure NFS to serve up two different shares. This is handled comparatively
easily in the 
-/etc/exports file. You should ensure that it has the following content:
+We now need to configure NFS to serve up two different shares. This is handled 
+comparatively easily in the /etc/exports file. You should ensure that it has 
+the following content:
 
-  .. sourcecode:: bash
+.. sourcecode:: bash
 
-     /secondary *(rw,async,no_root_squash)
-     /primary *(rw,async,no_root_squash)
+   /secondary *(rw,async,no_root_squash)
+   /primary *(rw,async,no_root_squash)
 
-You will note that we specified two directories that don't exist (yet) on the system. We'll
go ahead and create those
-directories and set permissions appropriately on them with the following commands:
+You will note that we specified two directories that don't exist (yet) on the 
+system. We'll go ahead and create those directories and set permissions 
+appropriately on them with the following commands:
 
-  .. sourcecode:: bash
+.. sourcecode:: bash
 
-     # mkdir /primary
-     # mkdir /secondary
+   # mkdir /primary
+   # mkdir /secondary
 
-CentOS 6.x releases use NFSv4 by default. NFSv4 requires that domain setting matches on all
clients. In our case, the
-domain is cloud.priv, so ensure that the domain setting in /etc/idmapd.conf is uncommented
and set as follows:
+CentOS 6.x releases use NFSv4 by default. NFSv4 requires that domain setting 
+matches on all clients. In our case, the domain is cloud.priv, so ensure that 
+the domain setting in /etc/idmapd.conf is uncommented and set as follows:
 Domain = cloud.priv
 
-Now you'll need uncomment the configuration values in the file /etc/sysconfig/nfs
+Now you'll need uncomment the configuration values in the file 
+/etc/sysconfig/nfs
 
-  .. sourcecode:: bash
+.. sourcecode:: bash
 
-     LOCKD_TCPPORT=32803
-     LOCKD_UDPPORT=32769
-     MOUNTD_PORT=892
-     RQUOTAD_PORT=875
-     STATD_PORT=662
-     STATD_OUTGOING_PORT=2020
+   LOCKD_TCPPORT=32803
+   LOCKD_UDPPORT=32769
+   MOUNTD_PORT=892
+   RQUOTAD_PORT=875
+   STATD_PORT=662
+   STATD_OUTGOING_PORT=2020
 
-Now we need to configure the firewall to permit incoming NFS connections. Edit the file /etc/sysconfig/iptables
+Now we need to configure the firewall to permit incoming NFS connections. 
+Edit the file /etc/sysconfig/iptables
 
-  .. sourcecode:: bash
+.. sourcecode:: bash
 
-     -A INPUT -s 172.16.10.0/24 -m state --state NEW -p udp --dport 111 -j ACCEPT
-     -A INPUT -s 172.16.10.0/24 -m state --state NEW -p tcp --dport 111 -j ACCEPT
-     -A INPUT -s 172.16.10.0/24 -m state --state NEW -p tcp --dport 2049 -j ACCEPT
-     -A INPUT -s 172.16.10.0/24 -m state --state NEW -p tcp --dport 32803 -j ACCEPT
-     -A INPUT -s 172.16.10.0/24 -m state --state NEW -p udp --dport 32769 -j ACCEPT
-     -A INPUT -s 172.16.10.0/24 -m state --state NEW -p tcp --dport 892 -j ACCEPT
-     -A INPUT -s 172.16.10.0/24 -m state --state NEW -p udp --dport 892 -j ACCEPT
-     -A INPUT -s 172.16.10.0/24 -m state --state NEW -p tcp --dport 875 -j ACCEPT
-     -A INPUT -s 172.16.10.0/24 -m state --state NEW -p udp --dport 875 -j ACCEPT
-     -A INPUT -s 172.16.10.0/24 -m state --state NEW -p tcp --dport 662 -j ACCEPT
-     -A INPUT -s 172.16.10.0/24 -m state --state NEW -p udp --dport 662 -j ACCEPT
+   -A INPUT -s 172.16.10.0/24 -m state --state NEW -p udp --dport 111 -j ACCEPT
+   -A INPUT -s 172.16.10.0/24 -m state --state NEW -p tcp --dport 111 -j ACCEPT
+   -A INPUT -s 172.16.10.0/24 -m state --state NEW -p tcp --dport 2049 -j ACCEPT
+   -A INPUT -s 172.16.10.0/24 -m state --state NEW -p tcp --dport 32803 -j ACCEPT
+   -A INPUT -s 172.16.10.0/24 -m state --state NEW -p udp --dport 32769 -j ACCEPT
+   -A INPUT -s 172.16.10.0/24 -m state --state NEW -p tcp --dport 892 -j ACCEPT
+   -A INPUT -s 172.16.10.0/24 -m state --state NEW -p udp --dport 892 -j ACCEPT
+   -A INPUT -s 172.16.10.0/24 -m state --state NEW -p tcp --dport 875 -j ACCEPT
+   -A INPUT -s 172.16.10.0/24 -m state --state NEW -p udp --dport 875 -j ACCEPT
+   -A INPUT -s 172.16.10.0/24 -m state --state NEW -p tcp --dport 662 -j ACCEPT
+   -A INPUT -s 172.16.10.0/24 -m state --state NEW -p udp --dport 662 -j ACCEPT
 
 Now you can restart the iptables service with the following command:
 
-  .. sourcecode:: bash
+.. sourcecode:: bash
 
-     # service iptables restart
+   # service iptables restart
 
-We now need to configure the nfs service to start on boot and actually start it on the host
by executing the following
-commands:
+We now need to configure the nfs service to start on boot and actually start 
+it on the host by executing the following commands:
 
-  .. sourcecode:: bash
+.. sourcecode:: bash
+
+   # service rpcbind start
+   # service nfs start
+   # chkconfig rpcbind on
+   # chkconfig nfs on
 
-     # service rpcbind start
-     # service nfs start
-     # chkconfig rpcbind on
-     # chkconfig nfs on
 
 Management Server Installation
 ------------------------------
 
 We're going to install the CloudStack management server and surrounding tools. 
 
+
 Database Installation and Configuration
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-We'll start with installing MySQL and configuring some options to ensure it runs well with
CloudStack. 
+We'll start with installing MySQL and configuring some options to ensure it 
+runs well with CloudStack. 
 
 Install by running the following command: 
 
-  .. sourcecode:: bash
+.. sourcecode:: bash
 
-     # yum -y install mysql-server
+   # yum -y install mysql-server
 
-With MySQL now installed we need to make a few configuration changes to /etc/my.cnf. Specifically
we need to add the
-following options to the [mysqld] section:
+With MySQL now installed we need to make a few configuration changes to 
+/etc/my.cnf. Specifically we need to add the following options to the [mysqld] 
+section:
 
-  ::
+::
 
-     innodb_rollback_on_timeout=1
-     innodb_lock_wait_timeout=600
-     max_connections=350
-     log-bin=mysql-bin
-     binlog-format = 'ROW' 
+   innodb_rollback_on_timeout=1
+   innodb_lock_wait_timeout=600
+   max_connections=350
+   log-bin=mysql-bin
+   binlog-format = 'ROW' 
 
-Now that MySQL is properly configured we can start it and configure it to start on boot as
follows:
+Now that MySQL is properly configured we can start it and configure it to 
+start on boot as follows:
 
-  .. sourcecode:: bash 
+.. sourcecode:: bash 
+
+   # service mysqld start
+   # chkconfig mysqld on
 
-     # service mysqld start
-     # chkconfig mysqld on
 
 Installation
 ~~~~~~~~~~~~
 
-We are now going to install the management server. We do that by executing the following
command:
+We are now going to install the management server. We do that by executing the 
+following command:
 
-  .. sourcecode:: bash
+.. sourcecode:: bash
 
-     # yum -y install cloud-client
+   # yum -y install cloudstack-management
 
-With the application itself installed we can now setup the database, we'll do that with the
following command and options:
+With the application itself installed we can now setup the database, we'll do 
+that with the following command and options:
 
-  .. sourcecode:: bash
+.. sourcecode:: bash
 
-     # cloudstack-setup-databases cloud:password@localhost --deploy-as=root
+   # cloudstack-setup-databases cloud:password@localhost --deploy-as=root
 
-When this process is finished, you should see a message like "CloudStack has successfully
initialized the database."
+When this process is finished, you should see a message like "CloudStack has 
+successfully initialized the database."
 
-Now that the database has been created, we can take the final step in setting up the management
server by issuing the
-following command:
+Now that the database has been created, we can take the final step in setting 
+up the management server by issuing the following command:
+
+.. sourcecode:: bash
 
-  .. sourcecode:: bash
+   # cloudstack-setup-management
 
-     # cloudstack-setup-management
 
 System Template Setup
 ~~~~~~~~~~~~~~~~~~~~~
 
-CloudStack uses a number of system VMs to provide functionality for accessing the console
of virtual machines,
-providing various networking services, and managing various aspects of storage. This step
will acquire those system
+CloudStack uses a number of system VMs to provide functionality for accessing 
+the console of virtual machines, providing various networking services, and 
+managing various aspects of storage. This step will acquire those system 
 images ready for deployment when we bootstrap your cloud.
 
-Now we need to download the system VM template and deploy that to the share we just mounted.
The management
-server includes a script to properly manipulate the system VMs images.
+Now we need to download the system VM template and deploy that to the share we 
+just mounted. The management server includes a script to properly manipulate 
+the system VMs images.
 
-  .. sourcecode:: bash
+.. sourcecode:: bash
+  
+  # /usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /secondary
-u http://download.cloud.com/templates/4.3/systemvm64template-2014-01-14-master-kvm.qcow2.bz2
-h kvm -F
 
-     # /usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m
\ 
-     /secondary -u http://download.cloud.com/templates/acton/acton-systemvm-02062012.qcow2.bz2
\
-     -h kvm -F
+That concludes our setup of the management server. We still need to configure 
+CloudStack, but we will do that after we get our hypervisor set up.
 
-That concludes our setup of the management server. We still need to configure CloudStack,
but we will do that after we
-get our hypervisor set up.
 
 KVM Setup and Installation
 --------------------------
 
-KVM is the hypervisor we'll be using - we will recover the initial setup which has already
been done on the hypervisor host
-and cover installation of the agent software, you can use the same steps to add additional
KVM nodes to your CloudStack
-environment.
+KVM is the hypervisor we'll be using - we will recover the initial setup which 
+has already been done on the hypervisor host and cover installation of the 
+agent software, you can use the same steps to add additional KVM nodes to your 
+CloudStack environment.
+
 
 Prerequisites
 ~~~~~~~~~~~~~
 
-We explicitly are using the management server as a compute node as well, which means that
we have already performed
-many of the prerequisite steps when setting up the management server, but we will list them
here for clarity. Those steps
-are:
+We explicitly are using the management server as a compute node as well, which 
+means that we have already performed many of the prerequisite steps when 
+setting up the management server, but we will list them here for clarity. 
+Those steps are:
 
-1. :ref:`conf-network`
-2. :ref:`conf-hostname`
-3. :ref:`conf-selinux`
-4. :ref:`conf-ntp`
-5. :ref:`qigconf-pkg-repo`
+#. :ref:`conf-network`
+
+#. :ref:`conf-hostname`
+
+#. :ref:`conf-selinux`
+
+#. :ref:`conf-ntp`
+
+#. :ref:`qigconf-pkg-repo`
+
+You shouldn't need to do that for the management server, of course, but any 
+additional hosts will need for you to complete the above steps.
 
-You shouldn't need to do that for the management server, of course, but any additional hosts
will need for you to complete
-the above steps.
 
 Installation
 ~~~~~~~~~~~~
 
-Installation of the KVM agent is trivial with just a single command, but afterwards we'll
need to configure a few things.
+Installation of the KVM agent is trivial with just a single command, but 
+afterwards we'll need to configure a few things.
+
+.. sourcecode:: bash
 
-  .. sourcecode:: bash
+   # yum -y install cloudstack-agent
 
-     # yum -y install cloud-agent
 
 KVM Configuration
 ~~~~~~~~~~~~~~~~~~~~
 
 We have two different parts of KVM to configure, libvirt, and QEMU.
 
+
 QEMU Configuration
 ^^^^^^^^^^^^^^^^^^^
 
-KVM configuration is relatively simple at only a single item. We need to edit the QEMU VNC
configuration. This is done by
-editing /etc/libvirt/qemu.conf and ensuring the following line is present and uncommented.
+KVM configuration is relatively simple at only a single item. We need to edit 
+the QEMU VNC configuration. This is done by editing /etc/libvirt/qemu.conf and 
+ensuring the following line is present and uncommented.
+
+..
 
-  ..
+  vnc_listen=0.0.0.0
 
-    vnc_listen=0.0.0.0
 
 Libvirt Configuration
 ^^^^^^^^^^^^^^^^^^^^^^^
 
-CloudStack uses libvirt for managing virtual machines. Therefore it is vital that libvirt
is configured correctly. Libvirt is a dependency of cloud-agent and should already be installed.
+CloudStack uses libvirt for managing virtual machines. Therefore it is vital 
+that libvirt is configured correctly. Libvirt is a dependency of cloud-agent 
+and should already be installed.
 
-1. In order to have live migration working libvirt has to listen for unsecured TCP connections.
We also need to turn off libvirts attempt to use Multicast DNS advertising. Both of these
settings are in /etc/libvirt/libvirtd.conf
+#. In order to have live migration working libvirt has to listen for unsecured 
+   TCP connections. We also need to turn off libvirts attempt to use Multicast 
+   DNS advertising. Both of these settings are in /etc/libvirt/libvirtd.conf
 
-Set the following paramaters:
+   Set the following paramaters:
+   
+   ::
+   
+      listen_tls = 0
+      listen_tcp = 1
+      tcp_port = "16059"
+      auth_tcp = "none"
+      mdns_adv = 0
 
- ::
+#. Turning on "listen_tcp" in libvirtd.conf is not enough, we have to change 
+   the parameters as well we also need to modify /etc/sysconfig/libvirtd:
 
-   listen_tls = 0
-   listen_tcp = 1
-   tcp_port = "16059"
-   auth_tcp = "none"
-   mdns_adv = 0
+   Uncomment the following line:
 
-2. Turning on "listen_tcp" in libvirtd.conf is not enough, we have to change the parameters
as well we also need to modify /etc/sysconfig/libvirtd:
+   :: 
 
-  Uncomment the following line:
+      #LIBVIRTD_ARGS="--listen"
 
-  :: 
+#. Restart libvirt
 
-    #LIBVIRTD_ARGS="--listen"
+   .. sourcecode:: bash
 
-3. Restart libvirt
+      # service libvirtd restart
 
-  .. sourcecode:: bash
-
-     # service libvirtd restart
 
 KVM configuration complete
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^
-That concludes our installation and configuration of KVM, and we'll now move to using the
CloudStack UI for the actual
-configuration of our cloud.
+That concludes our installation and configuration of KVM, and we'll now move 
+to using the CloudStack UI for the actual configuration of our cloud.
+
 
 Configuration
 -------------
 
-As we noted before we will be using security groups to provide isolation and by default that
implies that we'll be using a
-flat layer-2 network. It also means that the simplicity of our setup means that we can use
the quick installer.
+As we noted before we will be using security groups to provide isolation and 
+by default that implies that we'll be using a flat layer-2 network. It also 
+means that the simplicity of our setup means that we can use the quick 
+installer.
+
 
 UI Access
 ~~~~~~~~~
 
-To get access to CloudStack's web interface, merely point your browser to http://172.16.10.2:8080/client
The default
-username is 'admin', and the default password is 'password'. You should see a splash screen
that allows you to choose
-several options for setting up CloudStack. You should choose the Continue with Basic Setup
option.
+To get access to CloudStack's web interface, merely point your browser to 
+http://172.16.10.2:8080/client The default username is 'admin', and the 
+default password is 'password'. You should see a splash screen that allows you 
+to choose several options for setting up CloudStack. You should choose the 
+Continue with Basic Setup option.
+
+You should now see a prompt requiring you to change the password for the admin 
+user. Please do so.
 
-You should now see a prompt requiring you to change the password for the admin user. Please
do so.
 
 Setting up a Zone
 ~~~~~~~~~~~~~~~~~
 
-A zone is the largest organization entity in CloudStack - and we'll be creating one, this
should be the screen that you see
-in front of you now. And for us there are 5 pieces of information that we need.
+A zone is the largest organization entity in CloudStack - and we'll be 
+creating one, this should be the screen that you see in front of you now. And 
+for us there are 5 pieces of information that we need.
+
+#. Name - we will set this to the ever-descriptive 'Zone1' for our cloud.
 
-  1. Name - we will set this to the ever-descriptive 'Zone1' for our cloud.
-  2. Public DNS 1 - we will set this to '8.8.8.8' for our cloud.
-  3. Public DNS 2 - we will set this to '8.8.4.4' for our cloud.
-  4. Internal DNS1 - we will also set this to '8.8.8.8' for our cloud.
-  5. Internal DNS2 - we will also set this to '8.8.4.4' for our cloud. 
+#. Public DNS 1 - we will set this to '8.8.8.8' for our cloud.
+
+#. Public DNS 2 - we will set this to '8.8.4.4' for our cloud.
+
+#. Internal DNS1 - we will also set this to '8.8.8.8' for our cloud.
+
+#. Internal DNS2 - we will also set this to '8.8.4.4' for our cloud. 
+
+.. note:: 
+   CloudStack distinguishes between internal and public DNS. Internal DNS is 
+   assumed to be capable of resolving internal-only hostnames, such as your 
+   NFS server’s DNS name. Public DNS is provided to the guest VMs to resolve 
+   public IP addresses. You can enter the same DNS server for both types, but 
+   if you do so, you must make sure that both internal and public IP addresses 
+   can route to the DNS server. In our specific case we will not use any names 
+   for resources internally, and we have indeed them set to look to the same 
+   external resource so as to not add a namerserver setup to our list of 
+   requirements.
 
-  .. note:: 
-     CloudStack distinguishes between internal and public DNS. Internal DNS is assumed to
be capable of resolving
-     internal-only hostnames, such as your NFS server’s DNS name. Public DNS is provided
to the guest VMs to
-     resolve public IP addresses. You can enter the same DNS server for both types, but if
you do so, you must make
-     sure that both internal and public IP addresses can route to the DNS server. In our
specific case we will not use
-     any names for resources internally, and we have indeed them set to look to the same
external resource so as to
-     not add a namerserver setup to our list of requirements.
 
 Pod Configuration
 ~~~~~~~~~~~~~~~~~
 
-Now that we've added a Zone, the next step that comes up is a prompt for information regading
a pod. Which is looking
-for several items.
+Now that we've added a Zone, the next step that comes up is a prompt for 
+information regading a pod. Which is looking for several items.
+
+#. Name - We'll use Pod1 for our cloud.
+
+#. Gateway - We'll use 172.16.10.1 as our gateway
+
+#. Netmask - We'll use 255.255.255.0
+
+#. Start/end reserved system IPs - we will use 172.16.10.10-172.16.10.20
+
+#. Guest gateway - We'll use 172.16.10.1
+
+#. Guest netmask - We'll use 255.255.255.0
+
+#. Guest start/end IP - We'll use 172.16.10.30-172.16.10.200
 
-1. Name - We'll use Pod1 for our cloud.
-2. Gateway - We'll use 172.16.10.1 as our gateway
-3. Netmask - We'll use 255.255.255.0
-4. Start/end reserved system IPs - we will use 172.16.10.10-172.16.10.20
-5. Guest gateway - We'll use 172.16.10.1
-6. Guest netmask - We'll use 255.255.255.0
-7. Guest start/end IP - We'll use 172.16.10.30-172.16.10.200
 
 Cluster
 ~~~~~~~
 
-Now that we've added a Zone, we need only add a few more items for configuring the cluster.
+Now that we've added a Zone, we need only add a few more items for configuring 
+the cluster.
+
+#. Name - We'll use Cluster1
+
+#. Hypervisor - Choose KVM
 
-1. Name - We'll use Cluster1
-2. Hypervisor - Choose KVM
+You should be prompted to add the first host to your cluster at this point. 
+Only a few bits of information are needed.
 
-You should be prompted to add the first host to your cluster at this point. Only a few bits
of information are needed.
+#. Hostname - we'll use the IP address 172.16.10.2 since we didn't set up a 
+   DNS server.
+
+#. Username - we'll use 'root'
+
+#. Password - enter the operating system password for the root user
 
-1. Hostname - we'll use the IP address 172.16.10.2 since we didn't set up a DNS server.
-2. Username - we'll use 'root'
-3. Password - enter the operating system password for the root user
 
 Primary Storage
 ^^^^^^^^^^^^^^^
 
-With your cluster now setup - you should be prompted for primary storage information. Choose
NFS as the storage type
-and then enter the following values in the fields:
+With your cluster now setup - you should be prompted for primary storage 
+information. Choose NFS as the storage type and then enter the following 
+values in the fields:
+
+#. Name - We'll use 'Primary1'
+
+#. Server - We'll be using the IP address 172.16.10.2
+
+#. Path - Well define /primary as the path we are using
 
-1. Name - We'll use 'Primary1'
-2. Server - We'll be using the IP address 172.16.10.2
-3. Path - Well define /primary as the path we are using
 
 Secondary Storage
 ^^^^^^^^^^^^^^^^^
 
-If this is a new zone, you'll be prompted for secondary storage information - populate it
as follows:
+If this is a new zone, you'll be prompted for secondary storage information - 
+populate it as follows:
+
+#. NFS server - We'll use the IP address 172.16.10.2
 
-1. NFS server - We'll use the IP address 172.16.10.2
-2. Path - We'll use /secondary
+#. Path - We'll use /secondary
 
-Now, click Launch and your cloud should begin setup - it may take several minutes depending
on your internet
-connection speed for setup to finalize.
+Now, click Launch and your cloud should begin setup - it may take several 
+minutes depending on your internet connection speed for setup to finalize.
 
 That's it, you are done with installation of your Apache CloudStack cloud.


Mime
View raw message