From a9d5610a2948f696d86194350f65c6d9c10b7237 Mon Sep 17 00:00:00 2001 From: Annie Hedgpeth Date: Thu, 4 May 2017 08:28:04 -0500 Subject: [PATCH] provider/azurerm: Add example of CDN with Storage Account (#14193) * initial commit - 101-vm-from-user-image * changed branch name * not deploying - storage problems * provisions vm but image not properly prepared * storage not correct * provisions properly * changed main.tf to azuredeploy.tf * added tfvars and info for README * tfvars ignored and corrected file ext * added CI config; added sane defaults for variables; updated deployment script, added mac specific deployment for local testing * deploy.sh to be executable * executable deploy files * added CI files; changed vars * prep for PR * removal of old folder * prep for PR * wrong args for travis * more PR prep * updated README * commented out variables in terraform.tfvars * Topic 101 vm from user image (#2) * initial commit - 101-vm-from-user-image * added tfvars and info for README * added CI config; added sane defaults for variables; updated deployment script, added mac specific deployment for local testing * prep for PR * added new template * oops, left off master * prep for PR * correct repository for destination * renamed scripts to be more intuitive; added check for docker * merge vm simple; vm from image * initial commit * deploys locally * updated deploy * changed to allow http & https (like ARM tmplt) * changed host_name & host_name variable desc * prep for PR * took out armviz button and minor README changes * changed host_name * fixed merge conflicts * changed host_name variable * updating Hashicorp's changes to merged simple linux branch * updating files to merge w/master and prep for Hashicorp pr * reverted to Hashicorp's .travis.yml * terraform graph * removing pending example * cleaned up deploy.ci.sh --- .../azure-cdn-with-storage-account/README.md | 28 +++++++++++++ .../deploy.ci.sh | 29 +++++++++++++ .../deploy.mac.sh | 15 +++++++ .../azure-cdn-with-storage-account/graph.png | Bin 0 -> 69826 bytes .../azure-cdn-with-storage-account/main.tf | 39 ++++++++++++++++++ .../azure-cdn-with-storage-account/outputs.tf | 3 ++ .../variables.tf | 18 ++++++++ .../main.tf | 2 +- 8 files changed, 133 insertions(+), 1 deletion(-) create mode 100644 examples/azure-cdn-with-storage-account/README.md create mode 100755 examples/azure-cdn-with-storage-account/deploy.ci.sh create mode 100755 examples/azure-cdn-with-storage-account/deploy.mac.sh create mode 100644 examples/azure-cdn-with-storage-account/graph.png create mode 100644 examples/azure-cdn-with-storage-account/main.tf create mode 100644 examples/azure-cdn-with-storage-account/outputs.tf create mode 100644 examples/azure-cdn-with-storage-account/variables.tf diff --git a/examples/azure-cdn-with-storage-account/README.md b/examples/azure-cdn-with-storage-account/README.md new file mode 100644 index 000000000..8d2d0377c --- /dev/null +++ b/examples/azure-cdn-with-storage-account/README.md @@ -0,0 +1,28 @@ +# Create a CDN Profile, a CDN Endpoint with a Storage Account as origin + +This Terraform template was based on [this](https://github.com/Azure/azure-quickstart-templates/tree/master/201-cdn-with-storage-account) Azure Quickstart Template. Changes to the ARM template that may have occurred since the creation of this example may not be reflected in this Terraform template. + +This template creates a [CDN Profile](https://docs.microsoft.com/en-us/azure/cdn/cdn-overview) and a CDN Endpoint with the origin as a Storage Account. Note that the user needs to create a public container in the Storage Account in order for CDN Endpoint to serve content from the Storage Account. + +# Important + +The endpoint will not immediately be available for use, as it takes time for the registration to propagate through the CDN. For Azure CDN from Akamai profiles, propagation will usually complete within one minute. For Azure CDN from Verizon profiles, propagation will usually complete within 90 minutes, but in some cases can take longer. + +Users who try to use the CDN domain name before the endpoint configuration has propagated to the POPs will receive HTTP 404 response codes. If it has been several hours since you created your endpoint and you're still receiving 404 responses, please see [Troubleshooting CDN endpoints returning 404 statuses](https://docs.microsoft.com/en-us/azure/cdn/cdn-troubleshoot-endpoint). + +## main.tf +The `main.tf` file contains the actual resources that will be deployed. It also contains the Azure Resource Group definition and any defined variables. + +## outputs.tf +This data is outputted when `terraform apply` is called, and can be queried using the `terraform output` command. + +## provider.tf +Azure requires that an application is added to Azure Active Directory to generate the `client_id`, `client_secret`, and `tenant_id` needed by Terraform (`subscription_id` can be recovered from your Azure account details). Please go [here](https://www.terraform.io/docs/providers/azurerm/) for full instructions on how to create this to populate your `provider.tf` file. + +## terraform.tfvars +If a `terraform.tfvars` file is present in the current directory, Terraform automatically loads it to populate variables. We don't recommend saving usernames and password to version control, but you can create a local secret variables file and use `-var-file` to load it. + +If you are committing this template to source control, please insure that you add this file to your `.gitignore` file. + +## variables.tf +The `variables.tf` file contains all of the input parameters that the user can specify when deploying this Terraform template. diff --git a/examples/azure-cdn-with-storage-account/deploy.ci.sh b/examples/azure-cdn-with-storage-account/deploy.ci.sh new file mode 100755 index 000000000..8f1ff7c9f --- /dev/null +++ b/examples/azure-cdn-with-storage-account/deploy.ci.sh @@ -0,0 +1,29 @@ +#!/bin/bash + +set -o errexit -o nounset + +docker run --rm -it \ + -e ARM_CLIENT_ID \ + -e ARM_CLIENT_SECRET \ + -e ARM_SUBSCRIPTION_ID \ + -e ARM_TENANT_ID \ + -v $(pwd):/data \ + --workdir=/data \ + --entrypoint "/bin/sh" \ + hashicorp/terraform:light \ + -c "/bin/terraform get; \ + /bin/terraform validate; \ + /bin/terraform plan -out=out.tfplan -var resource_group=$KEY; \ + /bin/terraform apply out.tfplan" + +# cleanup deployed azure resources via terraform +docker run --rm -it \ + -e ARM_CLIENT_ID \ + -e ARM_CLIENT_SECRET \ + -e ARM_SUBSCRIPTION_ID \ + -e ARM_TENANT_ID \ + -v $(pwd):/data \ + --workdir=/data \ + --entrypoint "/bin/sh" \ + hashicorp/terraform:light \ + -c "/bin/terraform destroy -force -var resource_group=$KEY;" diff --git a/examples/azure-cdn-with-storage-account/deploy.mac.sh b/examples/azure-cdn-with-storage-account/deploy.mac.sh new file mode 100755 index 000000000..dfc34c2be --- /dev/null +++ b/examples/azure-cdn-with-storage-account/deploy.mac.sh @@ -0,0 +1,15 @@ +#!/bin/bash + +set -o errexit -o nounset + +if docker -v; then + + # generate a unique string for CI deployment + export KEY=$(cat /dev/urandom | env LC_CTYPE=C tr -cd 'a-z' | head -c 12) + export PASSWORD=$KEY$(cat /dev/urandom | env LC_CTYPE=C tr -cd 'A-Z' | head -c 2)$(cat /dev/urandom | env LC_CTYPE=C tr -cd '0-9' | head -c 2) + + /bin/sh ./deploy.ci.sh + +else + echo "Docker is used to run terraform commands, please install before run: https://docs.docker.com/docker-for-mac/install/" +fi \ No newline at end of file diff --git a/examples/azure-cdn-with-storage-account/graph.png b/examples/azure-cdn-with-storage-account/graph.png new file mode 100644 index 0000000000000000000000000000000000000000..b68b0087f4f5b3201ccb10c9af21965d95c24e76 GIT binary patch literal 69826 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 literal 0 HcmV?d00001 diff --git a/examples/azure-cdn-with-storage-account/main.tf b/examples/azure-cdn-with-storage-account/main.tf new file mode 100644 index 000000000..2e7f56954 --- /dev/null +++ b/examples/azure-cdn-with-storage-account/main.tf @@ -0,0 +1,39 @@ +# provider "azurerm" { +# subscription_id = "REPLACE-WITH-YOUR-SUBSCRIPTION-ID" +# client_id = "REPLACE-WITH-YOUR-CLIENT-ID" +# client_secret = "REPLACE-WITH-YOUR-CLIENT-SECRET" +# tenant_id = "REPLACE-WITH-YOUR-TENANT-ID" +# } + +resource "azurerm_resource_group" "rg" { + name = "${var.resource_group}" + location = "${var.location}" +} + +resource "azurerm_storage_account" "stor" { + name = "${var.resource_group}stor" + location = "${var.location}" + resource_group_name = "${azurerm_resource_group.rg.name}" + account_type = "${var.storage_account_type}" +} + +resource "azurerm_cdn_profile" "cdn" { + name = "${var.resource_group}CdnProfile1" + location = "${var.location}" + resource_group_name = "${azurerm_resource_group.rg.name}" + sku = "Standard_Akamai" +} + +resource "azurerm_cdn_endpoint" "cdnendpt" { + name = "${var.resource_group}CdnEndpoint1" + profile_name = "${azurerm_cdn_profile.cdn.name}" + location = "${var.location}" + resource_group_name = "${azurerm_resource_group.rg.name}" + + origin { + name = "${var.resource_group}Origin1" + host_name = "${var.host_name}" + http_port = 80 + https_port = 443 + } +} diff --git a/examples/azure-cdn-with-storage-account/outputs.tf b/examples/azure-cdn-with-storage-account/outputs.tf new file mode 100644 index 000000000..8f7c1e5c8 --- /dev/null +++ b/examples/azure-cdn-with-storage-account/outputs.tf @@ -0,0 +1,3 @@ +output "CDN Endpoint ID" { + value = "${azurerm_cdn_endpoint.cdnendpt.name}.azureedge.net" +} diff --git a/examples/azure-cdn-with-storage-account/variables.tf b/examples/azure-cdn-with-storage-account/variables.tf new file mode 100644 index 000000000..d9bf51015 --- /dev/null +++ b/examples/azure-cdn-with-storage-account/variables.tf @@ -0,0 +1,18 @@ +variable "resource_group" { + description = "The name of the resource group in which to create the virtual network." +} + +variable "location" { + description = "The location/region where the virtual network is created. Changing this forces a new resource to be created." + default = "southcentralus" +} + +variable "storage_account_type" { + description = "Specifies the type of the storage account" + default = "Standard_LRS" +} + +variable "host_name" { + description = "A string that determines the hostname/IP address of the origin server. This string could be a domain name, IPv4 address or IPv6 address." + default = "www.hostnameoforiginserver.com" +} \ No newline at end of file diff --git a/examples/azure-vm-simple-linux-managed-disk/main.tf b/examples/azure-vm-simple-linux-managed-disk/main.tf index ee44db013..5dc9ce1cb 100644 --- a/examples/azure-vm-simple-linux-managed-disk/main.tf +++ b/examples/azure-vm-simple-linux-managed-disk/main.tf @@ -105,4 +105,4 @@ resource "azurerm_virtual_machine" "vm" { enabled = true storage_uri = "${azurerm_storage_account.stor.primary_blob_endpoint}" } -} +} \ No newline at end of file