Installing and Configuring OpenStack (Juno) in Oracle® Solaris

Exit Print View

Updated: June 2016
 
 

How to Deploy Bare Metal From a UAR File

For a concrete example that uses the following steps, see Example 6.

Before You Begin

Ensure that the UAR file to use already exists.

  1. Create the following variables to facilitate the use of the Ironic command line utility.
    • IP - the IP address used to connect to the nodes' ILOM.

    • USER - typically, the user is root.

    • PASS - the root password.

    • HOST_MAC - the system's MAC address.

  2. Create the Ironic node.
    # ironic node-create options

    The properties of the new node are displayed, including the node's UUID.

  3. Create a variable for the node's UUID for easy reference.
  4. Update the node by specifying the UAR location to install.
    # ironic node-update options
  5. Create an associated port for this node.
    # ironic port-create options
  6. (Optional) Validate the fields you specified for the node.
    # ironic node-validate options
  7. Provision the node.
    # ironic node-set-provision-state options
  8. (Optional) Display the status of the deployment.
    # ironic node-show options

    Note -  The output would be different if you run the command while provisioning is ongoing than after the completion of the process.
Example 6  Deploying a Node Using a UAR File

This example assumes the following:

  • The basics of the machine to host the node

    • Host name: mynewnode.example.com

    • Architecture: x86

    • IP address: 1.1.1.1

    • MAC address: 01:02:03:04:05:06

  • The basics of the ILOM Host:

    • Host name: mynewnode-aa.example.com

    • IP address: 2.2.2.2

    • User: root

    • Password: password

  • Name of UAR file: myuar.server/sol11-3-x86.uar

# export ILOM_IP=2.2.2.2
# export ILOM_USER=root
# export ILOM_PASS=password
# export HOST_MAC=01:02:03:04:05:06

# ironic node-create -d solaris -i ipmi_address=$ILOM_IP \
   -i ipmi_username=$ILOM_USER -i ipmi_password=$ILOM_PASS
+--------------+----------------------------------------------------------+Node is created
| Property     | Value                                                    |
+--------------+----------------------------------------------------------+
| uuid         | 4eacbfde-4977-4d8c-8043-8cbe8f876187                     |
| driver_info  | {u'ipmi_address': u'2.2.2.2', u'ipmi_username': u'root', |
|              | u'ipmi_password': u'password'}                           |
| extra        | {}                                                       |
| driver       | solaris                                                  |
| chassis_uuid | None                                                     |
| properties   | {}                                                       |
+--------------+----------------------------------------------------------+

# export NODE=4eacbfde-4977-4d8c-8043-8cbe8f876187UUID is saved

# ironic node-update $NODE \
   add driver_info/archive_uri=http://myuar.server/sol11-3-x86.uar
+------------------------+-----------------------------------------------------------+
| Property               | Value                                                     |
+------------------------+-----------------------------------------------------------+
| instance_uuid          | None                                                      |
| target_power_state     | None                                                      |
| properties             | {}                                                        |
| maintenance            | False                                                     |
| driver_info            | {u'archive_uri': u'http://myuar.server/sol11-3-x86.uar',  |
|                        | u'ipmi_address': u'2.2.2.2', u'ipmi_username': u'root',   |
|                        | u'ipmi_password': u'password'}                            |
| extra                  | {}                                                        |
| last_error             | None                                                      |
| created_at             | 2014-10-03T15:38:43+00:00                                 |
| target_provision_state | None                                                      |
| driver                 | solaris                                                   |
| updated_at             | 2014-10-03T15:53:04+00:00                                 |
| instance_info          |                                                           |
| chassis_uuid           | None                                                      |
| provision_state        | None                                                      |
| reservation            | None                                                      |
| power_state            | None                                                      |
| console_enabled        | False                                                     |
| uuid                   | 4eacbfde-4977-4d8c-8043-8cbe8f876187                      |
+------------------------+-----------------------------------------------------------+

# ironic port-create -n $NODE -a $HOST_MAC
+-----------+--------------------------------------+
| Property  | Value                                |
+-----------+--------------------------------------+
| node_uuid | 4eacbfde-4977-4d8c-8043-8cbe8f876187 |
| extra     | {}                                   |
| uuid      | 4c765ab0-2529-4463-a51b-e5544dd15a32 |
| address   | 01:02:03:04:05:06                    |
+-----------+--------------------------------------+

# ironic node-validate $NODE
+------------+--------+---------------+
| Interface  | Result | Reason        |
+------------+--------+---------------+
| console    | None   | not supported |
| deploy     | True   |               |
| management | True   |               |
| power      | True   |               |
+------------+--------+---------------+

# ironic node-set-provision-state $NODE activeNode is provisioned

# ironic node-show $NODE
+------------------------+----------------------------------------------------------+
| Property               | Value                                                    |
+------------------------+----------------------------------------------------------+
|instance_uuid           | None                                                     |
|target_power_state      | None                                                     |
|properties              | {}                                                       |
|maintenance             | False                                                    |
|driver_info             | {u'archive_uri': u'http://myuar.server/sol11-3-x86.uar', |
|                        | u'ipmi_address': u'2.2.2.2', u'ipmi_username': u'root',  |
|                        | u'ipmi_password': u'password'}                           |
|extra                   | {}                                                       |
|last_error              | None                                                     |
|created_at              | 2014-10-03T15:38:43+00:00                                |
|target_provision_state  | deploy_complete                                          |
|driver                  | solaris                                                  |
|updated_at              | 2014-10-03T15:53:04+00:00                                |
|instance_info           |                                                          |
|chassis_uuid            | None                                                     |
|provision_state         | active                                                   |
|reservation             | None                                                     |
|power_state             | power on                                                 |
|console_enabled         | False                                                    |
|uuid                    | 4eacbfde-4977-4d8c-8043-8cbe8f876187                     |
+------------------------+----------------------------------------------------------+

If you issued the ironic node-show command while provisioning is ongoing, the provision_state would indicate a different status instead of active.