mirror of
				https://github.com/apache/cloudstack.git
				synced 2025-11-04 00:02:37 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			152 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			152 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
<?xml version='1.0' encoding='utf-8' ?>
 | 
						|
<!DOCTYPE section 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="region-add">
 | 
						|
  <title>Adding Regions (optional)</title>
 | 
						|
    <para>Grouping your cloud resources into geographic regions is an optional step when provisioning the cloud.
 | 
						|
        For an overview of regions, see <xref linkend="about-regions"/>.</para>
 | 
						|
    <section id="region-first">
 | 
						|
        <title>The First Region: The Default Region</title>
 | 
						|
    <para>If you do not take action to define regions, then all the zones in your cloud will be
 | 
						|
            automatically grouped into a single default region. This region is assigned the region
 | 
						|
            ID of 1. You can change the name or URL of the default region by displaying the region in
 | 
						|
            the &PRODUCT; UI and clicking the Edit button.</para>
 | 
						|
    </section>
 | 
						|
    <section id="region-add-2">
 | 
						|
        <title>Adding a Region</title>
 | 
						|
        <para>Use these steps to add a second region in addition to the default region.</para>
 | 
						|
  <orderedlist>
 | 
						|
      <listitem><para>Each region has its own &PRODUCT; instance. Therefore, the first step of creating a new region
 | 
						|
                    is to install the Management Server software, on one or more nodes, in the
 | 
						|
                    geographic area where you want to set up the new region. Use the steps in the
 | 
						|
                    Installation guide. When you come to the step where you set up the database, use
 | 
						|
                    the additional command-line flag <code>-r <region_id></code> to set a
 | 
						|
          region ID for the new region. The default region is automatically assigned a
 | 
						|
          region ID of 1, so your first additional region might be region 2.</para>
 | 
						|
          <programlisting>cloudstack-setup-databases cloud:<dbpassword>@localhost --deploy-as=root:<password> -e <encryption_type> -m <management_server_key> -k <database_key> -r <region_id></programlisting>
 | 
						|
      </listitem>
 | 
						|
      <listitem><para>By the end of the installation procedure, the Management Server should have been started. Be sure that the Management Server installation was successful and complete.</para></listitem>
 | 
						|
      <listitem><para>Now add the new region to region 1 in &PRODUCT;.</para>
 | 
						|
          <orderedlist numeration="loweralpha">
 | 
						|
              <listitem><para>Log in to &PRODUCT; in the first region as root administrator
 | 
						|
                  (that is, log in to <region.1.IP.address>:8080/client).</para></listitem>
 | 
						|
              <listitem><para>In the left navigation bar, click Regions.</para></listitem>
 | 
						|
              <listitem><para>Click Add Region. In the dialog, fill in the following fields:</para>
 | 
						|
                  <itemizedlist>
 | 
						|
                      <listitem><para>ID. A unique identifying number. Use the same number
 | 
						|
                          you set in the database during Management Server installation in the new region;
 | 
						|
                          for example, 2.</para></listitem>
 | 
						|
                      <listitem><para>Name. Give the new region a descriptive name.</para></listitem>
 | 
						|
                      <listitem><para>Endpoint. The URL where you can log in to the Management Server in the new region.
 | 
						|
                          This has the format <region.2.IP.address>:8080/client.</para></listitem>
 | 
						|
                  </itemizedlist>
 | 
						|
              </listitem>
 | 
						|
          </orderedlist>
 | 
						|
      </listitem>
 | 
						|
      <listitem><para>Now perform the same procedure in reverse. Log in to region 2, and add region 1.</para></listitem>
 | 
						|
      <listitem><para>Copy the account, user, and domain tables from the region 1 database to the region 2 database.</para>
 | 
						|
          <para>In the following commands, it is assumed that you have set the root password on the
 | 
						|
              database, which is a &PRODUCT; recommended best practice. Substitute your own MySQL
 | 
						|
              root password.</para>
 | 
						|
          <orderedlist numeration="loweralpha">
 | 
						|
              <listitem><para>First, run this command to copy the contents of the database:</para>
 | 
						|
                <programlisting># mysqldump -u root -p<mysql_password> -h <region1_db_host> cloud account user domain > region1.sql</programlisting>
 | 
						|
              </listitem>
 | 
						|
              <listitem><para>Then run this command to put the data onto the region 2 database:</para>
 | 
						|
                <programlisting># mysql -u root -p<mysql_password> -h <region2_db_host> cloud < region1.sql</programlisting>
 | 
						|
              </listitem>
 | 
						|
          </orderedlist>
 | 
						|
      </listitem>
 | 
						|
      <listitem><para>Remove project accounts. Run these commands on the region 2 database:</para>
 | 
						|
          <programlisting>mysql> delete from account where type = 5;</programlisting>
 | 
						|
      </listitem>
 | 
						|
      <listitem><para>Set the default zone as null:</para>
 | 
						|
          <programlisting>mysql> update account set default_zone_id = null;</programlisting>
 | 
						|
      </listitem>
 | 
						|
      <listitem><para>Restart the Management Servers in region 2.</para></listitem>
 | 
						|
  </orderedlist>
 | 
						|
    </section>
 | 
						|
    <section id="region-add-n">
 | 
						|
        <title>Adding Third and Subsequent Regions</title>
 | 
						|
        <para>To add the third region, and subsequent additional regions, the steps are similar to those for adding the second region.
 | 
						|
            However, you must repeat certain steps additional times for each additional region:</para>
 | 
						|
        <orderedlist>
 | 
						|
            <listitem><para>Install &PRODUCT; in each additional region. Set the region ID for each region during the database setup step.</para>
 | 
						|
                <programlisting>cloudstack-setup-databases cloud:<dbpassword>@localhost --deploy-as=root:<password> -e <encryption_type> -m <management_server_key> -k <database_key> -r <region_id></programlisting></listitem>
 | 
						|
            <listitem><para>Once the Management Server is running, add your new region to all existing regions by
 | 
						|
                    repeatedly using the Add Region button in the UI. For example, if you were adding
 | 
						|
                    region 3:</para>
 | 
						|
                <orderedlist numeration="loweralpha">
 | 
						|
                    <listitem><para>Log in to &PRODUCT; in the first region as root administrator
 | 
						|
                        (that is, log in to <region.1.IP.address>:8080/client), and add a region with ID 3, the name of region 3, and the endpoint <region.3.IP.address>:8080/client.</para></listitem>
 | 
						|
                    <listitem><para>Log in to &PRODUCT; in the second region as root administrator (that is, log in to <region.2.IP.address>:8080/client), and add a region with ID 3, the name of region 3, and the endpoint <region.3.IP.address>:8080/client.</para></listitem>
 | 
						|
                </orderedlist>
 | 
						|
            </listitem>
 | 
						|
            <listitem><para>Repeat the procedure in reverse to add all existing regions to the new region. For example,
 | 
						|
                    for the third region, add the other two existing regions:</para>
 | 
						|
                <orderedlist numeration="loweralpha">
 | 
						|
                    <listitem><para>Log in to &PRODUCT; in the third region as root administrator
 | 
						|
                        (that is, log in to <region.3.IP.address>:8080/client).</para></listitem>
 | 
						|
                    <listitem><para>Add a region with ID 1, the name of region 1, and the endpoint <region.1.IP.address>:8080/client.</para></listitem>
 | 
						|
                    <listitem><para>Add a region with ID 2, the name of region 2, and the endpoint <region.2.IP.address>:8080/client.</para></listitem>
 | 
						|
                </orderedlist>
 | 
						|
            </listitem>
 | 
						|
            <listitem><para>Copy the account, user, and domain tables from any existing region's database to the new
 | 
						|
                    region's database.</para>
 | 
						|
                <para>In the following commands, it is assumed that you have set the root password on the
 | 
						|
                    database, which is a &PRODUCT; recommended best practice. Substitute your own MySQL
 | 
						|
                    root password.</para>
 | 
						|
                <orderedlist numeration="loweralpha">
 | 
						|
                    <listitem><para>First, run this command to copy the contents of the database:</para>
 | 
						|
                        <programlisting># mysqldump -u root -p<mysql_password> -h <region1_db_host> cloud account user domain > region1.sql</programlisting>
 | 
						|
                    </listitem>
 | 
						|
                    <listitem><para>Then run this command to put the data onto the new region's database. For example, for region
 | 
						|
                            3:</para>
 | 
						|
                        <programlisting># mysql -u root -p<mysql_password> -h <region3_db_host> cloud < region1.sql</programlisting>
 | 
						|
                    </listitem>
 | 
						|
                </orderedlist>
 | 
						|
            </listitem>
 | 
						|
            <listitem><para>Remove project accounts. Run these commands on the region 3 database:</para>
 | 
						|
                <programlisting>mysql> delete from account where type = 5;</programlisting>
 | 
						|
            </listitem>
 | 
						|
            <listitem><para>Set the default zone as null:</para>
 | 
						|
                <programlisting>mysql> update account set default_zone_id = null;</programlisting>
 | 
						|
            </listitem>
 | 
						|
            <listitem><para>Restart the Management Servers in the new region.</para></listitem>
 | 
						|
        </orderedlist>
 | 
						|
    </section>
 | 
						|
    <section id="region-delete">
 | 
						|
        <title>Deleting a Region</title>
 | 
						|
       <para>Log in to each of the other regions, navigate to the one you want to delete, and click Remove Region.
 | 
						|
            For example, to remove the third region in a 3-region cloud:</para>
 | 
						|
            <orderedlist>
 | 
						|
                <listitem><para>Log in to <region.1.IP.address>:8080/client.</para></listitem>
 | 
						|
                <listitem><para>In the left navigation bar, click Regions.</para></listitem>
 | 
						|
                <listitem><para>Click the name of the region you want to delete.</para></listitem>
 | 
						|
                <listitem><para>Click the Remove Region button.</para></listitem>
 | 
						|
                <listitem><para>Repeat these steps for <region.2.IP.address>:8080/client.</para></listitem>
 | 
						|
            </orderedlist>
 | 
						|
    </section>
 | 
						|
</section>
 |