Skip to content

Latest commit

 

History

History
102 lines (91 loc) · 12.1 KB

README-Terraform-Infra-Resources-EKS-Laravel.md

File metadata and controls

102 lines (91 loc) · 12.1 KB

Requirements

Name Version
terraform >= 1.0.9
aws >= 3.63.0, < 4.0
random >= 2.0

Providers

Name Version
aws >= 3.63.0, < 4.0
null n/a
random >= 2.0
terraform n/a
tls n/a

Modules

Name Source Version
s3_bucket ../../../../../../modules/providers/aws/officials/terraform-aws-s3-bucket n/a

Resources

Name Type
aws_eks_cluster.aws_eks resource
aws_eks_node_group.laravel resource
aws_iam_openid_connect_provider.cluster resource
aws_iam_policy.route53_cert_policy_dev resource
aws_iam_policy.route53_cert_policy_uat resource
aws_iam_role.cluster_autoscaler_role resource
aws_iam_role.eks_cluster resource
aws_iam_role.eks_nodes resource
aws_iam_role.iam_eks_bucket_profile resource
aws_iam_role_policy.aws_loadbalancer_controller resource
aws_iam_role_policy.cluster_autoscaler_policy resource
aws_iam_role_policy.node_autoscaler_policy resource
aws_iam_role_policy_attachment.eks_iam_cluster_policy resource
aws_iam_role_policy_attachment.eks_iam_cni_policy resource
aws_iam_role_policy_attachment.eks_iam_container_registry_policy resource
aws_iam_role_policy_attachment.eks_iam_service_policy resource
aws_iam_role_policy_attachment.eks_iam_worker_node_policy resource
aws_iam_role_policy_attachment.route53_cert_policy_dev resource
aws_iam_role_policy_attachment.route53_cert_policy_uat resource
aws_lb_target_group.laravel resource
aws_security_group.eks_sg resource
null_resource.eks_cluster_autoscaler_role resource
random_pet.this resource
aws_caller_identity.current data source
aws_canonical_user_id.current data source
aws_cloudfront_log_delivery_canonical_user_id.cloudfront data source
aws_iam_policy_document.eks_bucket_policy data source
aws_kms_key.cmk_key data source
aws_vpc.selected data source
terraform_remote_state.core_state data source
tls_certificate.cluster data source

Inputs

Name Description Type Default Required
access_my_ip Your IP Address string "118.136.0.0/16" no
aws_region AWS Region Target Deployment string "ap-southeast-1" no
bucket_name Bucket Name string "devopscorner-eks" no
department Department Owner string "DEVOPS" no
dns_url n/a map(string)
{
"lab": "devopscorner.lab",
"prod": "devopscorner.id",
"staging": "awscb.id"
}
no
dns_zone ------------------------------------ DNS (Public) ------------------------------------ map(string)
{
"dev": "ZONE-ID-DEV",
"lab": "ZONE-ID-LAB",
"prod": "ZONE-ID-PROD",
"staging": "ZONE-ID-STAGING",
"uat": "ZONE-ID-UAT"
}
no
eks_cluster_name default cluster name string "eks-laravel" no
eks_name_env n/a map(string)
{
"lab": "lab",
"prod": "prod",
"staging": "staging"
}
no
env Workspace Environment Selection map(string)
{
"lab": "lab",
"prod": "prod",
"staging": "staging"
}
no
environment Target Environment (tags) map(string)
{
"lab": "RND",
"prod": "PROD",
"staging": "STG"
}
no
k8s_version n/a map(string)
{
"lab": "1.22",
"prod": "1.22",
"staging": "1.22"
}
no
kms_env KMS Key Environment map(string)
{
"lab": "RnD",
"prod": "Production",
"staging": "Staging"
}
no
kms_key KMS Key References map(string)
{
"lab": "arn:aws:kms:ap-southeast-1:YOUR_AWS_ACCOUNT:key/CMK_KEY_HASH",
"prod": "arn:aws:kms:ap-southeast-1:YOUR_AWS_ACCOUNT:key/CMK_KEY_HASH",
"staging": "arn:aws:kms:ap-southeast-1:YOUR_AWS_ACCOUNT:key/CMK_KEY_HASH"
}
no
region AWS Zone Target Deployment map(string)
{
"lab": "ap-southeast-1",
"prod": "ap-southeast-1",
"staging": "ap-southeast-1"
}
no
ssh_key_pair default keyname map(string)
{
"lab": "devopscorner-deploy-lab",
"prod": "devopscorner-deploy-prod",
"staging": "devopscorner-deploy-staging"
}
no
ssh_public_key SSH Public Key string "" no
tfstate_bucket Name of bucket to store tfstate string "devopscorner-terraform-remote-state" no
tfstate_dynamodb_table Name of dynamodb table to store tfstate string "devopscorner-terraform-state-lock" no
tfstate_encrypt Name of bucket to store tfstate bool true no
tfstate_path Path .tfstate in Bucket string "resources/eks/terraform.tfstate" no
vpn_infra VPN Infra map(string)
{
"lab": "sg-1234567890",
"prod": "sg-0987654321",
"staging": "sg-1234567890"
}
no

Outputs

Name Description
config_map_aws_auth -------------------------------------------------------------------------- EKS Config Map Auth --------------------------------------------------------------------------
eks_cluster_certificat_authority -------------------------------------------------------------------------- EKS Cluster Certificate Authority --------------------------------------------------------------------------
eks_cluster_endpoint -------------------------------------------------------------------------- EKS Cluster Endpoint --------------------------------------------------------------------------
eks_node_name_laravel_dev -------------------------------------------------------------------------- Node Group Output -------------------------------------------------------------------------- # DEV Output ##
eks_node_name_laravel_uat # UAT Output ##
eks_node_tg_laravel_dev -------------------------------------------------------------------------- Target Group Output -------------------------------------------------------------------------- # DEV Output ##
eks_node_tg_laravel_uat # UAT Output ##
eks_security_group -------------------------------------------------------------------------- EKS Security Group --------------------------------------------------------------------------
eks_vpc_id -------------------------------------------------------------------------- EKS VPC --------------------------------------------------------------------------
kubeconfig -------------------------------------------------------------------------- EKS Kube Config --------------------------------------------------------------------------