Carte APIs Carte Server
Provides web service calls related to servers, such as allocating sockets and ports, getting the list of slaves and registering them, and displaying the initial Carte page.
Allocates port to use by client. Allows any client to ask for a port number to use. This is necessary several slaves can be run on the same host. The method ensures the port number is unique for host name provided and makes sure the slaves are using valid port numbers. Data communication across a cluster of Carte servers happens through TCP/IP sockets. Slave transformations sometimes open (or listen to) tens to hundreds of sockets. When you want to allocate the port numbers for data communication between slave transformation in a kettle clustering run, you need unique combinations of all the parameters below.
Example Request:
GET /kettle/allocateSocket/?xml=Y&rangeStart=100&host=locahost&id=clust&trans=my_trans&sourceSlave=slave_1&sourceStep=200&sourceCopy=1&targetSlave=slave_2&targetStep=50&targetCopy=1HTTP Basic Authentication
Return XML format when Y, HTML otherwise
NPossible values: Port number to start looking from
Port's host
Carte container id
Running transformation id
Name of the source slave server
Port number step used on source slave server
Number of copies of the step on source server
Name of the target slave server
Port number step used on target slave server
Number of copies of the step on target server
Socket allocated successfully
Socket allocation result
Internal server error
Gets list of ports for specified host. Method is used for listing all or just open ports for specified host. Response contains port number, which transformation it is (was) used for, current status of the port and last date time used.
Example Request:
GET /kettle/listSocket/?host=127.0.0.1HTTP Basic Authentication
Host to get ports for
127.0.0.1Boolean flag that indicates whether all or only open ports should be returned. Set it to Y to get the list of only currently open ports.
Socket list retrieved successfully
HTML document listing the ports requested
Internal server error
Increments specified pre-configured sequence. Method is used for reserving a number of IDs and incrementing a sequence pre-configured in Carte server configuration by specified amount. If no increment value provided 10000 is used by default.
Example Request:
GET /kettle/nextSequence?name=test_seqHTTP Basic Authentication
Name of the sequence specified in Carte configuration file
test_seqParameter used for incrementing sequence. If no parameter specified 10000 is used by default.
10000Next sequence value retrieved
XML containing sequence value and the increment value used
Internal server error
Registers slave server in the master. The method is used to add or update information of slave server.
Example Request:
POST /kettle/registerSlave/Request body should contain xml containing slave server description.
HTTP Basic Authentication
SlaveServerDetection XML
Slave server registered successfully
Internal server error
Gets list of slave servers. Retrieves list of slave servers which are known to specific server.
Example Request:
GET /kettle/getSlavesHTTP Basic Authentication
Return XML format when Y, HTML otherwise
NPossible values: Slave servers list retrieved successfully
List of registered slave servers
Internal server error
Retrieve server status. The status contains information about the server itself (OS, memory, etc) and information about jobs and transformations present on the server.
Example Request:
GET /kettle/status/?xml=YHTTP Basic Authentication
Return XML format when Y, HTML otherwise
NPossible values: Server status retrieved successfully
Server status in XML format including memory, CPU, OS info and running transformations/jobs
Internal server error
Stops the Carte server. This method must be set up initially through the CLI and is used for stopping the Carte server.
Example Request:
GET http://localhost:8080/pentaho/kettle/stopCarteHTTP Basic Authentication
Return XML format when Y, HTML otherwise
NPossible values: Request was processed
Internal server error occurs during request processing

