Skip to main content
A newer release of this product is available.

Add a node or nodes to a cluster

Contributors

POST /cluster/nodes

Introduced In: 9.6

Adds a node or nodes to the cluster.

Required properties

  • cluster_interface.ip.address

  • cluster add-node

  • network interface create

  • storage aggregate auto-provision

  • system node modify

  • system service-processor network modify

Parameters

Name Type In Required Description

create_recommended_aggregates

boolean

query

False

Creates aggregates based on an optimal layout recommended by the system.

  • Default value:

  • Introduced in: 9.7

return_timeout

integer

query

False

The number of seconds to allow the call to execute before returning. When doing a POST, PATCH, or DELETE operation on a single record, the default is 0 seconds. This means that if an asynchronous operation is started, the server immediately returns HTTP code 202 (Accepted) along with a link to the job. If a non-zero value is specified for POST, PATCH, or DELETE operations, ONTAP waits that length of time to see if the job completes so it can return something other than 202.

  • Default value: 1

  • Max value: 120

  • Min value: 0

return_records

boolean

query

False

The default is false. If set to true, the records are returned.

  • Default value:

Request Body

Name Type Description

_links

_links

cluster_interface

cluster_interface

The cluster network IP address of the node to be added.

cluster_interfaces

array[cluster_interfaces]

controller

controller

Controller information

date

string

The current or "wall clock" time of the node in ISO-8601 date, time, and time zone format. The ISO-8601 date and time are localized based on the ONTAP cluster's timezone setting.

  • example: 2019-04-17 11:49:26 -0400

  • format: date-time

  • readOnly: 1

  • Introduced in: 9.6

  • x-nullable: true

external_cache

external_cache

Cache used for buffer management.

ha

ha

hw_assist

hw_assist

The hardware assist information.

is_spares_low

boolean

Specifies whether or not the node is in spares low condition.

location

string

management_interface

management_interface

The management interface of the node to be added. The subnet mask is set based on the management interface of the cluster or the management interfaces of other nodes.

management_interfaces

array[management_interfaces]

membership

string

Possible values:

  • available - A node is detected on the internal cluster network and can be added to the cluster. Nodes that have a membership of "available" are not returned when a GET request is called when the cluster exists. Provide a query on the "membership" property for available to scan for nodes on the cluster network. Nodes that have a membership of "available" are returned automatically before a cluster is created.

  • joining - Joining nodes are in the process of being added to the cluster. The node might be progressing through the steps to become a member or might have failed. The job to add the node or create the cluster provides details on the current progress of the node.

  • member - Nodes that are members have successfully joined the cluster.

metric

metric

CPU performance for the nodes.

metrocluster

metrocluster

Metrocluster

model

string

name

string

nvram

nvram

owner

string

Owner of the node.

serial_number

string

service_processor

service_processor

snaplock

snaplock

SnapLock-related properties.

state

string

State of the node:

  • up - Node is up and operational.

  • booting - Node is booting up.

  • down - Node has stopped or is dumping core.

  • taken_over - Node has been taken over by its HA partner and is not yet waiting for giveback.

  • waiting_for_giveback - Node has been taken over by its HA partner and is waiting for the HA partner to giveback disks.

  • degraded - Node has one or more critical services offline.

  • unknown - Node or its HA partner cannot be contacted and there is no information on the node's state.

statistics

statistics

Raw CPU performance for the nodes.

storage_configuration

string

The storage configuration in the system. Possible values:

  • mixed_path

  • single_path

  • multi_path

  • quad_path

  • mixed_path_ha

  • single_path_ha

  • multi_path_ha

  • quad_path_ha

  • unknown

system_id

string

system_machine_type

string

OEM system machine type.

uptime

integer

The total time, in seconds, that the node has been up.

uuid

string

vendor_serial_number

string

OEM vendor serial number.

version

version

This returns the cluster version information. When the cluster has more than one node, the cluster version is equivalent to the lowest of generation, major, and minor versions on all nodes.

