Azure Cosmos DB Terraform Module and Samples
Перейти к файлу
Gin e37be5a796
Merge pull request #30 from soferreira/patch-1
fix cosmos db private endpoint sample
2022-12-22 15:15:05 -05:00
examples format file with terraform fmt 2022-11-01 11:27:05 +01:00
.gitignore removed .vs files 2022-06-07 08:29:28 -04:00
LICENSE Tested 103 and updated license/readme 2022-04-23 03:20:23 +00:00
README.md Testing 2022-05-09 23:54:05 +00:00
SECURITY.md Microsoft mandatory file 2022-05-18 22:03:15 +00:00
account_output.tf Updated formatting 2022-05-28 00:47:03 +00:00
apis_output.tf Updated formatting 2022-05-28 00:47:03 +00:00
cassandra.tf updated API arguments for Gremlin, Cassandra and Mongo API and updated examples accordingly 2022-05-26 07:33:50 -04:00
cassandra_variable.tf updated API arguments for Gremlin, Cassandra and Mongo API and updated examples accordingly 2022-05-26 07:33:50 -04:00
cmk_data.tf Restructured repo to standard module format 2022-05-09 15:28:20 +00:00
cmk_variables.tf Restructured repo to standard module format 2022-05-09 15:28:20 +00:00
data.tf Restructured repo to standard module format 2022-05-09 15:28:20 +00:00
diagnostic.tf Restructured repo to standard module format 2022-05-09 15:28:20 +00:00
diagnostic_variables.tf Restructured repo to standard module format 2022-05-09 15:28:20 +00:00
firewall_variables.tf Restructured repo to standard module format 2022-05-09 15:28:20 +00:00
gremlin.tf updated API arguments for Gremlin, Cassandra and Mongo API and updated examples accordingly 2022-05-26 07:33:50 -04:00
gremlin_variables.tf updated API arguments for Gremlin, Cassandra and Mongo API and updated examples accordingly 2022-05-26 07:33:50 -04:00
locals.tf Restructured repo to standard module format 2022-05-09 15:28:20 +00:00
main.tf Updated to azurerm3.0 provider 2022-06-11 04:07:14 +00:00
mongo.tf updated API arguments for Gremlin, Cassandra and Mongo API and updated examples accordingly 2022-05-26 07:33:50 -04:00
mongo_variables.tf updated API arguments for Gremlin, Cassandra and Mongo API and updated examples accordingly 2022-05-26 07:33:50 -04:00
privateendpoint.tf Updated to azurerm3.0 provider 2022-06-11 04:07:14 +00:00
privateendpoint_data.tf Restructured repo to standard module format 2022-05-09 15:28:20 +00:00
privateendpoint_variables.tf updates PE cofig to make DNS entry optional and checking in sample 303 2022-05-25 12:06:46 -04:00
sql.tf Updated unique key to dynamic 2022-05-26 04:54:12 +00:00
sql_variables.tf Restructured repo to standard module format 2022-05-09 15:28:20 +00:00
table.tf Restructured repo to standard module format 2022-05-09 15:28:20 +00:00
table_variables.tf Restructured repo to standard module format 2022-05-09 15:28:20 +00:00
variables.tf Restructured repo to standard module format 2022-05-09 15:28:20 +00:00

README.md

Getting Started

The following cosmos db terraform module provides configurable baseline service capabilities to help simplify infrastructure as code deployment and accelerate workload enablement. The module is separate into relevant subresource groupings based on cosmos db api requirements. The input variables specified for the module will provision the appropriate database/api instances. This module does not create dependent resources for certain configurations, these resources should be provision external to the module. Ex. the module will not create a key vault for customer managed key encryption, this should be created external to the module and passed in as a parameter. Please see the examples for different configurations.

Important: Please specify only the required database/api parameter for single api type. Specifying multiple (sql_api parameters and mongo_db parameters) would result in unintended errors.

Terraform Files and associated resources, variables and outputs

  • Azure Cosmos DB Account Creation and Configurations
    • Azure Cosmos DB Account
      • main.tf and variables.tf helps create the cosmos db account and is the main portion of the module
    • Networking
      • firewall_variables.tf and locals.tf are used to aggregrated list of IPs/VNETs to whitelist within cosmos db account
      • privateendpoint.tf supports creation of multiple private endpoints and assumes that there are some network perms available to create the endpoints
    • Customer managed key
      • cmk_data.tf and cmk_variables.tf c
    • Diagnostic settings
      • diagnostic.tf (Supports event hub, storage account and log analytics workspace targets)
  • DBs by API
    • sql_api.tf and sql_variables.tf: SQL API resources
    • mongo_api.tf and mongo_variables.tf: Mongo API resources
    • cassandra_api.tf and cassandra_variable.tf: Cassandra API resources
    • gremlin_api.tf and gremlin_variables.tf: Gremlin API resources
    • table.tf and table_variables.tf: Table API resources
  • Outputs
    • account_output.tf and apis_output.tf: Contains outputs for relevant

Feedback and suggestions

Please create a github issue for suggestions, feedback and questions.

Contribute

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.