kubeopsskills / alibaba-cloud-kubernetes-starter

Alibaba Cloud Kubernetes Starter Template to let you quickly started using ACK

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Alibaba Cloud Kubernetes Starter Template

This is an Alibaba Cloud Kubernetes Starter Template to let you quickly started using ACK.

Requirements

Name Version
alicloud ~>1.136.0

Getting Started!

To setup a new ACK cluster, you need to clone the git repo

$ git clone https://github.com/kubeopsskills/alibaba-cloud-kubernetes-starter.git
$ cd alibaba-cloud-kubernetes-starter

Prepare your tfvars file [terraform config file] like "demo.tfvars", then run "terraform init" command to initialize terraform module

$ terraform init

followed by the below command to verify the config

$ terraform plan -var-file=[your tfvars file]

then, run the below command to provision a new ACK cluster

$ terraform apply -var-file=[your tfvars file]

After you have provisioned a new ACK cluster, feel free to enjoy using the ACK cluster.

Providers

Name Version
alicloud 1.136.0

Modules

No modules.

Resources

Name Type
alicloud_cs_kubernetes_node_pool.ack_node_pool_a resource
alicloud_cs_managed_kubernetes.ack resource
alicloud_ecs_key_pair.ack_ssh_key_a resource
alicloud_eip_address.nat_gateway_eip_a resource
alicloud_eip_address.nat_gateway_eip_b resource
alicloud_eip_association.nat_gateway_eip_a_association resource
alicloud_eip_association.nat_gateway_eip_b_association resource
alicloud_nat_gateway.nat_gateway_a resource
alicloud_nat_gateway.nat_gateway_b resource
alicloud_resource_manager_resource_group.resource_group resource
alicloud_route_entry.route_entry_a resource
alicloud_route_entry.route_entry_b resource
alicloud_route_table.route_table_a resource
alicloud_route_table.route_table_b resource
alicloud_route_table_attachment.route_table_attachment_pod_private_a resource
alicloud_route_table_attachment.route_table_attachment_pod_private_b resource
alicloud_route_table_attachment.route_table_attachment_worker_private_a resource
alicloud_route_table_attachment.route_table_attachment_worker_private_b resource
alicloud_snat_entry.alicloud_snat_a resource
alicloud_snat_entry.alicloud_snat_b resource
alicloud_vpc.vpc resource
alicloud_vswitch.vswitch_pod_private_a resource
alicloud_vswitch.vswitch_pod_private_b resource
alicloud_vswitch.vswitch_public_a resource
alicloud_vswitch.vswitch_public_b resource
alicloud_vswitch.vswitch_worker_private_a resource
alicloud_vswitch.vswitch_worker_private_b resource

Inputs