vm

vm

Example request
{
  "_links": {
    "self": {
      "href": "/api/resourcelink"
    }
  },
  "cluster_interface": {
    "ip": {
      "address": "10.10.10.7"
    }
  },
  "cluster_interfaces": [
    {
      "_links": {
        "self": {
          "href": "/api/resourcelink"
        }
      },
      "ip": {
        "address": "10.10.10.7"
      },
      "name": "lif1",
      "uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
    }
  ],
  "controller": {
    "board": "System Board XXVIII",
    "cpu": {
      "count": 20,
      "firmware_release": "string",
      "processor": "string"
    },
    "failed_fan": {
      "count": 1,
      "message": {
        "code": "111411207",
        "message": "There are no failed fans."
      }
    },
    "failed_power_supply": {
      "count": 1,
      "message": {
        "code": "111411208",
        "message": "There are no failed power supplies."
      }
    },
    "flash_cache": [
      {
        "capacity": 1024000000000,
        "device_id": 0,
        "firmware_file": "X9170_O000Z6300NVM",
        "firmware_version": "NA05",
        "hardware_revision": "A1",
        "model": "X1970A",
        "part_number": "119-00207",
        "serial_number": "A22P5061550000187",
        "slot": "6-1",
        "state": "string"
      }
    ],
    "frus": [
      {
        "id": "string",
        "state": "string",
        "type": "string"
      }
    ],
    "memory_size": 1024000000,
    "over_temperature": "string"
  },
  "date": "2019-04-17 11:49:26 -0400",
  "external_cache": {
    "is_enabled": 1,
    "is_hya_enabled": 1,
    "is_rewarm_enabled": 1
  },
  "ha": {
    "giveback": {
      "failure": {
        "code": 852126,
        "message": "Failed to initiate giveback. Run the \"storage failover show-giveback\" command for more information."
      },
      "state": "failed",
      "status": [
        {
          "aggregate": {
            "_links": {
              "self": {
                "href": "/api/resourcelink"
              }
            },
            "name": "aggr1",
            "uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
          },
          "error": {
            "code": "852126",
            "message": "string"
          },
          "state": "string"
        }
      ]
    },
    "interconnect": {
      "adapter": "MVIA-RDMA",
      "state": "string"
    },
    "partners": [
      {
        "_links": {
          "self": {
            "href": "/api/resourcelink"
          }
        },
        "name": "node1",
        "uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
      }
    ],
    "ports": [
      {
        "number": 0,
        "state": "active"
      }
    ],
    "takeover": {
      "failure": {
        "code": 852130,
        "message": "Failed to initiate takeover. Run the \"storage failover show-takeover\" command for more information."
      },
      "state": "failed"
    }
  },
  "hw_assist": {
    "status": {
      "local": {
        "ip": "string",
        "state": "string"
      },
      "partner": {
        "ip": "string",
        "state": "string"
      }
    }
  },
  "location": "rack 2 row 5",
  "management_interface": {
    "ip": {
      "address": "10.10.10.7"
    }
  },
  "management_interfaces": [
    {
      "_links": {
        "self": {
          "href": "/api/resourcelink"
        }
      },
      "ip": {
        "address": "10.10.10.7"
      },
      "name": "lif1",
      "uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
    }
  ],
  "membership": "string",
  "metric": {
    "_links": {
      "self": {
        "href": "/api/resourcelink"
      }
    },
    "duration": "PT15S",
    "processor_utilization": 13,
    "status": "ok",
    "timestamp": "2017-01-25 06:20:13 -0500",
    "uuid": "1cd8a442-86d1-11e0-ae1c-123478563412"
  },
  "metrocluster": {
    "ports": [
      {
        "name": "e1b"
      }
    ],
    "type": "string"
  },
  "model": "FAS3070",
  "name": "node-01",
  "nvram": {
    "battery_state": "string",
    "id": 0
  },
  "owner": "Example Corp",
  "serial_number": "4048820-60-9",
  "service_processor": {
    "api_service": {
      "port": 0
    },
    "auto_config": {
      "ipv4_subnet": "ipv4_mgmt",
      "ipv6_subnet": "ipv6_mgmt"
    },
    "backup": {
      "state": "string",
      "version": "11.6"
    },
    "firmware_version": "string",
    "ipv4_interface": {
      "address": "10.10.10.7",
      "gateway": "10.1.1.1",
      "netmask": "24"
    },
    "ipv6_interface": {
      "address": "fd20:8b1e:b255:5011:10:141:4:97",
      "gateway": "fd20:8b1e:b255:5011:10::1",
      "netmask": 64
    },
    "last_update_state": "string",
    "link_status": "string",
    "mac_address": "string",
    "primary": {
      "state": "string",
      "version": "11.6"
    },
    "ssh_info": {
      "allowed_addresses": [
        "10.10.10.7/24"
      ]
    },
    "state": "string",
    "type": "string"
  },
  "snaplock": {
    "compliance_clock_time": "2018-06-04 15:00:00 -0400"
  },
  "state": "string",
  "statistics": {
    "processor_utilization_base": 12345123,
    "processor_utilization_raw": 13,
    "status": "ok",
    "timestamp": "2017-01-25 06:20:13 -0500"
  },
  "storage_configuration": "string",
  "system_id": 92027651,
  "system_machine_type": "7Y56-CTOWW1",
  "uptime": 300536,
  "uuid": "4ea7a442-86d1-11e0-ae1c-123478563412",
  "vendor_serial_number": 791603000068,
  "version": {
    "full": "NetApp Release 9.4.0: Sun Nov 05 18:20:57 UTC 2017",
    "generation": 9,
    "major": 4,
    "minor": 0
  },
  "vm": {
    "provider_type": "string"
  }
}

