273 lines
		
	
	
		
			7.5 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			273 lines
		
	
	
		
			7.5 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
| .. -*- rst -*-
 | |
| 
 | |
| ==========================================================
 | |
|  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 /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.
 | |
| 
 | |
| .. note::
 | |
|     Starting from version 2.39 the image quota enforcement with Nova `metadata`
 | |
|     is removed and quota checks should be performed using Glance API directly.
 | |
| 
 | |
| Normal response codes: 202
 | |
| 
 | |
| Error response codes: badRequest(400), unauthorized(401), forbidden(403),
 | |
| itemNotFound(404), conflict(409)
 | |
| 
 | |
| Request
 | |
| -------
 | |
| 
 | |
| .. rest_parameters:: parameters.yaml
 | |
| 
 | |
|   - server_id: server_id_path
 | |
|   - createBackup: createBackup
 | |
|   - name: backup_name
 | |
|   - backup_type: backup_type
 | |
|   - rotation: backup_rotation
 | |
|   - metadata: metadata
 | |
| 
 | |
| **Example Create Server Back Up (Createbackup Action)**
 | |
| 
 | |
| .. literalinclude:: ../../doc/api_samples/os-create-backup/create-backup-req.json
 | |
|    :language: javascript
 | |
| 
 | |
| Response
 | |
| --------
 | |
| 
 | |
| If successful, the header 'Location' : <image location URL>
 | |
| will be returned. No response body is returned.
 | |
| 
 | |
| 
 | |
| Inject Network Information (injectNetworkInfo Action)
 | |
| =====================================================
 | |
| 
 | |
| .. rest_method:: POST /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 to
 | |
| perform this operation. Cloud providers can change these permissions
 | |
| through the ``policy.json`` file.
 | |
| 
 | |
| .. warning:: There is very limited support on this API, For more information,
 | |
|              see `nova virt support matrix
 | |
|              <http://docs.openstack.org/developer/nova/support-matrix.html>`__
 | |
| 
 | |
| Normal response codes: 202
 | |
| 
 | |
| Error response codes: unauthorized(401), forbidden(403), itemNotFound(404), conflict(409)
 | |
| 
 | |
| Request
 | |
| -------
 | |
| 
 | |
| .. rest_parameters:: parameters.yaml
 | |
| 
 | |
|   - server_id: server_id_path
 | |
|   - injectNetworkInfo: injectNetworkInfo
 | |
| 
 | |
| **Example Inject Network Information (injectNetworkInfo Action)**
 | |
| 
 | |
| .. literalinclude:: ../../doc/api_samples/os-admin-actions/admin-actions-inject-network-info.json
 | |
|    :language: javascript
 | |
| 
 | |
| Response
 | |
| --------
 | |
| 
 | |
| If successful, this method does not return content in the response body.
 | |
| 
 | |
| 
 | |
| Migrate Server (migrate Action)
 | |
| ===============================
 | |
| 
 | |
| .. rest_method:: POST /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 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
 | |
| 
 | |
|   - server_id: server_id_path
 | |
|   - migrate: migrate
 | |
| 
 | |
| **Example Migrate Server (migrate Action)**
 | |
| 
 | |
| .. literalinclude:: ../../doc/api_samples/os-migrate-server/migrate-server.json
 | |
|    :language: javascript
 | |
| 
 | |
| Response
 | |
| --------
 | |
| 
 | |
| If successful, this method does not return content in the response body.
 | |
| 
 | |
| 
 | |
| Live-Migrate Server (os-migrateLive Action)
 | |
| ===========================================
 | |
| 
 | |
| .. rest_method:: POST /servers/{server_id}/action
 | |
| 
 | |
| Live-migrates a server to a new host without rebooting.
 | |
| 
 | |
| Specify the ``os-migrateLive`` action in the request body.
 | |
| 
 | |
| Use the ``host`` parameter to specify the destination host. If
 | |
| this param is ``null``, the scheduler chooses a host. If a scheduled host
 | |
