Como iniciar, parar e retomar um serviço Cloud usando a ClickHouse API e o cURL
Como um serviço do ClickHouse Cloud pode ser iniciado, parado e reiniciado usando endpoints da API?
- Para ativar/retomar um serviço Cloud quando ele estiver em estado ocioso, você pode enviar um ping para a instância:
curl -X GET https://abc123.us-west-2.aws.clickhouse.cloud:8443/ping
- Para interromper um serviço na Cloud, use o endpoint
/state com o comando stop. A sintaxe é a seguinte:
curl -X PATCH https://api.clickhouse.cloud/v1/organizations/<org_uuid>/services/<service_uuid>/state -u <key_id>:<key_secret> -H "Content-Type: application/json" -d ''{"command": "<stop|start>"}''
Por exemplo, o comando a seguir para o serviço 2e2124ca-c5ac-459d-a6f2-abc123549d2a:
curl -X PATCH https://api.clickhouse.cloud/v1/organizations/123abcd0-e9b5-4f55-9e42-0fb04392445c/services/2e2124ca-c5ac-459d-a6f2-abc123549d2a/state -u abc123:ABC123 -H "Content-Type: application/json" -d '{"command": "stop"}'
A saída fica assim:
{"result":{"id":"2e2124ca-c5ac-459d-a6f2-abc123549d2a","name":"mars-s3","provider":"aws","regionId":"us-west-2","state":"stopping","endpoints":[{"protocol":"nativesecure","host":"abc123.us-west-2.aws.clickhouse.cloud","port":9440},{"protocol":"https","host":"abc123ntrb.us-west-2.aws.clickhouse.cloud","port":8443}],"tier":"production","idleScaling":true,"idleTimeoutMinutes":5,"minTotalMemoryGb":24,"maxTotalMemoryGb":48,"ipAccessList":[{"source":"[0.0.0.0/0](http://0.0.0.0/0)","description":"Anywhere"}],"createdAt":"2022-10-21T18:46:31Z"},"status":200}%
- Para iniciar o serviço novamente, use o comando
start:
curl -X PATCH https://api.clickhouse.cloud/v1/organizations/123abcd0-e9b5-4f55-9e42-0fb04392445c/services/2e2124ca-c5ac-459d-a6f2-abc123549d2a/state -u abc123:ABC123 -H "Content-Type: application/json" -d '{"command": "start"}'
Estes são os diferentes estados em que um serviço pode estar:"state":"stopping"
"state":"stopped"
"state":"starting"
"state":"running"
"state":"idle"
Um serviço Cloud que está “idle” é considerado iniciado, portanto um comando start não vai retomá-lo nem reativá-lo. Use o endpoint ping mostrado na Etapa 1 para reativar um serviço.