3.19. Managing Updates

3.19.1. vinfra software-updates check-for-updates

Check for software updates:

usage: vinfra software-updates check-for-updates

Example:

# vinfra software-updates check-for-updates
+---------------------------+--------------------------------------------+
| Field                     | Value                                      |
+---------------------------+--------------------------------------------+
| available_storage_release |                                            |
| last_check_datetime       |                                            |
| nodes                     | - current_storage_release:                 |
|                           |     release: '756'                         |
|                           |     version: 3.5.0                         |
|                           |   downloaded_storage_release: null         |
|                           |   host: node1.vstoragedomain               |
|                           |   id: 51cc14d4-eec6-433e-a7b1-e1c5c7f9555e |
|                           |   orig_hostname: node1                     |
|                           |   status: download_completed               |
| services                  | []                                         |
| status                    | uptodate                                   |
| tasks                     |                                            |
+---------------------------+--------------------------------------------+

3.19.2. vinfra software-updates eligibility-check

Check nodes’ update eligibility:

usage: vinfra software-updates eligibility-check

Example:

# vinfra software-updates eligibility-check
+---------+--------------------------------------+
| Field   | Value                                |
+---------+--------------------------------------+
| task_id | 0143aec7-f9ce-4654-ad48-edb6f4104e22 |
+---------+--------------------------------------+

This command creates a task to check whether the nodes in the storage cluster are eligible for updates.

Task outcome:

# vinfra task show 0143aec7-f9ce-4654-ad48-edb6f4104e22
+---------+------------------------------------------------------------------+
| Field   | Value                                                            |
+---------+------------------------------------------------------------------+
| details |                                                                  |
| name    | backend.presentation.software_updates.tasks.EligibilityCheckTask |
| result  | cluster_has_releasing_nodes:                                     |
|         |   details: null                                                  |
|         |   exception: null                                                |
|         |   message: null                                                  |
|         |   passed: true                                                   |
|         |   severity: critical                                             |
|         | cluster_unhealthy:                                               |
|         |   details: null                                                  |
|         |   exception: null                                                |
|         |   message: null                                                  |
|         |   passed: true                                                   |
|         |   severity: critical                                             |
|         | not_enough_space_on_agents:                                      |
|         |   details: null                                                  |
|         |   exception: null                                                |
|         |   message: null                                                  |
|         |   passed: true                                                   |
|         |   severity: critical                                             |
|         | not_enough_space_on_mn:                                          |
|         |   details: null                                                  |
|         |   exception: null                                                |
|         |   message: null                                                  |
|         |   passed: true                                                   |
|         |   severity: critical                                             |
|         | postgres_not_running:                                            |
|         |   details: null                                                  |
|         |   exception: null                                                |
|         |   message: null                                                  |
|         |   passed: true                                                   |
|         |   severity: critical                                             |
| state   | success                                                          |
| task_id | 0143aec7-f9ce-4654-ad48-edb6f4104e22                             |
+---------+------------------------------------------------------------------+

3.19.3. vinfra software-updates download

Download software updates:

usage: vinfra software-updates download

Example:

# vinfra software-updates download
+---------+--------------------------------------+
| Field   | Value                                |
+---------+--------------------------------------+
| task_id | 2f930030-22de-4ce5-bf00-05328ee672f0 |
+---------+--------------------------------------+

This command creates a task to download updates.

Task outcome:

# vinfra task show 2f930030-22de-4ce5-bf00-05328ee672f0
+---------+----------------------------------------------------------------------------+
| Field   | Value                                                                      |
+---------+----------------------------------------------------------------------------+
| details |                                                                            |
| name    | backend.business.models.software_updates.tasks.DownloadSoftwareUpdatesTask |
| result  |                                                                            |
| state   | success                                                                    |
| task_id | 2f930030-22de-4ce5-bf00-05328ee672f0                                       |
+---------+----------------------------------------------------------------------------+

3.19.4. vinfra software-updates start

Start the software update procedure:

usage: vinfra software-updates start [--skip] [--force]
--skip
Skip and do not update nodes that cannot enter maintenance mode.
--force
Forcibly update and reboot (if needed) all nodes even if they cannot enter maintenance mode. Using this option may result in downtime.

If both parameters are omitted, the update will stop if a node cannot enter maintenance mode. Nodes that have already been updated will remain so.

Example:

# vinfra software-updates start
+---------+--------------------------------------+
| Field   | Value                                |
+---------+--------------------------------------+
| task_id | 0eae9159-7595-42a7-8feb-d04df3e295c7 |
+---------+--------------------------------------+

This command creates a task to start updating.

Task outcome:

