SetProtectionDomainLayout
Você pode usar o SetProtectionDomainLayout método para atribuir nós a domínios de proteção personalizados.
As informações devem ser fornecidas para todos os nós ativos no cluster e nenhuma informação pode ser fornecida para nós inativos. Todos os nós em um determinado chassi devem ser atribuídos ao mesmo domínio de proteção personalizado. O mesmo protectionDomainType deve ser fornecido para todos os nós. ProtectionDomainTypes que não são personalizados, como nó e chassi, não deve ser incluído. Se qualquer um destes for fornecido, os domínios de proteção personalizados serão ignorados e um erro apropriado será retornado.
|
|
Domínios de proteção personalizados não são suportados com as seguintes configurações: |
-
Clusters de storage com chassi compartilhado
-
Clusters de storage de dois nós
O método retorna um erro quando usado em clusters de armazenamento com essas configurações.
Parâmetro
Este método tem os seguintes parâmetros de entrada:
| Nome | Descrição | Tipo | Valor padrão | Obrigatório |
|---|---|---|---|---|
Proteção DomainLayout |
Informações de domínio de proteção para cada nó. |
JSON lista "NodeProtectionDomains"de objetos. |
Nenhum |
Sim |
Valor de retorno
Este método tem o seguinte valor de retorno:
| Nome | Descrição | Tipo |
|---|---|---|
Proteção DomainLayout |
Lista de nós, cada um com seus domínios de proteção associados. |
JSON lista "NodeProtectionDomains"de objetos. |
Exemplo de solicitação
As solicitações para este método são semelhantes ao seguinte exemplo:
{
"id": 1,
"method": "SetProtectionDomainLayout",
"params": {
"protectionDomainLayout": [
{
"nodeID": 1,
"protectionDomains": [
{
"protectionDomainName": "Rack-1",
"protectionDomainType": "custom"
}
]
},
{
"nodeID": 2,
"protectionDomains": [
{
"protectionDomainName": "Rack-1",
"protectionDomainType": "custom"
}
]
},
{
"nodeID": 3,
"protectionDomains": [
{
"protectionDomainName": "Rack-2",
"protectionDomainType": "custom"
}
]
},
{
"nodeID": 4,
"protectionDomains": [
{
"protectionDomainName": "Rack-2",
"protectionDomainType": "custom"
}
]
}
]
}
}
Exemplo de resposta
Este método retorna uma resposta semelhante ao seguinte exemplo:
{
"id": 1,
"result": {
"protectionDomainLayout": [
{
"nodeID": 1,
"protectionDomains": [
{
"protectionDomainName": "QTFCR2914008D",
"protectionDomainType": "chassis"
},
{
"protectionDomainName": "Rack-1",
"protectionDomainType": "custom"
}
]
},
{
"nodeID": 2,
"protectionDomains": [
{
"protectionDomainName": "QTFCR291500EA",
"protectionDomainType": "chassis"
},
{
"protectionDomainName": "Rack-1",
"protectionDomainType": "custom"
}
]
},
{
"nodeID": 3,
"protectionDomains": [
{
"protectionDomainName": "QTFCR291500C3",
"protectionDomainType": "chassis"
},
{
"protectionDomainName": "Rack-2",
"protectionDomainType": "custom"
}
]
},
{
"nodeID": 4,
"protectionDomains": [
{
"protectionDomainName": "QTFCR291400E6",
"protectionDomainType": "chassis"
},
{
"protectionDomainName": "Rack-2",
"protectionDomainType": "custom"
}
]
}
]
}
}
Novo desde a versão
12,0