Skip to content

Latest commit

 

History

History

quickstart

Example: Quickstart

Notes:

  • Wayfinder will start up with an initial local administrator user (not configured to use an IDP).
  • Any sensitive values (e.g. licence key) are passed directly as a variable to the module.

This example should be used for product testing and evaluation only. For a more production-ready deployment, please see the complete example.

Deployment

  1. Create a Resource Group for Wayfinder to be installed within.
  2. Create a DNS Zone in Azure and ensure the domain is delegated to the Azure DNS nameservers.
  3. Copy the terraform.tfvars.example file to terraform.tfvars and update with your values.
  4. Run terraform init -upgrade
  5. Run terraform apply

Updating Docs

The terraform-docs utility is used to generate this README. Follow the below steps to update:

  1. Make changes to the .terraform-docs.yml file
  2. Fetch the terraform-docs binary (https://terraform-docs.io/user-guide/installation/)
  3. Run terraform-docs markdown table --output-file ${PWD}/README.md --output-mode inject .

Requirements

Name Version
terraform >= 1.3
azurerm ~> 3.84
helm ~> 2.9.0
kubectl ~> 2.0
kubernetes ~> 2.23.0
random ~> 3.5
time ~> 0.9.0

Providers

Name Version
azurerm 3.116.0

Modules

Name Source Version
wayfinder ../../ n/a

Resources

Name Type
azurerm_subnet.aks_nodes resource
azurerm_user_assigned_identity.aks_identity resource
azurerm_virtual_network.wayfinder resource
azurerm_dns_zone.wayfinder data source

Inputs

Name Description Type Default Required
aks_api_server_authorized_ip_ranges The list of authorized IP ranges to contact the Wayfinder Management AKS Cluster API server. list(string)
[
"0.0.0.0/0"
]
no
aks_rbac_aad_admin_groups Map of Azure AD Groups and their Object IDs that will be set as cluster admin. map(string) n/a yes
clusterissuer_email The email address to use for the cert-manager cluster issuer. string n/a yes
disable_internet_access Whether to disable internet access for AKS and the Wayfinder ingress controller. bool false no
dns_resource_group_name The name of the resource group where the DNS Zone exists. string n/a yes
dns_zone_name The name of the DNS zone to use for wayfinder. string n/a yes
enable_k8s_resources Whether to enable the creation of Kubernetes resources for Wayfinder (helm and kubectl manifest deployments). bool true no
environment The environment in which the resources are deployed. string "production" no
location The Azure region in which to create the resources. string "uksouth" no
resource_group_name The name of the resource group in which to create the AKS cluster. string n/a yes
tags A mapping of tags to assign to the resource. map(string) {} no
user_assigned_identity MSI id for AKS to run as string null no
wayfinder_instance_id The instance ID to use for Wayfinder. string n/a yes
wayfinder_licence_key The licence key to use for Wayfinder. string n/a yes

Outputs

Name Description
cluster_name The name of the Wayfinder AKS cluster
wayfinder_admin_password The password for the Wayfinder local admin user
wayfinder_admin_username The username for the Wayfinder local admin user
wayfinder_api_url The URL for the Wayfinder API
wayfinder_instance_id The unique identifier for the Wayfinder instance
wayfinder_ui_url The URL for the Wayfinder UI