Name Description Type Default Required
ack_k8s_version Desired Kubernetes version. string n/a yes
ack_name The kubernetes cluster's name. It is unique in one Alicloud account. string n/a yes
ack_node_name_pattern Each node name consists of a prefix, an IP substring, and a suffix. e.g. kubeop,5,node output will be kubeops[ip substring length]node string n/a yes
ack_node_pool_count_a The worker node number of the node pool. Zone A number n/a yes
ack_node_pool_instance_type_a The instance type of worker node. Zone A list(string) n/a yes
ack_node_pool_max_size_a Max number of instances in a auto scaling group, its valid value range [0~1000]. max_size has to be greater than min_size. Zone A number n/a yes
ack_node_pool_min_size_a Min number of instances in a auto scaling group, its valid value range [0~1000]. Zone A number n/a yes
ack_node_pool_name_a The name of node pool. Zone A string n/a yes
ack_node_pool_surge_percent_a Proportion of additional nodes in percentage. Zone A number n/a yes
ack_node_pool_tags_a Map of tags to assign to the resource. Zone A map(string) n/a yes
ack_node_pool_type_a Instance classification, not required. Vaild value: cpu, gpu, gpushare and spot. Default: cpu. Zone A string n/a yes
ack_ssh_key_name_a The keypair of ssh login cluster node, you have to create it first. Zone A string n/a yes
ack_ssh_key_tags_a A mapping of tags to assign to the ssh keypair. Zone A map(string) n/a yes
ack_tags A map of tags assigned to the kubernetes cluster and work nodes. map(string) n/a yes
ack_worker_count The worker node number of the kubernetes cluster. number n/a yes
ack_worker_instance_types The instance type of worker node. Specify one type for single AZ Cluster, three types for MultiAZ Cluster. list(string) n/a yes
eip_nat_name_a Name of the NAT gateway EIP, zone a string n/a yes
eip_nat_name_b Name of the NAT gateway EIP, zone b string n/a yes
eip_nat_tags_a A mapping of tags to assign to NAT gateway EIP, zone a map(string) n/a yes
eip_nat_tags_b A mapping of tags to assign to the NAT gateway EIP, zone b map(string) n/a yes
nat_name_a Name of the nat gateway, zone a string n/a yes
nat_name_b Name of the nat gateway, zone b string n/a yes
nat_tags_a The tags of NAT gateway, zone a map(string) n/a yes
nat_tags_b The tags of NAT gateway, zone b map(string) n/a yes
resource_group_display_name The display name of the resource group. string n/a yes
resource_group_name The unique identifier of the resource group. string n/a yes
route_entry_cidr_a The RouteEntry's target network segment, zone a string n/a yes
route_entry_cidr_b The RouteEntry's target network segment, zone b string n/a yes
route_table_name_a The name of the route table, zone a string n/a yes
route_table_name_b The name of the route table, zone b string n/a yes
route_table_tags_a A mapping of tags to assign to the route table, zone a map(string) n/a yes
route_table_tags_b A mapping of tags to assign to the route table, zone b map(string) n/a yes
snat_entry_name_a Name of the SNAT entry, zone a string n/a yes
snat_entry_name_b Name of the SNAT entry, zone b string n/a yes
vpc_cidr The CIDR block for the VPC string n/a yes
vpc_name The name of the VPC string n/a yes
vpc_tags A mapping of tags to assign to the VPC map(string) n/a yes
vswitch_pod_private_cidr_a The CIDR block for the pod switch, private zone a string n/a yes
vswitch_pod_private_cidr_b The CIDR block for the pod switch, private zone b string n/a yes
vswitch_pod_private_name_a The name of the pod switch, private zone a string n/a yes
vswitch_pod_private_name_b The name of the pod switch, private zone b string n/a yes
vswitch_pod_private_tags_a A mapping of tags to assign to the pod switch, private zone a map(string) n/a yes
vswitch_pod_private_tags_b A mapping of tags to assign to the pod switch, private zone b map(string) n/a yes
vswitch_public_cidr_a The CIDR block for the switch, public zone a string n/a yes
vswitch_public_cidr_b The CIDR block for the switch, public zone b string n/a yes
vswitch_public_name_a The name of the switch, public zone a string n/a yes
vswitch_public_name_b The name of the switch, public zone b string n/a yes
vswitch_public_tags_a A mapping of tags to assign to the switch, public zone a map(string) n/a yes
vswitch_public_tags_b A mapping of tags to assign to the switch, public zone b map(string) n/a yes
vswitch_worker_private_cidr_a The CIDR block for the worker switch, private zone a string n/a yes
vswitch_worker_private_cidr_b The CIDR block for the worker switch, private zone b string n/a yes
vswitch_worker_private_name_a The name of the worker switch, private zone a string n/a yes
vswitch_worker_private_name_b The name of the worker switch, private zone b string n/a yes
vswitch_worker_private_tags_a A mapping of tags to assign to the worker switch, private zone a map(string) n/a yes
vswitch_worker_private_tags_b A mapping of tags to assign to the worker switch, private zone b map(string) n/a yes
vswitch_zone_a The AZ for the switch, zone a string n/a yes
vswitch_zone_b The AZ for the switch, zone b string n/a yes

Outputs

Name Description
cluster_endpoint Cluster endpoint
cluster_id Cluster ID
cluster_name Cluster name
cluster_version Cluster version

About

Alibaba Cloud Kubernetes Starter Template to let you quickly started using ACK


Languages

Language:HCL 100.0%