{"id":76038,"date":"2024-09-07T22:32:47","date_gmt":"2024-09-07T19:02:47","guid":{"rendered":"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/"},"modified":"2024-09-07T22:32:47","modified_gmt":"2024-09-07T19:02:47","slug":"setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d","status":"publish","type":"post","link":"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/","title":{"rendered":"\u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06cc\u06a9 \u062e\u0648\u0634\u0647 AWS EKS \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Terraform: \u0631\u0627\u0647\u0646\u0645\u0627\u06cc \u0645\u0628\u062a\u062f\u06cc \u062f\u0648\u0633\u062a\u0627\u0646\u0647"},"content":{"rendered":"<p>Summarize this content to 400 words in Persian Lang Amazon Elastic Kubernetes Service (EKS) \u0627\u062c\u0631\u0627\u06cc Kubernetes \u0631\u0627 \u062f\u0631 AWS \u0628\u062f\u0648\u0646 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u0646\u0635\u0628 \u06cc\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0647\u0648\u0627\u067e\u06cc\u0645\u0627\u06cc \u06a9\u0646\u062a\u0631\u0644 Kubernetes \u062e\u0648\u062f \u0633\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f. \u062f\u0631 \u0627\u06cc\u0646 \u0631\u0627\u0647\u0646\u0645\u0627\u060c \u0645\u0646 \u0634\u0645\u0627 \u0631\u0627 \u0627\u0632 \u0637\u0631\u06cc\u0642 \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u062e\u0648\u0634\u0647 EKS \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Terraform \u0631\u0627\u0647\u0646\u0645\u0627\u06cc\u06cc \u0645\u06cc\u200c\u06a9\u0646\u0645 &#8211; \u0627\u0628\u0632\u0627\u0631 \u0632\u06cc\u0631\u0633\u0627\u062e\u062a \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u06a9\u062f (IaC) \u06a9\u0647 \u0628\u0647 \u0627\u0631\u0627\u0626\u0647 \u062e\u0648\u062f\u06a9\u0627\u0631 \u06a9\u0645\u06a9 \u0645\u06cc\u200c\u06a9\u0646\u062f.<\/p>\n<p>\u062f\u0631 \u067e\u0627\u06cc\u0627\u0646 \u0627\u06cc\u0646 \u067e\u0633\u062a\u060c \u06cc\u06a9 \u062e\u0648\u0634\u0647 Kubernetes \u06a9\u0627\u0645\u0644\u0627\u064b \u0639\u0645\u0644\u06cc\u0627\u062a\u06cc \u062f\u0631 \u062d\u0627\u0644 \u0627\u062c\u0631\u0627 \u062f\u0631 AWS \u062e\u0648\u0627\u0647\u06cc\u062f \u062f\u0627\u0634\u062a. \u0628\u06cc\u0627\u06cc\u06cc\u062f \u0634\u0631\u0648\u0639 \u06a9\u0646\u06cc\u0645!<\/p>\n<p>  \u067e\u06cc\u0634 \u0646\u06cc\u0627\u0632\u0647\u0627<\/p>\n<p>\u0642\u0628\u0644 \u0627\u0632 \u0627\u062f\u0627\u0645\u0647\u060c \u0645\u0637\u0645\u0626\u0646 \u0634\u0648\u06cc\u062f \u06a9\u0647 \u0645\u0648\u0627\u0631\u062f \u0632\u06cc\u0631 \u0631\u0627 \u0646\u0635\u0628 \u06a9\u0631\u062f\u0647 \u0627\u06cc\u062f:<\/p>\n<p>AWS CLI: \u0628\u0631\u0627\u06cc \u062a\u0639\u0627\u0645\u0644 \u0628\u0627 \u062e\u062f\u0645\u0627\u062a AWS \u0627\u0632 \u062a\u0631\u0645\u06cc\u0646\u0627\u0644 \u062e\u0648\u062f.<\/p>\n<p>Terraform: \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0632\u06cc\u0631\u0633\u0627\u062e\u062a AWS \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u06a9\u062f.<\/p>\n<p>\u0647\u0645\u0686\u0646\u06cc\u0646 \u0628\u0631\u0627\u06cc \u0627\u06cc\u062c\u0627\u062f VPC \u0647\u0627\u060c \u062e\u0648\u0634\u0647 \u0647\u0627\u06cc EKS \u0648 \u06af\u0631\u0648\u0647 \u0647\u0627\u06cc \u0627\u0645\u0646\u06cc\u062a\u06cc \u0628\u0647 \u06cc\u06a9 \u062d\u0633\u0627\u0628 AWS \u0628\u0627 \u0645\u062c\u0648\u0632\u0647\u0627\u06cc \u06a9\u0627\u0641\u06cc \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u06cc\u062f.<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 1: \u0627\u0639\u062a\u0628\u0627\u0631\u0646\u0627\u0645\u0647 AWS \u0631\u0627 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u06a9\u0646\u06cc\u062f<\/p>\n<p>\u0627\u0628\u062a\u062f\u0627 AWS CLI \u0631\u0627 \u0628\u0627 \u06a9\u0644\u06cc\u062f\u0647\u0627\u06cc \u062f\u0633\u062a\u0631\u0633\u06cc \u062e\u0648\u062f \u0628\u0627 \u0627\u062c\u0631\u0627\u06cc \u062f\u0633\u062a\u0648\u0631 \u0632\u06cc\u0631 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u06a9\u0646\u06cc\u062f:<\/p>\n<p>aws configure<\/p>\n<p>AWS \u062e\u0648\u062f \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f Access Key ID\u060c Secret Access Key\u060c Default region name\u060c \u0648 Default output format. \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u062d\u0627\u0635\u0644 \u06a9\u0646\u06cc\u062f \u06a9\u0647 \u06a9\u0627\u0631\u0628\u0631 \u06cc\u0627 \u0646\u0642\u0634 IAM \u06a9\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u06cc\u062f \u0645\u062c\u0648\u0632\u0647\u0627\u06cc \u0644\u0627\u0632\u0645 \u0628\u0631\u0627\u06cc \u0627\u06cc\u062c\u0627\u062f \u062e\u0648\u0634\u0647 \u0647\u0627\u06cc EKS \u0631\u0627 \u062f\u0627\u0631\u062f.<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 2: \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Terraform \u06cc\u06a9 VPC \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f<\/p>\n<p>\u06cc\u06a9 \u0641\u0627\u06cc\u0644 \u0628\u0647 \u0646\u0627\u0645 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f vpc.tf \u0628\u0631\u0627\u06cc \u062a\u0639\u0631\u06cc\u0641 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a \u0634\u0628\u06a9\u0647 \u0627\u06cc\u0646 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u06cc\u06a9 \u0627\u0628\u0631 \u062e\u0635\u0648\u0635\u06cc \u0645\u062c\u0627\u0632\u06cc (VPC) \u0628\u0627 \u0647\u0631 \u062f\u0648 \u0632\u06cc\u0631 \u0634\u0628\u06a9\u0647 \u062e\u0635\u0648\u0635\u06cc \u0648 \u0639\u0645\u0648\u0645\u06cc \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc \u06a9\u0646\u062f \u0648 \u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc DNS \u0631\u0627 \u0641\u0639\u0627\u0644 \u0645\u06cc \u06a9\u0646\u062f.<\/p>\n<p>data &#8220;aws_availability_zones&#8221; &#8220;azs&#8221; {}<\/p>\n<p>module &#8220;vpc&#8221; {<br \/>\n  source  = &#8220;terraform-aws-modules\/vpc\/aws&#8221;<br \/>\n  version = &#8220;5.13.0&#8221;<\/p>\n<p>  name = var.vpc_name<br \/>\n  cidr = var.vpc_cidr<\/p>\n<p>  azs             = data.aws_availability_zones.azs.names<br \/>\n  private_subnets = [&#8220;10.0.1.0\/24&#8221;, &#8220;10.0.2.0\/24&#8221;]\n  public_subnets  = [&#8220;10.0.101.0\/24&#8221;, &#8220;10.0.102.0\/24&#8221;]\n<p>  enable_nat_gateway   = true<br \/>\n  single_nat_gateway   = true<br \/>\n  enable_dns_hostnames = true<br \/>\n  enable_dns_support   = true<\/p>\n<p>  tags = {<br \/>\n    Name                                    = var.vpc_name<br \/>\n    &#8220;kubernetes.io\/cluster\/${var.eks_name}&#8221; = &#8220;shared&#8221;<br \/>\n  }<\/p>\n<p>  private_subnet_tags = {<br \/>\n    &#8220;kubernetes.io\/cluster\/${var.eks_name}&#8221; = &#8220;shared&#8221;<br \/>\n    &#8220;kubernetes.io\/role\/internal-elb&#8221;       = &#8220;1&#8221;<br \/>\n  }<\/p>\n<p>  public_subnet_tags = {<br \/>\n    &#8220;kubernetes.io\/cluster\/${var.eks_name}&#8221; = &#8220;shared&#8221;<br \/>\n    &#8220;kubernetes.io\/role\/elb&#8221;                = &#8220;1&#8221;<br \/>\n  }<br \/>\n}<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 3: \u0645\u062a\u063a\u06cc\u0631\u0647\u0627 \u0631\u0627 \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0646\u06cc\u062f<\/p>\n<p>\u06cc\u06a9 \u0641\u0627\u06cc\u0644 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f variables.tf \u0628\u0631\u0627\u06cc \u062a\u0639\u0631\u06cc\u0641 \u0645\u062a\u063a\u06cc\u0631\u0647\u0627\u06cc \u0642\u0627\u0628\u0644 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u062c\u062f\u062f \u0645\u0627\u0646\u0646\u062f \u0646\u0627\u0645 VPC\u060c \u0628\u0644\u0648\u06a9 CIDR \u0648 \u0646\u0627\u0645 \u062e\u0648\u0634\u0647 EKS. \u0628\u0647 \u0627\u06cc\u0646 \u062a\u0631\u062a\u06cc\u0628\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0628\u0647 \u0631\u0627\u062d\u062a\u06cc \u0627\u06cc\u0646 \u0645\u0642\u0627\u062f\u06cc\u0631 \u0631\u0627 \u0628\u062f\u0648\u0646 \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0631 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u0647\u0633\u062a\u0647 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u062f.<\/p>\n<p>variable &#8220;aws_region&#8221; {<br \/>\n  description = &#8220;AWS region&#8221;<br \/>\n  default     = &#8220;us-east-1&#8221;<br \/>\n}<\/p>\n<p>variable &#8220;vpc_name&#8221; {<br \/>\n  description = &#8220;VPC name&#8221;<br \/>\n  type        = string<br \/>\n}<\/p>\n<p>variable &#8220;vpc_cidr&#8221; {<br \/>\n  description = &#8220;VPC CIDR&#8221;<br \/>\n  default     = &#8220;10.0.0.0\/16&#8221;<br \/>\n}<\/p>\n<p>variable &#8220;eks_name&#8221; {<br \/>\n  description = &#8220;AWS EKS Cluster name&#8221;<br \/>\n  type        = string<br \/>\n}<\/p>\n<p>variable &#8220;sg_name&#8221; {<br \/>\n  description = &#8220;Security group name&#8221;<br \/>\n  default     = &#8220;aws-eks-sg&#8221;<br \/>\n}<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 4: \u0627\u06cc\u062c\u0627\u062f \u06af\u0631\u0648\u0647 \u0647\u0627\u06cc \u0627\u0645\u0646\u06cc\u062a\u06cc<\/p>\n<p>\u0627\u06a9\u0646\u0648\u0646\u060c \u0628\u06cc\u0627\u06cc\u06cc\u062f \u06af\u0631\u0648\u0647 \u0647\u0627\u06cc \u0627\u0645\u0646\u06cc\u062a\u06cc \u0631\u0627 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u0645 \u06a9\u0647 \u062f\u0633\u062a\u0631\u0633\u06cc \u0634\u0628\u06a9\u0647 \u0628\u0647 \u062e\u0648\u0634\u0647 EKS \u0631\u0627 \u06a9\u0646\u062a\u0631\u0644 \u0645\u06cc \u06a9\u0646\u0646\u062f. \u06cc\u06a9 \u0641\u0627\u06cc\u0644 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f security-groups.tf \u0628\u0627 \u0645\u062d\u062a\u0648\u0627\u06cc \u0632\u06cc\u0631:<\/p>\n<p>resource &#8220;aws_security_group&#8221; &#8220;eks-sg&#8221; {<br \/>\n  name   = var.sg_name<br \/>\n  vpc_id = module.vpc.vpc_id<br \/>\n}<\/p>\n<p>resource &#8220;aws_security_group_rule&#8221; &#8220;eks-sg-ingress&#8221; {<br \/>\n  description       = &#8220;allow inbound traffic from eks&#8221;<br \/>\n  type              = &#8220;ingress&#8221;<br \/>\n  from_port         = 0<br \/>\n  to_port           = 0<br \/>\n  protocol          = -1<br \/>\n  security_group_id = aws_security_group.eks-sg.id<br \/>\n  cidr_blocks       = [&#8220;49.43.153.70\/32&#8221;]\n}<\/p>\n<p>resource &#8220;aws_security_group_rule&#8221; &#8220;eks-sg-egress&#8221; {<br \/>\n  description       = &#8220;allow outbound traffic to eks&#8221;<br \/>\n  type              = &#8220;egress&#8221;<br \/>\n  from_port         = 0<br \/>\n  to_port           = 0<br \/>\n  protocol          = -1<br \/>\n  security_group_id = aws_security_group.eks-sg.id<br \/>\n  cidr_blocks       = [&#8220;0.0.0.0\/0&#8221;]\n}<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 5: EKS Cluster \u0631\u0627 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u062f<\/p>\n<p>\u0628\u0627 \u062a\u06a9\u0645\u06cc\u0644 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a \u0634\u0628\u06a9\u0647 \u0648 \u0627\u0645\u0646\u06cc\u062a\u060c \u06cc\u06a9 \u0641\u0627\u06cc\u0644 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f eks.tf \u0628\u0631\u0627\u06cc \u062a\u0639\u0631\u06cc\u0641 \u06af\u0631\u0648\u0647 \u0647\u0627\u06cc \u062e\u0648\u0634\u0647 \u0648 \u06af\u0631\u0647 EKS.<\/p>\n<p>module &#8220;eks&#8221; {<br \/>\n  source  = &#8220;terraform-aws-modules\/eks\/aws&#8221;<br \/>\n  version = &#8220;~&gt; 20.0&#8221;<\/p>\n<p>  cluster_name    = var.eks_name<br \/>\n  cluster_version = &#8220;1.30&#8221;<\/p>\n<p>  enable_irsa = true<\/p>\n<p>  vpc_id     = module.vpc.vpc_id<br \/>\n  subnet_ids = module.vpc.private_subnets<\/p>\n<p>  tags = {<br \/>\n    cluster = &#8220;my-eks-cluster&#8221;<br \/>\n  }<\/p>\n<p>  # EKS Managed Node Group(s)<br \/>\n  eks_managed_node_group_defaults = {<br \/>\n    ami_type               = &#8220;AL2_x86_64&#8221;<br \/>\n    instance_types         = [&#8220;t2.micro&#8221;]\n    vpc_security_group_ids = [aws_security_group.eks-sg.id]\n  }<\/p>\n<p>  eks_managed_node_groups = {<br \/>\n    node_group = {<br \/>\n      min_size     = 2<br \/>\n      max_size     = 3<br \/>\n      desired_size = 2<br \/>\n    }<br \/>\n  }<br \/>\n}<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 6: \u0641\u0627\u06cc\u0644 \u0647\u0627\u06cc Terraform \u0648 Provider \u0631\u0627 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f<\/p>\n<p>\u0647\u0645\u0686\u0646\u06cc\u0646 \u0628\u0631\u0627\u06cc \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u0646\u0627\u0633\u0628 \u0628\u0647 Terraform \u0648 \u0641\u0627\u06cc\u0644 \u0647\u0627\u06cc \u0627\u0631\u0627\u0626\u0647 \u062f\u0647\u0646\u062f\u0647 \u0632\u06cc\u0631 \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u06cc\u062f:<\/p>\n<p>  terraform.tf<\/p>\n<p>terraform {<br \/>\n  required_providers {<br \/>\n    aws = {<br \/>\n      source  = &#8220;hashicorp\/aws&#8221;<br \/>\n      version = &#8220;~&gt; 5.0&#8221;<br \/>\n    }<br \/>\n  }<br \/>\n}<\/p>\n<p>  provider.tf<\/p>\n<p>provider &#8220;aws&#8221; {<br \/>\n  region = var.aws_region<br \/>\n}<\/p>\n<p>  output.tf<\/p>\n<p>output &#8220;cluster_id&#8221; {<br \/>\n  description = &#8220;AWS EKS Cluster ID&#8221;<br \/>\n  value       = module.eks.cluster_id<br \/>\n}<\/p>\n<p>output &#8220;cluster_endpoint&#8221; {<br \/>\n  description = &#8220;AWS EKS Cluster Endpoint&#8221;<br \/>\n  value       = module.eks.cluster_endpoint<br \/>\n}<\/p>\n<p>output &#8220;cluster_security_group_id&#8221; {<br \/>\n  description = &#8220;Security group ID of the control plane in the cluster&#8221;<br \/>\n  value       = module.eks.cluster_security_group_id<br \/>\n}<\/p>\n<p>output &#8220;region&#8221; {<br \/>\n  description = &#8220;AWS region&#8221;<br \/>\n  value       = var.aws_region<br \/>\n}<\/p>\n<p>output &#8220;oidc_provider_arn&#8221; {<br \/>\n  value = module.eks.oidc_provider_arn<br \/>\n}<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 7: Terraform \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f<\/p>\n<p>\u062f\u0633\u062a\u0648\u0631 \u0632\u06cc\u0631 \u0631\u0627 \u0628\u0631\u0627\u06cc \u0645\u0642\u062f\u0627\u0631\u062f\u0647\u06cc \u0627\u0648\u0644\u06cc\u0647 Terraform \u0648 \u062f\u0627\u0646\u0644\u0648\u062f \u0627\u0631\u0627\u0626\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0644\u0627\u0632\u0645 \u0627\u062c\u0631\u0627 \u06a9\u0646\u06cc\u062f:<\/p>\n<p>terraform init<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 8: \u0627\u0639\u062a\u0628\u0627\u0631\u0633\u0646\u062c\u06cc \u0648 \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u06cc\u0632\u06cc<\/p>\n<p>\u0642\u0628\u0644 \u0627\u0632 \u0627\u0639\u0645\u0627\u0644 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc\u060c \u0622\u0646 \u0631\u0627 \u062a\u0627\u06cc\u06cc\u062f \u06a9\u0631\u062f\u0647 \u0648 \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a \u0631\u0627 \u067e\u06cc\u0634\u200c\u0646\u0645\u0627\u06cc\u0634 \u06a9\u0646\u06cc\u062f:<\/p>\n<p>terraform validate<br \/>\nterraform plan<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 9: \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc Terraform \u0631\u0627 \u0627\u0639\u0645\u0627\u0644 \u06a9\u0646\u06cc\u062f<\/p>\n<p>\u062e\u0648\u0634\u0647 EKS \u0648 VPC \u0645\u0631\u0628\u0648\u0637\u0647 \u0631\u0627 \u0628\u0627:<\/p>\n<p>terraform apply<\/p>\n<p>\u0627\u06cc\u0646 \u0641\u0631\u0622\u06cc\u0646\u062f \u062a\u0642\u0631\u06cc\u0628\u0627\u064b 15 \u062f\u0642\u06cc\u0642\u0647 \u0637\u0648\u0644 \u062e\u0648\u0627\u0647\u062f \u06a9\u0634\u06cc\u062f. \u067e\u0633 \u0627\u0632 \u0627\u062a\u0645\u0627\u0645\u060c \u06a9\u0644\u0627\u0633\u062a\u0631 AWS EKS \u062e\u0648\u062f \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0648 \u0627\u062c\u0631\u0627 \u062e\u0648\u0627\u0647\u06cc\u062f \u06a9\u0631\u062f.<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 10: Cluster \u0631\u0627 \u062f\u0631 \u06a9\u0646\u0633\u0648\u0644 AWS \u062a\u0623\u06cc\u06cc\u062f \u06a9\u0646\u06cc\u062f<\/p>\n<p>\u0633\u0631 \u0628\u0647 \u06a9\u0646\u0633\u0648\u0644 \u0645\u062f\u06cc\u0631\u06cc\u062a AWS\u060c \u067e\u06cc\u0645\u0627\u06cc\u0634 \u06a9\u0646\u06cc\u062f \u0628\u0647 EX\u060c \u0648 \u062a\u0623\u06cc\u06cc\u062f \u06a9\u0646\u06cc\u062f \u06a9\u0647 \u062e\u0648\u0634\u0647 \u0634\u0645\u0627 \u0641\u0647\u0631\u0633\u062a \u0634\u062f\u0647 \u0627\u0633\u062a.<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 11: \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u062f\u0633\u062a\u0631\u0633\u06cc \u062e\u0648\u0634\u0647 (\u0645\u0631\u062d\u0644\u0647 \u062f\u0633\u062a\u06cc)<\/p>\n<p>\u067e\u0633 \u0627\u0632 \u0622\u0645\u0627\u062f\u0647 \u0634\u062f\u0646 \u062e\u0648\u0634\u0647 EKS\u060c \u0628\u0627\u06cc\u062f \u062f\u0633\u062a\u0631\u0633\u06cc \u0631\u0627 \u0628\u0631\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u0627\u0646 \u06cc\u0627 \u0646\u0642\u0634 \u0647\u0627\u06cc IAM \u062e\u0648\u062f \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u06a9\u0646\u06cc\u062f:<\/p>\n<p>\u062f\u0631 \u06a9\u0646\u0633\u0648\u0644 AWS\u060c \u0628\u0647 \u0622\u0646 \u0628\u0631\u0648\u06cc\u062f EKS > \u062e\u0648\u0634\u0647 \u0634\u0645\u0627 > \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc > \u062f\u0633\u062a\u0631\u0633\u06cc.<br \/>\n\u0631\u0627 \u06a9\u0644\u06cc\u06a9 \u06a9\u0646\u06cc\u062f \u0646\u0642\u0634 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f \u06cc\u0627 \u06a9\u0627\u0631\u0628\u0631 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f.<br \/>\n\u0631\u0627 \u0627\u0631\u0627\u0626\u0647 \u062f\u0647\u06cc\u062f ARN \u0627\u0635\u0644\u06cc IAM.<br \/>\n\u0631\u0627 \u0627\u0646\u062a\u062e\u0627\u0628 \u06a9\u0646\u06cc\u062f \u062a\u0627\u06cc\u067e \u06a9\u0646\u06cc\u062f (\u0646\u0642\u0634 \u06cc\u0627 \u06a9\u0627\u0631\u0628\u0631)\u060c \u0627\u0631\u0627\u0626\u0647 \u0627\u0644\u0641 \u0646\u0627\u0645 \u06a9\u0627\u0631\u0628\u0631\u06cc\u0648 a \u0631\u0627 \u0627\u0646\u062a\u062e\u0627\u0628 \u06a9\u0646\u06cc\u062f \u0646\u0627\u0645 \u062e\u0637 \u0645\u0634\u06cc (\u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c Admin \u06cc\u0627 ViewOnly).<br \/>\n\u0631\u0627 \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0646\u06cc\u062f \u0645\u062d\u062f\u0648\u062f\u0647 \u062f\u0633\u062a\u0631\u0633\u06cc.<br \/>\n\u06a9\u0644\u06cc\u06a9 \u06a9\u0646\u06cc\u062f \u0633\u06cc\u0627\u0633\u062a \u0631\u0627 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f \u0648 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u0631\u0627 \u0646\u0647\u0627\u06cc\u06cc \u06a9\u0646\u06cc\u062f.<\/p>\n<p>\u0627\u06cc\u0646 \u0645\u0631\u062d\u0644\u0647 \u0628\u0647 \u06a9\u0627\u0631\u0628\u0631\u0627\u0646 \u06cc\u0627 \u0646\u0642\u0634\u200c\u0647\u0627 \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc\u200c\u062f\u0647\u062f \u062a\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0627\u062d\u0631\u0627\u0632 \u0647\u0648\u06cc\u062a \u0645\u0628\u062a\u0646\u06cc \u0628\u0631 IAM \u0628\u0627 \u062e\u0648\u0634\u0647 Kubernetes \u062a\u0639\u0627\u0645\u0644 \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u0646\u062f.<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 12: \u06af\u0631\u0647 \u0647\u0627 \u0631\u0627 \u062f\u0631 \u062a\u0628 Compute \u062a\u0623\u06cc\u06cc\u062f \u06a9\u0646\u06cc\u062f<\/p>\n<p>\u0628\u0631\u0627\u06cc \u0628\u0631\u0631\u0633\u06cc \u0627\u06cc\u0646\u06a9\u0647 \u0622\u06cc\u0627 \u06af\u0631\u0647 \u0647\u0627 \u0622\u0645\u0627\u062f\u0647 \u0648 \u062f\u0631 \u062d\u0627\u0644 \u0627\u062c\u0631\u0627 \u0647\u0633\u062a\u0646\u062f:<\/p>\n<p>\u0628\u0631\u0648 \u0628\u0647 \u0645\u062d\u0627\u0633\u0628\u0647 \u06a9\u0646\u06cc\u062f \u0628\u0631\u06af\u0647 \u062e\u0648\u0634\u0647 \u062f\u0631 \u06a9\u0646\u0633\u0648\u0644 AWS.<br \/>\n\u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u062d\u0627\u0635\u0644 \u06a9\u0646\u06cc\u062f \u06a9\u0647 \u06af\u0631\u0647 \u0647\u0627\u06cc \u06a9\u0627\u0631\u06af\u0631 \u0642\u0627\u0628\u0644 \u0645\u0634\u0627\u0647\u062f\u0647 \u0647\u0633\u062a\u0646\u062f.<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 13: \u0627\u0632 \u0637\u0631\u06cc\u0642 CLI \u0628\u0647 \u06a9\u0644\u0627\u0633\u062a\u0631 \u062f\u0633\u062a\u0631\u0633\u06cc \u067e\u06cc\u062f\u0627 \u06a9\u0646\u06cc\u062f<\/p>\n<p>\u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 \u062e\u0648\u0634\u0647 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0634\u062f\u060c \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 AWS CLI \u0628\u0627 \u0627\u062c\u0631\u0627\u06cc:<\/p>\n<p>aws eks update-kubeconfig &#8211;name &lt;cluster-name&gt; &#8211;region &lt;aws-region&gt;<\/p>\n<p>\u0627\u06cc\u0646 \u062f\u0633\u062a\u0648\u0631 \u0634\u0645\u0627 \u0631\u0627 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u0645\u06cc \u06a9\u0646\u062f kubectl \u0632\u0645\u06cc\u0646\u0647 \u0628\u0631\u0627\u06cc \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u062e\u0648\u0634\u0647 \u062c\u062f\u06cc\u062f EKS.<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 14: \u0645\u0646\u0627\u0628\u0639 \u0631\u0627 \u067e\u0627\u06a9\u0633\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f<\/p>\n<p>\u0628\u0631\u0627\u06cc \u062c\u0644\u0648\u06af\u06cc\u0631\u06cc \u0627\u0632 \u0647\u0632\u06cc\u0646\u0647\u200c\u0647\u0627\u06cc \u063a\u06cc\u0631\u0645\u0646\u062a\u0638\u0631\u0647\u060c \u0645\u0646\u0627\u0628\u0639\u06cc \u0631\u0627 \u06a9\u0647 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0631\u062f\u0647\u200c\u0627\u06cc\u062f \u062f\u0631 \u0632\u0645\u0627\u0646\u06cc \u06a9\u0647 \u062f\u06cc\u06af\u0631 \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0646\u06cc\u0633\u062a\u0646\u062f \u062d\u0630\u0641 \u06a9\u0646\u06cc\u062f:<\/p>\n<p>terraform destroy<\/p>\n<p>  \u0646\u062a\u06cc\u062c\u0647 \u06af\u06cc\u0631\u06cc<\/p>\n<p>\u0634\u0645\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Terraform \u06cc\u06a9 \u062e\u0648\u0634\u0647 AWS EKS \u0631\u0627 \u0628\u0627 \u0645\u0648\u0641\u0642\u06cc\u062a \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0631\u062f\u06cc\u062f! \u0627\u06cc\u0646 \u0631\u0627\u0647\u0646\u0645\u0627 \u06cc\u06a9 \u0631\u0648\u06cc\u06a9\u0631\u062f \u0633\u0627\u062f\u0647 \u0628\u0631\u0627\u06cc \u0641\u0631\u0627\u0647\u0645 \u06a9\u0631\u062f\u0646 \u0632\u06cc\u0631\u0633\u0627\u062e\u062a \u0647\u0627\u06cc \u0627\u0628\u0631\u06cc \u0627\u0631\u0627\u0626\u0647 \u0645\u06cc \u062f\u0647\u062f \u0648 \u062a\u0636\u0645\u06cc\u0646 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0628\u0647 \u0633\u0631\u0639\u062a \u0628\u0627 Kubernetes \u062f\u0631 AWS \u0634\u0631\u0648\u0639 \u06a9\u0646\u06cc\u062f.<\/p>\n<p>\u0628\u0627 \u062e\u06cc\u0627\u0644 \u0631\u0627\u062d\u062a \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u0631\u0627 \u0628\u0631 \u0627\u0633\u0627\u0633 \u0646\u06cc\u0627\u0632 \u062e\u0648\u062f \u0633\u0641\u0627\u0631\u0634\u06cc \u06a9\u0646\u06cc\u062f \u0648 \u0628\u0647 \u062e\u0627\u0637\u0631 \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u06cc\u062f \u06a9\u0647 \u067e\u0633 \u0627\u0632 \u0627\u062a\u0645\u0627\u0645 \u06a9\u0627\u0631\u060c \u0645\u0646\u0627\u0628\u0639 \u0631\u0627 \u067e\u0627\u06a9\u0633\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f \u062a\u0627 \u0627\u0632 \u0647\u0632\u06cc\u0646\u0647 \u0647\u0627\u06cc \u063a\u06cc\u0631 \u0636\u0631\u0648\u0631\u06cc \u062c\u0644\u0648\u06af\u06cc\u0631\u06cc \u06a9\u0646\u06cc\u062f. \u062a\u0631\u0627\u0641\u0648\u0631\u0645\u06cc\u0646\u06af \u0645\u0628\u0627\u0631\u06a9!<\/p>\n<p>Amazon Elastic Kubernetes Service (EKS) \u0627\u062c\u0631\u0627\u06cc Kubernetes \u0631\u0627 \u062f\u0631 AWS \u0628\u062f\u0648\u0646 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u0646\u0635\u0628 \u06cc\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0647\u0648\u0627\u067e\u06cc\u0645\u0627\u06cc \u06a9\u0646\u062a\u0631\u0644 Kubernetes \u062e\u0648\u062f \u0633\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f. \u062f\u0631 \u0627\u06cc\u0646 \u0631\u0627\u0647\u0646\u0645\u0627\u060c \u0645\u0646 \u0634\u0645\u0627 \u0631\u0627 \u0627\u0632 \u0637\u0631\u06cc\u0642 \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u062e\u0648\u0634\u0647 EKS \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Terraform \u0631\u0627\u0647\u0646\u0645\u0627\u06cc\u06cc \u0645\u06cc\u200c\u06a9\u0646\u0645 &#8211; \u0627\u0628\u0632\u0627\u0631 \u0632\u06cc\u0631\u0633\u0627\u062e\u062a \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u06a9\u062f (IaC) \u06a9\u0647 \u0628\u0647 \u0627\u0631\u0627\u0626\u0647 \u062e\u0648\u062f\u06a9\u0627\u0631 \u06a9\u0645\u06a9 \u0645\u06cc\u200c\u06a9\u0646\u062f.<\/p>\n<p>\u062f\u0631 \u067e\u0627\u06cc\u0627\u0646 \u0627\u06cc\u0646 \u067e\u0633\u062a\u060c \u06cc\u06a9 \u062e\u0648\u0634\u0647 Kubernetes \u06a9\u0627\u0645\u0644\u0627\u064b \u0639\u0645\u0644\u06cc\u0627\u062a\u06cc \u062f\u0631 \u062d\u0627\u0644 \u0627\u062c\u0631\u0627 \u062f\u0631 AWS \u062e\u0648\u0627\u0647\u06cc\u062f \u062f\u0627\u0634\u062a. \u0628\u06cc\u0627\u06cc\u06cc\u062f \u0634\u0631\u0648\u0639 \u06a9\u0646\u06cc\u0645!<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_84 counter-hierarchy ez-toc-counter-rtl ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">\u0641\u0647\u0631\u0633\u062a \u0645\u0637\u0627\u0644\u0628<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/#%D9%BE%DB%8C%D8%B4_%D9%86%DB%8C%D8%A7%D8%B2%D9%87%D8%A7\" >\u067e\u06cc\u0634 \u0646\u06cc\u0627\u0632\u0647\u0627<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_1_%D8%A7%D8%B9%D8%AA%D8%A8%D8%A7%D8%B1%D9%86%D8%A7%D9%85%D9%87_AWS_%D8%B1%D8%A7_%D9%BE%DB%8C%DA%A9%D8%B1%D8%A8%D9%86%D8%AF%DB%8C_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 1: \u0627\u0639\u062a\u0628\u0627\u0631\u0646\u0627\u0645\u0647 AWS \u0631\u0627 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_2_%D8%A8%D8%A7_%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87_%D8%A7%D8%B2_Terraform_%DB%8C%DA%A9_VPC_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 2: \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Terraform \u06cc\u06a9 VPC \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_3_%D9%85%D8%AA%D8%BA%DB%8C%D8%B1%D9%87%D8%A7_%D8%B1%D8%A7_%D8%AA%D8%B9%D8%B1%DB%8C%D9%81_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 3: \u0645\u062a\u063a\u06cc\u0631\u0647\u0627 \u0631\u0627 \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_4_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DA%AF%D8%B1%D9%88%D9%87_%D9%87%D8%A7%DB%8C_%D8%A7%D9%85%D9%86%DB%8C%D8%AA%DB%8C\" >\u0645\u0631\u062d\u0644\u0647 4: \u0627\u06cc\u062c\u0627\u062f \u06af\u0631\u0648\u0647 \u0647\u0627\u06cc \u0627\u0645\u0646\u06cc\u062a\u06cc<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_5_EKS_Cluster_%D8%B1%D8%A7_%D8%AA%D9%86%D8%B8%DB%8C%D9%85_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 5: EKS Cluster \u0631\u0627 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_6_%D9%81%D8%A7%DB%8C%D9%84_%D9%87%D8%A7%DB%8C_Terraform_%D9%88_Provider_%D8%B1%D8%A7_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 6: \u0641\u0627\u06cc\u0644 \u0647\u0627\u06cc Terraform \u0648 Provider \u0631\u0627 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/#terraformtf\" >terraform.tf<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/#providertf\" >provider.tf<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/#outputtf\" >output.tf<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_7_Terraform_%D8%B1%D8%A7_%D8%B1%D8%A7%D9%87_%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%DB%8C_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 7: Terraform \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_8_%D8%A7%D8%B9%D8%AA%D8%A8%D8%A7%D8%B1%D8%B3%D9%86%D8%AC%DB%8C_%D9%88_%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87_%D8%B1%DB%8C%D8%B2%DB%8C\" >\u0645\u0631\u062d\u0644\u0647 8: \u0627\u0639\u062a\u0628\u0627\u0631\u0633\u0646\u062c\u06cc \u0648 \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u06cc\u0632\u06cc<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_9_%D9%BE%DB%8C%DA%A9%D8%B1%D8%A8%D9%86%D8%AF%DB%8C_Terraform_%D8%B1%D8%A7_%D8%A7%D8%B9%D9%85%D8%A7%D9%84_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 9: \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc Terraform \u0631\u0627 \u0627\u0639\u0645\u0627\u0644 \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_10_Cluster_%D8%B1%D8%A7_%D8%AF%D8%B1_%DA%A9%D9%86%D8%B3%D9%88%D9%84_AWS_%D8%AA%D8%A3%DB%8C%DB%8C%D8%AF_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 10: Cluster \u0631\u0627 \u062f\u0631 \u06a9\u0646\u0633\u0648\u0644 AWS \u062a\u0623\u06cc\u06cc\u062f \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_11_%D9%BE%DB%8C%DA%A9%D8%B1%D8%A8%D9%86%D8%AF%DB%8C_%D8%AF%D8%B3%D8%AA%D8%B1%D8%B3%DB%8C_%D8%AE%D9%88%D8%B4%D9%87_%D9%85%D8%B1%D8%AD%D9%84%D9%87_%D8%AF%D8%B3%D8%AA%DB%8C\" >\u0645\u0631\u062d\u0644\u0647 11: \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u062f\u0633\u062a\u0631\u0633\u06cc \u062e\u0648\u0634\u0647 (\u0645\u0631\u062d\u0644\u0647 \u062f\u0633\u062a\u06cc)<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_12_%DA%AF%D8%B1%D9%87_%D9%87%D8%A7_%D8%B1%D8%A7_%D8%AF%D8%B1_%D8%AA%D8%A8_Compute_%D8%AA%D8%A3%DB%8C%DB%8C%D8%AF_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 12: \u06af\u0631\u0647 \u0647\u0627 \u0631\u0627 \u062f\u0631 \u062a\u0628 Compute \u062a\u0623\u06cc\u06cc\u062f \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_13_%D8%A7%D8%B2_%D8%B7%D8%B1%DB%8C%D9%82_CLI_%D8%A8%D9%87_%DA%A9%D9%84%D8%A7%D8%B3%D8%AA%D8%B1_%D8%AF%D8%B3%D8%AA%D8%B1%D8%B3%DB%8C_%D9%BE%DB%8C%D8%AF%D8%A7_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 13: \u0627\u0632 \u0637\u0631\u06cc\u0642 CLI \u0628\u0647 \u06a9\u0644\u0627\u0633\u062a\u0631 \u062f\u0633\u062a\u0631\u0633\u06cc \u067e\u06cc\u062f\u0627 \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_14_%D9%85%D9%86%D8%A7%D8%A8%D8%B9_%D8%B1%D8%A7_%D9%BE%D8%A7%DA%A9%D8%B3%D8%A7%D8%B2%DB%8C_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 14: \u0645\u0646\u0627\u0628\u0639 \u0631\u0627 \u067e\u0627\u06a9\u0633\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-19\" href=\"https:\/\/nabfollower.com\/blog\/setting-up-an-aws-eks-cluster-using-terraform-a-beginner-friendly-guide-225d\/#%D9%86%D8%AA%DB%8C%D8%AC%D9%87_%DA%AF%DB%8C%D8%B1%DB%8C\" >\u0646\u062a\u06cc\u062c\u0647 \u06af\u06cc\u0631\u06cc<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"%D9%BE%DB%8C%D8%B4_%D9%86%DB%8C%D8%A7%D8%B2%D9%87%D8%A7\"><\/span>\n<p>  \u067e\u06cc\u0634 \u0646\u06cc\u0627\u0632\u0647\u0627<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0642\u0628\u0644 \u0627\u0632 \u0627\u062f\u0627\u0645\u0647\u060c \u0645\u0637\u0645\u0626\u0646 \u0634\u0648\u06cc\u062f \u06a9\u0647 \u0645\u0648\u0627\u0631\u062f \u0632\u06cc\u0631 \u0631\u0627 \u0646\u0635\u0628 \u06a9\u0631\u062f\u0647 \u0627\u06cc\u062f:<\/p>\n<ul>\n<li>\n<strong>AWS CLI<\/strong>: \u0628\u0631\u0627\u06cc \u062a\u0639\u0627\u0645\u0644 \u0628\u0627 \u062e\u062f\u0645\u0627\u062a AWS \u0627\u0632 \u062a\u0631\u0645\u06cc\u0646\u0627\u0644 \u062e\u0648\u062f.<\/li>\n<li>\n<strong>Terraform<\/strong>: \u0628\u0631\u0627\u06cc \u0645\u062f\u06cc\u0631\u06cc\u062a \u0632\u06cc\u0631\u0633\u0627\u062e\u062a AWS \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u06a9\u062f.<\/li>\n<\/ul>\n<p>\u0647\u0645\u0686\u0646\u06cc\u0646 \u0628\u0631\u0627\u06cc \u0627\u06cc\u062c\u0627\u062f VPC \u0647\u0627\u060c \u062e\u0648\u0634\u0647 \u0647\u0627\u06cc EKS \u0648 \u06af\u0631\u0648\u0647 \u0647\u0627\u06cc \u0627\u0645\u0646\u06cc\u062a\u06cc \u0628\u0647 \u06cc\u06a9 \u062d\u0633\u0627\u0628 AWS \u0628\u0627 \u0645\u062c\u0648\u0632\u0647\u0627\u06cc \u06a9\u0627\u0641\u06cc \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u06cc\u062f.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_1_%D8%A7%D8%B9%D8%AA%D8%A8%D8%A7%D8%B1%D9%86%D8%A7%D9%85%D9%87_AWS_%D8%B1%D8%A7_%D9%BE%DB%8C%DA%A9%D8%B1%D8%A8%D9%86%D8%AF%DB%8C_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 1: \u0627\u0639\u062a\u0628\u0627\u0631\u0646\u0627\u0645\u0647 AWS \u0631\u0627 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0627\u0628\u062a\u062f\u0627 AWS CLI \u0631\u0627 \u0628\u0627 \u06a9\u0644\u06cc\u062f\u0647\u0627\u06cc \u062f\u0633\u062a\u0631\u0633\u06cc \u062e\u0648\u062f \u0628\u0627 \u0627\u062c\u0631\u0627\u06cc \u062f\u0633\u062a\u0648\u0631 \u0632\u06cc\u0631 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u06a9\u0646\u06cc\u062f:\n<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>aws configure\n<\/code><\/pre>\n<\/div>\n<p>AWS \u062e\u0648\u062f \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f <code>Access Key ID<\/code>\u060c <code>Secret Access Key<\/code>\u060c <code>Default region name<\/code>\u060c \u0648 <code>Default output format<\/code>. \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u062d\u0627\u0635\u0644 \u06a9\u0646\u06cc\u062f \u06a9\u0647 \u06a9\u0627\u0631\u0628\u0631 \u06cc\u0627 \u0646\u0642\u0634 IAM \u06a9\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u06cc\u062f \u0645\u062c\u0648\u0632\u0647\u0627\u06cc \u0644\u0627\u0632\u0645 \u0628\u0631\u0627\u06cc \u0627\u06cc\u062c\u0627\u062f \u062e\u0648\u0634\u0647 \u0647\u0627\u06cc EKS \u0631\u0627 \u062f\u0627\u0631\u062f.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_2_%D8%A8%D8%A7_%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87_%D8%A7%D8%B2_Terraform_%DB%8C%DA%A9_VPC_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 2: \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Terraform \u06cc\u06a9 VPC \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u06cc\u06a9 \u0641\u0627\u06cc\u0644 \u0628\u0647 \u0646\u0627\u0645 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f <code>vpc.tf<\/code> \u0628\u0631\u0627\u06cc \u062a\u0639\u0631\u06cc\u0641 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a \u0634\u0628\u06a9\u0647 \u0627\u06cc\u0646 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u06cc\u06a9 \u0627\u0628\u0631 \u062e\u0635\u0648\u0635\u06cc \u0645\u062c\u0627\u0632\u06cc (VPC) \u0628\u0627 \u0647\u0631 \u062f\u0648 \u0632\u06cc\u0631 \u0634\u0628\u06a9\u0647 \u062e\u0635\u0648\u0635\u06cc \u0648 \u0639\u0645\u0648\u0645\u06cc \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc \u06a9\u0646\u062f \u0648 \u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc DNS \u0631\u0627 \u0641\u0639\u0627\u0644 \u0645\u06cc \u06a9\u0646\u062f.\n<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight hcl\"><code><span class=\"nx\">data<\/span> <span class=\"s2\">\"aws_availability_zones\"<\/span> <span class=\"s2\">\"azs\"<\/span> <span class=\"p\">{}<\/span>\n\n<span class=\"nx\">module<\/span> <span class=\"s2\">\"vpc\"<\/span> <span class=\"p\">{<\/span>\n  <span class=\"nx\">source<\/span>  <span class=\"p\">=<\/span> <span class=\"s2\">\"terraform-aws-modules\/vpc\/aws\"<\/span>\n  <span class=\"nx\">version<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"5.13.0\"<\/span>\n\n  <span class=\"nx\">name<\/span> <span class=\"p\">=<\/span> <span class=\"nx\">var<\/span><span class=\"p\">.<\/span><span class=\"nx\">vpc_name<\/span>\n  <span class=\"nx\">cidr<\/span> <span class=\"p\">=<\/span> <span class=\"nx\">var<\/span><span class=\"p\">.<\/span><span class=\"nx\">vpc_cidr<\/span>\n\n  <span class=\"nx\">azs<\/span>             <span class=\"p\">=<\/span> <span class=\"nx\">data<\/span><span class=\"p\">.<\/span><span class=\"nx\">aws_availability_zones<\/span><span class=\"p\">.<\/span><span class=\"nx\">azs<\/span><span class=\"p\">.<\/span><span class=\"nx\">names<\/span>\n  <span class=\"nx\">private_subnets<\/span> <span class=\"p\">=<\/span> <span class=\"p\">[<\/span><span class=\"s2\">\"10.0.1.0\/24\"<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"10.0.2.0\/24\"<\/span><span class=\"p\">]<\/span>\n  <span class=\"nx\">public_subnets<\/span>  <span class=\"p\">=<\/span> <span class=\"p\">[<\/span><span class=\"s2\">\"10.0.101.0\/24\"<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"10.0.102.0\/24\"<\/span><span class=\"p\">]<\/span>\n\n  <span class=\"nx\">enable_nat_gateway<\/span>   <span class=\"p\">=<\/span> <span class=\"kc\">true<\/span>\n  <span class=\"nx\">single_nat_gateway<\/span>   <span class=\"p\">=<\/span> <span class=\"kc\">true<\/span>\n  <span class=\"nx\">enable_dns_hostnames<\/span> <span class=\"p\">=<\/span> <span class=\"kc\">true<\/span>\n  <span class=\"nx\">enable_dns_support<\/span>   <span class=\"p\">=<\/span> <span class=\"kc\">true<\/span>\n\n  <span class=\"nx\">tags<\/span> <span class=\"p\">=<\/span> <span class=\"p\">{<\/span>\n    <span class=\"nx\">Name<\/span>                                    <span class=\"p\">=<\/span> <span class=\"nx\">var<\/span><span class=\"p\">.<\/span><span class=\"nx\">vpc_name<\/span>\n    <span class=\"s2\">\"kubernetes.io\/cluster\/${var.eks_name}\"<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"shared\"<\/span>\n  <span class=\"p\">}<\/span>\n\n  <span class=\"nx\">private_subnet_tags<\/span> <span class=\"p\">=<\/span> <span class=\"p\">{<\/span>\n    <span class=\"s2\">\"kubernetes.io\/cluster\/${var.eks_name}\"<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"shared\"<\/span>\n    <span class=\"s2\">\"kubernetes.io\/role\/internal-elb\"<\/span>       <span class=\"p\">=<\/span> <span class=\"s2\">\"1\"<\/span>\n  <span class=\"p\">}<\/span>\n\n  <span class=\"nx\">public_subnet_tags<\/span> <span class=\"p\">=<\/span> <span class=\"p\">{<\/span>\n    <span class=\"s2\">\"kubernetes.io\/cluster\/${var.eks_name}\"<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"shared\"<\/span>\n    <span class=\"s2\">\"kubernetes.io\/role\/elb\"<\/span>                <span class=\"p\">=<\/span> <span class=\"s2\">\"1\"<\/span>\n  <span class=\"p\">}<\/span>\n<span class=\"p\">}<\/span>\n<\/code><\/pre>\n<\/div>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_3_%D9%85%D8%AA%D8%BA%DB%8C%D8%B1%D9%87%D8%A7_%D8%B1%D8%A7_%D8%AA%D8%B9%D8%B1%DB%8C%D9%81_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 3: \u0645\u062a\u063a\u06cc\u0631\u0647\u0627 \u0631\u0627 \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u06cc\u06a9 \u0641\u0627\u06cc\u0644 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f <code>variables.tf<\/code> \u0628\u0631\u0627\u06cc \u062a\u0639\u0631\u06cc\u0641 \u0645\u062a\u063a\u06cc\u0631\u0647\u0627\u06cc \u0642\u0627\u0628\u0644 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u062c\u062f\u062f \u0645\u0627\u0646\u0646\u062f \u0646\u0627\u0645 VPC\u060c \u0628\u0644\u0648\u06a9 CIDR \u0648 \u0646\u0627\u0645 \u062e\u0648\u0634\u0647 EKS. \u0628\u0647 \u0627\u06cc\u0646 \u062a\u0631\u062a\u06cc\u0628\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0628\u0647 \u0631\u0627\u062d\u062a\u06cc \u0627\u06cc\u0646 \u0645\u0642\u0627\u062f\u06cc\u0631 \u0631\u0627 \u0628\u062f\u0648\u0646 \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0631 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u0647\u0633\u062a\u0647 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u062f.\n<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight hcl\"><code><span class=\"nx\">variable<\/span> <span class=\"s2\">\"aws_region\"<\/span> <span class=\"p\">{<\/span>\n  <span class=\"nx\">description<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"AWS region\"<\/span>\n  <span class=\"nx\">default<\/span>     <span class=\"p\">=<\/span> <span class=\"s2\">\"us-east-1\"<\/span>\n<span class=\"p\">}<\/span>\n\n<span class=\"nx\">variable<\/span> <span class=\"s2\">\"vpc_name\"<\/span> <span class=\"p\">{<\/span>\n  <span class=\"nx\">description<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"VPC name\"<\/span>\n  <span class=\"nx\">type<\/span>        <span class=\"p\">=<\/span> <span class=\"nx\">string<\/span>\n<span class=\"p\">}<\/span>\n\n<span class=\"nx\">variable<\/span> <span class=\"s2\">\"vpc_cidr\"<\/span> <span class=\"p\">{<\/span>\n  <span class=\"nx\">description<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"VPC CIDR\"<\/span>\n  <span class=\"nx\">default<\/span>     <span class=\"p\">=<\/span> <span class=\"s2\">\"10.0.0.0\/16\"<\/span>\n<span class=\"p\">}<\/span>\n\n<span class=\"nx\">variable<\/span> <span class=\"s2\">\"eks_name\"<\/span> <span class=\"p\">{<\/span>\n  <span class=\"nx\">description<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"AWS EKS Cluster name\"<\/span>\n  <span class=\"nx\">type<\/span>        <span class=\"p\">=<\/span> <span class=\"nx\">string<\/span>\n<span class=\"p\">}<\/span>\n\n<span class=\"nx\">variable<\/span> <span class=\"s2\">\"sg_name\"<\/span> <span class=\"p\">{<\/span>\n  <span class=\"nx\">description<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"Security group name\"<\/span>\n  <span class=\"nx\">default<\/span>     <span class=\"p\">=<\/span> <span class=\"s2\">\"aws-eks-sg\"<\/span>\n<span class=\"p\">}<\/span>\n<\/code><\/pre>\n<\/div>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_4_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DA%AF%D8%B1%D9%88%D9%87_%D9%87%D8%A7%DB%8C_%D8%A7%D9%85%D9%86%DB%8C%D8%AA%DB%8C\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 4: \u0627\u06cc\u062c\u0627\u062f \u06af\u0631\u0648\u0647 \u0647\u0627\u06cc \u0627\u0645\u0646\u06cc\u062a\u06cc<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0627\u06a9\u0646\u0648\u0646\u060c \u0628\u06cc\u0627\u06cc\u06cc\u062f \u06af\u0631\u0648\u0647 \u0647\u0627\u06cc \u0627\u0645\u0646\u06cc\u062a\u06cc \u0631\u0627 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u0645 \u06a9\u0647 \u062f\u0633\u062a\u0631\u0633\u06cc \u0634\u0628\u06a9\u0647 \u0628\u0647 \u062e\u0648\u0634\u0647 EKS \u0631\u0627 \u06a9\u0646\u062a\u0631\u0644 \u0645\u06cc \u06a9\u0646\u0646\u062f. \u06cc\u06a9 \u0641\u0627\u06cc\u0644 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f <code>security-groups.tf<\/code> \u0628\u0627 \u0645\u062d\u062a\u0648\u0627\u06cc \u0632\u06cc\u0631:\n<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight hcl\"><code><span class=\"nx\">resource<\/span> <span class=\"s2\">\"aws_security_group\"<\/span> <span class=\"s2\">\"eks-sg\"<\/span> <span class=\"p\">{<\/span>\n  <span class=\"nx\">name<\/span>   <span class=\"p\">=<\/span> <span class=\"nx\">var<\/span><span class=\"p\">.<\/span><span class=\"nx\">sg_name<\/span>\n  <span class=\"nx\">vpc_id<\/span> <span class=\"p\">=<\/span> <span class=\"nx\">module<\/span><span class=\"p\">.<\/span><span class=\"nx\">vpc<\/span><span class=\"p\">.<\/span><span class=\"nx\">vpc_id<\/span>\n<span class=\"p\">}<\/span>\n\n<span class=\"nx\">resource<\/span> <span class=\"s2\">\"aws_security_group_rule\"<\/span> <span class=\"s2\">\"eks-sg-ingress\"<\/span> <span class=\"p\">{<\/span>\n  <span class=\"nx\">description<\/span>       <span class=\"p\">=<\/span> <span class=\"s2\">\"allow inbound traffic from eks\"<\/span>\n  <span class=\"nx\">type<\/span>              <span class=\"p\">=<\/span> <span class=\"s2\">\"ingress\"<\/span>\n  <span class=\"nx\">from_port<\/span>         <span class=\"p\">=<\/span> <span class=\"mi\">0<\/span>\n  <span class=\"nx\">to_port<\/span>           <span class=\"p\">=<\/span> <span class=\"mi\">0<\/span>\n  <span class=\"nx\">protocol<\/span>          <span class=\"p\">=<\/span> <span class=\"nx\">-1<\/span>\n  <span class=\"nx\">security_group_id<\/span> <span class=\"p\">=<\/span> <span class=\"nx\">aws_security_group<\/span><span class=\"p\">.<\/span><span class=\"nx\">eks-sg<\/span><span class=\"p\">.<\/span><span class=\"nx\">id<\/span>\n  <span class=\"nx\">cidr_blocks<\/span>       <span class=\"p\">=<\/span> <span class=\"p\">[<\/span><span class=\"s2\">\"49.43.153.70\/32\"<\/span><span class=\"p\">]<\/span>\n<span class=\"p\">}<\/span>\n\n<span class=\"nx\">resource<\/span> <span class=\"s2\">\"aws_security_group_rule\"<\/span> <span class=\"s2\">\"eks-sg-egress\"<\/span> <span class=\"p\">{<\/span>\n  <span class=\"nx\">description<\/span>       <span class=\"p\">=<\/span> <span class=\"s2\">\"allow outbound traffic to eks\"<\/span>\n  <span class=\"nx\">type<\/span>              <span class=\"p\">=<\/span> <span class=\"s2\">\"egress\"<\/span>\n  <span class=\"nx\">from_port<\/span>         <span class=\"p\">=<\/span> <span class=\"mi\">0<\/span>\n  <span class=\"nx\">to_port<\/span>           <span class=\"p\">=<\/span> <span class=\"mi\">0<\/span>\n  <span class=\"nx\">protocol<\/span>          <span class=\"p\">=<\/span> <span class=\"nx\">-1<\/span>\n  <span class=\"nx\">security_group_id<\/span> <span class=\"p\">=<\/span> <span class=\"nx\">aws_security_group<\/span><span class=\"p\">.<\/span><span class=\"nx\">eks-sg<\/span><span class=\"p\">.<\/span><span class=\"nx\">id<\/span>\n  <span class=\"nx\">cidr_blocks<\/span>       <span class=\"p\">=<\/span> <span class=\"p\">[<\/span><span class=\"s2\">\"0.0.0.0\/0\"<\/span><span class=\"p\">]<\/span>\n<span class=\"p\">}<\/span>\n<\/code><\/pre>\n<\/div>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_5_EKS_Cluster_%D8%B1%D8%A7_%D8%AA%D9%86%D8%B8%DB%8C%D9%85_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 5: EKS Cluster \u0631\u0627 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0628\u0627 \u062a\u06a9\u0645\u06cc\u0644 \u062a\u0646\u0638\u06cc\u0645\u0627\u062a \u0634\u0628\u06a9\u0647 \u0648 \u0627\u0645\u0646\u06cc\u062a\u060c \u06cc\u06a9 \u0641\u0627\u06cc\u0644 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f <code>eks.tf<\/code> \u0628\u0631\u0627\u06cc \u062a\u0639\u0631\u06cc\u0641 \u06af\u0631\u0648\u0647 \u0647\u0627\u06cc \u062e\u0648\u0634\u0647 \u0648 \u06af\u0631\u0647 EKS.\n<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight hcl\"><code><span class=\"nx\">module<\/span> <span class=\"s2\">\"eks\"<\/span> <span class=\"p\">{<\/span>\n  <span class=\"nx\">source<\/span>  <span class=\"p\">=<\/span> <span class=\"s2\">\"terraform-aws-modules\/eks\/aws\"<\/span>\n  <span class=\"nx\">version<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"~&gt; 20.0\"<\/span>\n\n  <span class=\"nx\">cluster_name<\/span>    <span class=\"p\">=<\/span> <span class=\"nx\">var<\/span><span class=\"p\">.<\/span><span class=\"nx\">eks_name<\/span>\n  <span class=\"nx\">cluster_version<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"1.30\"<\/span>\n\n  <span class=\"nx\">enable_irsa<\/span> <span class=\"p\">=<\/span> <span class=\"kc\">true<\/span>\n\n  <span class=\"nx\">vpc_id<\/span>     <span class=\"p\">=<\/span> <span class=\"nx\">module<\/span><span class=\"p\">.<\/span><span class=\"nx\">vpc<\/span><span class=\"p\">.<\/span><span class=\"nx\">vpc_id<\/span>\n  <span class=\"nx\">subnet_ids<\/span> <span class=\"p\">=<\/span> <span class=\"nx\">module<\/span><span class=\"p\">.<\/span><span class=\"nx\">vpc<\/span><span class=\"p\">.<\/span><span class=\"nx\">private_subnets<\/span>\n\n  <span class=\"nx\">tags<\/span> <span class=\"p\">=<\/span> <span class=\"p\">{<\/span>\n    <span class=\"nx\">cluster<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"my-eks-cluster\"<\/span>\n  <span class=\"p\">}<\/span>\n\n  <span class=\"c1\"># EKS Managed Node Group(s)<\/span>\n  <span class=\"nx\">eks_managed_node_group_defaults<\/span> <span class=\"p\">=<\/span> <span class=\"p\">{<\/span>\n    <span class=\"nx\">ami_type<\/span>               <span class=\"p\">=<\/span> <span class=\"s2\">\"AL2_x86_64\"<\/span>\n    <span class=\"nx\">instance_types<\/span>         <span class=\"p\">=<\/span> <span class=\"p\">[<\/span><span class=\"s2\">\"t2.micro\"<\/span><span class=\"p\">]<\/span>\n    <span class=\"nx\">vpc_security_group_ids<\/span> <span class=\"p\">=<\/span> <span class=\"p\">[<\/span><span class=\"nx\">aws_security_group<\/span><span class=\"p\">.<\/span><span class=\"nx\">eks-sg<\/span><span class=\"p\">.<\/span><span class=\"nx\">id<\/span><span class=\"p\">]<\/span>\n  <span class=\"p\">}<\/span>\n\n  <span class=\"nx\">eks_managed_node_groups<\/span> <span class=\"p\">=<\/span> <span class=\"p\">{<\/span>\n    <span class=\"nx\">node_group<\/span> <span class=\"p\">=<\/span> <span class=\"p\">{<\/span>\n      <span class=\"nx\">min_size<\/span>     <span class=\"p\">=<\/span> <span class=\"mi\">2<\/span>\n      <span class=\"nx\">max_size<\/span>     <span class=\"p\">=<\/span> <span class=\"mi\">3<\/span>\n      <span class=\"nx\">desired_size<\/span> <span class=\"p\">=<\/span> <span class=\"mi\">2<\/span>\n    <span class=\"p\">}<\/span>\n  <span class=\"p\">}<\/span>\n<span class=\"p\">}<\/span>\n<\/code><\/pre>\n<\/div>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_6_%D9%81%D8%A7%DB%8C%D9%84_%D9%87%D8%A7%DB%8C_Terraform_%D9%88_Provider_%D8%B1%D8%A7_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 6: \u0641\u0627\u06cc\u0644 \u0647\u0627\u06cc Terraform \u0648 Provider \u0631\u0627 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0647\u0645\u0686\u0646\u06cc\u0646 \u0628\u0631\u0627\u06cc \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0645\u0646\u0627\u0633\u0628 \u0628\u0647 Terraform \u0648 \u0641\u0627\u06cc\u0644 \u0647\u0627\u06cc \u0627\u0631\u0627\u0626\u0647 \u062f\u0647\u0646\u062f\u0647 \u0632\u06cc\u0631 \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u06cc\u062f:<\/p>\n<h3><span class=\"ez-toc-section\" id=\"terraformtf\"><\/span>\n<p>  <code>terraform.tf<\/code><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight hcl\"><code><span class=\"nx\">terraform<\/span> <span class=\"p\">{<\/span>\n  <span class=\"nx\">required_providers<\/span> <span class=\"p\">{<\/span>\n    <span class=\"nx\">aws<\/span> <span class=\"p\">=<\/span> <span class=\"p\">{<\/span>\n      <span class=\"nx\">source<\/span>  <span class=\"p\">=<\/span> <span class=\"s2\">\"hashicorp\/aws\"<\/span>\n      <span class=\"nx\">version<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"~&gt; 5.0\"<\/span>\n    <span class=\"p\">}<\/span>\n  <span class=\"p\">}<\/span>\n<span class=\"p\">}<\/span>\n<\/code><\/pre>\n<\/div>\n<h3><span class=\"ez-toc-section\" id=\"providertf\"><\/span>\n<p>  <code>provider.tf<\/code><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight hcl\"><code><span class=\"nx\">provider<\/span> <span class=\"s2\">\"aws\"<\/span> <span class=\"p\">{<\/span>\n  <span class=\"nx\">region<\/span> <span class=\"p\">=<\/span> <span class=\"nx\">var<\/span><span class=\"p\">.<\/span><span class=\"nx\">aws_region<\/span>\n<span class=\"p\">}<\/span>\n<\/code><\/pre>\n<\/div>\n<h3><span class=\"ez-toc-section\" id=\"outputtf\"><\/span>\n<p>  <code>output.tf<\/code><br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight hcl\"><code><span class=\"nx\">output<\/span> <span class=\"s2\">\"cluster_id\"<\/span> <span class=\"p\">{<\/span>\n  <span class=\"nx\">description<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"AWS EKS Cluster ID\"<\/span>\n  <span class=\"nx\">value<\/span>       <span class=\"p\">=<\/span> <span class=\"nx\">module<\/span><span class=\"p\">.<\/span><span class=\"nx\">eks<\/span><span class=\"p\">.<\/span><span class=\"nx\">cluster_id<\/span>\n<span class=\"p\">}<\/span>\n\n<span class=\"nx\">output<\/span> <span class=\"s2\">\"cluster_endpoint\"<\/span> <span class=\"p\">{<\/span>\n  <span class=\"nx\">description<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"AWS EKS Cluster Endpoint\"<\/span>\n  <span class=\"nx\">value<\/span>       <span class=\"p\">=<\/span> <span class=\"nx\">module<\/span><span class=\"p\">.<\/span><span class=\"nx\">eks<\/span><span class=\"p\">.<\/span><span class=\"nx\">cluster_endpoint<\/span>\n<span class=\"p\">}<\/span>\n\n<span class=\"nx\">output<\/span> <span class=\"s2\">\"cluster_security_group_id\"<\/span> <span class=\"p\">{<\/span>\n  <span class=\"nx\">description<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"Security group ID of the control plane in the cluster\"<\/span>\n  <span class=\"nx\">value<\/span>       <span class=\"p\">=<\/span> <span class=\"nx\">module<\/span><span class=\"p\">.<\/span><span class=\"nx\">eks<\/span><span class=\"p\">.<\/span><span class=\"nx\">cluster_security_group_id<\/span>\n<span class=\"p\">}<\/span>\n\n<span class=\"nx\">output<\/span> <span class=\"s2\">\"region\"<\/span> <span class=\"p\">{<\/span>\n  <span class=\"nx\">description<\/span> <span class=\"p\">=<\/span> <span class=\"s2\">\"AWS region\"<\/span>\n  <span class=\"nx\">value<\/span>       <span class=\"p\">=<\/span> <span class=\"nx\">var<\/span><span class=\"p\">.<\/span><span class=\"nx\">aws_region<\/span>\n<span class=\"p\">}<\/span>\n\n<span class=\"nx\">output<\/span> <span class=\"s2\">\"oidc_provider_arn\"<\/span> <span class=\"p\">{<\/span>\n  <span class=\"nx\">value<\/span> <span class=\"p\">=<\/span> <span class=\"nx\">module<\/span><span class=\"p\">.<\/span><span class=\"nx\">eks<\/span><span class=\"p\">.<\/span><span class=\"nx\">oidc_provider_arn<\/span>\n<span class=\"p\">}<\/span>\n<\/code><\/pre>\n<\/div>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_7_Terraform_%D8%B1%D8%A7_%D8%B1%D8%A7%D9%87_%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%DB%8C_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 7: Terraform \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u062f\u0633\u062a\u0648\u0631 \u0632\u06cc\u0631 \u0631\u0627 \u0628\u0631\u0627\u06cc \u0645\u0642\u062f\u0627\u0631\u062f\u0647\u06cc \u0627\u0648\u0644\u06cc\u0647 Terraform \u0648 \u062f\u0627\u0646\u0644\u0648\u062f \u0627\u0631\u0627\u0626\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0644\u0627\u0632\u0645 \u0627\u062c\u0631\u0627 \u06a9\u0646\u06cc\u062f:\n<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>terraform init\n<\/code><\/pre>\n<\/div>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_8_%D8%A7%D8%B9%D8%AA%D8%A8%D8%A7%D8%B1%D8%B3%D9%86%D8%AC%DB%8C_%D9%88_%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87_%D8%B1%DB%8C%D8%B2%DB%8C\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 8: \u0627\u0639\u062a\u0628\u0627\u0631\u0633\u0646\u062c\u06cc \u0648 \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u06cc\u0632\u06cc<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0642\u0628\u0644 \u0627\u0632 \u0627\u0639\u0645\u0627\u0644 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc\u060c \u0622\u0646 \u0631\u0627 \u062a\u0627\u06cc\u06cc\u062f \u06a9\u0631\u062f\u0647 \u0648 \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a \u0631\u0627 \u067e\u06cc\u0634\u200c\u0646\u0645\u0627\u06cc\u0634 \u06a9\u0646\u06cc\u062f:\n<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>terraform validate\nterraform plan\n<\/code><\/pre>\n<\/div>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_9_%D9%BE%DB%8C%DA%A9%D8%B1%D8%A8%D9%86%D8%AF%DB%8C_Terraform_%D8%B1%D8%A7_%D8%A7%D8%B9%D9%85%D8%A7%D9%84_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 9: \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc Terraform \u0631\u0627 \u0627\u0639\u0645\u0627\u0644 \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u062e\u0648\u0634\u0647 EKS \u0648 VPC \u0645\u0631\u0628\u0648\u0637\u0647 \u0631\u0627 \u0628\u0627:\n<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>terraform apply\n<\/code><\/pre>\n<\/div>\n<p>\u0627\u06cc\u0646 \u0641\u0631\u0622\u06cc\u0646\u062f \u062a\u0642\u0631\u06cc\u0628\u0627\u064b 15 \u062f\u0642\u06cc\u0642\u0647 \u0637\u0648\u0644 \u062e\u0648\u0627\u0647\u062f \u06a9\u0634\u06cc\u062f. \u067e\u0633 \u0627\u0632 \u0627\u062a\u0645\u0627\u0645\u060c \u06a9\u0644\u0627\u0633\u062a\u0631 AWS EKS \u062e\u0648\u062f \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0648 \u0627\u062c\u0631\u0627 \u062e\u0648\u0627\u0647\u06cc\u062f \u06a9\u0631\u062f.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_10_Cluster_%D8%B1%D8%A7_%D8%AF%D8%B1_%DA%A9%D9%86%D8%B3%D9%88%D9%84_AWS_%D8%AA%D8%A3%DB%8C%DB%8C%D8%AF_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 10: Cluster \u0631\u0627 \u062f\u0631 \u06a9\u0646\u0633\u0648\u0644 AWS \u062a\u0623\u06cc\u06cc\u062f \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0633\u0631 \u0628\u0647 <strong>\u06a9\u0646\u0633\u0648\u0644 \u0645\u062f\u06cc\u0631\u06cc\u062a AWS<\/strong>\u060c \u067e\u06cc\u0645\u0627\u06cc\u0634 \u06a9\u0646\u06cc\u062f \u0628\u0647 <strong>EX<\/strong>\u060c \u0648 \u062a\u0623\u06cc\u06cc\u062f \u06a9\u0646\u06cc\u062f \u06a9\u0647 \u062e\u0648\u0634\u0647 \u0634\u0645\u0627 \u0641\u0647\u0631\u0633\u062a \u0634\u062f\u0647 \u0627\u0633\u062a.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_11_%D9%BE%DB%8C%DA%A9%D8%B1%D8%A8%D9%86%D8%AF%DB%8C_%D8%AF%D8%B3%D8%AA%D8%B1%D8%B3%DB%8C_%D8%AE%D9%88%D8%B4%D9%87_%D9%85%D8%B1%D8%AD%D9%84%D9%87_%D8%AF%D8%B3%D8%AA%DB%8C\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 11: \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u062f\u0633\u062a\u0631\u0633\u06cc \u062e\u0648\u0634\u0647 (\u0645\u0631\u062d\u0644\u0647 \u062f\u0633\u062a\u06cc)<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u067e\u0633 \u0627\u0632 \u0622\u0645\u0627\u062f\u0647 \u0634\u062f\u0646 \u062e\u0648\u0634\u0647 EKS\u060c \u0628\u0627\u06cc\u062f \u062f\u0633\u062a\u0631\u0633\u06cc \u0631\u0627 \u0628\u0631\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u0627\u0646 \u06cc\u0627 \u0646\u0642\u0634 \u0647\u0627\u06cc IAM \u062e\u0648\u062f \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u06a9\u0646\u06cc\u062f:<\/p>\n<ol>\n<li>\u062f\u0631 \u06a9\u0646\u0633\u0648\u0644 AWS\u060c \u0628\u0647 \u0622\u0646 \u0628\u0631\u0648\u06cc\u062f <strong>EKS > \u062e\u0648\u0634\u0647 \u0634\u0645\u0627 > \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc > \u062f\u0633\u062a\u0631\u0633\u06cc<\/strong>.<\/li>\n<li>\u0631\u0627 \u06a9\u0644\u06cc\u06a9 \u06a9\u0646\u06cc\u062f <strong>\u0646\u0642\u0634 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f<\/strong> \u06cc\u0627 <strong>\u06a9\u0627\u0631\u0628\u0631 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f<\/strong>.<\/li>\n<li>\u0631\u0627 \u0627\u0631\u0627\u0626\u0647 \u062f\u0647\u06cc\u062f <strong>ARN \u0627\u0635\u0644\u06cc IAM<\/strong>.<\/li>\n<li>\u0631\u0627 \u0627\u0646\u062a\u062e\u0627\u0628 \u06a9\u0646\u06cc\u062f <strong>\u062a\u0627\u06cc\u067e \u06a9\u0646\u06cc\u062f<\/strong> (\u0646\u0642\u0634 \u06cc\u0627 \u06a9\u0627\u0631\u0628\u0631)\u060c \u0627\u0631\u0627\u0626\u0647 \u0627\u0644\u0641 <strong>\u0646\u0627\u0645 \u06a9\u0627\u0631\u0628\u0631\u06cc<\/strong>\u0648 a \u0631\u0627 \u0627\u0646\u062a\u062e\u0627\u0628 \u06a9\u0646\u06cc\u062f <strong>\u0646\u0627\u0645 \u062e\u0637 \u0645\u0634\u06cc<\/strong> (\u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0645\u062b\u0627\u0644\u060c Admin \u06cc\u0627 ViewOnly).<\/li>\n<li>\u0631\u0627 \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0646\u06cc\u062f <strong>\u0645\u062d\u062f\u0648\u062f\u0647 \u062f\u0633\u062a\u0631\u0633\u06cc<\/strong>.<\/li>\n<li>\u06a9\u0644\u06cc\u06a9 \u06a9\u0646\u06cc\u062f <strong>\u0633\u06cc\u0627\u0633\u062a \u0631\u0627 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f<\/strong> \u0648 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u0631\u0627 \u0646\u0647\u0627\u06cc\u06cc \u06a9\u0646\u06cc\u062f.<\/li>\n<\/ol>\n<p>\u0627\u06cc\u0646 \u0645\u0631\u062d\u0644\u0647 \u0628\u0647 \u06a9\u0627\u0631\u0628\u0631\u0627\u0646 \u06cc\u0627 \u0646\u0642\u0634\u200c\u0647\u0627 \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc\u200c\u062f\u0647\u062f \u062a\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0627\u062d\u0631\u0627\u0632 \u0647\u0648\u06cc\u062a \u0645\u0628\u062a\u0646\u06cc \u0628\u0631 IAM \u0628\u0627 \u062e\u0648\u0634\u0647 Kubernetes \u062a\u0639\u0627\u0645\u0644 \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u0646\u062f.<\/p>\n<p><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/media.dev.to\/cdn-cgi\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6ksggfusw0qfb3vxmtbj.png\" alt=\"\u062a\u0648\u0636\u06cc\u062d\u0627\u062a \u062a\u0635\u0648\u06cc\u0631\" width=\"800\" height=\"536\" title=\"\"><\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_12_%DA%AF%D8%B1%D9%87_%D9%87%D8%A7_%D8%B1%D8%A7_%D8%AF%D8%B1_%D8%AA%D8%A8_Compute_%D8%AA%D8%A3%DB%8C%DB%8C%D8%AF_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 12: \u06af\u0631\u0647 \u0647\u0627 \u0631\u0627 \u062f\u0631 \u062a\u0628 Compute \u062a\u0623\u06cc\u06cc\u062f \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0628\u0631\u0627\u06cc \u0628\u0631\u0631\u0633\u06cc \u0627\u06cc\u0646\u06a9\u0647 \u0622\u06cc\u0627 \u06af\u0631\u0647 \u0647\u0627 \u0622\u0645\u0627\u062f\u0647 \u0648 \u062f\u0631 \u062d\u0627\u0644 \u0627\u062c\u0631\u0627 \u0647\u0633\u062a\u0646\u062f:<\/p>\n<ol>\n<li>\u0628\u0631\u0648 \u0628\u0647 <strong>\u0645\u062d\u0627\u0633\u0628\u0647 \u06a9\u0646\u06cc\u062f<\/strong> \u0628\u0631\u06af\u0647 \u062e\u0648\u0634\u0647 \u062f\u0631 \u06a9\u0646\u0633\u0648\u0644 AWS.<\/li>\n<li>\u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u062d\u0627\u0635\u0644 \u06a9\u0646\u06cc\u062f \u06a9\u0647 \u06af\u0631\u0647 \u0647\u0627\u06cc \u06a9\u0627\u0631\u06af\u0631 \u0642\u0627\u0628\u0644 \u0645\u0634\u0627\u0647\u062f\u0647 \u0647\u0633\u062a\u0646\u062f.<\/li>\n<\/ol>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/media.dev.to\/cdn-cgi\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1aa9yvq8nmevcj27pe02.png\" alt=\"\u062a\u0648\u0636\u06cc\u062d\u0627\u062a \u062a\u0635\u0648\u06cc\u0631\" width=\"800\" height=\"339\" title=\"\"><\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_13_%D8%A7%D8%B2_%D8%B7%D8%B1%DB%8C%D9%82_CLI_%D8%A8%D9%87_%DA%A9%D9%84%D8%A7%D8%B3%D8%AA%D8%B1_%D8%AF%D8%B3%D8%AA%D8%B1%D8%B3%DB%8C_%D9%BE%DB%8C%D8%AF%D8%A7_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 13: \u0627\u0632 \u0637\u0631\u06cc\u0642 CLI \u0628\u0647 \u06a9\u0644\u0627\u0633\u062a\u0631 \u062f\u0633\u062a\u0631\u0633\u06cc \u067e\u06cc\u062f\u0627 \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 \u062e\u0648\u0634\u0647 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0634\u062f\u060c \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 AWS CLI \u0628\u0627 \u0627\u062c\u0631\u0627\u06cc:\n<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>aws eks update-kubeconfig <span class=\"nt\">--name<\/span> &lt;cluster-name&gt; <span class=\"nt\">--region<\/span> &lt;aws-region&gt;\n<\/code><\/pre>\n<\/div>\n<p>\u0627\u06cc\u0646 \u062f\u0633\u062a\u0648\u0631 \u0634\u0645\u0627 \u0631\u0627 \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u0645\u06cc \u06a9\u0646\u062f <code>kubectl<\/code> \u0632\u0645\u06cc\u0646\u0647 \u0628\u0631\u0627\u06cc \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u062e\u0648\u0634\u0647 \u062c\u062f\u06cc\u062f EKS.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_14_%D9%85%D9%86%D8%A7%D8%A8%D8%B9_%D8%B1%D8%A7_%D9%BE%D8%A7%DA%A9%D8%B3%D8%A7%D8%B2%DB%8C_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 14: \u0645\u0646\u0627\u0628\u0639 \u0631\u0627 \u067e\u0627\u06a9\u0633\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0628\u0631\u0627\u06cc \u062c\u0644\u0648\u06af\u06cc\u0631\u06cc \u0627\u0632 \u0647\u0632\u06cc\u0646\u0647\u200c\u0647\u0627\u06cc \u063a\u06cc\u0631\u0645\u0646\u062a\u0638\u0631\u0647\u060c \u0645\u0646\u0627\u0628\u0639\u06cc \u0631\u0627 \u06a9\u0647 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0631\u062f\u0647\u200c\u0627\u06cc\u062f \u062f\u0631 \u0632\u0645\u0627\u0646\u06cc \u06a9\u0647 \u062f\u06cc\u06af\u0631 \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0646\u06cc\u0633\u062a\u0646\u062f \u062d\u0630\u0641 \u06a9\u0646\u06cc\u062f:\n<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>terraform destroy\n<\/code><\/pre>\n<\/div>\n<h2><span class=\"ez-toc-section\" id=\"%D9%86%D8%AA%DB%8C%D8%AC%D9%87_%DA%AF%DB%8C%D8%B1%DB%8C\"><\/span>\n<p>  \u0646\u062a\u06cc\u062c\u0647 \u06af\u06cc\u0631\u06cc<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0634\u0645\u0627 \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Terraform \u06cc\u06a9 \u062e\u0648\u0634\u0647 AWS EKS \u0631\u0627 \u0628\u0627 \u0645\u0648\u0641\u0642\u06cc\u062a \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0631\u062f\u06cc\u062f! \u0627\u06cc\u0646 \u0631\u0627\u0647\u0646\u0645\u0627 \u06cc\u06a9 \u0631\u0648\u06cc\u06a9\u0631\u062f \u0633\u0627\u062f\u0647 \u0628\u0631\u0627\u06cc \u0641\u0631\u0627\u0647\u0645 \u06a9\u0631\u062f\u0646 \u0632\u06cc\u0631\u0633\u0627\u062e\u062a \u0647\u0627\u06cc \u0627\u0628\u0631\u06cc \u0627\u0631\u0627\u0626\u0647 \u0645\u06cc \u062f\u0647\u062f \u0648 \u062a\u0636\u0645\u06cc\u0646 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0628\u0647 \u0633\u0631\u0639\u062a \u0628\u0627 Kubernetes \u062f\u0631 AWS \u0634\u0631\u0648\u0639 \u06a9\u0646\u06cc\u062f.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/media.dev.to\/cdn-cgi\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhur3ag5wrgevww7z1kqo.jpg\" alt=\"\u062a\u0648\u0636\u06cc\u062d\u0627\u062a \u062a\u0635\u0648\u06cc\u0631\" width=\"800\" height=\"400\" title=\"\"><\/p>\n<p>\u0628\u0627 \u062e\u06cc\u0627\u0644 \u0631\u0627\u062d\u062a \u067e\u06cc\u06a9\u0631\u0628\u0646\u062f\u06cc \u0631\u0627 \u0628\u0631 \u0627\u0633\u0627\u0633 \u0646\u06cc\u0627\u0632 \u062e\u0648\u062f \u0633\u0641\u0627\u0631\u0634\u06cc \u06a9\u0646\u06cc\u062f \u0648 \u0628\u0647 \u062e\u0627\u0637\u0631 \u062f\u0627\u0634\u062a\u0647 \u0628\u0627\u0634\u06cc\u062f \u06a9\u0647 \u067e\u0633 \u0627\u0632 \u0627\u062a\u0645\u0627\u0645 \u06a9\u0627\u0631\u060c \u0645\u0646\u0627\u0628\u0639 \u0631\u0627 \u067e\u0627\u06a9\u0633\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f \u062a\u0627 \u0627\u0632 \u0647\u0632\u06cc\u0646\u0647 \u0647\u0627\u06cc \u063a\u06cc\u0631 \u0636\u0631\u0648\u0631\u06cc \u062c\u0644\u0648\u06af\u06cc\u0631\u06cc \u06a9\u0646\u06cc\u062f. \u062a\u0631\u0627\u0641\u0648\u0631\u0645\u06cc\u0646\u06af \u0645\u0628\u0627\u0631\u06a9!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Summarize this content to 400 words in Persian Lang Amazon Elastic Kubernetes Service (EKS) \u0627\u062c\u0631\u0627\u06cc Kubernetes \u0631\u0627 \u062f\u0631 AWS \u0628\u062f\u0648\u0646 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u0646\u0635\u0628 \u06cc\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0647\u0648\u0627\u067e\u06cc\u0645\u0627\u06cc \u06a9\u0646\u062a\u0631\u0644 Kubernetes \u062e\u0648\u062f \u0633\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f. \u062f\u0631 \u0627\u06cc\u0646 \u0631\u0627\u0647\u0646\u0645\u0627\u060c \u0645\u0646 \u0634\u0645\u0627 \u0631\u0627 \u0627\u0632 \u0637\u0631\u06cc\u0642 \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u062e\u0648\u0634\u0647 EKS \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 Terraform \u0631\u0627\u0647\u0646\u0645\u0627\u06cc\u06cc \u0645\u06cc\u200c\u06a9\u0646\u0645 &#8211; \u0627\u0628\u0632\u0627\u0631 \u0632\u06cc\u0631\u0633\u0627\u062e\u062a \u0628\u0647 &hellip;<\/p>\n","protected":false},"author":2,"featured_media":76039,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"","fifu_image_alt":"","footnotes":""},"categories":[339],"tags":[],"class_list":["post-76038","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dev"],"_links":{"self":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/76038","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/comments?post=76038"}],"version-history":[{"count":0,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/76038\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media\/76039"}],"wp:attachment":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media?parent=76038"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/categories?post=76038"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/tags?post=76038"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}