Este documento descreve como substituir, remover ou excluir políticas de posicionamento.
Substituir, remover ou excluir políticas de posicionamento é útil nos seguintes casos:
Substitua uma política de posicionamento em uma instância de máquina virtual (VM) para mover a VM para uma posição diferente em relação a outras VMs.
Remova uma política de posicionamento de uma VM quando não precisar mais da posição dela em relação a outras VMs.
Exclua uma política de posicionamento quando não precisar mais dela.
Antes de começar
- Analise as restrições das políticas de posicionamento.
-
Configure a autenticação, caso ainda não tenha feito isso.
A autenticação é
o processo de verificação da sua identidade para acesso a serviços e APIs do Google Cloud.
Para executar códigos ou amostras de um ambiente de desenvolvimento local, autentique-se no
Compute Engine da seguinte maneira.
Select the tab for how you plan to use the samples on this page:
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
-
Para substituir ou remover uma política de posicionamento de uma VM:
compute.instances.update
on the project -
Para excluir uma política de posicionamento:
compute.resourcePolicies.delete
on the project Crie um arquivo YAML vazio.
Para exportar as propriedades de uma VM para o arquivo YAML que você acabou de criar, use o comando
gcloud compute instances export
.gcloud compute instances export VM_NAME \ --destination=FILE_PATH \ --zone=ZONE
Substitua:
VM_NAME
: o nome de uma VM atual que especifica uma política de posicionamento.FILE_PATH
: o caminho para o arquivo YAML que você criou na etapa anterior.ZONE
: a zona em que a VM está localizada.
No arquivo de configuração YAML, edite o valor do campo
resourcePolicies
para especificar uma política de posicionamento diferente.resourcePolicies: - https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME
Substitua:
PROJECT_ID
: o ID do projeto em que a política de posicionamento está. Só é possível especificar uma política de posicionamento que está no mesmo projeto que a VM.REGION
: a região em que a política de posicionamento está localizada.POLICY_NAME
: o nome da política de posicionamento.
Para atualizar e reiniciar a VM, use o comando
gcloud compute instances update-from-file
com a flag--most-disruptive-allowed-action
definida comoRESTART
.gcloud compute instances update-from-file VM_NAME \ --most-disruptive-allowed-action=RESTART \ --source=YAML_FILE \ --zone=ZONE
Substitua:
VM_NAME
: o nome da VM.YAML_FILE
: o caminho para o arquivo YAML com os dados de configuração que você modificou na etapa anterior.ZONE
: a zona em que a VM está localizada.
Crie um arquivo JSON vazio.
Para exportar as propriedades de uma VM atual, faça uma solicitação
GET
para o métodoinstances.get
.GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME
Substitua:
PROJECT_ID
: o ID do projeto em que a VM está localizada.ZONE
: a zona em que a VM está localizada.VM_NAME
: o nome de uma VM atual que especifica uma política de posicionamento.
No arquivo JSON vazio que você criou nas etapas anteriores, faça o seguinte:
Insira as propriedades da VM fornecidas na saída da solicitação
GET
.Localize o campo
resourcePolicies
e edite o valor dele para especificar uma política de posicionamento diferente."resourcePolicies": [ "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ]
Substitua:
PROJECT_ID
: o ID do projeto em que a política de posicionamento está. Só é possível especificar uma política de posicionamento que está no mesmo projeto que a VM.REGION
: a região em que a política de posicionamento está.POLICY_NAME
: o nome da política de posicionamento.
Para atualizar e reiniciar a VM, faça uma solicitação
PUT
ao métodoinstances.update
. Na solicitação, faça o seguinte:No URL da solicitação, inclua o parâmetro de consulta
most_disruptive_allowed_action
definido comoRESTART
.Para o corpo da solicitação, use os detalhes de configuração da VM fornecidos no arquivo JSON que foi criado e atualizado nas etapas anteriores.
PUT https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME?most_disruptive_allowed_action=RESTART { ... "resourcePolicies": [ "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ], ... }
VM_NAME
: o nome de uma VM atual que especifica uma política de posicionamento.POLICY_NAME
: o nome da política de posicionamento aplicada à VM. Para verificar o nome da política de posicionamento, confira os detalhes da VM e o valor do camporesourcePolicies
.ZONE
: a zona em que a VM está localizada.PROJECT_ID
: o ID do projeto em que a VM está localizada.ZONE
: a zona em que a VM está localizada.VM_NAME
: o nome de uma VM atual que especifica uma política de posicionamento.REGION
: a região em que a política de posicionamento está localizada.POLICY_NAME
: o nome da política de posicionamento aplicada à VM. Para verificar o nome da política de posicionamento, confira os detalhes da VM e o valor do camporesourcePolicies
.Se a política for aplicada apenas às VMs e você quiser mantê-las, faça o seguinte:
Remova a política de posicionamento das VMs, conforme descrito neste documento.
Exclua a política de posicionamento conforme descrito nesta seção.
Caso contrário, faça o seguinte:
Opcional: remova a política de posicionamento de qualquer VM que você queira manter, conforme descrito neste documento.
Exclua todos os outros recursos do Compute Engine aos quais a política de posicionamento é aplicada na seguinte ordem:
VMs
Reservas
Modelos de instância
Exclua a política de posicionamento conforme descrito nesta seção.
POLICY_NAME
: o nome de uma política de posicionamento existente.REGION
: a região em que a política de posicionamento está localizada.PROJECT_ID
: o ID do projeto em que a política de posicionamento está.REGION
: a região em que a política de posicionamento está localizada.POLICY_NAME
: o nome de uma política de posicionamento existente.Saiba como consultar as políticas de posicionamento.
Aprenda a fazer o seguinte com uma VM que especifica uma política de posicionamento:
REST
Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Google Cloud.
Funções exigidas
Para receber as permissões necessárias para substituir, remover ou excluir políticas de posicionamento, peça ao administrador para conceder a você o papel do IAM de Administrador da instância do Compute (v1) (
roles/compute.instanceAdmin.v1
) no projeto. Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.Esse papel predefinido contém as permissões necessárias para substituir, remover ou excluir políticas de posicionamento. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As seguintes permissões são necessárias para substituir, remover ou excluir políticas de posicionamento:
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Substituir uma política de posicionamento em uma VM:
Antes de substituir uma política de posicionamento distribuído em uma VM por uma política de posicionamento compacto, verifique se a VM usa um tipo de máquina e uma política de manutenção de host com suporte. Se você precisar atualizar a VM antes de substituir a política de posicionamento dela, siga um ou ambos dos seguintes procedimentos:
Depois de substituir a política de posicionamento em uma VM, reinicie a VM para que a política de posicionamento recém-aplicada entre em vigor.
Para substituir uma política de posicionamento em uma VM, selecione uma das seguintes opções:
gcloud
REST
Para mais informações sobre como atualizar as propriedades de uma VM, consulte Atualizar as propriedades da VM.
Remover uma política de posicionamento de uma VM
Se você quiser remover uma política de posicionamento distribuído com dois ou mais domínios de disponibilidade de uma VM, faça isso sem interromper a VM. Se você quiser remover uma política de posicionamento compacto ou distribuído com apenas um domínio de disponibilidade, primeiro interrompa a VM antes de remover a política de posicionamento anexada a ela.
A remoção de uma política de posicionamento de uma VM não afeta a localização física dela. No entanto, se a VM estiver sendo migrada em tempo real, o Compute Engine poderá movê-la para um local físico diferente.
Para remover uma política de posicionamento de uma VM, selecione uma das seguintes opções:
gcloud
Para remover uma política de posicionamento de uma VM, use o comando
gcloud compute instances remove-resource-policies
.gcloud compute instances remove-resource-policies VM_NAME \ --resource-policies=POLICY_NAME \ --zone=ZONE
Substitua:
REST
Para remover uma política de posicionamento de uma VM, faça uma solicitação
POST
ao métodoinstances.removeResourcePolicies
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/removeResourcePolicies { "resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ] }
Substitua:
Excluir uma política de posicionamento
Só é possível excluir uma política de posicionamento se ela não for aplicada a nenhum recurso do Compute Engine. Caso contrário, a exclusão da política de posicionamento falhará. Para excluir uma política de posicionamento aplicada a um ou mais recursos do Compute Engine, siga um destes procedimentos:
Para excluir uma política de posicionamento, selecione uma das seguintes opções:
gcloud
Para excluir uma política de convidado, use o comando
gcloud compute resource-policies delete
.gcloud compute resource-policies delete POLICY_NAME \ --region=REGION
Substitua:
REST
Para excluir uma política de posicionamento, faça uma solicitação
DELETE
ao métodoresourcePolicies.delete
.DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME
Substitua:
A seguir
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2024-11-22 UTC.
-