nova/api-ref/source/servers-admin-action.inc

216 lines
6.5 KiB
ReStructuredText

.. -*- rst -*-
.. needs:parameter_verification
.. needs:example_verification
.. needs:body_verification
==========================================================
Servers - run an administrative action (servers, action)
==========================================================
Enables administrators to perform an action on a server. Specify the
action in the request body.
You can change the administrative password for, create a back up of, and
inject network information into a server.
You can migrate, live-migrate, reset networking on, and reset the state
of a server.
Create Server Back Up (Createbackup Action)
===========================================
.. rest_method:: POST /v2.1/{tenant_id}/servers/{server_id}/action
Creates a back up of a server.
Specify the ``createBackup`` action in the request body.
Policy defaults enable only users with the administrative role or the owner of the server to perform this operation. Cloud providers can change these permissions through the ``policy.json`` file.
Normal response codes: 202
Error response codes: badRequest(400), unauthorized(401), forbidden(403), itemNotFound(404), conflict(409)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id
- server_id: server_id
- createBackup: createBackup
**Example Create Server Back Up (Createbackup Action): JSON request**
.. literalinclude:: ../../doc/api_samples/os-create-backup/create-backup-req.json
:language: javascript
Response
--------
Inject Network Information (Injectnetworkinfo Action)
=====================================================
.. rest_method:: POST /v2.1/{tenant_id}/servers/{server_id}/action
Injects network information into a server.
Specify the ``injectNetworkInfo`` action in the request body.
Policy defaults enable only users with the administrative role or the owner of the server to perform this operation. Cloud providers can change these permissions through the ``policy.json`` file.
Normal response codes: 202
Error response codes: badRequest(400), unauthorized(401), forbidden(403), conflict(409)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id
- server_id: server_id
- injectNetworkInfo: injectNetworkInfo
**Example Inject Network Information (Injectnetworkinfo Action): JSON request**
.. literalinclude:: ../../doc/api_samples/os-admin-actions/admin-actions-inject-network-info.json
:language: javascript
Response
--------
Migrate Server (Migrate Action)
===============================
.. rest_method:: POST /v2.1/{tenant_id}/servers/{server_id}/action
Migrates a server to a host. The scheduler chooses the host.
Specify the ``migrate`` action in the request body.
Policy defaults enable only users with the administrative role or the owner of the server to perform this operation. Cloud providers can change these permissions through the ``policy.json`` file.
Normal response codes: 202
Error response codes: badRequest(400), unauthorized(401), forbidden(403), itemNotFound(404), conflict(409)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id
- server_id: server_id
- migrate: migrate
**Example Migrate Server (Migrate Action): JSON request**
.. literalinclude:: ../../doc/api_samples/os-migrate-server/migrate-server.json
:language: javascript
Response
--------
Live-Migrate Server (Os-Migratelive Action)
===========================================
.. rest_method:: POST /v2.1/{tenant_id}/servers/{server_id}/action
Live-migrates a server to a new host without rebooting.
Use the ``host`` parameter to specify the destination host. If you omit this parameter, the scheduler chooses a host. If a scheduled host is not suitable, the scheduler tries up to ``migrate_max_retries`` rescheduling attempts.
If both source and destination hosts provide local disks, you can set the ``block_migration`` parameter to ``true``. If either host uses shared storage, the migration fails if you set this parameter to ``true``.
Policy defaults enable only users with the administrative role to perform this operation. Cloud providers can change these permissions through the ``policy.json`` file.
Normal response codes: 202
Error response codes: badRequest(400), unauthorized(401), forbidden(403), itemNotFound(404), conflict(409)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id
- server_id: server_id
- host: host_migration
- block_migration: block_migration
- disk_over_commit: disk_over_commit
**Example Live-Migrate Server (Os-Migratelive Action): JSON request**
.. literalinclude:: ../../doc/api_samples/os-migrate-server/live-migrate-server.json
:language: javascript
Response
--------
Reset Networking On A Server (Resetnetwork Action)
==================================================
.. rest_method:: POST /v2.1/{tenant_id}/servers/{server_id}/action
Resets networking on a server.
Specify the ``resetNetwork`` action in the request body.
Policy defaults enable only users with the administrative role or the owner of the server to perform this operation. Cloud providers can change these permissions through the ``policy.json`` file.
Normal response codes: 202
Error response codes: unauthorized(401), forbidden(403), itemNotFound(404)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id
- server_id: server_id
- resetNetwork: resetNetwork
**Example Reset Networking On A Server (Resetnetwork Action): JSON request**
.. literalinclude:: ../../doc/api_samples/os-admin-actions/admin-actions-reset-network.json
:language: javascript
Response
--------
Reset Server State (Os-Resetstate Action)
=========================================
.. rest_method:: POST /v2.1/{tenant_id}/servers/{server_id}/action
Resets the state of a server.
Specify the ``os-resetState`` action and the ``state`` in the request body.
Policy defaults enable only users with the administrative role or the owner of the server to perform this operation. Cloud providers can change these permissions through the ``policy.json`` file.
Normal response codes: 202
Error response codes: computeFault(400, 500), serviceUnavailable(503), badRequest(400),
unauthorized(401), forbidden(403), badMethod(405), itemNotFound(404)
Request
-------
.. rest_parameters:: parameters.yaml
- tenant_id: tenant_id
- server_id: server_id
- os-resetState: os-resetState
**Example Reset Server State (Os-Resetstate Action): JSON request**
.. literalinclude:: ../../doc/api_samples/os-admin-actions/admin-actions-reset-server-state.json
:language: javascript
Response
--------