Update the cluster software version
PATCH /cluster/software
Introduced In: 9.6
Updates the cluster software version. Important note:
- 
Setting 'version' triggers the package installation.
 - 
To validate the package for installation but not perform the installation, use the
validate_onlyfield on the request. 
Required properties
- 
version- Software version to be installed on the cluster. 
Recommended optional parameters
- 
validate_only- Required to validate a software package before an upgrade. - 
skip_warnings- Used to skip validation warnings when starting a software upgrade. - 
action- Used to pause, resume, or cancel an ongoing software upgrade. - 
stabilize_minutes- Specifies a custom value between 1 to 60 minutes that allows each node a specified amount of time to stabilize after a reboot; the default is 8 minutes. 
Related ONTAP commands
- 
cluster image validate - 
cluster image update - 
cluster image pause-update - 
cluster image resume-update - 
cluster image cancel-update 
Learn more
Parameters
| Name | Type | In | Required | Description | 
|---|---|---|---|---|
skip_warnings  | 
boolean  | 
query  | 
False  | 
Ignore warnings and proceed with the install.  | 
action  | 
string  | 
query  | 
False  | 
Requests an upgrade to pause, resume, or cancel.
Note that not all upgrades support these actions. An upgrade can only be resumed if it is in the paused state. When a request to cancel an upgrade is successful, the upgrade state changes to either  
  | 
stabilize_minutes  | 
integer  | 
query  | 
False  | 
Sets a custom value between 1 to 60 minutes for the upgrade, allowing each node a specified amount of time to stabilize after a reboot. 
  | 
return_records  | 
boolean  | 
query  | 
False  | 
The default is false. If set to true, the records are returned. 
  | 
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. 
  | 
validate_only  | 
boolean  | 
query  | 
False  | 
Validate the operation and its parameters, without actually performing the operation.  | 
Request Body
| Name | Type | Description | 
|---|---|---|
action  | 
string  | 
User triggered action to apply to the install operation  | 
elapsed_duration  | 
integer  | 
Elapsed time during the upgrade or validation operation  | 
estimated_duration  | 
integer  | 
Estimated time remaining until completion of the upgrade or validation operation.  | 
metrocluster  | 
||
nodes  | 
array[software_node_reference]  | 
List of nodes and active versions.  | 
pending_version  | 
string  | 
Version being installed on the system. 
  | 
state  | 
string  | 
Operational state of the upgrade  | 
status_details  | 
Display status details.  | 
|
update_details  | 
Display update progress details.  | 
|
validation_results  | 
List of validation warnings, errors, and advice.  | 
|
version  | 
string  | 
Version of ONTAP installed and currently active on the system. During PATCH, using the 'validate_only' parameter on the request executes pre-checks, but does not perform the full installation. 
  | 
Example request
{
  "action": "pause",
  "elapsed_duration": "2140",
  "estimated_duration": "5220",
  "metrocluster": {
    "clusters": [
      {
        "elapsed_duration": "2140",
        "estimated_duration": "3480",
        "name": "cluster_A",
        "state": "in_progress"
      }
    ],
    "progress_details": {
      "message": "Switchover in progress"
    },
    "progress_summary": {
      "message": "MetroCluster updated successfully."
    }
  },
  "nodes": [
    {
      "name": "node1",
      "version": "ONTAP_X"
    }
  ],
  "pending_version": "ONTAP_X_1",
  "state": "completed",
  "status_details": [
    {
      "action": {
        "message": "string"
      },
      "end_time": "2019-02-02T19:00:00Z",
      "issue": {
        "code": "10551399",
        "message": "Image update complete"
      },
      "name": "initialize",
      "node": {
        "name": "node1"
      },
      "start_time": "2019-02-02T19:00:00Z",
      "state": "failed"
    }
  ],
  "update_details": [
    {
      "elapsed_duration": "2100",
      "estimated_duration": "4620",
      "node": {
        "name": "node1"
      },
      "phase": "Pre-update checks",
      "state": "failed"
    }
  ],
  "validation_results": [
    {
      "action": {
        "message": "string"
      },
      "issue": {
        "message": "Validation error: Cluster HA is not configured in the cluster"
      },
      "status": "warning",
      "update_check": "nfs_mounts"
    }
  ],
  "version": "ONTAP_X"
}
Response
Status: 202, Accepted
| Name | Type | Description | 
|---|---|---|
job  | 
Example response
{
  "job": {
    "uuid": "string"
  }
}
Error
Status: Default, Error
Definitions
See Definitions
href
| Name | Type | Description | 
|---|---|---|
href  | 
string  | 
_links
software_mcc_reference
| Name | Type | Description | 
|---|---|---|
elapsed_duration  | 
integer  | 
Elapsed duration of update time (in seconds) of MetroCluster.  | 
estimated_duration  | 
integer  | 
Estimated duration of update time (in seconds) of MetroCluster.  | 
name  | 
string  | 
Name of the site in MetroCluster.  | 
state  | 
Upgrade state of MetroCluster.  | 
progress_details
| Name | Type | Description | 
|---|---|---|
message  | 
string  | 
MetroCluster update progress details.  | 
progress_summary
| Name | Type | Description | 
|---|---|---|
message  | 
string  | 
MetroCluster update progress summary.  | 
metrocluster
| Name | Type | Description | 
|---|---|---|
clusters  | 
array[software_mcc_reference]  | 
List of MetroCluster sites, statuses, and active ONTAP versions. 
  | 
