Jump to: navigation, search

Difference between revisions of "Ironic/TripleO"

m (Using Ironic with TripleO)
(Using Ironic with TripleO)
Line 9: Line 9:
 
:* [http://docs.openstack.org/developer/tripleo-incubator/devtest.html Devtest-Doc]
 
:* [http://docs.openstack.org/developer/tripleo-incubator/devtest.html Devtest-Doc]
  
Check out this revision of TripleO:
+
Check out tripleo-incubator master.
  https://review.openstack.org/#/c/72969
 
  
 
Switch the undercloud to build with Ironic by doing:
 
Switch the undercloud to build with Ironic by doing:
Line 16: Line 15:
 
   export USE_IRONIC=1
 
   export USE_IRONIC=1
  
Then, follow TripleO's [http://docs.openstack.org/developer/tripleo-incubator/devtest.html Devtest-Doc] up to the [http://docs.openstack.org/developer/tripleo-incubator/devtest_undercloud.html devtest_undercloud] section.
+
Then, follow TripleO's [http://docs.openstack.org/developer/tripleo-incubator/devtest.html Devtest-Doc].
  
==== Register the Ironic service ====
+
After setup-baremetal is called in both the seed and undercloud stages you can use
 +
ironic node-list
  
In [http://docs.openstack.org/developer/tripleo-incubator/devtest_undercloud.html devtest_undercloud-walkthru's] step #10, nodes are registered to the undercloud's nova-baremetal and not Ironic. Instead of that, we'll create a 'baremetal' node and register it with ironic, via the undercloud.
+
to list nodes and
 
 
Allow Ironic's SSH driver to connect to your local machine:
 
ssh heat-admin@$UNDERCLOUD_IP "cat /opt/stack/boot-stack/ironic-ssh-power-key.pub" >> ~/.ssh/authorized_keys
 
 
 
Copy the Ironic API credentials to your local machine:
 
ssh heat-admin@$UNDERCLOUD_IP -- 'sudo cat /root/stackrc' > $TRIPLEO_ROOT/tripleo-incubator/ironicrc
 
sed -i "s/localhost/$UNDERCLOUD_IP/" $TRIPLEO_ROOT/tripleo-incubator/ironicrc
 
source $TRIPLEO_ROOT/tripleo-incubator/ironicrc
 
 
 
==== Create an emulated baremetal node ====
 
 
 
This will create a 'baremetal' node:
 
export UNDERCLOUD_MAC=$(create-nodes $NODE_CPU $NODE_MEM $NODE_DISK $NODE_ARCH 1)
 
 
 
Use the ''ironic'' client to enroll the baremetal node:
 
HOST_IP=$(ip addr show virbr0 | grep inet | awk '{print $2}' | sed 's/\/[0-9]*//')
 
CHASSIS=$(ironic chassis-create -d TestChassis | grep uuid | awk '{print $4}')
 
NODE=$(ironic node-create -c $CHASSIS -d pxe_ssh | grep ' uuid ' | awk '{print $4}')
 
ironic port-create -n $NODE -a $UNDERCLOUD_MAC
 
ironic node-update $NODE add \
 
  driver_info/ssh_virt_type=virsh \
 
  driver_info/ssh_address=$HOST_IP \
 
  driver_info/ssh_key_filename=/opt/stack/boot-stack/ironic-ssh-power-key \
 
  driver_info/ssh_username=$(whoami)
 
 
 
Confirm everything is enrolled and correct:
 
 
  ironic node-show $NODE
 
  ironic node-show $NODE
 +
to view nodes.
  
 
You can now control the power state of this node with this command:
 
You can now control the power state of this node with this command:
 
  ironic node-set-power-state $NODE [on|off|reboot]
 
  ironic node-set-power-state $NODE [on|off|reboot]

Revision as of 09:03, 31 March 2014

Using Ironic with TripleO

In this section, we will go over how to set up Ironic within the TripleO enviroment.

Note: TripleO is under rapid development and may invalidate this walk-through.

If not familiar with TripleO and / or have not used the DiskImage-Builder (DIB) tool before, please read and familiarize yourself with the TripleO story. Here are some good starting points:

Check out tripleo-incubator master.

Switch the undercloud to build with Ironic by doing:

 export USE_IRONIC=1

Then, follow TripleO's Devtest-Doc.

After setup-baremetal is called in both the seed and undercloud stages you can use

ironic node-list

to list nodes and

ironic node-show $NODE

to view nodes.

You can now control the power state of this node with this command:

ironic node-set-power-state $NODE [on|off|reboot]