# vinfra task show 0eae9159-7595-42a7-8feb-d04df3e295c7
+---------+------------------------------------------------------------------------+
| Field   | Value                                                                  |
+---------+------------------------------------------------------------------------+
| details |                                                                        |
| name    | backend.business.models.software_updates.tasks.StartSoftwareUpdateTask |
| result  |                                                                        |
| state   | running                                                                |
| task_id | 0eae9159-7595-42a7-8feb-d04df3e295c7                                   |
+---------+------------------------------------------------------------------------+

3.19.5. vinfra software-updates pause

Show software updates status:

usage: vinfra software-updates pause

Example:

# vinfra software-updates pause
+---------+--------------------------------------+
| Field   | Value                                |
+---------+--------------------------------------+
| task_id | b02a686b-3214-447e-a9b4-43698aa9388b |
+---------+--------------------------------------+

This command creates a task to pause updates.

Task outcome:

# vinfra task show b02a686b-3214-447e-a9b4-43698aa9388b
+---------+---------------------------------------------------------------------+
| Field   | Value                                                               |
+---------+---------------------------------------------------------------------+
| details |                                                                     |
| name    | backend.presentation.software_updates.tasks.PauseSoftwareUpdateTask |
| result  |                                                                     |
| state   | success                                                             |
| task_id | b02a686b-3214-447e-a9b4-43698aa9388b                                |
+---------+---------------------------------------------------------------------+

3.19.6. vinfra software-updates resume

Resume the software update procedure:

usage: vinfra software-updates resume [--skip] [--force]
--skip
Skip and do not update nodes that cannot enter maintenance mode.
--force
Forcibly update and reboot (if needed) all nodes even if they cannot enter maintenance mode. Using this option may result in downtime.

If both parameters are omitted, the update will stop if a node cannot enter maintenance mode. Nodes that have already been updated will remain so.

Example:

# vinfra software-updates resume
+---------+--------------------------------------+
| Field   | Value                                |
+---------+--------------------------------------+
| task_id | 35323989-bdbc-4826-94c3-70ed7d06969d |
+---------+--------------------------------------+

This command creates a task to resume the update.

Task outcome:

# vinfra task show 35323989-bdbc-4826-94c3-70ed7d06969d
+---------+----------------------------------------------------------------------+
| Field   | Value                                                                |
+---------+----------------------------------------------------------------------+
| details |                                                                      |
| name    | backend.presentation.software_updates.tasks.ResumeSoftwareUpdateTask |
| result  |                                                                      |
| state   | success                                                              |
| task_id | 35323989-bdbc-4826-94c3-70ed7d06969d                                 |
+---------+----------------------------------------------------------------------+

3.19.7. vinfra software-updates cancel

Cancel software updates:

usage: vinfra software-updates cancel

Example:

# vinfra software-updates cancel
+---------+--------------------------------------+
| Field   | Value                                |
+---------+--------------------------------------+
| task_id | 7aeb20ba-1f9f-4f28-9790-086428d3e18e |
+---------+--------------------------------------+

This command creates a task to cancel the update.

Task outcome:

# vinfra task show 7aeb20ba-1f9f-4f28-9790-086428d3e18e
+---------+----------------------------------------------------------------------+
| Field   | Value                                                                |
+---------+----------------------------------------------------------------------+
| details |                                                                      |
| name    | backend.presentation.software_updates.tasks.CancelSoftwareUpdateTask |
| result  |                                                                      |
| state   | success                                                              |
| task_id | 7aeb20ba-1f9f-4f28-9790-086428d3e18e                                 |
+---------+----------------------------------------------------------------------+

3.19.8. vinfra software-updates status

Check software update status:

usage: vinfra software-updates status

Example:

# vinfra software-updates status
+---------------------------+--------------------------------------------+
| Field                     | Value                                      |
+---------------------------+--------------------------------------------+
| available_storage_release | release: '758'                             |
|                           | version: 3.5.0                             |
| last_check_datetime       | 2019-12-17T13:25:41.991763+00:00           |
| nodes                     | - current_storage_release:                 |
|                           |     release: '758'                         |
|                           |     version: 3.5.0                         |
|                           |   downloaded_storage_release: null         |
|                           |   host: man-hci7-1.vstoragedomain          |
|                           |   id: 51cc14d4-eec6-433e-a7b1-e1c5c7f9555e |
|                           |   orig_hostname: man-hci7-1                |
|                           |   status: uptodate                         |
| services                  | []                                         |
| status                    | uptodate                                   |
| tasks                     | - errors:                                  |
|                           |     message: None                          |
|                           |     nodes: []                              |
|                           |   id: 8cf880d1-6648-450b-b96c-c87c27b9e181 |
|                           |   name: StartSoftwareUpdateTask            |
|                           |   params:                                  |
|                           |     force: false                           |
|                           |     skip: false                            |
+---------------------------+--------------------------------------------+

This command shows the node update status.