Head Node Endpoints#

The ICE ClusterWare™ platform stores head nodes objects in the database to assist with management and maintenance.

Data Fields#

Head nodes have several fields:

uid
     Required: A unique ID usually configured via a file on disk (base.ini)

ssh_public
     Required: The SSH public key for this head node

description
     Optional: A text string with descriptive information

ca_pem
     Optional: A CA certificate

Additional Endpoints#

Several endpoints can be used to interact with the head nodes:

GET /heads/down
     Returns a JSON object with a list of all currently down head nodes

DELETE /heads/down
     Deletes any currently down head nodes, removing them from the cluster; returns a
     JSON object with a list of head nodes that were removed

GET /head/services
     Returns a list of all ClusterWare services and their current status (up or down).
     This endpoint does not require an authentication token, but requires that the
     connection come from another known head node

POST /head/services
     accepts a JSON object with “status” and “services” keys (both required); status
     must be a comma-separated list of: 'start', 'stop', 'restart', 'enable', 'disable',
     'reload'; and services must be a list of one or more head node services (e.g.
     from a call to GET /head/services).  This endpoint does not require an
     authentication token, but requires that the connection come from another known
     head node

GET /head/peerurl
     Returns a JSON object with the peer URL for attaching a new head to the cluster.
     This endpoint is public and does not require an authentication token

GET /head/files/unused
     Returns a list of all ClusterWare-managed files (images, ISOs, etc.) that are
     currently unused. This endpoint does not require an authentication token, but
     requires that the connection come from another known head node

DELETE  /head/files/unused
     Deletes any currently unused files, removing them from the cluster; returns a
     JSON object with a list of files that were removed. This endpoint does not require
     an authentication token, but requires that the connection come from another known
     head node

GET /database/clean
     Returns a JSON object with information about what a database “cleaning” would do
     (but does not perform the cleaning)

POST /database/clean
     Performs database cleaning on the head node and returns a JSON object with
     information about what was performed

POST /database/leave
     Requests that this head node leave the cluster.  This endpoint does not require
     an authentication token, but requires that the connection come from another known
     head node

Caution

This action may cause significant disruption to a running cluster; contact Penguin Solutions for additional information or assistance.