Skip to content

Instantly share code, notes, and snippets.

@n1zyy
Created March 28, 2014 17:47
Show Gist options
  • Save n1zyy/9838658 to your computer and use it in GitHub Desktop.
Save n1zyy/9838658 to your computer and use it in GitHub Desktop.
Testing Ironic IPMI serial-over-LAN

Setup

  • Make sure ipmitool and shellinabox are installed. That seems obvious, but I forgot to install ipmitool on the Ironic server I used for testing and it took me a bit to figure out.
  • After applying https://review.openstack.org/#/c/64100/ you'll need to restart ironic-api and ironic-conductor. I didn't see them as system services, so I just kill'ed the process and restarted it each time.
  • Register a node with ironic node-create as usual, but specifying these additional parameters
  • ipmi_terminal_port
  • ipmi_username
  • ipmi_address
  • ipmi_password
  • Do all the other normal setup
  • Check that ironic node-validate $NODE includes console: True

Setup

  • Deploy as normal
  • Start the console like so:
curl -X PUT -H 'Content-Type: application/json' -H 'Accept: application/json' \
  -H "X-Auth-Token: $TOKEN" -d '{"enabled": "true"}' \
  http://127.0.0.1:6385/v1/nodes/$NODE/states/console

You can get $TOKEN by running something like ironic node-list --debug and copying the enormous token. (Aside: isn't this basically a replay attack? Or do we not try to protect against that?)

Then, you should be able to access http://$ironic_host:4200/ and view a console session.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment