Giter VIP home page Giter VIP logo

terraform-azure-cloudquery's Introduction

CloudQuery Azure Module

This folder contains a Terraform module to deploy a CloudQuery cluster in Azure on top of AKS.

Usage

Examples are included in the example folder, but simple usage is as follows:

module "cloudquery" {
  source  = "cloudquery/cloudquery/azure"
  version = "~> 0.1"

  name = "cloudquery"


  # path to your cloudquery config
  config_file = "config.yml"

}

Existing VPC

TDB

Run Helm Separately

TDB

Examples

Requirements

Name Version
terraform >= 0.15
azurerm >= 2.4.6
helm >= 2.5
kubernetes ~> 2.11
random ~> 3.3

Providers

Name Version
azurerm >= 2.4.6
helm >= 2.5
random ~> 3.3

Modules

Name Source Version
aks github.com/Azure/terraform-azurerm-aks 6.2.0
naming Azure/naming/azurerm ~> 0.2.0
network Azure/network/azurerm ~> 3.5.0
postgresql github.com/Azure/terraform-azurerm-postgresql 0f607dbc9d08528bb16a48fc9dc8831aa4a92f5c

Resources

Name Type
azurerm_key_vault.vault resource
azurerm_key_vault_secret.pg_dsn resource
azurerm_key_vault_secret.pg_password resource
azurerm_private_endpoint.psql_private_endpoint resource
azurerm_resource_group.rg resource
helm_release.cloudquery resource
random_password.postgresql resource
azurerm_client_config.current data source

Inputs

Name Description Type Default Required
chart_values Variables to pass to the helm chart string "" no
chart_version The version of CloudQuery helm chart string "1.0.32" no
config_file Path to the CloudQuery config.hcl string "" no
install_helm_chart Enable/Disable helm chart installation bool true no
kubernetes_enable_host_encryption Enable Host Encryption for default node pool. Encryption at host feature must be enabled on the subscription: https://docs.microsoft.com/azure/virtual-machines/linux/disks-enable-host-based-encryption-cli bool false no
kubernetes_node_disk_size_gb Node disk size in gb. number 30 no
kubernetes_orchestrator_version Specify which Kubernetes release to use for the orchestration layer. The default used is the latest Kubernetes version available in the region string "1.23.5" no
kubernetes_private_cluster_enabled If true cluster API server will be exposed only on internal IP address and available only in cluster vnet. bool false no
kubernetes_sku_tier The SKU Tier that should be used for this Kubernetes Cluster. Possible values are Free and Paid string "Free" no
kubernetes_version Specify which Kubernetes release to use. The default used is the latest Kubernetes version available in the region string "1.23.5" no
location The location to host resources string n/a yes
name Name to use on all resources created string "cloudquery" no
postgres_backup_retention_days Retention days for backup number 7 no
postgres_firewall_rules If Postgres is publicly accessible you will need to specified a firewall rule to allow connections
list(object({
name = string
start_ip = string
end_ip = string
}))
[] no
postgres_publicly_accessible Make Postgres publicly accessible (might be needed if you want to connect to it from Grafana or other tools). bool false no
postgres_server_version Version of Azure Postgres engine to use string "11" no
postgres_sku_name Postgresql sku name string "GP_Gen5_2" no
tags A map of tags to use on all resources map(string) {} no

Outputs

Name Description
aks_host AKS host
network_id ID of the network that was created
postgres_fqdn Fqdn of the Postgres server
postgres_server_administrator_password Administrator password for cloudquery database

Troubleshooting

If helm installtion is stuck in some hanging state you can run the following commands:

# check if helm is installed in cloudquery namespace
helm ls -n cloudquery
# If yes uninstall with the your release name
helm uninstall YOUR_RELEASE_NAME -n cloudquery

Authors

Module is maintained by CloudQuery Team.

License

Apache 2 Licensed. See LICENSE for full details.

terraform-azure-cloudquery's People

Contributors

cq-bot avatar semantic-release-bot avatar zagronitay avatar erezrokah avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.