Terraform: lecciones aprendidas

21 views
Skip to first unread message

Kiquenet

unread,
Feb 27, 2025, 8:01:53 AMFeb 27
to AltNet-Hispano
Alguna "Ultimate Guide", "Ultimate Tutorial" o "Comprehensive guide", buenas prácticas, lecciones aprendidas, errores más comunes sobre Terraform ?

pueden comentar sus experiencias, su visión, sus buenas prácticas al respecto,  ejemplos, sus enlaces delicious o Pocket que compartan, etc ?

Desde ya muchas gracias!!

Why we use Terraform and not Chef, Puppet, Ansible, Pulumi, or CloudFormation.


Establecer canales de comunicación que eviten la repetición y dispersen el conocimiento

Compartir recursos, experiencias, necesidades y buscar sinergias: productividad muy alta, acortar los tiempos de desarrollo, los riesgos y los costes.

Sistematización de lecciones aprendidas y buenas prácticas.




Kiquenet

unread,
Mar 19, 2025, 6:27:48 AMMar 19
to AltNet-Hispano
Terraform y Azure
es una buena práctica utilizar un módulo de convenciones de nombres para mantener consistencia en los nombres de los recursos ?

Kiquenet

unread,
Mar 19, 2025, 7:02:04 AMMar 19
to AltNet-Hispano

// modules/naming/locals.tf
locals {
  resources = {
    azurerm_storage_account                    = "[location_continent]az[location_abbr][app][env_abbr]stg"
    azurerm_virtual_network                    = "vnet-[bu]-[app]-[env_productive]-[location]-"
    azurerm_subnet                             = "subnet-[bu]-[app]-[type]-[location]-[company_env]"
    azurerm_network_security_group             = "nsg-subnet-[bu]-[app]-[type]-[location]-[company_env]"
    azurerm_log_analytics_workspace            = "[location_continent]az[location_abbr]-[app]-[env_abbr]-loganalytics-"
    azurerm_key_vault                          = "[location_continent]az[location_abbr]-[app_abbr]-[env_abbr]-kvault-"
    azurerm_key_vault_key                      = "kvk-[bu]-[app]-[company_env]-[location]-"
    azurerm_private_endpoint                   = "[location_continent]az[location_abbr]-[app]-[env_abbr]-pendpoint-"
    azurerm_cognitive_account                  = "cog-[bu]-[app]-[company_env]-[location]-"
    azurerm_user_assigned_identity             = "id-[bu]-[app]-[company_env]-[location]-"
    azurerm_kubernetes_cluster                 = "[location_continent]az[location_abbr]-[app]-[env_abbr]-aks-"
    azurerm_application_gateway                = "[location_continent]az[location_abbr]-[app]-[env_abbr]-appgw-"
    azurerm_public_ip                          = "[location_continent]az[location_abbr]-[app]-[env_abbr]-ip-"
    azurerm_container_registry                 = "[location_continent]az[location_abbr][app][env_abbr]cregistry"
    azurerm_container_registry_token           = "tokn-[bu]-[app]-[company_env]-[location]-"
    azurerm_postgresql_flexible_server         = "[location_continent]az[location_abbr]-[app]-[env_abbr]-postgres-"
    azurerm_cosmosdb_mongodb_vcore             = "[location_continent]az[location_abbr]-[app]-[env_abbr]-cosmosdb-"
    azurerm_resource_group_template_deployment = "deploy-[bu]-[app]-[company_env]-[location]-"
    azurerm_container_app_environment          = "cae-[bu]-[app]-[company_env]-[location]-"
    azurerm_key_vault_secret                   = "kvs-[bu]-[app]-[company_env]-[location]-"
    azurerm_key_vault_certificate              = "kvc-[bu]-[app]-[company_env]-[location]-"
  }
Reply all
Reply to author
Forward
0 new messages