You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ke...@apache.org on 2013/02/18 23:52:35 UTC
[3/15] git commit: refs/heads/4.0 - first pass at fixing runbook for
ACS4.0.x
first pass at fixing runbook for ACS4.0.x
Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/73c6a854
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/73c6a854
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/73c6a854
Branch: refs/heads/4.0
Commit: 73c6a854e1de022f1c1e9173fe38064464d78327
Parents: 85455f6
Author: David Nalley <da...@gnsa.us>
Authored: Tue Jan 29 00:17:06 2013 -0500
Committer: David Nalley <da...@gnsa.us>
Committed: Mon Feb 18 17:53:42 2013 -0500
----------------------------------------------------------------------
docs/runbook/en-US/Book_Info.xml | 2 +-
docs/runbook/en-US/Environment.xml | 36 +++++++--
docs/runbook/en-US/Management.xml | 37 ++-------
docs/runbook/en-US/Overview.xml | 17 +---
docs/runbook/en-US/Revision_History.xml | 9 ++
docs/runbook/en-US/config.xml | 2 +-
docs/runbook/en-US/kvm.xml | 103 ++++++++++++++++++-------
7 files changed, 127 insertions(+), 79 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/73c6a854/docs/runbook/en-US/Book_Info.xml
----------------------------------------------------------------------
diff --git a/docs/runbook/en-US/Book_Info.xml b/docs/runbook/en-US/Book_Info.xml
index ec59144..5d2014b 100644
--- a/docs/runbook/en-US/Book_Info.xml
+++ b/docs/runbook/en-US/Book_Info.xml
@@ -27,7 +27,7 @@
<title>Runbook</title>
<subtitle>Prescriptive instructions for deploying Apache CloudStack</subtitle>
<productname>Apache CloudStack</productname>
- <productnumber>3.0.2</productnumber>
+ <productnumber>4.0.1</productnumber>
<edition>0</edition>
<pubsnumber>0</pubsnumber>
<abstract>
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/73c6a854/docs/runbook/en-US/Environment.xml
----------------------------------------------------------------------
diff --git a/docs/runbook/en-US/Environment.xml b/docs/runbook/en-US/Environment.xml
index 781e05d..4172e03 100644
--- a/docs/runbook/en-US/Environment.xml
+++ b/docs/runbook/en-US/Environment.xml
@@ -32,7 +32,7 @@
<section id="sect-Runbook-Environment-operatingsys">
<title>Operating System</title>
<para>
- Using the CentOS 6.2 x86_64 minimal install ISO, you'll need to install CentOS
+ Using the CentOS 6.3 x86_64 minimal install ISO, you'll need to install CentOS
on your hardware. The defaults will generally be acceptable for this installation.
</para>
<para>
@@ -163,6 +163,30 @@ SELINUXTYPE=targeted
<screen><prompt># </prompt><userinput><command>chkconfig</command> ntpd on</userinput></screen>
<screen><prompt># </prompt><userinput><command>service</command> ntpd start</userinput></screen>
</section>
+ <section id="sect-Runbook-Environment-operatingsys-repoconfig">
+ <title>Configuring the CloudStack Package Repository</title>
+ <para>
+ We need to configure the machine to use a CloudStack package repository.
+ <important>
+ <title>The below repository is not an official Apache CloudStack project repository</title>
+ <para>
+ 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.
+ </para>
+ </important>
+ </para>
+ <para>To add the CloudStack repository, create <filename>/etc/yum.repos.d/cloudstack.repo</filename> and insert the following information.</para>
+ <programlisting>
+[cloudstack]
+name=cloudstack
+baseurl=http://cloudstack.apt-get.eu/rhel/4.0/
+enabled=1
+gpgcheck=0
+ </programlisting>
+ </section>
</section>
<section id="sect-Runbook-Environment-nfs">
<title>NFS</title>
@@ -224,12 +248,10 @@ STATD_OUTGOING_PORT=2020
<para>We now need to configure nfs service to start on boot and actually start it on the host by
executing the following commands:</para>
<screen>
- <prompt># </prompt><userinput><command>service</command> rpcbind start</userinput>
- <prompt># </prompt><userinput><command>service</command> nfs start</userinput>
- <prompt># </prompt><userinput><command>chkconfig</command> rpcbind on</userinput>
- <prompt># </prompt><userinput><command>chkconfig</command> nfs on</userinput>
+<prompt># </prompt><userinput><command>service</command> rpcbind start</userinput>
+<prompt># </prompt><userinput><command>service</command> nfs start</userinput>
+<prompt># </prompt><userinput><command>chkconfig</command> rpcbind on</userinput>
+<prompt># </prompt><userinput><command>chkconfig</command> nfs on</userinput>
</screen>
</section>
-
-
</chapter>
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/73c6a854/docs/runbook/en-US/Management.xml
----------------------------------------------------------------------
diff --git a/docs/runbook/en-US/Management.xml b/docs/runbook/en-US/Management.xml
index 0df2bf1..f954561 100644
--- a/docs/runbook/en-US/Management.xml
+++ b/docs/runbook/en-US/Management.xml
@@ -54,45 +54,26 @@ binlog-format = 'ROW'
Now that <application>MySQL</application> is properly configured we can
start it and configure it to start on boot as follows:
<screen>
- <prompt># </prompt><userinput><command>service</command> mysqld start</userinput>
- <prompt># </prompt><userinput><command>chkconfig</command> mysqld on</userinput>
+<prompt># </prompt><userinput><command>service</command> mysqld start</userinput>
+<prompt># </prompt><userinput><command>chkconfig</command> mysqld on</userinput>
</screen>
</para>
</section>
- <section id="sect-Runbook-Management-extraction">
- <title>Extraction</title>
- <para>
- The next step is to extract the contents of the CloudStack tarball
- (mentioned in <xref linkend="sect-Runbook-Overview-prereqs" />) you
- downloaded previously. To extract the contents of this tarball use
- the following command:
- </para>
- <screen>
- <prompt># </prompt><userinput><command>tar</command> -xzvf CloudStack-oss-3.0.2-1-rhel6.2.tar.gz</userinput>
- </screen>
- <para> For the next few sections you'll need to <command>cd</command> into the first level that was just created.
- </para>
- </section>
<section id="sect-Runbook-Management-installation">
<title>Installation</title>
- <para>Now that you are in the directory created by extracting the tarball, it's now time to install. We'll run
- <filename>./install.sh</filename> and choose option <option>M</option>. This will install the management server
- and necessary dependencies.
+ <para>We are now going to install the management server. We do that by executing the following command:
+ <screen><prompt># </prompt><userinput><command>yum</command> -y install cloud-client</userinput></screen>
</para>
<para>With the application itself installed we can now setup the database, we'll do that with the following command
and options:
</para>
- <screen>
- <prompt># </prompt><userinput><command>cloud-setup-databases</command> cloud:<replaceable>password</replaceable>@localhost --deploy-as=root</userinput>
- </screen>
+ <screen><prompt># </prompt><userinput><command>cloud-setup-databases</command> cloud:<replaceable>password</replaceable>@localhost --deploy-as=root</userinput></screen>
<para>When this process is finished, you should see a message like "CloudStack has successfully initialized the database."
</para>
<para>Now that the database has been created, we can take the final step in setting up the management server by issuing the following command:</para>
- <screen>
- <prompt># </prompt><userinput><command>cloud-setup-mangament</command></userinput>
- </screen>
+ <screen><prompt># </prompt><userinput><command>cloud-setup-mangament</command></userinput></screen>
</section>
<section id="sect-Runbook-Management-templatesetup">
<title>System Template Setup</title>
@@ -107,16 +88,14 @@ binlog-format = 'ROW'
storage share that we setup earlier, so we'll need to mount that share
with the <command>mount</command> command run on the management server:
</para>
- <screen>
- <prompt># </prompt><userinput><command>mount</command> -t nfs <replaceable>172.16.10.</replaceable>2:/secondary /mnt/secondary</userinput>
+ <screen><prompt># </prompt><userinput><command>mount</command> -t nfs <replaceable>172.16.10.</replaceable>2:/secondary /mnt/secondary</userinput>
</screen>
<para>
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.
</para>
- <screen>
- <prompt># </prompt><userinput><command>/usr/lib64/cloud/agent/scripts/storage/secondary/cloud-install-sys-tmplt</command> -m /mnt/secondary -u http://download.cloud.com/templates/acton/acton-systemvm-02062012.qcow2.bz2 -h kvm -F</userinput>
+ <screen><prompt># </prompt><userinput><command>/usr/lib64/cloud/common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary</command> -m /mnt/secondary -u http://download.cloud.com/templates/acton/acton-systemvm-02062012.qcow2.bz2 -h kvm -F</userinput>
</screen>
<para>
That concludes our setup of the management server. We still need to
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/73c6a854/docs/runbook/en-US/Overview.xml
----------------------------------------------------------------------
diff --git a/docs/runbook/en-US/Overview.xml b/docs/runbook/en-US/Overview.xml
index f69798f..d686bf4 100644
--- a/docs/runbook/en-US/Overview.xml
+++ b/docs/runbook/en-US/Overview.xml
@@ -36,7 +36,7 @@
<title>What exactly are we building?</title>
<para>
This runbook will focus on building a CloudStack cloud using KVM with
- CentOS 6.2 with NFS storage on a flat layer-2 network utilizing
+ CentOS 6.3 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.
</para>
@@ -74,23 +74,16 @@
<listitem>
<para>
The
- <ulink url="http://mirrors.kernel.org/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-minimal.iso">
- CentOS 6.2 x86_64 minimal install CD
+ <ulink url="http://mirrors.kernel.org/centos/6.3/isos/x86_64/CentOS-6.3-x86_64-minimal.iso">
+ CentOS 6.3 x86_64 minimal install CD
</ulink>
</para>
</listitem>
<listitem>
<para>
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 may have a dynamic address.
- </para>
- </listitem>
- <listitem>
- <para>
- Copy of
- <ulink url="http://sourceforge.net/projects/cloudstack/files/CloudStack%20Acton/3.0.2/CloudStack-oss-3.0.2-1-rhel6.2.tar.gz/download">
- CloudStack 3.0.2 for RHEL and CentOS 6.2
- </ulink>
+ none of the computers running CloudStack will have a dynamic address. Again this is done for
+ the sake of simplicity.
</para>
</listitem>
</orderedlist>
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/73c6a854/docs/runbook/en-US/Revision_History.xml
----------------------------------------------------------------------
diff --git a/docs/runbook/en-US/Revision_History.xml b/docs/runbook/en-US/Revision_History.xml
index 4aecafd..78340ea 100644
--- a/docs/runbook/en-US/Revision_History.xml
+++ b/docs/runbook/en-US/Revision_History.xml
@@ -28,6 +28,15 @@
<simpara>
<revhistory>
<revision>
+ <revnumber>1</revnumber>
+ <date>Fri Feb 1 2013</date>
+ <revdescription>
+ <simplelist>
+ <member>Updating for Apache CloudStack 4.0.1</member>
+ </simplelist>
+ </revdescription>
+ </revision>
+ <revision>
<revnumber>0-0</revnumber>
<date>Mon Jun 25 2012</date>
<revdescription>
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/73c6a854/docs/runbook/en-US/config.xml
----------------------------------------------------------------------
diff --git a/docs/runbook/en-US/config.xml b/docs/runbook/en-US/config.xml
index 90c3495..da9b1ca 100644
--- a/docs/runbook/en-US/config.xml
+++ b/docs/runbook/en-US/config.xml
@@ -142,7 +142,7 @@
</para>
<section id="Runbook-config-cluster-pristorage">
<title>Primary Storage</title>
- <para>With you 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:
+ <para>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:
<orderedlist>
<listitem>
<para>Name - We'll use 'Primary1'</para>
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/73c6a854/docs/runbook/en-US/kvm.xml
----------------------------------------------------------------------
diff --git a/docs/runbook/en-US/kvm.xml b/docs/runbook/en-US/kvm.xml
index 0311949..f6b61c2 100644
--- a/docs/runbook/en-US/kvm.xml
+++ b/docs/runbook/en-US/kvm.xml
@@ -59,6 +59,11 @@
<xref linkend="sect-Runbook-Environment-operatingsys-ntp" />
</para>
</listitem>
+ <listitem>
+ <para>
+ <xref linkend="sect-Runbook-Environment-operatingsys-repoconfig" />
+ </para>
+ </listitem>
</orderedlist>
</para>
<para>
@@ -66,37 +71,77 @@
any additional hosts will need for you to complete the above steps.
</para>
</section>
-
+
<section id="sect-Runbook-KVM-Installation">
<title>Installation</title>
- <para>
- You'll need to ensure that you are in the directory that was created when
- we extracted the the tarball.
- <xref linkend="sect-Runbook-Management-extraction" />
- </para>
- <para>
- You'll be running <filename>./install.sh</filename> again and this time
- choosing <option>A</option> which will install the software necessary for
- managing a KVM node.
- </para>
- </section>
- <section id="sect-Runbook-KVM-Configuration">
- <title>KVM Configuration</title>
- <para>
- KVM configuration is relatively simple at only a single item. We need to
- edit the QEMU VNC configuration. This is done by editing
- <filename>/etc/libvirt/qemu.conf</filename> and ensuring the following
- line is present and uncommented.
- <screen>vnc_listen=0.0.0.0</screen>
- </para>
- <para>
- You can now just restart the libvirt daemon by issuing the following command:
- <screen><prompt># </prompt><userinput><command>service</command> libvirt restart</userinput></screen>
- </para>
- <para>
- 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.
- </para>
+ <para>Installation of the KVM agent is trivial with just a single command, but afterwards we'll need to configure a few things.</para>
+ <screen><prompt># </prompt><userinput><command>yum</command> -y install cloud-agent</userinput></screen>
+ <section id="sect-Runbook-KVM-Configuration">
+ <title>KVM Configuration</title>
+ <para>We have two different parts of KVM to configure, libvirt, and QEMU.</para>
+ <section id="sect-Runbook-KVM-Configuration-qemu">
+ <title>QEMU Configuration</title>
+ <para>
+ KVM configuration is relatively simple at only a single item. We need to
+ edit the QEMU VNC configuration. This is done by editing
+ <filename>/etc/libvirt/qemu.conf</filename> and ensuring the following
+ line is present and uncommented.
+ <screen>vnc_listen=0.0.0.0</screen>
+ </para>
+ <para>
+ You can now just restart the libvirt daemon by issuing the following command:
+ <screen><prompt># </prompt><userinput><command>service</command> libvirt restart</userinput></screen>
+ </para>
+ </section>
+ <section id="sect-Runbook-KVM-Configuration-libvirt">
+ <title>Libvirt Configuration</title>
+ <para>
+ 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.
+ </para>
+ <orderedlist>
+ <listitem>
+ <para>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 <filename>/etc/libvirt/libvirtd.conf</filename>
+ </para>
+ <para>Set the following paramaters:</para>
+ <programlisting>listen_tls = 0</programlisting>
+ <programlisting>listen_tcp = 1</programlisting>
+ <programlisting>tcp_port = 16059</programlisting>
+ <programlisting>auth_tcp = "none"</programlisting>
+ <programlisting>mdns_adv = 0</programlisting>
+ </listitem>
+ <listitem>
+ <para>Turning on "listen_tcp" in libvirtd.conf is not enough, we have to change the parameters as well:</para>
+ <para>On RHEL or CentOS modify <filename>/etc/sysconfig/libvirtd</filename>:</para>
+ <para>Uncomment the following line:</para>
+ <programlisting>#LIBVIRTD_ARGS="--listen"</programlisting>
+ <para>On Ubuntu: modify <filename>/etc/init/libvirt-bin.conf</filename></para>
+ <para>Change the following line (at the end of the file):</para>
+ <programlisting>exec /usr/sbin/libvirtd -d</programlisting>
+ <para>to (just add -l)</para>
+ <programlisting>exec /usr/sbin/libvirtd -d -l</programlisting>
+ </listitem>
+ <listitem>
+ <para>Restart libvirt</para>
+ <para>In RHEL or CentOS:</para>
+ <programlisting><command>$ service libvirtd restart</command></programlisting>
+ <para>In Ubuntu:</para>
+ <programlisting><command>$ service libvirt-bin restart</command></programlisting>
+ </listitem>
+ </orderedlist>
+ </section>
+ <section id="sect-Runbook-KVM-Configuration-finish">
+ <title>KVM configuration complete</title>
+ <para>
+ 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.
+ </para>
+ </section>
+ </section>
</section>
</chapter>