https://github.com/belgaied2/tf-module-rancher-aks
Terraform Module for deploying the Rancher App on AKS
https://github.com/belgaied2/tf-module-rancher-aks
aks azure module rancher terraform
Last synced: 3 months ago
JSON representation
Terraform Module for deploying the Rancher App on AKS
- Host: GitHub
- URL: https://github.com/belgaied2/tf-module-rancher-aks
- Owner: belgaied2
- Created: 2021-04-23T09:50:15.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2022-02-11T14:01:29.000Z (over 3 years ago)
- Last Synced: 2025-02-08T06:43:18.485Z (4 months ago)
- Topics: aks, azure, module, rancher, terraform
- Language: HCL
- Homepage:
- Size: 19.5 KB
- Stars: 0
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Introduction
This repository is an example configuration for installing Rancher v2.6.X on AKS on Azure.# What this configuration creates
This configuration creates everything necessary for Rancher App on AKS:
1. A resource group
2. An AKS cluster with 3 nodes
3. Kubernetes pre-requisites to Rancher (Cert-manager and namespace)
4. Rancher installation using Helm
5. NGINX Ingress Controller
6. DNS Entries in an Azure Hosted Zone.NOTE: This installation might fail in your environment because of Cloud configuration specificities. Please make sure to adapt the configuration to your environment.
# Technical Documentation
## Requirements
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 0.13 |
| [azurerm](#requirement\_azurerm) | =2.95.0 |## Providers
| Name | Version |
|------|---------|
| [azurerm](#provider\_azurerm) | =2.95.0 |
| [helm](#provider\_helm) | n/a |
| [kubernetes](#provider\_kubernetes) | n/a |## Modules
| Name | Source | Version |
|------|--------|---------|
| [aks](#module\_aks) | ./azure-aks | |
| [rancher\_server](#module\_rancher\_server) | github.com/belgaied2/tf-module-rancher-server | |## Resources
| Name | Type |
|------|------|
| [azurerm_dns_a_record.rancher_aks](https://registry.terraform.io/providers/hashicorp/azurerm/2.95.0/docs/resources/dns_a_record) | resource |
| [helm_release.nginx-ingress](https://registry.terraform.io/providers/hashicorp/helm/latest/docs/resources/release) | resource |
| [kubernetes_service.nginx_host](https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs/data-sources/service) | data source |## Inputs
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [aks\_kubernetes\_version](#input\_aks\_kubernetes\_version) | Version of Rancher Management Cluster's Kubernetes | `string` | `"v1.20.9"` | no |
| [aks\_name\_prefix](#input\_aks\_name\_prefix) | Prefix to use for the cluster name | `string` | n/a | yes |
| [azure\_location](#input\_azure\_location) | Location to be used for the Resource Group | `string` | `"Germany West Central"` | no |
| [dns\_resource\_group\_name](#input\_dns\_resource\_group\_name) | Resource Group Name for the DNS Entries | `string` | n/a | yes |
| [dns\_zone\_name](#input\_dns\_zone\_name) | DNS Zone to host Rancher in | `string` | n/a | yes |
| [nginx\_ingress\_ns](#input\_nginx\_ingress\_ns) | Namespace where the NGINX Ingress Controller should be installed | `string` | `"ingress-nginx"` | no |
| [nginx\_ingress\_version](#input\_nginx\_ingress\_version) | Version of NGINX Ingress Controller | `string` | `"4.0.17"` | no |
| [rancher\_chart\_options](#input\_rancher\_chart\_options) | List of options for the Rancher Helm Chart |list(object({| `[]` | no |
name = string
value = string
}))
| [rancher\_version](#input\_rancher\_version) | Version of Rancher Server to install | `string` | `"v2.6.3"` | no |## Outputs
| Name | Description |
|------|-------------|
| [rancher\_endpoint](#output\_rancher\_endpoint) | Rancher HTTPS Endpoint |## Backend Configuration
You will notice that the `backend.tf` file does not contain actual configuration for the `http` backend. This is meant to use the [GitLab Terraform state](https://docs.gitlab.com/ee/user/infrastructure/terraform_state.html). Please check the file [gitlab_backend.example](./gitlab_backend.example) for a gitlab backend configuration template that you can fill with your settings and use using the command `terraform init -backend-config=gitlab_backend.example`.You can also switch to the `azurerm` backend commented in the file or any other backend you would like to use.
# Feedback
Please review and test this configuration, then send any feedback to Mohamed : [email protected]