Response

Status: 202, Accepted
Name Type Description

job

job_link

Example response
{
  "job": {
    "_links": {
      "self": {
        "href": "/api/resourcelink"
      }
    },
    "uuid": "string"
  }
}

Headers

Name Description Type

Location

Useful for tracking the resource location

string

Error

Status: Default

ONTAP Error Response Codes

Error Code Description

262245

The value provided was invalid.

1179795

A node being added is already in the cluster.

1179813

Fields set for one node must be set for all nodes.

1179817

The IP address, subnet mask, and gateway must all be provided for cluster manangement interface.

1179818

The IP address and gateway must be of the same family.

1179821

An IP address and subnet mask conflicts with an existing entry.

131727360

A node cannot be added to the cluster. This is a generic code, see response message for details.

Name Type Description

error

error

Example error
{
  "error": {
    "arguments": [
      {
        "code": "string",
        "message": "string"
      }
    ],
    "code": "4",
    "message": "entry doesn't exist",
    "target": "uuid"
  }
}

Definitions

See Definitions

href

Name Type Description

href

string

Name Type Description

self

href

node_setup_ip

The IP configuration for cluster setup.

Name Type Description

address

string

IPv4 or IPv6 address

cluster_interface

The cluster network IP address of the node to be added.

Name Type Description

ip

node_setup_ip

The IP configuration for cluster setup.

ip

IP information

Name Type Description

address

string

IPv4 or IPv6 address

cluster_interfaces

Network interface

Name Type Description

_links

_links

ip

ip

IP information

name

string

The name of the interface. If only the name is provided, the SVM scope must be provided by the object this object is embedded in.

uuid

string

The UUID that uniquely identifies the interface.

cpu

CPU information.

Name Type Description

count

integer

Number of CPUs on the node.

firmware_release

string

Firmware release number. Defined by the CPU manufacturer.

processor

string

CPU type on the node.

message

Name Type Description

code

string

Error code describing the current condition of chassis fans.

message

string

Message describing the current condition of chassis fans. It is only of use when failed_fan.count is not zero.

failed_fan

