The clusterRemoveServer Web API Method

This method removes a server from the cluster. The removal process may be asynchronous if Session Clustering is used. If this is the case, the initial operation will return an HTTP 202 response. As long as the server is not fully removed, further calls to remove the same server should be idempotent. On a Zend Server with no valid license, this operation fails.

Version: 1.0

Required Permissions: full

HTTP method: POST

Supported by Editions: Zend Server

Request Parameters:

Parameter

 Type

Required

Description

serverId

String

Yes

The server ID

Expected Response Code:

  • 200 OK - The server removal process was completed successfully. This status is expected if there is no need to perform a graceful shutdown process, or if the Force option was set to "TRUE".
  • 202 Accepted - The removal process has started but not completed yet. The user may want to check the server status within a few seconds using the clusterGetServerStatus method to verify that the operation was completed.

Response Type: serverInfo with the status of the server being removed. The status is expected to be either shuttingDown or removed.

Possible Action Specific Error Codes:

HTTP Code

 Error Code

Description

404

noSuchServer

There is no server with the provided server ID.

500

cantConnectToServer

Zend Server is unable to connect to the specified server.

500

invalidServerResponse

An invalid or unexpected response from the server.

503

temporarilyLocked

The server cannot be removed because another server in the cluster is performing a  graceful startup/shutdown.

405

notImplementedByEdition

The method is not implemented by this edition of Zend Server.

500

serverNotLicensed

Zend Server is not licensed.

Example

Usage Example

Request (headers removed for clarity)

POST/ZendServer/Api/clusterRemoveServer
serverId=5

Response

HTTP/1.0 202 Accepted
<?xml version="1.0" encoding="UTF-8"?>
<zendServerAPIResponse xmlns="http://www.zend.com/server/api/1.0">
<requestData>
<apiKeyName>angel.eyes</apiKeyName>
<method>clusterRemoveServer</method>
</requestData>
<responseData>
 <serverInfo>
      <id>5</id>
      <name>www-02</name>
      <address>https://www-02.local:10082/ZendServer</address>
      <status>shuttingDown</status>
      <messageList />
    <debugModeEnabled>true</debugModeEnabled>
 </serverInfo>
</responseData>
</zendServerAPIResponse>
For Zend Server on Linux, this action is also available via the command line using CLI tools. For more information, see ZendServerSDK.