• Sales: 1-800-961-2888
  • Support: 1-800-961-4454

Installing Rackspace Private Cloud Software


NOTE: This documentation is for the Rackspace Private Cloud Software v. 3.0 with OpenCenter. Other v. 3.0 documentation can be found on the Archived Versions page. Documentation for the newest version of Rackspace Private Cloud Software can be found in the Getting Started section.

 


This section discusses the process for installing Rackspace Private Cloud Software and using OpenCenter to deploy an OpenStack cluster. It also discusses how to configure the cluster for HA, create availability zones, and evacuate a host.

Prepare the Nodes
Install OpenCenter Server, Agent, and User Interface
Install OpenCenter Server
Install the OpenCenter User Interface
Install OpenCenter Agent
Verify Environment
Access the Operator GUI
Container Actions
Node Actions
Create Chef Server
Create a Nova Cluster
Upload Glance Images
Configure Cluster for High Availability
Create Additional Availability Zones
Evacuating a Host
Troubleshooting the Installation

Prepare the Nodes

Each node in the OpenCenter environment must have Ubuntu 12.04, CentOS 6.3, or RHEL 6.3 or 6.4 installed.

Before you begin, ensure that the OS is up to date on the devices. Log into each device and run the appropriate update for the OS and the package manager.

Install OpenCenter Server, Agent, and User Interface

Your OpenCenter environment must have an OpenCenter server and have the OpenCenter agent installed on every node that will be managed by the server, and you must install the GUI component to manage the environment through the GUI. You must install the server first. Agent installations in the environment will ping the server and indicate that they are available for further configuration.

Instead of the ISO that was used in previous versions, installation is now performed via a curl command that launches an installation script. The script downloads the packages from packages.opencenter.rackspace.com and uses the packages to install the OpenCenter components.

Install OpenCenter Server

Execute the following curl command on the device that will become the OpenCenter server:

$ curl -s -L http://sh.opencenter.rackspace.com/install.sh | \
sudo bash -s - --role=server

When the installation is complete, you will receive a confirmation message indicating that OpenCenter server has been installed correctly.

You will also receive a message notifying you of where you can find the default server admin user name and password, which you will use to log into the dashboard and set the endpoint environment variable in the CLI. If you need to change the username and password, you will also need to edit the agent endpoint with the new username and password.

Before you can use the CLI, you must set the OPENCENTER_ENDPOINT variable in your environment. You will need the admin username and password from the server installation. Run the following command:

$ export OPENCENTER_ENDPOINT=https://<admin>:<password>@localhost:8443

At this time you can run the opencentercli node list command to view the current node configuration.