Name Type Description

count

integer

Specifies a count of the number of chassis fans that are not operating within the recommended RPM range.

message

message

message

Name Type Description

code

string

Error code describing the current condition of power supply.

message

string

Message describing the state of any power supplies that are currently degraded. It is only of use when failed_power_supply.count is not zero.

failed_power_supply

Name Type Description

count

integer

Number of failed power supply units.

message

message

flash_cache

Name Type Description

capacity

integer

Size in bytes

device_id

integer

firmware_file

string

firmware_version

string

hardware_revision

string

model

string

part_number

string

serial_number

string

slot

string

state

string

frus

Name Type Description

id

string

state

string

type

string

controller

Controller information

Name Type Description

board

string

Type of the system board. This is defined by vendor.

cpu

cpu

CPU information.

failed_fan

failed_fan

failed_power_supply

failed_power_supply

flash_cache

array[flash_cache]

A list of Flash-Cache devices. Only returned when requested by name.

frus

array[frus]

List of FRUs on the node. Only returned when requested by name.

memory_size

integer

Memory available on the node, in bytes.

over_temperature

string

Specifies whether the hardware is currently operating outside of its recommended temperature range. The hardware shuts down if the temperature exceeds critical thresholds.

external_cache

Cache used for buffer management.

Name Type Description

is_enabled

boolean

Indicates whether the external cache is enabled.

is_hya_enabled

boolean

Indicates whether HyA caching is enabled.

is_rewarm_enabled

boolean

Indicates whether rewarm is enabled.

pcs_size

integer

PCS size in gigabytes.

failure

Indicates the failure code and message.

Name Type Description

code

integer

Message code

message

string

Detailed message based on the state.

aggregate

Aggregate name and UUID.

Name Type Description

_links

_links

name

string

uuid

string

error

Indicates the failed aggregate giveback code and message.

Name Type Description

code

string

Message code.

message

string

Detailed message based on the state.

status

Name Type Description

aggregate

aggregate

Aggregate name and UUID.

error

error

Indicates the failed aggregate giveback code and message.

state

string

Giveback state of the aggregate.

Possible values include no aggregates to giveback(nothing_to_giveback), failed to disable background disk firmware update(BDFU) on source node(failed_bdfu_source),

giveback delayed as disk firmware update is in progress on source node(delayed_bdfu_source), performing veto checks(running_checks).

giveback

Represents the state of the node that is giving storage back to its HA partner.

Name Type Description

failure

failure

Indicates the failure code and message.

state

string

status

array[status]

Giveback status of each aggregate.

interconnect

Name Type Description

adapter

string

HA interconnect device name.

state

string

Indicates the HA interconnect status.

partners

Name Type Description

_links

_links

name

string

uuid

string

ports

Name Type Description

number

integer

HA port number

state

string

HA port state:

  • down - Logical HA link is down.

  • initialized - Logical HA link is initialized. The physical link is up, but the subnet manager hasn't started to configure the port.

  • armed - Logical HA link is armed. The physical link is up and the subnet manager started but did not yet complete configuring the port.

  • active - Logical HA link is active.

  • reserved - Logical HA link is active, but the physical link is down.

takeover

This represents the state of the node that is taking over storage from its HA partner.

Name Type Description

failure

failure

Indicates the failure code and message.

state

string

ha

Name Type Description

auto_giveback

boolean

Specifies whether giveback is automatically initiated when the node that owns the storage is ready.

enabled

boolean

Specifies whether or not storage failover is enabled.

giveback

giveback

Represents the state of the node that is giving storage back to its HA partner.

interconnect

interconnect

partners

array[partners]

Nodes in this node's High Availability (HA) group.

ports

array[ports]

takeover

takeover

This represents the state of the node that is taking over storage from its HA partner.

local

Name Type Description

ip

string

The hardware assist IP address.

port

integer

The hardware assist port.

state

string

The hardware assist monitor status.

partner

Name Type Description

ip

string

