Criar um novo cluster gerenciado
POST /accounts/{account_id}/topology/v1/managedClusters
Indica os valores desejados para o recurso da API Managed Cluster a ser criado.
Parâmetros
| Nome | Tipo | Em | Obrigatório | Descrição |
|---|---|---|---|---|
id_da_conta |
string |
caminho |
Verdadeiro |
ID do recurso de conta que o contém
|
Corpo da solicitação
Indica os valores desejados para o recurso da API Managed Cluster a ser criado.
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
tipo |
string |
Verdadeiro |
Tipo de mídia do recurso. Os valores definidos são:
|
versão |
string |
Verdadeiro |
Versão do recurso. Os valores definidos são:
|
id |
string |
Verdadeiro |
Identificador globalmente único do recurso. Os valores definidos são:
|
tridentManagedStateDesired |
string |
Falso |
String JSON contendo um valor que indica o estado de gerenciamento desejado para Trident. Os valores definidos são:
|
defaultStorageClass |
string |
Falso |
String JSON contendo um ID de classe de armazenamento que corresponde à classe de armazenamento padrão, conforme definida no Kubernetes. Valores definidos são:
|
ID do bucket padrão |
string |
Falso |
String JSON contendo o ID de um bucket que será usado por padrão para persistir metadados de aplicativo para um cluster Neptune gerenciado. Se nenhum bucket padrão for especificado no cluster, o bucket padrão correspondente na nuvem será usado. |
metadados |
Falso |
Metadados especificados pelo cliente e pelo serviço associados ao recurso. Os valores definidos são:
|
Exemplo de solicitação
{
"type": "application/astra-managedCluster",
"version": "1.7",
"id": "241e9d94-eb8b-5c25-ba20-9292baac2396",
"defaultStorageClass": "e280ff62-be35-4f31-a31b-a210a1ad1b33",
"tridentManagedStateDesired": "managed"
}
Resposta
Status: 201, Returns the newly created managedCluster resource in the JSON response body.
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
tipo |
string |
Verdadeiro |
Tipo de mídia do recurso. Os valores definidos são:
|
versão |
string |
Verdadeiro |
Versão do recurso. Os valores definidos são:
|
id |
string |
Verdadeiro |
Identificador globalmente único do recurso. Os valores definidos são:
|
nome |
string |
Verdadeiro |
String JSON contendo um nome para o cluster. Os valores definidos são:
|
estado |
string |
Verdadeiro |
Cadeia JSON contendo um valor que indica o estado operacional do cluster. Os valores definidos são:
|
restoreTargetSupported |
string |
Falso |
String JSON contendo um valor que indica a capacidade do cluster gerenciado de ser um alvo de operações de gerenciamento de dados de aplicativos. Valores definidos são:
|
snapshotSupported |
string |
Falso |
String JSON contendo um valor que indica a capacidade do cluster gerenciado de executar operações semelhantes a backup de gerenciamento de dados de aplicativos. Valores definidos são:
|
stateUnready |
array[string] |
Verdadeiro |
Matriz JSON de strings JSON, cada uma indicando um motivo pelo qual o cluster não consegue transitar para o estado "em execução", quando há problemas enquanto está no estado "em execução" ou por que transitou para o estado "com falha" ou "removido". Valores definidos são:
|
managedState |
string |
Verdadeiro |
String JSON contendo um valor que indica o estado de gerenciamento do cluster. Os valores definidos são:
|
managedStateDetails |
array["type_astra_stateDetail"] |
Falso |
Array JSON de objetos JSON que lista detalhes adicionais sobre o estado atual, incluindo o motivo pelo qual o estado atual foi alcançado. Se nenhum detalhe estiver disponível, este array estará vazio. Os valores definidos são:
|
protectionState |
string |
Verdadeiro |
String JSON contendo um valor que indica o estado de proteção do cluster. Os valores definidos são:
|
protectionStateDetails |
array["type_astra_stateDetail"] |
Verdadeiro |
Matriz JSON de objetos JSON que lista detalhes adicionais sobre o estado de proteção atual, incluindo o motivo pelo qual esse estado foi atingido. Se não houver detalhes disponíveis, essa matriz estará vazia. Os valores definidos são:
|
managedStateUnready |
array[string] |
Verdadeiro |
Matriz JSON de strings JSON, cada uma indicando um motivo pelo qual o cluster não é elegível para ser gerenciado. Valores definidos são:
|
managedTimestamp |
string |
Verdadeiro |
String JSON contendo o carimbo de data/hora que indica quando o cluster foi colocado sob gerenciamento. Os valores definidos são:
|
tridentVersion |
string |
Falso |
String JSON contendo a versão do Trident instalada no cluster. Os valores definidos são:
|
acpVersion |
string |
Falso |
String JSON contendo a versão do Astra Control Provisioner instalada no cluster. Os valores definidos são:
|
tridentManagedState |
string |
Falso |
String JSON contendo um de um conjunto de valores enumerados que indicam o estado de gerenciamento do Trident neste cluster. Os valores definidos são:
|
tridentManagedStateDesired |
string |
Falso |
String JSON contendo um valor que indica o estado de gerenciamento desejado para Trident. Os valores definidos são:
|
tridentManagedStateDetails |
array["type_astra_stateDetail"] |
Falso |
Matriz JSON de objetos JSON que lista detalhes adicionais sobre o motivo da transição do "state" para "managed" ou "unmanaged". + Se não houver detalhes disponíveis, esta matriz estará vazia.
|
tridentManagedStateAllowed |
array[string] |
Falso |
Estados que podem ser solicitados em um determinado tridentManagedState. Os seguintes estados podem ser solicitados em cada estado definido:
|
inUse |
string |
Verdadeiro |
String JSON contendo um valor que indica se o cluster possui algum aplicativo gerenciado e, portanto, não pode ser excluído. Os valores definidos são:
|
accHost |
string |
Falso |
String JSON que indica que este cluster hospeda a instância do Astra Control Center que está sendo acessada no momento. Os valores definidos são:
|
clusterType |
string |
Verdadeiro |
String JSON contendo um valor que indica o tipo de cluster. Os valores definidos são:
|
clusterVersion |
string |
Verdadeiro |
String JSON contendo a representação semântica de versionamento do ambiente do cluster. Para clusters Kubernetes, esta é a versão do Kubernetes. Os valores definidos são:
|
clusterVersionString |
string |
Verdadeiro |
String JSON contendo um valor que indica as informações de versionamento estendidas para o ambiente de cluster. Para clusters Kubernetes, esta é a versão completa do Kubernetes. Os valores definidos são:
|
clusterCreationTimestamp |
string |
Falso |
String JSON contendo o carimbo de data/hora que indica quando o cluster foi criado originalmente. Os valores definidos são:
|
espaços de nomes |
array[string] |
Falso |
Matriz JSON de strings JSON, cada uma indicando um namespace dentro do cluster. Os valores definidos são:
|
defaultStorageClass |
string |
Falso |
String JSON contendo um ID de classe de armazenamento que corresponde à classe de armazenamento padrão, conforme definida no Kubernetes. Valores definidos são:
|
cloudID |
string |
Verdadeiro |
String JSON contendo um valor que indica o ID da nuvem na qual o cluster está sendo executado. Os valores definidos são:
|
ID da credencial |
string |
Falso |
String JSON contendo um valor que indica o ID da credencial que contém o arquivo kubeconfig do cluster. Os valores definidos são:
|
localização |
string |
Falso |
String JSON contendo um valor fornecido pela nuvem na qual o cluster está sendo executado, indicando a localização específica do cluster nessa nuvem. Valores definidos são:
|
isMultizonal |
string |
Verdadeiro |
String JSON contendo um valor fornecido pela nuvem na qual o cluster está sendo executado, indicando se o cluster abrange duas ou mais zonas de disponibilidade. Valores definidos são:
|
ID da rota privada |
string |
Falso |
String JSON contendo o locationID para clusters privados.
|
ID do serviço de API |
string |
Falso |
String JSON contendo o UUID do objeto de serviço da api do Kubernetes (k8s). Usada para identificar um cluster de forma única. |
ID do bucket padrão |
string |
Falso |
String JSON contendo o ID de um bucket que será usado por padrão para persistir metadados de aplicativo para um cluster Neptune gerenciado. Se nenhum bucket padrão for especificado no cluster, o bucket padrão correspondente na nuvem será usado. |
metadados |
Verdadeiro |
Metadados especificados pelo cliente e pelo serviço associados ao recurso. Os valores definidos são:
|
Exemplo de resposta
{
"type": "application/astra-managedCluster",
"version": "1.7",
"id": "241e9d94-eb8b-5c25-ba20-9292baac2396",
"name": "GKE-22",
"state": "running",
"stateUnready": [],
"managedState": "managed",
"managedStateUnready": [],
"managedTimestamp": "2020-08-06T12:24:52.256624Z",
"protectionState": "full",
"protectionStateDetails": [],
"tridentVersion": "23.10.0",
"acpVersion": "23.10.0",
"tridentManagedState": "managed",
"tridentManagedStateDesired": "managed",
"tridentManagedStateDetails": [],
"inUse": "false",
"clusterType": "kubernetes",
"clusterVersion": "1.91.1",
"clusterVersionString": "1.19.1",
"clusterCreationTimestamp": "2020-08-06T12:24:52.256624Z",
"namespaces": [
"kube-system",
"kube-public",
"my-app-1"
],
"defaultStorageClass": "e280ff62-be35-4f31-a31b-a210a1ad1b33",
"cloudID": "548bdc1f-f00e-4a23-a062-83265d224d46",
"credentialID": "055e365a-2215-40de-aecb-a4070a7e6f1e",
"location": "europe-west4",
"isMultizonal": "false",
"apiServiceID": "6bf33af2-872a-4553-a891-26b510c3edbe",
"defaultBucketID": "a549b757-2be1-494f-aafa-4ee399ca3f00",
"metadata": {
"labels": [],
"creationTimestamp": "2022-10-06T20:58:16.305662Z",
"modificationTimestamp": "2022-10-06T20:58:16.305662Z",
"createdBy": "8f84cf09-8036-51e4-b579-bd30cb07b269"
}
}
Resposta
Status: 401, Unauthorized
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
tipo |
string |
Verdadeiro |
|
título |
string |
Verdadeiro |
|
detalhe |
string |
Verdadeiro |
|
status |
string |
Verdadeiro |
|
ID de correlação |
string |
Falso |
Exemplo de resposta
{
"type": "https://astra.netapp.io/problems/3",
"title": "Missing bearer token",
"detail": "The request is missing the required bearer token.",
"status": "401"
}
Resposta
Status: 400, Bad request
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
tipo |
string |
Verdadeiro |
|
título |
string |
Verdadeiro |
|
detalhe |
string |
Verdadeiro |
|
status |
string |
Verdadeiro |
|
ID de correlação |
string |
Falso |
Exemplo de resposta
{
"type": "https://astra.netapp.io/problems/5",
"title": "Invalid query parameters",
"detail": "The supplied query parameters are invalid.",
"status": "400"
}
Resposta
Status: 409, Conflict
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
tipo |
string |
Verdadeiro |
|
título |
string |
Verdadeiro |
|
detalhe |
string |
Verdadeiro |
|
status |
string |
Verdadeiro |
|
ID de correlação |
string |
Falso |
|
invalidFields |
array["invalidFields"] |
Falso |
Lista de campos inválidos no corpo da requisição |
Exemplo de resposta
{
"type": "https://astra.netapp.io/problems/10",
"title": "JSON resource conflict",
"detail": "The request body JSON contains a field that conflicts with an idempotent value.",
"status": "409"
}
Resposta
Status: 403, Forbidden
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
tipo |
string |
Verdadeiro |
|
título |
string |
Verdadeiro |
|
detalhe |
string |
Verdadeiro |
|
status |
string |
Verdadeiro |
|
ID de correlação |
string |
Falso |
Exemplo de resposta
{
"type": "https://astra.netapp.io/problems/11",
"title": "Operation not permitted",
"detail": "The requested operation isn't permitted.",
"status": "403"
}
Erro
Status: 404, Not found
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
tipo |
string |
Verdadeiro |
|
título |
string |
Verdadeiro |
|
detalhe |
string |
Verdadeiro |
|
status |
string |
Verdadeiro |
|
ID de correlação |
string |
Falso |
Exemplo de resposta de erro
{
"type": "https://astra.netapp.io/problems/2",
"title": "Collection not found",
"detail": "The collection specified in the request URI wasn't found.",
"status": "404"
}
Definições
Ver definições
tipo_astra_label
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
nome |
string |
Verdadeiro |
|
valor |
string |
Verdadeiro |
type_astra_metadados_update
Metadados especificados pelo cliente e pelo serviço associados ao recurso. Os valores definidos são:
-
Conforme o esquema de metadados Astra. Se não for especificado na criação, um objeto de metadados será criado sem rótulos. Se não for especificado na atualização, os rótulos do objeto de metadados, creationTimestamp e createdBy, serão preservados sem modificação.
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
etiquetas |
array["tipo_astra_label"] |
Falso |
|
CriaçãoTimestamp |
string |
Falso |
|
Alteração do Timestamp |
string |
Falso |
|
CreatedBy |
string |
Falso |
|
modifiedBy |
string |
Falso |
additionalDetails
type_astra_stateDetail
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
tipo |
string |
Verdadeiro |
|
título |
string |
Verdadeiro |
|
detalhe |
string |
Verdadeiro |
|
additionalDetails |
Falso |
invalidParams
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
nome |
string |
Verdadeiro |
Nome do parâmetro de consulta inválido |
razão |
string |
Verdadeiro |
Motivo pelo qual o parâmetro de consulta é inválido |
invalidFields
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
nome |
string |
Verdadeiro |
Nome do campo inválido no corpo da requisição |
razão |
string |
Verdadeiro |
Motivo pelo qual o campo do corpo da solicitação é inválido |