You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by mu...@apache.org on 2012/12/06 09:09:10 UTC

[37/100] [abbrv] git commit: Docbook xml for additional installation options

Docbook xml for additional installation options


Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/ddca8059
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/ddca8059
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/ddca8059

Branch: refs/heads/events-framework
Commit: ddca80591206a4976d2abc5e53cf6abf3697cbf9
Parents: 85a1074
Author: Gavin Lee <ga...@gmail.com>
Authored: Fri Nov 9 13:55:27 2012 +0800
Committer: Gavin Lee <ga...@gmail.com>
Committed: Fri Nov 9 13:55:27 2012 +0800

----------------------------------------------------------------------
 docs/en-US/Installation_Guide.xml              |    1 +
 docs/en-US/additional-installation-options.xml |   31 +++++
 docs/en-US/cloudstack.xml                      |    1 +
 docs/en-US/database-replication.xml            |  136 +++++++++++++++++++
 docs/en-US/install-usage-server.xml            |   61 +++++++++
 docs/en-US/ssl.xml                             |   29 ++++
 6 files changed, 259 insertions(+), 0 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/ddca8059/docs/en-US/Installation_Guide.xml
----------------------------------------------------------------------
diff --git a/docs/en-US/Installation_Guide.xml b/docs/en-US/Installation_Guide.xml
index 90f8748..2f60aca 100644
--- a/docs/en-US/Installation_Guide.xml
+++ b/docs/en-US/Installation_Guide.xml
@@ -52,6 +52,7 @@
     <xi:include href="provisioning-steps.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
     <xi:include href="global-config.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
     <xi:include href="hypervisor-installation.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+    <xi:include href="additional-installation-options.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
     <xi:include href="choosing-a-deployment-architecture.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
     <xi:include href="aws-interface-compatibility.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
     <xi:include href="network-setup.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/ddca8059/docs/en-US/additional-installation-options.xml
----------------------------------------------------------------------
diff --git a/docs/en-US/additional-installation-options.xml b/docs/en-US/additional-installation-options.xml
new file mode 100644
index 0000000..622ef03
--- /dev/null
+++ b/docs/en-US/additional-installation-options.xml
@@ -0,0 +1,31 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+<!ENTITY % BOOK_ENTITIES SYSTEM "cloudstack.ent">
+%BOOK_ENTITIES;
+]>
+
+<!-- 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.
+-->
+
+<chapter id="additional-installation-options">
+    <title>Additional Installation Options</title>
+    <para>The next few sections describe &PRODUCT; features above and beyond the basic deployment options.</para>
+    <xi:include href="install-usage-server.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+    <xi:include href="ssl.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+    <xi:include href="database-replication.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+</chapter>

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/ddca8059/docs/en-US/cloudstack.xml
----------------------------------------------------------------------
diff --git a/docs/en-US/cloudstack.xml b/docs/en-US/cloudstack.xml
index c745bc9..0b762a2 100644
--- a/docs/en-US/cloudstack.xml
+++ b/docs/en-US/cloudstack.xml
@@ -51,6 +51,7 @@
     <xi:include href="provisioning-steps.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
     <xi:include href="global-config.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
     <xi:include href="hypervisor-installation.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
