Uma vantagem da utilização de modelos para a sua implementação é a capacidade de criar e definir propriedades personalizadas, que lhe permitem reutilizar modelos em zonas, regiões e projetos.
As propriedades do modelo são variáveis arbitrárias. Qualquer ficheiro de configuração ou ficheiro de modelo pode fornecer um valor para uma propriedade do modelo sem modificar o modelo. Por conseguinte, pode alterar o valor de uma propriedade para várias configurações sem alterar o próprio modelo.
Para fazer referência a um valor arbitrário, use esta sintaxe num modelo:
context.properties["property-name"]
Além das propriedades do modelo, também pode usar variáveis de ambiente específicas da sua implementação, que são pré-preenchidas com informações sobre a implementação. Pode usar variáveis de ambiente em modelos para obter informações únicas sobre a sua implementação.
Chama uma variável de ambiente através desta sintaxe:
context.env['variable-name']
As variáveis de ambiente válidas incluem o nome da implementação, o ID do projeto, a propriedade name do recurso e o tipo de configuração. Saiba mais acerca das variáveis de ambiente.
Propriedades do modelo e variáveis de ambiente num modelo
Neste passo, vm-template.py
mostra as vantagens das propriedades dos modelos e das variáveis de ambiente. Abrir vm-template.py
:
cd deploymentmanager-samples/examples/v2/step_by_step_guide/step7_use_environment_variables/python
nano vm-template.py # use your preferred text editor
Várias partes do modelo foram substituídas por propriedades do modelo e variáveis de ambiente. Por exemplo, o ID do projeto é substituído por context.env[project]
, pelo que não tem de substituir manualmente o ID do projeto nos seus modelos.
Os comentários no ficheiro descrevem outras alterações ao modelo.
Da mesma forma, network-template.py
e firewall-template.py
usam o nome da implementação na respetiva definição chamando context.env['name']
.
Implementar a configuração
Para ver o ficheiro de configuração desta implementação, execute o seguinte comando:
nano config-with-many-templates.yaml
Guarde as alterações e volte a implementar a configuração para confirmar que as variáveis funcionam.
gcloud deployment-manager deployments create deployment-with-template-properties --config config-with-many-templates.yaml
Eliminar a implementação
Recomendamos que elimine a implementação para evitar custos. Não precisa desta implementação para o passo seguinte. Execute o seguinte comando para eliminar a implementação:
gcloud deployment-manager deployments delete deployment-with-template-properties
Os nossos planos para o futuro: scripts auxiliares
Em seguida, saiba mais sobre os scripts auxiliares para realizar tarefas repetidas de forma eficiente.