The hardware assist IP address.

port

integer

The hardware assist port.

state

string

The hardware assist monitor status.

status

Name Type Description

enabled

boolean

Indicates whether hardware assist is enabled on the node.

local

local

partner

partner

hw_assist

The hardware assist information.

Name Type Description

status

status

management_interface

The management interface of the node to be added. The subnet mask is set based on the management interface of the cluster or the management interfaces of other nodes.

Name Type Description

ip

node_setup_ip

The IP configuration for cluster setup.

management_interfaces

Network interface

Name Type Description

_links

_links

ip

ip

IP information

name

string

The name of the interface. If only the name is provided, the SVM scope must be provided by the object this object is embedded in.

uuid

string

The UUID that uniquely identifies the interface.

metric

CPU performance for the nodes.

Name Type Description

_links

_links

duration

string

The duration over which this sample is calculated. The time durations are represented in the ISO-8601 standard format. Samples can be calculated over the following durations:

processor_utilization

integer

Average CPU Utilization for the node

status

string

Errors associated with the sample. For example, if the aggregation of data over multiple nodes fails, then any partial errors might return "ok" on success or "error" on an internal uncategorized failure. Whenever a sample collection is missed but done at a later time, it is back filled to the previous 15 second timestamp and tagged with "backfilled_data". "inconsistent_delta_time" is encountered when the time between two collections is not the same for all nodes. Therefore, the aggregated value might be over or under inflated. "Negative_delta" is returned when an expected monotonically increasing value has decreased in value. "inconsistent_old_data" is returned when one or more nodes do not have the latest data.

timestamp

string

The timestamp of the performance data.

uuid

string

ports

Name Type Description

name

string

metrocluster

Metrocluster

Name Type Description

custom_vlan_capable

boolean

Indicates whether the MetroCluster over IP platform supports custom VLAN IDs.

ports

array[ports]

MetroCluster over IP ports.

type

string

The Metrocluster configuration type

nvram

Name Type Description

battery_state

string

Specifies status of the NVRAM battery. Possible values:

  • battery_ok

  • battery_partially_discharged

  • battery_fully_discharged

  • battery_not_present

  • battery_near_end_of_life

  • battery_at_end_of_life

  • battery_unknown

  • battery_over_charged

  • battery_fully_charged

id

integer

Vendor specific NVRAM ID of the node.

api_service

Provides the properties of the service processor API service.

Name Type Description

enabled

boolean

Indicates whether the service processor API service is enabled.

limit_access

boolean

Indicates whether the service processor API service limit access is enabled.

port

integer

Indicates the port number of service processor API service.

auto_config

Provides the properties of the service processor auto configuration.

Name Type Description

ipv4_subnet

string

Indicates the service processor auto configuration IPv4 subnet name. To enable IPv4 auto-config give the subnet name, give the value as null or an empty string "" to disable auto-config.

ipv6_subnet

string

Indicates the service processor auto configuration IPv6 subnet name. To enable IPv6 auto-config give the subnet name, give the value as null or an empty string "" to disable auto-config.

backup

Provides the properties of the service processor backup partition.

Name Type Description

is_current

boolean

Indicates whether the service processor is currently booted from the backup partition.

state

string

Status of the backup partition.

version

string

Firmware version of the backup partition.

ipv4_interface

Object to setup an interface along with its default router.

Name Type Description

address

string

IPv4 or IPv6 address

gateway

string

The IPv4 or IPv6 address of the default router.

netmask

string

Input as netmask length (16) or IPv4 mask (255.255.0.0). For IPv6, the default value is 64 with a valid range of 1 to 127. Output is always netmask length.

ipv6_interface

Object to setup an interface along with its default router.

Name Type Description

address

string

IPv6 address

gateway

string

The IPv6 address of the default router.

netmask

integer

The IPv6 netmask/prefix length. The default value is 64 with a valid range of 1 to 127.

primary

Provides the properties of the service processor primary partition.

Name Type Description