+    <xi:include href="additional-installation-options.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
     <xi:include href="choosing-a-deployment-architecture.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
     <xi:include href="accounts.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />
     <xi:include href="user-services-overview.xml" xmlns:xi="http://www.w3.org/2001/XInclude" />

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/ddca8059/docs/en-US/database-replication.xml
----------------------------------------------------------------------
diff --git a/docs/en-US/database-replication.xml b/docs/en-US/database-replication.xml
new file mode 100644
index 0000000..718c349
--- /dev/null
+++ b/docs/en-US/database-replication.xml
@@ -0,0 +1,136 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+<!ENTITY % BOOK_ENTITIES SYSTEM "cloudstack.ent">
+%BOOK_ENTITIES;
+]>
+
+<!-- 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.
+-->
+
+<section id="database-replication">
+    <title>Database Replication (Optional)</title>
+    <para>&PRODUCT; supports database replication from one MySQL node to another. This is achieved using standard MySQL replication. You may want to do this as insurance against MySQL server or storage loss. MySQL replication is implemented using a master/slave model. The master is the node that the Management Servers are configured to use. The slave is a standby node that receives all write operations from the master and applies them to a local, redundant copy of the database. The following steps are a guide to implementing MySQL replication.</para>
+    <note><para>Creating a replica is not a backup solution. You should develop a backup procedure for the MySQL data that is distinct from replication.</para></note>
+    <orderedlist>
+    <listitem><para>Ensure that this is a fresh install with no data in the master.</para></listitem>
+    <listitem>
+        <para>Edit my.cnf on the master and add the following in the [mysqld] section below datadir.</para>
+        <programlisting>
+log_bin=mysql-bin
+server_id=1
+        </programlisting>
+        <para>The server_id must be unique with respect to other servers. The recommended way to achieve this is to give the master an ID of 1 and each slave a sequential number greater than 1, so that the servers are numbered 1, 2, 3, etc.</para>
+    </listitem>
+    <listitem>
+        <para>Restart the MySQL service:</para>
+        <programlisting>
+# service mysqld restart
+        </programlisting>
+    </listitem>
+    <listitem>
+        <para>Create a replication account on the master and give it privileges. We will use the "cloud-repl" user with the password "password". This assumes that master and slave run on the 172.16.1.0/24 network.</para>
+        <programlisting>
+# mysql -u root
+mysql> create user 'cloud-repl'@'172.16.1.%' identified by 'password';
+mysql> grant replication slave on *.* TO 'cloud-repl'@'172.16.1.%';
+mysql> flush privileges;
+mysql> flush tables with read lock;
+        </programlisting>
+    </listitem>
+    <listitem><para>Leave the current MySQL session running.</para></listitem>
+    <listitem><para>In a new shell start a second MySQL session.</para></listitem>
+    <listitem>
+        <para>Retrieve the current position of the database.</para>
+        <programlisting>
+# mysql -u root
+mysql> show master status;
++------------------+----------+--------------+------------------+
+| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
++------------------+----------+--------------+------------------+
+| mysql-bin.000001 |      412 |              |                  |
++------------------+----------+--------------+------------------+
+        </programlisting>
+    </listitem>
+    <listitem><para>Note the file and the position that are returned by your instance.</para></listitem>
+    <listitem><para>Exit from this session.</para></listitem>
+    <listitem>
+        <para>Complete the master setup. Returning to your first session on the master, release the locks and exit MySQL.</para>
+        <programlisting>
+mysql> unlock tables;
+        </programlisting>
+    </listitem>
+    <listitem>
+        <para>Install and configure the slave. On the slave server, run the following commands.</para>
+        <programlisting>
+# yum install mysql-server
+# chkconfig mysqld on
+        </programlisting>
+    </listitem>
+    <listitem>
+        <para>Edit my.cnf and add the following lines in the [mysqld] section below datadir.</para>
+        <programlisting>
+server_id=2
+innodb_rollback_on_timeout=1
+innodb_lock_wait_timeout=600
+        </programlisting>
+    </listitem>
+    <listitem>
+        <para>Restart MySQL.</para>
+        <programlisting>
+# service mysqld restart
+        </programlisting>
+    </listitem>
+    <listitem>
+        <para>Instruct the slave to connect to and replicate from the master. Replace the IP address, password, log file, and position with the values you have used in the previous steps.</para>
+        <programlisting>
+mysql> change master to
+    -> master_host='172.16.1.217',
+    -> master_user='cloud-repl',
+    -> master_password='password',
+    -> master_log_file='mysql-bin.000001',
+    -> master_log_pos=412;
+        </programlisting>
+    </listitem>
+    <listitem>
+        <para>Then start replication on the slave.</para>
+        <programlisting>
+mysql> start slave;
+        </programlisting>
+    </listitem>
+    <listitem>
+        <para>Optionally, open port 3306 on the slave as was done on the master earlier.</para>
+        <para>This is not required for replication to work. But if you choose not to do this, you will need to do it when failover to the replica occurs.</para>
+    </listitem>
+    </orderedlist>
+    <section id="database-failover">
+    <title>Failover</title>
+    <para>This will provide for a replicated database that can be used to implement manual failover for the Management Servers. &PRODUCT; failover from one MySQL instance to another is performed by the administrator. In the event of a database failure you should:</para>
+    <orderedlist>
+        <listitem><para>Stop the Management Servers (via service cloud-management stop).</para></listitem>
+        <listitem><para>Change the replica's configuration to be a master and restart it.</para></listitem>
+        <listitem><para>Ensure that the replica's port 3306 is open to the Management Servers.</para></listitem>
+        <listitem><para>Make a change so that the Management Server uses the new database. The simplest process here is to put the IP address of the new database server into each Management Server's /etc/cloud/management/db.properties.</para></listitem>
+        <listitem>
+        <para>Restart the Management Servers:</para>
+        <programlisting>
+# service cloud-management start
+        </programlisting>
+        </listitem>
+    </orderedlist>
+    </section>
+</section>

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/ddca8059/docs/en-US/install-usage-server.xml
----------------------------------------------------------------------
diff --git a/docs/en-US/install-usage-server.xml b/docs/en-US/install-usage-server.xml
new file mode 100644
index 0000000..9dde552
--- /dev/null
+++ b/docs/en-US/install-usage-server.xml
@@ -0,0 +1,61 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+<!ENTITY % BOOK_ENTITIES SYSTEM "cloudstack.ent">
+%BOOK_ENTITIES;
+]>
+
+<!-- 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.
+-->
+
+<section id="install-usage-server">
+    <title>Installing the Usage Server (Optional)</title>
+    <para>You can optionally install the Usage Server once the Management Server is configured properly. The Usage Server takes data from the events in the system and enables usage-based billing for accounts.</para>
+    <para>When multiple Management Servers are present, the Usage Server may be installed on any number of them. The Usage Servers will coordinate usage processing. A site that is concerned about availability should install Usage Servers on at least two Management Servers.</para>
+    <section id="requirements-install-usage-server">
+    <title>Requirements for Installing the Usage Server</title>
+    <itemizedlist>
+        <listitem><para>The Management Server must be running when the Usage Server is installed.</para></listitem>
+        <listitem><para>The Usage Server must be installed on the same server as a Management Server.</para></listitem>
+    </itemizedlist>
+    </section>
+    <section id="steps-install-usage-server">
+    <title>Steps to Install the Usage Server</title>
+    <orderedlist>
+        <listitem>
+        <para>Run ./install.sh.</para>
+        <programlisting>
+# ./install.sh
+        </programlisting>
+        <para>You should see a few messages as the installer prepares, followed by a list of choices.</para>
+        </listitem>
+        <listitem>
+        <para>Choose "S" to install the Usage Server.</para>
+        <programlisting>
+   > S
+        </programlisting>
+        </listitem>
+        <listitem>
+        <para>Once installed, start the Usage Server with the following command.</para>
+        <programlisting>
+# service cloud-usage start
+        </programlisting>
+        </listitem>
+    </orderedlist>
+    <para>The Administration Guide discusses further configuration of the Usage Server.</para>
+    </section>
+</section>

http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/ddca8059/docs/en-US/ssl.xml
----------------------------------------------------------------------
diff --git a/docs/en-US/ssl.xml b/docs/en-US/ssl.xml
new file mode 100644
index 0000000..9aeb2f9
--- /dev/null
+++ b/docs/en-US/ssl.xml
@@ -0,0 +1,29 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+<!ENTITY % BOOK_ENTITIES SYSTEM "cloudstack.ent">
+%BOOK_ENTITIES;
+]>
+
+<!-- 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.
+-->
+
+<section id="ssl">
+    <title>SSL (Optional)</title>
+    <para>&PRODUCT; provides HTTP access in its default installation. There are a number of technologies and sites which choose to implement SSL. As a result, we have left &PRODUCT; to expose HTTP under the assumption that a site will implement its typical practice.</para>
+    <para>&PRODUCT; uses Tomcat as its servlet container. For sites that would like &PRODUCT; to terminate the SSL session, Tomcat’s SSL access may be enabled. Tomcat SSL configuration is described at http://tomcat.apache.org/tomcat-6.0-doc/ssl-howto.html.</para>
+</section>