Esta página descreve como usar o recurso de orquestrador de políticas no VM Manager para criar, atualizar ou excluir recursos de políticas do SO em diferentes projetos e zonas nas pastas ou na organização.
Antes de começar
- Analise a política do SO e a atribuição da política do SO.
- Revise as cotas de configuração do SO.
- Verifique se você atende aos pré-requisitos para usar o orquestrador de políticas.
-
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 selecionando uma das seguintes opções:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- No cliente local, crie ou faça o download de um arquivo de política do SO. Esse arquivo precisa ser JSON ou YAML. Para mais informações sobre como criar políticas do SO ou ver amostras de políticas do SO, consulte Políticas do SO.
No console do Google Cloud, acesse a página Políticas do SO.
Clique no Seletor de projetos na barra de ação do console do Google Cloud e selecione a pasta em que você quer criar o orquestrador de políticas.
Clique em Criar orquestrador de políticas.
Especifique um nome e uma descrição para o orquestrador de políticas. Consulte a Convenção de nomenclatura de recursos. O VM Manager atribui um ID exclusivo ao orquestrador de políticas. Você pode editar esse ID, se necessário.
Na seção Políticas do SO, faça upload do arquivo da política do SO.
Opcional: na seção Estado, selecione uma das seguintes opções para especificar o comportamento do orquestrador de políticas:
ACTIVE
: depois de criado, o orquestrador de políticas realiza ações imediatamente.STOPPED
: um orquestrador de políticas criado nesse estado não realiza nenhuma ação imediatamente. Você pode editar o orquestrador de políticas mais tarde para mudar o estado dele.
No campo Ação, selecione UPSERT.
Na seção Escopo da orquestração, especifique as pastas e os projetos em que você quer implementar as políticas do SO. Você precisa inserir apenas os números de projeto e de pasta nesses campos, por exemplo,
123456,7654321
.Selecione as zonas que contêm as VMs às quais você quer aplicar as políticas do SO. Como alternativa, clique em Selecionar tudo para aplicar as alterações da política do SO aos recursos em todas as zonas.
Opcional: na seção Instâncias de VM de destino, especifique as VMs de destino a que você quer aplicar as políticas do SO.
- Selecione as famílias do SO.
É possível filtrar ainda mais as VMs especificando rótulos de inclusão e exclusão.
Por exemplo, é possível selecionar todas as VMs do Ubuntu no ambiente de teste e excluir aquelas que executam o Google Kubernetes Engine. Basta especificar o seguinte:
- Família do SO:
ubuntu
- Incluir:
env:test
,env:staging
- Excluir:
goog-gke-node
- Família do SO:
Especifique um plano de lançamento para a atribuição de política do SO.
- Especifica o tamanho da onda (também conhecido como orçamento de interrupção). Por exemplo, 10%.
- Especifique o tempo de espera. Por exemplo, 15 minutes.
Clique em Criar.
Crie ou faça o download de um recurso de atribuição de política do SO no formato JSON ou YAML. Para mais informações sobre esse arquivo e amostras de atribuições de política, consulte Atribuições de política do SO.
Use o comando
beta os-config policy-orchestrators create
para criar e implantar a atribuição de política do SO no escopo especificado.ORCHESTRATOR_NAME
: nome do orquestrador de políticas. Consulte a Convenção de nomenclatura de recursos.OS_POLICY_ASSIGNMENT_FILE
: o caminho absoluto para o arquivo de atribuição de política do SO que você criou na etapa anterior.POLICY_ID
: um ID exclusivo para o orquestrador de políticas. Se você não especificar um valor, o orquestrador de políticas vai atribuir um ID exclusivo ao recurso do orquestrador.QUOTA_PROJECT_ID
: o ID do projeto da cota ou do projeto de faturamento.ORCHESTRATOR_NAME
: nome do orquestrador de políticas. Consulte a Convenção de nomenclatura de recursos.FOLDER_NUMBER
: o número da pasta em que você quer criar o orquestrador de políticas.OS_POLICY_ASSIGNMENT_FILE
: o caminho absoluto para o arquivo de atribuição de política do SO que você criou na etapa anterior.POLICY_ID
: um ID exclusivo para o orquestrador de políticas. Se você não especificar um valor, o orquestrador de políticas vai atribuir um ID exclusivo ao recurso do orquestrador.PROJECT_NUMBERS
: uma lista de projetos para os quais você quer aplicar as atribuições de política do SO. É necessário especificar os números do projeto, o ID numérico exclusivo dos projetos.QUOTA_PROJECT_ID
: o ID do projeto da cota ou do projeto de faturamento.ORCHESTRATOR_NAME
: nome do orquestrador de políticas. Consulte a Convenção de nomenclatura de recursos.FOLDER_NUMBER
: o número da pasta em que você quer criar o orquestrador de políticas.OS_POLICY_ASSIGNMENT_FILE
: o caminho absoluto para o arquivo de atribuição de política do SO que você criou na etapa anterior.POLICY_ID
: um ID exclusivo para o orquestrador de políticas. Se você não especificar um valor, o orquestrador de políticas vai atribuir um ID exclusivo ao recurso do orquestrador.PROJECT_NUMBERS
: uma lista de projetos para os quais você quer aplicar as atribuições de política do SO. É necessário especificar os números do projeto, o ID numérico exclusivo dos projetos.Crie ou faça o download de um arquivo de atribuição de política do SO. Ele precisa ser um arquivo JSON. Para mais informações sobre como criar atribuições de política do SO ou conferir amostras, consulte Atribuição de política do SO.
Dependendo do escopo em que você está criando o orquestrador de políticas, use um dos seguintes métodos:
PROJECT_NUMBER
: o ID numérico do projeto em que você quer criar o orquestrador de políticas.JSON_OS_POLICY_ORCHESTRATOR
: o objeto orquestrador de políticas em formato JSON que define o escopo, o recurso orquestrado e o estado de orquestração. Para mais informações sobre os parâmetros e o formato, consulteResource: folders.locations.global.policyOrchestrators
.- Converter a amostra em JSON
Faça a seguinte solicitação:
POST https://osconfig.googleapis.com/v2beta/projects/123456/locations/global/policyOrchestrators { "action": "UPSERT", "orchestratedResource": { "osPolicyAssignmentV1Payload": { "instanceFilter": { "inventories": [ { "osShortName": "windows" } ] }, "osPolicies": [ { "id": "install-msi-policy", "mode": "ENFORCEMENT", "resourceGroups": [ { "resources": [ { "id": "install-msi", "pkg": { "desiredState": "INSTALLED", "msi": { "source": { "gcs": { "bucket": "my-bucket", "generation": "1619136883923956", "object": "my-app.msi" } } } } } ] } ] } ], "rollout": { "disruptionBudget": { "fixed": 10 }, "minWaitDuration": "300s" } } }, "orchestrationScope": { "selectors": [ { "resourceHierarchySelector": { "includedProjects": [ "projects/87654321", "projects/4567890" ] } } ] }, "state": "ACTIVE" }
QUOTA_PROJECT_ID
: o ID do projeto de cota ou do projeto de faturamento.FOLDER_NUMBER
: o ID numérico da pasta em que você quer criar o orquestrador de políticas.JSON_OS_POLICY_ORCHESTRATOR
: o objeto orquestrador de políticas em formato JSON que define o escopo, o recurso orquestrado e o estado de orquestração. Para mais informações sobre os parâmetros e o formato, consulteResource: folders.locations.global.policyOrchestrators
.- Converter a amostra em JSON
Faça a seguinte solicitação:
POST https://osconfig.googleapis.com/v2beta/folders/123456/locations/global/policyOrchestrators \ -H "x-goog-user-project: my-quota-project { "action": "UPSERT", "orchestratedResource": { "osPolicyAssignmentV1Payload": { "instanceFilter": { "inventories": [ { "osShortName": "windows" } ] }, "osPolicies": [ { "id": "install-msi-policy", "mode": "ENFORCEMENT", "resourceGroups": [ { "resources": [ { "id": "install-msi", "pkg": { "desiredState": "INSTALLED", "msi": { "source": { "gcs": { "bucket": "my-bucket", "generation": "1619136883923956", "object": "my-app.msi" } } } } } ] } ] } ], "rollout": { "disruptionBudget": { "fixed": 10 }, "minWaitDuration": "300s" } } }, "orchestrationScope": { "selectors": [ { "resourceHierarchySelector": { "includedProjects": [ "projects/87654321", "projects/4567890" ] } } ] }, "state": "ACTIVE" }
QUOTA_PROJECT_ID
: o ID do projeto de cota ou do projeto de faturamento.ORGANIZATION_NUMBER
: o ID numérico da organização em que você quer criar o orquestrador de políticas.JSON_OS_POLICY_ORCHESTRATOR
: o objeto orquestrador de políticas em formato JSON que define o escopo, o recurso orquestrado e o estado de orquestração. Para mais informações sobre os parâmetros e o formato, consulteResource: organizations.locations.global.policyOrchestrators
.- Converter a amostra em JSON
Faça a seguinte solicitação:
POST https://osconfig.googleapis.com/v2beta/organizations/567890/locations/global/policyOrchestrators \ -H "x-goog-user-project: my-quota-project { "action": "UPSERT", "orchestratedResource": { "osPolicyAssignmentV1Payload": { "instanceFilter": { "inventories": [ { "osShortName": "windows" } ] }, "osPolicies": [ { "id": "install-msi-policy", "mode": "ENFORCEMENT", "resourceGroups": [ { "resources": [ { "id": "install-msi", "pkg": { "desiredState": "INSTALLED", "msi": { "source": { "gcs": { "bucket": "my-bucket", "generation": "1619136883923956", "object": "my-app.msi" } } } } } ] } ] } ], "rollout": { "disruptionBudget": { "fixed": 10 }, "minWaitDuration": "300s" } } }, "orchestrationScope": { "selectors": [ { "resourceHierarchySelector": { "includedProjects": [ "projects/87654321", "projects/4567890" ] } } ] }, "state": "ACTIVE" }
- No cliente local, crie ou faça o download de um arquivo de política do SO. Esse arquivo precisa ser JSON ou YAML. Para mais informações sobre como criar políticas do SO ou ver amostras de políticas do SO, consulte Políticas do SO.
No console do Google Cloud, acesse a página Políticas do SO.
Clique no Seletor de projetos na barra de ação do console do Google Cloud e selecione a pasta em que você quer criar o orquestrador de políticas.
Clique em Criar orquestrador de políticas.
Especifique um nome e uma descrição para o orquestrador de políticas. Consulte a Convenção de nomenclatura de recursos. O VM Manager atribui um ID exclusivo ao orquestrador de políticas. Você pode editar esse ID, se necessário.
Na seção Políticas do SO, selecione e faça upload do arquivo da política do SO.
Opcional: na seção Estado, selecione uma das seguintes opções para especificar o comportamento do orquestrador de políticas:
ACTIVE
: depois de criado, o orquestrador de políticas realiza ações imediatamente.STOPPED
: um orquestrador de políticas criado nesse estado não realiza nenhuma ação imediatamente. Você pode editar o orquestrador de políticas mais tarde para mudar o estado dele.
No campo Ação, selecione EXCLUIR.
Na seção Escopo da orquestração, especifique as pastas e os projetos em que você quer implementar as políticas do SO. Você precisa inserir apenas os números de projeto e de pasta nesses campos, por exemplo,
123456,7654321
.Selecione as zonas que contêm as VMs às quais você quer aplicar as políticas do SO.
Opcional: na seção Instâncias de VM de destino, especifique as VMs de destino a que você quer aplicar as políticas do SO.
- Selecione as famílias do SO.
É possível filtrar ainda mais as VMs especificando rótulos de inclusão e exclusão.
Por exemplo, é possível selecionar todas as VMs do Ubuntu no ambiente de teste e excluir aquelas que executam o Google Kubernetes Engine. Basta especificar o seguinte:
- Família do SO:
ubuntu
- Incluir:
env:test
,env:staging
- Excluir:
goog-gke-node
- Família do SO:
Especifique um plano de lançamento para a atribuição de política do SO.
- Especifica o tamanho da onda (também conhecido como orçamento de interrupção). Por exemplo, 10%.
- Especifique o tempo de espera. Por exemplo, 15 minutes.
Clique em Criar.
FOLDER_NUMBER
: o ID numérico da pasta de onde você quer excluir os recursos da política do SO.POLICY_ID
: o ID da política para o recurso do orquestrador de políticas do SO.QUOTA_PROJECT_ID
: o ID do projeto de cota ou do projeto de faturamento.FOLDER_NUMBER
: o ID numérico da pasta de onde você quer excluir os recursos da política do SO.POLICY_ID
: o ID da política para o recurso do orquestrador de políticas do SO.QUOTA_PROJECT_ID
: o ID do projeto de cota ou do projeto de faturamento.ORGANIZATION_NUMBER
: o ID numérico da organização de que você quer excluir os recursos da política do SO.POLICY_ID
: o ID da política para o recurso do orquestrador de políticas do SO.PROJECT_NUMBER
: o ID numérico do projeto em que você quer criar o orquestrador de políticas.JSON_OS_POLICY_ORCHESTRATOR
: o objeto orquestrador de políticas em formato JSON que define o escopo, o recurso orquestrado e o estado de orquestração. Para mais informações sobre os parâmetros e o formato, consulteResource: folders.locations.global.policyOrchestrators
.QUOTA_PROJECT_ID
: o ID do projeto de cota ou do projeto de faturamento.FOLDER_NUMBER
: o ID numérico da pasta de onde você quer excluir os recursos da política do SO.JSON_OS_POLICY_ORCHESTRATOR
: o objeto orquestrador de políticas em formato JSON que define o ID da política, o escopo do orquestrador, o recurso orquestrado e o estado da orquestração. Para mais informações sobre os parâmetros e o formato, consulteResource: folders.locations.global.policyOrchestrators
.QUOTA_PROJECT_ID
: o ID do projeto de cota ou do projeto de faturamento.ORGANIZATION_NUMBER
: o ID numérico da organização de que você quer excluir os recursos da política do SO.JSON_OS_POLICY_ORCHESTRATOR
: o objeto orquestrador de políticas em formato JSON que define o ID da política, o escopo do orquestrador, o recurso orquestrado e o estado da orquestração. Para mais informações sobre os parâmetros e o formato, consulteResource: organizations.locations.global.policyOrchestrators
.
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.
Criar ou atualizar atribuições de políticas do SO em projetos e zonas
É possível criar orquestradores de políticas para aplicar políticas do SO a recursos selecionados em um projeto, uma pasta ou uma organização.
Console
Para criar um orquestrador de políticas e aplicar atribuições de políticas do SO em uma pasta, faça o seguinte:
gcloud
Para criar um orquestrador de políticas, siga estas etapas:
Projeto
gcloud beta compute os-config policy-orchestrators create ORCHESTRATOR_NAME \ --policy-type=os_policy_assignment_v1 \ --policy-file=OS_POLICY_ASSIGNMENT_YAML_FILE \ --policy-id=POLICY_ID \
Substitua:
Exemplo
gcloud beta compute os-config policy-orchestrators create my-os-policy-orchestrator \ --policy-type=os_policy_assignment_v1 \ --policy-file=/downloads/assignment-config.yaml \ --policy-id=policy-123 \
Pasta
gcloud --billing-project=QUOTA_PROJECT_ID beta compute os-config policy-orchestrators create ORCHESTRATOR_NAME \ --folder=FOLDER_NUMBER \ --policy-type=os_policy_assignment_v1 \ --policy-file=OS_POLICY_ASSIGNMENT_YAML_FILE \ --policy-id=POLICY_ID \ --include-projects=PROJECT_NUMBERS
Substitua:
Exemplo
gcloud --billing-project=my-quota-project beta compute os-config policy-orchestrators create my-os-policy-orchestrator \ --folder=123456 \ --policy-type=os_policy_assignment_v1 \ --policy-file=/downloads/assignment-config.yaml \ --policy-id=policy-123 \ --include-projects=87654321,4567890
Organização
gcloud --billing-project=QUOTA_PROJECT_ID beta compute os-config policy-orchestrators create ORCHESTRATOR_NAME \ --organization=ORGANIZATION_NUMBER \ --policy-type=os_policy_assignment_v1 \ --policy-file=OS_POLICY_ASSIGNMENT_YAML_FILE \ --policy-id=POLICY_ID \ --include-projects=PROJECT_NUMBERS
Substitua:
Exemplo
gcloud --billing-project=my-quota-project beta compute os-config policy-orchestrators create my-os-policy-orchestrator \ --organization=123456 \ --policy-type=os_policy_assignment_v1 \ --policy-file=/downloads/assignment-config.yaml \ --policy-id=policy-123 \ --include-projects=87654321,4567890
REST
Para criar um orquestrador de políticas, siga estas etapas:
Projeto
Envie uma solicitação
POST
para o métodoprojects.locations.global.policyOrchestrators.create
.No corpo da solicitação, cole as especificações de atribuição da política do SO da etapa anterior.
POST https://osconfig.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/policyOrchestrators { JSON_OS_POLICY_ORCHESTRATOR }
Substitua:
Exemplo
Por exemplo, para criar uma atribuição de política de SO que instale um MSI do Windows transferido por download de um bucket do Cloud Storage usando a Atribuição de política de SO de amostra, siga estas etapas:
Pasta
Envie uma solicitação
POST
para o métodofolders.locations.global.policyOrchestrators.create
.No corpo da solicitação, cole as especificações de atribuição da política do SO da etapa anterior.
POST https://osconfig.googleapis.com/v2beta/folders/FOLDER_NUMBER/locations/global/policyOrchestrators -H "x-goog-user-project: QUOTA_PROJECT_ID" { JSON_OS_POLICY_ORCHESTRATOR }
Substitua:
Exemplo
Por exemplo, para criar uma atribuição de política de SO que instale um MSI do Windows transferido por download de um bucket do Cloud Storage usando a Atribuição de política de SO de amostra, siga estas etapas:
Organização
Envie uma solicitação
POST
para o métodoorganizations.locations.global.policyOrchestrators.create
.No corpo da solicitação, cole as especificações de atribuição da política do SO da etapa anterior.
POST https://osconfig.googleapis.com/v2beta/organizations/ORGANIZATION_NUMBER/locations/global/policyOrchestrators \ -H "x-goog-user-project: QUOTA_PROJECT_ID" { JSON_OS_POLICY_ORCHESTRATOR }
Substitua:
Exemplo
Por exemplo, para criar uma atribuição de política de SO que instale um MSI do Windows transferido por download de um bucket do Cloud Storage usando a Atribuição de política de SO de amostra, siga estas etapas:
Excluir atribuições de política do SO de vários projetos
É possível usar o orquestrador de políticas para excluir políticas do SO de vários projetos na sua pasta ou organização especificando o ID exclusivo da política para o recurso de política do SO.
Console
Para excluir políticas de SO em uma pasta, faça o seguinte:
gcloud
Para excluir políticas do SO de vários projetos usando um orquestrador de políticas, use o comando
beta os-config policy-orchestrators create
e especifique a ação comodelete
para opolicy-id
associado à atribuição de política do SO.Projeto
gcloud beta compute os-config policy-orchestrators create ORCHESTRATOR_NAME \ --policy-type=os_policy_assignment_v1 \ --policy-file=OS_POLICY_ASSIGNMENT_YAML_FILE \ --policy-id=POLICY_ID \ --action=delete
Substitua:
Exemplo
gcloud beta compute os-config policy-orchestrators create my-os-policy-orchestrator \ --policy-type=os_policy_assignment_v1 --policy-id=my-policy \ --action=delete
Pasta
gcloud --billing-project=QUOTA_PROJECT_ID beta compute os-config policy-orchestrators create ORCHESTRATOR_NAME \ --policy-type=os_policy_assignment_v1 \ --policy-id=POLICY_ID \ --action=delete
Substitua:
Exemplo
gcloud --billing-project=my-quota-project beta compute os-config policy-orchestrators create my-os-policy-orchestrator \ --folder=123456 \ --policy-type=os_policy_assignment_v1 \ --policy-id=my-policy \ --action=delete
Organização
gcloud --billing-project=QUOTA_PROJECT_ID beta compute os-config policy-orchestrators create ORCHESTRATOR_NAME \ --organization=ORGANIZATION_NUMBER \ --policy-type=os_policy_assignment_v1 \ --policy-id=POLICY_ID \ --action=delete
Substitua:
Exemplo
gcloud --billing-project=my-quota-project beta compute os-config policy-orchestrators create my-os-policy-orchestrator \ --organization=987654321 --policy-type=os_policy_assignment_v1 --policy-id=my-policy \ --action=delete
REST
Para criar um orquestrador de políticas que exclui políticas do SO de vários projetos, use um dos métodos a seguir e especifique a ação como
DELETE
:Projeto
Envie uma solicitação
POST
para o métodoprojects.locations.global.policyOrchestrators.create
.No corpo da solicitação, especifique o ID da política associado à atribuição da política do SO.
POST https://osconfig.googleapis.com/v2beta/projects/PROJECT_NUMBER/locations/global/policyOrchestrators { JSON_OS_POLICY_ORCHESTRATOR }
Substitua:
Exemplo
POST https://osconfig.googleapis.com/v2beta/projects/567890/locations/global/policyOrchestrators { "action": "DELETE", "orchestratedResource": { "id": "my-policy", "osPolicyAssignmentV1Payload": {} }, "orchestrationScope": { "selectors": [ { "resourceHierarchySelector": { "includedProjects": [ "projects/87654321", "projects/4567890" ] } } ] }, "state": "ACTIVE" }
Pasta
Envie uma solicitação
POST
para o métodofolders.locations.global.policyOrchestrators.create
.No corpo da solicitação, especifique o ID da política associado à atribuição da política do SO.
POST https://osconfig.googleapis.com/v2beta/folders/FOLDER_NUMBER/locations/global/policyOrchestrators -H "x-goog-user-project: QUOTA_PROJECT_ID" { JSON_OS_POLICY_ORCHESTRATOR }
Substitua:
Exemplo
Por exemplo, para excluir recursos de políticas de SO de vários projetos, faça a seguinte solicitação:
POST https://osconfig.googleapis.com/v2beta/folders/567890/locations/global/policyOrchestrators -H "x-goog-user-project: my-quota-project { "action": "DELETE", "orchestratedResource": { "id": "my-policy", "osPolicyAssignmentV1Payload": {} }, "orchestrationScope": { "selectors": [ { "resourceHierarchySelector": { "includedProjects": [ "projects/87654321", "projects/4567890" ] } } ] }, "state": "ACTIVE" }
Organização
Envie uma solicitação
POST
para o métodoorganizations.locations.global.policyOrchestrators.create
.No corpo da solicitação, especifique o ID da política associado à atribuição da política do SO.
POST https://osconfig.googleapis.com/v2beta/organizations/ORGANIZATION_NUMBER/locations/global/policyOrchestrators -H "x-goog-user-project: QUOTA_PROJECT_ID" { JSON_OS_POLICY_ORCHESTRATOR }
Substitua:
Exemplo
Por exemplo, para excluir recursos de políticas de SO de vários projetos, faça a seguinte solicitação:
POST https://osconfig.googleapis.com/v2beta/organizations/567890/locations/global/policyOrchestrators -H "x-goog-user-project: my-quota-project { "action": "DELETE", "orchestratedResource": { "id": "my-policy", "osPolicyAssignmentV1Payload": {} }, "orchestrationScope": { "selectors": [ { "resourceHierarchySelector": { "includedProjects": [ "projects/87654321", "projects/4567890" ] } } ] }, "state": "ACTIVE" }
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-12-22 UTC.
-