progress_details  | 
||
progress_summary  | 
software_node_reference
| Name | Type | Description | 
|---|---|---|
name  | 
string  | 
Name of the node.  | 
version  | 
string  | 
ONTAP version of the node. 
  | 
action
| Name | Type | Description | 
|---|---|---|
code  | 
integer  | 
Error code corresponding the status error  | 
message  | 
string  | 
Corrective action to be taken to resolve the status error.  | 
issue
| Name | Type | Description | 
|---|---|---|
code  | 
integer  | 
Error code corresponding to update status  | 
message  | 
string  | 
Update status details  | 
node
| Name | Type | Description | 
|---|---|---|
name  | 
string  | 
Name of the node to be retrieved for status details.  | 
software_status_details_reference
| Name | Type | Description | 
|---|---|---|
action  | 
||
end_time  | 
string  | 
End time for each status phase.  | 
issue  | 
||
name  | 
string  | 
Name of the phase to be retrieved for status details.  | 
node  | 
||
start_time  | 
string  | 
Start time for each status phase.  | 
state  | 
string  | 
Status of the phase  | 
node
| Name | Type | Description | 
|---|---|---|
name  | 
string  | 
Name of the node to be retrieved for update details.  | 
software_update_details_reference
| Name | Type | Description | 
|---|---|---|
elapsed_duration  | 
integer  | 
Elapsed duration for each update phase  | 
estimated_duration  | 
integer  | 
Estimated duration for each update phase  | 
node  | 
||
phase  | 
string  | 
Phase details  | 
state  | 
string  | 
State of the update phase  | 
action
| Name | Type | Description | 
|---|---|---|
message  | 
string  | 
Specifies the corrective action to be taken to resolve a validation error  | 
issue
| Name | Type | Description | 
|---|---|---|
message  | 
string  | 
Details of the error or warning encountered by the update checks  | 
software_validation_reference
| Name | Type | Description | 
|---|---|---|
action  | 
||
issue  | 
||
status  | 
string  | 
Status of this update check.  | 
update_check  | 
string  | 
Name of the update check to be validated.  | 
software_reference
| Name | Type | Description | 
|---|---|---|
action  | 
string  | 
User triggered action to apply to the install operation  | 
elapsed_duration  | 
integer  | 
Elapsed time during the upgrade or validation operation  | 
estimated_duration  | 
integer  | 
Estimated time remaining until completion of the upgrade or validation operation.  | 
metrocluster  | 
||
nodes  | 
array[software_node_reference]  | 
List of nodes and active versions.  | 
pending_version  | 
string  | 
Version being installed on the system. 
  | 
state  | 
string  | 
Operational state of the upgrade  | 
status_details  | 
Display status details.  | 
|
update_details  | 
Display update progress details.  | 
|
validation_results  | 
List of validation warnings, errors, and advice.  | 
|
version  | 
string  | 
Version of ONTAP installed and currently active on the system. During PATCH, using the 'validate_only' parameter on the request executes pre-checks, but does not perform the full installation. 
  | 
job_link
| Name | Type | Description | 
|---|---|---|
uuid  | 
string  | 
The UUID of the asynchronous job that is triggered by a POST, PATCH, or DELETE operation.  | 
error_arguments
| Name | Type | Description | 
|---|---|---|
code  | 
string  | 
Argument code  | 
message  | 
string  | 
Message argument  | 
error
| Name | Type | Description | 
|---|---|---|
arguments  | 
array[error_arguments]  | 
Message arguments  | 
code  | 
string  | 
Error code  | 
message  | 
string  | 
Error message  | 
target  | 
string  | 
The target parameter that caused the error.  |