| is not suitable to do migration, the scheduler tries up to
 | |
| ``migrate_max_retries`` rescheduling attempts.
 | |
| 
 | |
| Starting from API version 2.25, the ``block_migration`` parameter could be
 | |
| to ``auto`` so that nova can decide value of block_migration during live
 | |
| migration.
 | |
| 
 | |
| Policy defaults enable only users with the administrative role to
 | |
| perform this operation. Cloud providers can change these permissions
 | |
| through the ``policy.json`` file.
 | |
| 
 | |
| Starting from REST API version 2.34 pre-live-migration checks are done
 | |
| asynchronously, results of these checks are available in ``instance-actions``.
 | |
| Nova responds immediately, and no pre-live-migration checks are returned.
 | |
| The instance will not immediately change state to ``ERROR``, if a failure of
 | |
| the live-migration checks occurs.
 | |
| 
 | |
| Normal response codes: 202
 | |
| 
 | |
| Error response codes: badRequest(400), unauthorized(401), forbidden(403)
 | |
| itemNotFound(404), conflict(409)
 | |
| 
 | |
| Request
 | |
| -------
 | |
| 
 | |
| .. rest_parameters:: parameters.yaml
 | |
| 
 | |
|   - server_id: server_id_path
 | |
|   - os-migrateLive: os-migrateLive
 | |
|   - host: host_migration
 | |
|   - block_migration: block_migration
 | |
|   - block_migration: block_migration_2_25
 | |
|   - disk_over_commit: disk_over_commit
 | |
|   - force: force_live_migrate
 | |
| 
 | |
| **Example Live-Migrate Server (os-migrateLive Action)**
 | |
| 
 | |
| .. literalinclude:: ../../doc/api_samples/os-migrate-server/v2.30/live-migrate-server.json
 | |
|    :language: javascript
 | |
| 
 | |
| Response
 | |
| --------
 | |
| 
 | |
| If successful, this method does not return content in the response body.
 | |
| 
 | |
| 
 | |
| Reset Networking On A Server (resetNetwork Action)
 | |
| ==================================================
 | |
| 
 | |
| .. rest_method:: POST /servers/{server_id}/action
 | |
| 
 | |
| Resets networking on a server.
 | |
| 
 | |
| .. note::
 | |
| 
 | |
|     Only the XenServer driver implements this feature and only if the guest
 | |
|     has the XenAPI agent in the targeted server.
 | |
| 
 | |
| Specify the ``resetNetwork`` action in the request body.
 | |
| 
 | |
| 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: unauthorized(401), forbidden(403), itemNotFound(404),
 | |
| conflict(409)
 | |
| 
 | |
| Request
 | |
| -------
 | |
| 
 | |
| .. rest_parameters:: parameters.yaml
 | |
| 
 | |
|   - server_id: server_id_path
 | |
|   - resetNetwork: resetNetwork
 | |
| 
 | |
| **Example Reset Networking On A Server (resetNetwork Action)**
 | |
| 
 | |
| .. literalinclude:: ../../doc/api_samples/os-admin-actions/admin-actions-reset-network.json
 | |
|    :language: javascript
 | |
| 
 | |
| Response
 | |
| --------
 | |
| 
 | |
| If successful, this method does not return content in the response body.
 | |
| 
 | |
| 
 | |
| Reset Server State (os-resetState Action)
 | |
| =========================================
 | |
| 
 | |
| .. rest_method:: POST /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 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
 | |
| 
 | |
|   - server_id: server_id_path
 | |
|   - os-resetState: os-resetState
 | |
|   - os-resetState.state: os-resetState_state
 | |
| 
 | |
| **Example Reset Server State (os-resetState Action)**
 | |
| 
 | |
| .. literalinclude:: ../../doc/api_samples/os-admin-actions/admin-actions-reset-server-state.json
 | |
|    :language: javascript
 | |
| 
 | |
| Response
 | |
| --------
 | |
| 
 | |
| If successful, this method does not return content in the response body.
 | 
