Skip to content

opszero/terraform-azurerm-flexible-postgresql

Repository files navigation

Providers

Name Version
azuread >= 2.53.1
azurerm >=3.89.0
random 3.7.2

Inputs

Name Description Type Default Required
active_directory_auth_enabled Set to true to enable Active Directory Authentication bool false no
ad_admin_objects_id azurerm postgresql flexible server active directory administrator's object id string null no
addon_resource_group_name The name of the addon vnet resource group string "" no
addon_vent_link The name of the addon vnet bool false no
addon_virtual_network_id The name of the addon vnet link vnet id string "" no
admin_objects_ids IDs of the objects that can do all operations on all keys, secrets and certificates. list(string) [] no
admin_password The password associated with the admin_username user string null no
admin_password_length Length of random password generated. number 16 no
admin_username The administrator login name for the new SQL Server string null no
allowed_cidrs Map of authorized cidrs to connect database map(string) {} no
backup_retention_days The backup retention days for the PostgreSQL Flexible Server. Possible values are between 1 and 35 days. Defaults to 7 number 7 no
charset Specifies the Charset for the PostgreSQL Database, which needs to be a valid PostgreSQL Charset. Changing this forces a new resource to be created. string "utf8" no
cmk_encryption_enabled Enanle or Disable Database encryption with Customer Manage Key bool false no
collation Specifies the Collation for the PostgreSQL Database, which needs to be a valid PostgreSQL Collation. Changing this forces a new resource to be created. string "en_US.utf8" no
create_mode The creation mode. Can be used to restore or replicate existing servers. Possible values are Default, Replica, GeoRestore, and PointInTimeRestore. Defaults to Default string "Default" no
database_names Specifies the name of the MySQL Database, which needs to be a valid MySQL identifier. Changing this forces a new resource to be created. list(string)
[
"maindb"
]
no
delegated_subnet_id The resource ID of the subnet string null no
enabled Set to false to prevent the module from creating any resources. bool true no
existing_private_dns_zone Name of the existing private DNS zone bool false no
existing_private_dns_zone_id n/a string null no
existing_private_dns_zone_name The name of the Private DNS zone (without a terminating dot). Changing this forces a new resource to be created. string "" no
expiration_date Expiration UTC datetime (Y-m-d'T'H:M:S'Z') string "2034-05-22T18:29:59Z" no
geo_backup_key_vault_key_id Key-vault key id to encrypt the geo redundant backup string null no
geo_backup_user_assigned_identity_id User assigned identity id to encrypt the geo redundant backup string null no
geo_redundant_backup_enabled Should geo redundant backup enabled? Defaults to false. Changing this forces a new PostgreSQL Flexible Server to be created. bool false no
high_availability Map of high availability configuration: https://docs.microsoft.com/en-us/azure/mysql/flexible-server/concepts-high-availability. null to disable high availability
object({
standby_availability_zone = optional(number)
})
{
"standby_availability_zone": 2
}
no
key_vault_id Specifies the URL to a Key Vault Key (either from a Key Vault Key, or the Key URL for the Key Vault Secret string "" no
location The Azure Region where the PostgreSQL Flexible Server should exist. Changing this forces a new PostgreSQL Flexible Server to be created. string "" no
main_rg_name n/a string "" no
maintenance_window Map of maintenance window configuration: https://docs.microsoft.com/en-us/azure/mysql/flexible-server/concepts-maintenance map(number) null no
name Name (e.g. app or cluster). string "" no
point_in_time_restore_time_in_utc The point in time to restore from creation_source_server_id when create_mode is PointInTimeRestore. Changing this forces a new PostgreSQL Flexible Server to be created. string null no
postgresql_version The version of the PostgreSQL Flexible Server to use. Possible values are 5.7, and 8.0.21. Changing this forces a new PostgreSQL Flexible Server to be created. string "5.7" no
principal_name The name of Azure Active Directory principal. string null no
principal_type Set the principal type, defaults to ServicePrincipal. The type of Azure Active Directory principal. Possible values are Group, ServicePrincipal and User. Changing this forces a new resource to be created. string "Group" no
private_dns n/a bool false no
public_network_access_enabled Enable public network access for the PostgreSQL Flexible Server bool false no
registration_enabled Is auto-registration of virtual machine records in the virtual network in the Private DNS zone enabled bool false no
resource_group_name A container that holds related resources for an Azure solution string "" no
rotation_policy The rotation policy for azure key vault key
map(object({
time_before_expiry = string
expire_after = string
notify_before_expiry = string
}))
null no
server_configurations PostgreSQL server configurations to add. map(string) {} no
server_custom_name User defined name for the PostgreSQL flexible server string null no
size Size for PostgreSQL Flexible server sku : https://docs.microsoft.com/en-us/azure/postgresql/flexible-server/concepts-compute-storage. string "D2ds_v4" no
source_server_id The resource ID of the source PostgreSQL Flexible Server to be restored. Required when create_mode is PointInTimeRestore, GeoRestore, and Replica. Changing this forces a new PostgreSQL Flexible Server to be created. string null no
storage_mb The max storage allowed for the PostgreSQL Flexible Server. Possible values are 32768, 65536, 131072, 262144, 524288, 1048576, 2097152, 4194304, 8388608, and 16777216. string "32768" no
tags Additional tags (e.g. map(BusinessUnit,XYZ). map(string) {} no
tier Tier for PostgreSQL Flexible server sku : https://docs.microsoft.com/en-us/azure/postgresql/flexible-server/concepts-compute-storage. Possible values are: GeneralPurpose, Burstable, MemoryOptimized. string "GeneralPurpose" no
virtual_network_id The name of the virtual network string "" no
zone Specifies the Availability Zone in which this PostgreSQL Flexible Server should be located. Possible values are 1, 2 and 3. number 1 no

Resources

Name Type
azurerm_key_vault_key.kvkey resource
azurerm_postgresql_flexible_server.main resource
azurerm_postgresql_flexible_server_active_directory_administrator.main resource
azurerm_postgresql_flexible_server_configuration.main resource
azurerm_postgresql_flexible_server_database.main resource
azurerm_postgresql_flexible_server_firewall_rule.firewall_rules resource
azurerm_private_dns_zone.main resource
azurerm_private_dns_zone_virtual_network_link.addon_vent_link resource
azurerm_private_dns_zone_virtual_network_link.main resource
azurerm_private_dns_zone_virtual_network_link.main2 resource
azurerm_role_assignment.identity_assigned resource
azurerm_role_assignment.rbac_keyvault_crypto_officer resource
azurerm_user_assigned_identity.identity resource
random_password.main resource
azuread_group.main data source
azurerm_client_config.current data source

Outputs

Name Description
azurerm_private_dns_zone_id The Private DNS Zone ID.
azurerm_private_dns_zone_virtual_network_link_id The ID of the Private DNS Zone Virtual Network Link.
existing_private_dns_zone_virtual_network_link_id The ID of the Private DNS Zone Virtual Network Link.
postgresql_flexible_server_id The ID of the PostgreSQL Flexible Server.

🚀 Built by opsZero!

Since 2016 opsZero has been providing Kubernetes expertise to companies of all sizes on any Cloud. With a focus on AI and Compliance we can say we seen it all whether SOC2, HIPAA, PCI-DSS, ITAR, FedRAMP, CMMC we have you and your customers covered.

We provide support to organizations in the following ways:

We do this with a high-touch support model where you:

  • Get access to us on Slack, Microsoft Teams or Email
  • Get 24/7 coverage of your infrastructure
  • Get an accelerated migration to Kubernetes

Please schedule a call if you need support.



About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

No packages published

Contributors 2

  •  
  •  

Languages