gbazack / azure-paas

Scripts for deploying a Kubernetes-based Platform on Azure Cloud

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Requirements

  • Terraform version v1.7+
  • An existing Azure resource group with lock protection
  • Service principal named terraform in the above-mentioned resource group with the required roles (by default Contributor).

Terraform providers

Name Version
azurerm ~> 3.90
kubernetes ~> 2.26
helm ~> 2.12

How to use the PaaS environment

  1. Set deployment parameters:
  • There exists three predefined deployment files namely small.sh, large.sh and custom.sh.
  • Select and update a file based on the customer requirements.
  1. Create an Azure container storage to save the Terraform state:
./azure-paas.sh init small.sh
  1. Deploy the Azure PaaS with the following command:
./azure-paas.sh create small.sh
  1. Test the PaaS by deploying a two-tier application on it:
./azure-paas.sh test small.sh
  1. To destroy the PaaS environment, remove the Lock protection then run the following:
./azure-paas.sh delete small.sh

Terraform Modules

Name Source Version
keyvault ./keyvault 1.0
network ./network 1.0
gateway ./gateway 1.0
aks ./aks 1.0
namespace ./kubernetes 1.0

Data Source

Name Description Type
azurerm_resource_group.aks Use this data source to access information about an existing Resource Group Data
azurerm_client_config.aks Use this data source to access the configuration of the AzureRM provider Data

Inputs

The input variables are described in small.sh, large.sh and custom.sh files.

Outputs

Name Description
gateway_frontend_ip Public IPv4 address of application gateway

References

  • Click here to have an overview of the PaaS architecture

About

Scripts for deploying a Kubernetes-based Platform on Azure Cloud


Languages

Language:HCL 82.4%Language:Shell 17.6%