Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alaskaairlines/tfmodule_azure_aks
https://github.com/alaskaairlines/tfmodule_azure_aks
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/alaskaairlines/tfmodule_azure_aks
- Owner: AlaskaAirlines
- Created: 2020-06-03T18:23:53.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2023-03-07T01:57:16.000Z (almost 2 years ago)
- Last Synced: 2023-08-27T00:53:47.675Z (over 1 year ago)
- Language: HCL
- Size: 153 KB
- Stars: 0
- Watchers: 5
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Contributing: docs/CONTRIBUTING.md
Awesome Lists containing this project
README
# tfmodule_azure_aks
## Overview
Alaska Airlines Terraform Module to create AKS Clusters
To stay up to date on our latest changes, visit our [Changelog](./docs/CHANGELOG.md)
## Usage
```hcl
module "tfmodule_azure_aks" {
source = "github.com/AlaskaAirlines/tfmodule_azure_aks"
}
```## Requirements
| Name | Version |
|------|---------|
| terraform | >= 0.13 |## Providers
| Name | Version |
|------|---------|
| azurerm | n/a |
| random | n/a |## Modules
| Name | Source | Version |
|------|--------|---------|
| ssh_key | ./modules/ssh_key | |## Resources
| Name |
|------|
| [azurerm_kubernetes_cluster](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/kubernetes_cluster) |
| [azurerm_log_analytics_solution](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/log_analytics_solution) |
| [azurerm_log_analytics_workspace](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/log_analytics_workspace) |
| [azurerm_resource_group](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/data-sources/resource_group) |
| [random_id](https://registry.terraform.io/providers/hashicorp/random/latest/docs/resources/id) |## Inputs
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| admin\_username | Default username for AKS node pool agents | `string` | `"azureuser"` | no |
| agent\_count | Number of nodes to provision in the AKS node pool | `number` | `1` | no |
| agent\_size | Size of nodes to provision in the AKS node pool | `string` | `"Standard_DS2_v2"` | no |
| aks\_aad\_client\_id | Client ID of SPN that will act as the client to access Azure AD | `string` | n/a | yes |
| aks\_aad\_server\_id | Client ID of SPN that will act as the server to acquire data from Azure AD | `string` | n/a | yes |
| aks\_aad\_server\_id\_secret | Client secret of SPN that will act as the server to acquire data from Azure AD | `string` | n/a | yes |
| aks\_client\_id | Client ID of SPN that will run the AKS node pool resource group | `string` | n/a | yes |
| aks\_client\_id\_secret | Client secret of SPN that will run the AKS node pool resource group | `string` | n/a | yes |
| aks\_version | Kubernetes version of the AKS cluster | `string` | n/a | yes |
| cluster\_prefix | Name describing the AKS cluster | `string` | n/a | yes |
| enable\_log\_analytics\_workspace | Enable a Log Analytics Workspace for the AKS cluster | `bool` | n/a | yes |
| environment\_name | Environment level of the AKS cluster | `string` | n/a | yes |
| log\_analytics\_workspace\_sku | Specifies the SKU of the Log Analytics Workspace | `string` | `"PerGB2018"` | no |
| log\_retention\_in\_days | Log Analytics Workspace data retention in days | `number` | `30` | no |
| public\_ssh\_key | SSH key for AKS node pool agents | `string` | `""` | no |
| resource\_group\_name | Target Azure resource group in which to build the AKS cluster | `string` | n/a | yes |
| tags | n/a | `map` | `{}` | no |
| unique\_id | Unique identification string for AKS cluster resources | `string` | `""` | no |## Outputs
| Name | Description |
|------|-------------|
| aks\_cluster\_aad\_client\_app\_id | n/a |
| aks\_cluster\_aad\_server\_app\_id | n/a |
| aks\_cluster\_aad\_tenant\_id | n/a |
| aks\_cluster\_client\_id | n/a |
| aks\_cluster\_fqdn | n/a |
| aks\_cluster\_id | n/a |
| aks\_cluster\_location | n/a |
| aks\_cluster\_name | n/a |
| aks\_cluster\_outbound\_ips | n/a |
| aks\_cluster\_version | n/a |
| aks\_node\_resource\_group\_name | Azure resource group name of the AKS node pool |
| aks\_resource\_group\_id | Azure resource group ID of the AKS cluster |
| aks\_resource\_group\_name | Azure resource group name of the AKS cluster |
| kube\_admin\_config\_raw | n/a |
| private\_ssh\_key | n/a |
| public\_ssh\_key | n/a |## Development
### Prerequisites
- [terraform](https://learn.hashicorp.com/terraform/getting-started/install#installing-terraform)
- [terraform-docs](https://github.com/segmentio/terraform-docs)
- [pre-commit](https://pre-commit.com/#install)
- [golang](https://golang.org/doc/install#install)
- [golint](https://github.com/golang/lint#installation)### Configurations
Issue the following command
```sh
make install
```This will perform the following steps for you
- Initialize git repository
- Install pre-commit hooks
- Install Terraform
- Prepare testing framework### Tests
- Tests are available in `test` directory
- In the module root directory, run the below command```sh
make test
```## Maintainers
Author: Shadow Quests (E-Commerce Platform Team) <[email protected]>
> This project was generated by [generator-aag-terraform-module](https://github.com/AlaskaAirlines/generator-aag-terraform-module)