$ opencentercli node list
id |name          |task |adventure |attrs |facts                         |
---|--------------|-----|----------|------|------------------------------|
1  |workspace     |None |None      |{}    |{u'backends': [u'container... |
2  |unprovisioned |None |None      |{}    |{u'parent_id': 1, u'backen... |
3  |support       |None |None      |{}    |{u'parent_id': 1, u'backen... |
4 |oc-server |None |None |{} |{u'parent_id': 1, u'backen... |

By default, the OpenCenter server is created with three nodes:

  • workspace: The "master" parent container for the OpenCenter environment.
  • unprovisioned: The parent container for all nodes that have the OpenCenter agent installed, but that have not been assigned a role yet.
  • support: The parent container for all nodes that are used to maintain the OpenCenter environment infrastructure and for external resources. The Chef server is automatically assigned to the support node as soon as it is configured.
  • oc-server: In this example, this is the name of the OpenCenter server, which also counts as a node within the environment.

You will need the IP address of the OpenCenter server to proceed with the installation of the OpenCenter agent. This can be obtained with the ifconfig command.

Install the OpenCenter User Interface

You can install the OpenCenter GUI on any device from which you want to manage your environment, but first you should install it on the server node. When the OpenCenter server installation is complete, execute the following curl command on the server node:

$ curl -s -L http://sh.opencenter.rackspace.com/install.sh | \
sudo bash -s - --role=dashboard --ip=<OpenCenter-server-IP>

You can now use your web browser to access the OpenCenter GUI via the IP address of the device on which you installed the GUI. For example, if you installed it on a server with the IP address 192.0.2.0, you would access the GUI via browser at https://192.0.2.0:443. Log in with the username and password from the server installation.

Install OpenCenter Agent

Run the following curl command on each node that will be managed with OpenCenter:

$ curl -s -L http://sh.opencenter.rackspace.com/install.sh | \
    sudo bash -s - --role=agent --ip=<OpenCenter-server-IP>

When the installation is complete, you will receive a confirmation message indicating that OpenCenter agent has been installed correctly.

You will receive a message notifying you of the current agent endpoint settings, incorporating the username and password from the server installation. You will need to change these settings if you change the OpenCenter admin username and password.

Repeat this process on each node.

NOTE: The agent is installed on the server node as part of the server node installation process.

Verify Environment

After the agent has been installed on each managed server, you can verify the environment either via GUI or the CLI. To view the GUI, simply use your web browser to access the GUI as described in "Install the OpenCenter User Interface".

To use the CLI. run the opencentercli node list command on the OpenCenter server to view the OpenCenter environment. The newly configured nodes will appear in the list. The node names are the names that were assigned when you originally installed and configured the operating system on those nodes.

$ opencentercli node list
id |name          |task |adventure |attrs |facts              |
---|--------------|-----|----------|------|-------------------|
1  |workspace     |None |None      |{...} |{u'backends': ...  |
2  |unprovisioned |None |None      |{...} |{u'parent_id': ... |
3  |support       |None |None      |{...} |{u'parent_id': ... |
4  |chef-server   |None |None      |{...} |{u'parent_id': ... |
5  |controller    |None |None      |{...} |{u'parent_id': ... |
6  |compute       |None |None      |{...} |{u'parent_id': ... |

Access the Operator GUI

When you first log into the GUI, you will see a collection of available nodes, as well as the OpenCenter server in the Service Nodes container. Your environment is now ready for configuration. By clicking on the cog icon next to a section or node name, you can perform the actions available to that node.

The following table describes the features and containers of the operator GUI.

Feature/Container Description
Workspace
  • The overview of the OpenCenter environment.
Available Nodes
  • Each node on which the OpenCenter agent has been installed but which has not been configured will appear in this section.
Service Nodes
  • Contains the nodes that manage the environment.
  • The OpenCenter server will be included in this container. Do not attempt to move it out of this container.
  • When the Chef server is created, it will be added to this section.
NovaCluster
  • Does not appear until after you have created a Chef server and created a Nova cluster.
  • NovaCluster is the default name; you can edit it when you create the cluster.
  • When created, contains two sub-containers:
    • An Infrastructure container, where the Controller node is located.
    • A Compute container, where the availability zones and Compute nodes are located.

Container Actions

The following table lists the actions (also known as adventures) available in each container in the OpenCenter GUI. The actions are accessed by clicking on the container's cog icon. Some actions may not be available under certain circumstances, as when an OpenCenter environment is newly created, and some are reserved for future use.

Container Available Actions
Workspace
  • Create Nova Cluster: Prompts you to enter your network information and creates a Nova cluster container. Unless you specify another name, the default name is NovaCluster.
Available Nodes
  • No actions currently available.
Service Nodes
  • No actions currently available.
NovaCluster
  • No actions currently available.
Infrastructure
  • Enable HA Infrastructure: Prompts you to enter the IP addresses that are required to configure High Availability for the Controller.
Compute
  • Create Availability Zone: Creates a new availability zone.
Availability Zone
  • No actions currently available.

Node Actions

The following table lists the actions available in each type of node in the OpenCenter GUI. The actions are accessed by clicking on the node's cog icon. Some actions may not be available under certain circumstances, and some are reserved for future use.

Node Available Actions
Available nodes
  • Install Chef Server: Installs a Chef server on the node. Only available when no Chef server is present in the environment.
  • Update Agent: Updates the OpenCenter agent software.
Chef server
  • Download Chef Cookbooks: Downloads the latest Rackspace Private Cloud Software Chef cookbooks.
  • Subscribe Cookbook Channel: Reserved for future use.
  • Update Agent: Updates the OpenCenter agent software.
opencenter
  • Install Chef Server: Do not use.
  • Update Server: Updates the OpenCenter server software.
  • Update Agent: Updates the OpenCenter Agent software.
Controller node
  • Update Agent: Updates the OpenCenter Agent software.
  • Update Initial Glance Images: Uploads a set of Rackspace-defined images to Glance.
Compute node
  • Update Agent: Updates the OpenCenter Agent software.
  • Evacuate Host: Moves all hosts on the Compute node to another Compute node in the same availability zone. The evacuated node will be returned to the Available Nodes container.
  • Disable/Enable Scheduling On This Host: Disables or enables the nova-scheduler service on this node.

Create Chef Server

The first node that you will create is a Chef server, which is required to manage the OpenStack nodes. Do not create more than one Chef server in your environment.

Follow these steps to use OpenCenter to create a Chef server.

  1. Select an available node and click on the cog icon.
  2. In the drop-down menu that appears, select Install Chef Server.

    The Chef server installation will take about five minutes. In the Tasks pane (hidden by default at the bottom of the UI) system will stream a log to show the status of the installation, and you can also monitor the progress by logging into the node and using the tail -f command to monitor /var/log/opencenter/trans_N.log.

    When the installation is complete, the new Chef server will appear in the Service Nodes group.

You can also view the Chef server management console in your browser at https://chef-server-ip-address. Most users will not need to use this feature, but in the event that you do, refer to the Opscode Chef Management Console documentation for more information about the management console.

At any time, you can download the latest cookbooks, but this is done automatically during the installation process. If in the future you want to ensure that you have the latest cookbooks, follow this procedure.

  1. Click on the cog icon on the Chef server node.
  2. In the drop-down menu that appears, select Download Chef Cookbooks.

    The Chef server will download the latest cookbooks. You can monitor the progress by logging into the node and using the tail -f command to monitor /var/log/opencenter/trans_N.log.

Note: The Subscribe Cookbook Channel option is reserved for future use.

Create a Nova Cluster

To use OpenStack in your environment, you need to create a Nova cluster and move one or more available nodes into the cluster.

  1. At the top of the Workspace, click on the cog icon. In the drop-down menu that appears, select Create Nova Cluster.
  2. In the dialog box, enter your network environment information:
    • The Nova public network in CIDR format.
    • The Nova public network interface (such as eth0).
    • The Nova VM network bridge (such as br100).
    • Optional NAT exclusion CIDR range or ranges for networks configured with a DMZ,
    • The name of the Nova cluster.
    • A password for an admin OpenStack user.
    • Nova management network address in CIDR format.
    • The interface of the VM network for the Compute notes (such as eth1).
    • The name of the default availability zone.
    • The VM network CIDR range.
    • The Nova internal network CIDR range that you want to assign to each Controller and Compute node.

    The OpenCenter server will run for a few minutes. When the process is complete, the Nova cluster container will appear in the workspace. It will include an Infrastructure container, a Compute container, and an AZ Nova (availability zone) container.

  3. Select and drag an available node into the Infrastructure container.

    OpenCenter installs Chef client on the node and then runs Chef to apply the ha-controller1 role to the node. This role ensures that Nova infrastructure services are deployed, including mysql, Horizon, and rabbitmq. This process takes about 10-15 minutes.

    In the Tasks pane (hidden by default at the bottom of the UI) system will stream a log to show the status of the installation, and you can also monitor the progress by logging into the node and using the tail -f command to monitor /var/log/opencenter/trans_N.log.

  4. When the Controller deployment is complete, you can drag another available node into the AZ Nova container.

    OpenCenter installs Chef client on the node and then runs Chef to apply the single-compute role to the node. This process takes about 5-10 minutes.

Generally a Nova cluster will have one Controller and one or more Compute nodes. However, you may want to configure more Controllers for high availability or scalability.

Upload Glance Images

To upload a set of disk images to Glance, click on the cog for the Controller node and select Upload Glance Images.

Configure Cluster for High Availability

You can configure more than one Controller for high availability by adding a second Controller node to the Nova cluster. Follow these steps to configure the cluster for High Availability.

  1. Create Nova cluster.
  2. Drag first infrastructure node into Infrastructure Container.
  3. Click on the cog icon in the Infrastructure container and select Enable HA Infrastructure. You will be prompted to enter three IP addresses which must be part of the Nova public network range:
    • Nova API VIP: the failover that all OpenStack APIs will listen to
    • MySQL VIP: the failover IP that MySQL will listen to
    • RabbitMQ VIP: the failover ip that RabbitMQ will listen to
  4. Drag second infrastructure node into Infrastructure Container. OpenCenter will apply the appropriate roles enabling HA to the original Controller and to the new node.

Create Additional Availability Zones

To create another availability zone, click on the cog for the Compute container and select Create Availability Zone. You will be prompted to provide a name for the new zone. It takes a few minutes for the system to create the new zone; when it is ready, you can drag available nodes to the new availability zone to create more Compute nodes within it.

Evacuating a Host

OpenCenter enables you to evacuate Compute nodes, a process in which all instances hosted on a node will be moved to another node in the same availability zones and the node itself will be returned to an available state. To evacuate a host, click on the cog next to its name in the Compute/Availability Zone container and select Evacuate Host.

Troubleshooting the Installation

If the installation is unsuccessful, it may be due to one of the following issues.

  • The node does not have access to the Internet. The installation process requires Internet access to download installation files, so ensure that the address for the nodes provides that access and that the proxy information that you entered is correct. You should also ensure that the nodes have access to a DNS server.
  • Your network firewall is preventing Internet access. Ensure the IP address that you assign to the Controller is available through the network firewall.

For more troubleshooting information and user discussion, you can also inquire at the Rackspace Private Cloud Support Forum at the following URL:

https://privatecloudforums.rackspace.com







© 2011-2013 Rackspace US, Inc.

Except where otherwise noted, content on this site is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License


See license specifics and DISCLAIMER