ashokalinux / k8s-k3s-ansible-tf-aws

modusbox assignment

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Tools used

@AWS Cloud - infrasture platform

@Terraform - infrasture code

-tfswitch - for version of terraform

-terratag - for tagging resources

-terra-doc - for generating README creation

@Ansible - configuration management

@k8s - kubernetes (kubeadm) and @k3s -sample web apps exposed to external word using haproxy ingress controller

Requirements

Name Version
terraform ~> v0.15.0
ansible 1.0.4
aws ~> 3.37.0

Providers

Name Version
ansible 1.0.4
aws ~> 3.37.0

Modules

No modules.

Resources

Name Type
ansible_host.MASTER resource
ansible_host.Node1 resource
ansible_host.Node2 resource
aws_eip.createNATGateway resource
aws_iam_instance_profile.k3s_server resource
aws_iam_policy.k3s_server resource
aws_iam_role.k3s_server resource
aws_iam_role_policy_attachment.k3s_server resource
aws_instance.k3s resource
aws_internet_gateway.createInternetGateway resource
aws_key_pair.ec2key resource
aws_nat_gateway.associateNATGateway resource
aws_network_acl.createNetworkACL resource
aws_network_acl.createNetworkACL1 resource
aws_route.associatePrivate_Route resource
aws_route.createInternet_Access resource
aws_route.createInternet_Access1 resource
aws_route_table.createPrivateRouteTable resource
aws_route_table.createPublicRouteTable resource
aws_route_table.createPublicRouteTable1 resource
aws_route_table_association.associatePriavteSubnet1 resource
aws_route_table_association.associatePriavteSubnet2 resource
aws_route_table_association.associatePriavteSubnet3 resource
aws_route_table_association.associateRouteTable resource
aws_route_table_association.associateRouteTable1 resource
aws_security_group.createSecurityGroup resource
aws_security_group_rule.inboundRule1 resource
aws_security_group_rule.inboundRule2 resource
aws_security_group_rule.inboundRule3 resource
aws_security_group_rule.outboundRule1 resource
aws_subnet.createPrivateSubnet1 resource
aws_subnet.createPrivateSubnet2 resource
aws_subnet.createPrivateSubnet3 resource
aws_subnet.createPublicSubnet resource
aws_subnet.createPublicSubnet1 resource
aws_vpc.createVPC resource
aws_ami.ubuntu data source
aws_availability_zones.available data source

Inputs

Name Description Type Default Required
availabilityZonePrivate1 n/a string "us-west-1a" no
availabilityZonePrivate2 n/a string "us-west-1a" no
availabilityZonePrivate3 n/a string "us-west-1b" no
availabilityZonePublic n/a string "us-west-1b" no
availabilityZonePublic1 n/a string "us-west-1a" no
destinationCIDRblock n/a string "0.0.0.0/0" no
dnsHostNames n/a bool true no
dnsSupport n/a bool true no
ec2_inst_type k3s server instance type. string "t3a.medium" no
environmentName n/a string "DEV" no
ingressCIDRblock n/a list
[
"0.0.0.0/0"
]
no
instanceTenancy n/a string "default" no
instanceType n/a list
[
"t3a.medium",
"t2.micro",
"t2.micro"
]
no
instances_name Instance name of K8s list
[
"Master",
"node1",
"node2"
]
no
key_pair n/a string "my-keypair" no
mapPublicIP n/a bool true no
private_subnet_cidr-1 CIDR for the private subnet string "10.22.2.0/24" no
private_subnet_cidr-2 CIDR for the private subnet string "10.22.3.0/24" no
private_subnet_cidr-3 CIDR for the private subnet string "10.22.5.0/24" no
public_subnet_cidr n/a string "10.22.1.0/24" no
public_subnet_cidr-1 n/a string "10.22.4.0/24" no
rancher_ingress_cidrs External ips allowed access to rancher. list(string)
[
"0.0.0.0/0"
]
no
region variables.tf string "us-west-1" no
ssh_ingress_cidrs External ips allowed access to k3s servers via ssh. list(string)
[
"0.0.0.0/0"
]
no
vpcCIDRblock n/a string "10.22.0.0/16" no
vpcName n/a string "DEMO-VPC" no

Outputs

Name Description
server_ssh_key n/a
servers_public_ips print public ips of all nodes

About

modusbox assignment


Languages

Language:HCL 91.2%Language:Shell 8.8%