Terraform

[ 사전적 의믜 ]

Terraforming(테라포밍)은 지구가 아닌 다른 행성 및 위성, 기타 천체의 환경을 지구의 대기 및 온도 생태계와 비슷하게 바꾸어 인간이 살 수 있도록 만드는 작업으로 화성탐사 관련해서 종종 등장하는 용어입니다.

하시코프에서 이 제품의 이름을 왜 이렇게 지었을지 생각해보았습니다.

단어 뜻에서 각기 다른 모든 vendor의 인프라 환경을 비슷하게 바꾸어 서비스를 할 수 있도록 만드는 작업을 하는 도구라고 느껴집니다.

 

[ 특징 ]

테라폼은 Chef, Puppet, 과 같이 Infrastructure provisioning 툴로 분류할 수 있습니다.

source: http://blog.shippable.com/the-future-of-devops-is-assembly-lines

The key features of Terraform are:

  • Infrastructure as Code: Infrastructure is described using a high-level configuration syntax. This allows a blueprint of your datacenter to be versioned and treated as you would any other code. Additionally, infrastructure can be shared and re-used.  👉 버전으로 인프라 이력관리, 인프라 공유 및 재사용

  • Execution Plans: Terraform has a "planning" step where it generates an execution plan. The execution plan shows what Terraform will do when you call apply. This lets you avoid any surprises when Terraform manipulates infrastructure. 
    👉 plan 단계를 거치면서 인프라에 어떤 변화가 생길지 볼 수 있음

  • Resource Graph: Terraform builds a graph of all your resources, and parallelizes the creation and modification of any non-dependent resources. Because of this, Terraform builds infrastructure as efficiently as possible, and operators get insight into dependencies in their infrastructure. 👉 모든 리소스를 그래프로 작성하고 종속되지 않은 리소스의 추가와 변경을 병렬로 처리해서 효율적으로 인프라를 구축하고 각 리소스의 의존성을 확인 할 수 있음

source: https://www.terraform.io/docs/commands/graph.html

  • Change Automation: Complex changesets can be applied to your infrastructure with minimal human interaction. With the previously mentioned execution plan and resource graph, you know exactly what Terraform will change and in what order, avoiding many possible human errors. 👉 terraform plan, 그 결과로 나오는 resource graph로 어떤 순서로 변경이 발생할지 미리 확인할 수 있어서 휴먼에러를 많이 줄일 수 있음

 

[ 버전 관리 ]

다른 패키지와 마찬가지로 일정 시간이 지나면 new feature, bug fix등의 작업으로 upgrade 될것이고 그에 따라 맞춰주는 작업이 필요해집니다. 시간이 지나면 버전관리할 필요가 생기게 되는데 이때 크게 2가지 방법을 사용할 수 있습니다.

[ Use cases ]

이중에서 제가 Terraform을 선택하려는 이유는

  • Heroku App setup  : -
  • Multi-Tier Applications : API 서버, 캐싱 서버등 추가되는 레이어를 개별적으로 확장
  • Self-Service Clusters : 서비스 구축과 확장한 방법들을 코드화
  • Software Demos : -
  • Disposable Environments : 서비스에 따라서 Dev, Stage 환경을 빠르게 구성해주었다가 폐기
  • Software Defined Networking : AWS VPC 부터 네트워크 구성을 코드화
  • Resource Schedulers : -
  • Multi-Cloud Deployment : 관리를 단순화 시켜 대규모 멀티 클라우드 인프라 용이

 

 

'Infra' 카테고리의 다른 글

Hashicorp Terraform (테라폼)  (0) 2020.10.28
AWS Subnet 생성하기  (0) 2020.07.23
AWS VPC 생성하기  (0) 2020.07.23
AWS EKS Service Role 생성 (IAM)  (0) 2020.07.23
AWS EKS Cluster 세팅  (0) 2020.07.23
S3에 SQS notification event 추가할때 권한 설정  (0) 2020.06.26

안녕하세요 쿤드입니다. 🍀

이번엔 Subnet을 생성해보려고 합니다.

 

제가 사용하는 리전에는 Availability Zone이 3개가 있긴한데 

2개의 Zone만 사용해서 private용 2개, public용 2개 총 4개를 생성했습니다.

 

IPv4 CIDR block으로 IP 범위를 지정해주었는데

각 서브넷당 최대 4094개의 host를 할당 해 줄 수 있도록 netmask는 20으로 설정했습니다.

  • 10.3.0.0/20 (10.3.0.1 ~ 10.3.15.254)
  • 10.3.16.0/20 (10.3.16.1 ~ 10.3.31.254)
  • 10.3.32.0/20 (10.3.32.1 ~ 10.3.47.254)
  • 10.3.48.0/20 (10.3.48.1 ~ 10.3.63.254)

Subnet을 생성하고 나면 각 서브넷마다 할당할 수 있는 IP 주소 여분의 개수도 확인할 수 있습니다.

 

서브넷을 세팅하고 나면 Route Table을 설정합니다. 

 

클릭하고 들어간 후에 할당해줄 subnet을 선택하고 서로 Associate시켜 줍니다.

 

 

그리고 나머지 Route Table은 필요한 경우에 Edit routes를 이용해서 정보를 추가해줍니다.

 

 

IPSec VPN을 이용해서 네트웍 설정을 한 경우에는 위의 메뉴에서 직접 설정이 불가능했었습니다.

저 같은 경우에는 자체 설정한 Site-to-Site VPN 설정, 직접 구축한 OpenVPN에 대한 라우팅 설정을 할때 직접 추가 했었습니다.

 

 

나머지 작업은

Public으로 사용하기 위한 subnet에서 사용할 Internet Gateway

Private으로 사용하기 위한 subnet에서 사용할 NAT Gateway

  • 참고로 NAT Gateway 생성할 때는 여기에서 사용할 때는 Associate Elastic IP address를 클릭하면 알아서 EIP를 생성해서 할당해줍니다.
  • NAT Gateway를 삭제 혹은 이미 Associate Elastic IP address를 클릭하고 NAT Gateway 생성을 취소한 경우 EIP가 이미 생성되어 있으므로 release 시켜서 불필요한 비용 발생하지 않도록 합니다.

설정만 해주면 기본적인 VPC 구성은 되었다고 볼 수 있습니다.

'Infra' 카테고리의 다른 글

Hashicorp Terraform (테라폼)  (0) 2020.10.28
AWS Subnet 생성하기  (0) 2020.07.23
AWS VPC 생성하기  (0) 2020.07.23
AWS EKS Service Role 생성 (IAM)  (0) 2020.07.23
AWS EKS Cluster 세팅  (0) 2020.07.23
S3에 SQS notification event 추가할때 권한 설정  (0) 2020.06.26

안녕하세요 쿤드입니다. 🍀 

이번엔 VPC 생성하는 방식에 대해서 확인해보겠습니다.

 

AWS VPC

  • Virual Private Cloud
  • AWS 사용자가 정의한 전용 가상 네트워크입니다.

 

생성하기

  • 적절한 이름을 입력하고
  • VPC에서 사용할 IP 주소의 범위를 정합니다.
  • 저는 IPv6는 사용하지 않아서 default인 No IPv6 CIDR Block을 선택했습니다.
  • Tenancy
    • default : 인스턴스가 공유된 하드웨어에서 실행
    • dedicated : 인스턴스가 단일 테넌트 하드웨어에서 실행

 

 

VPC를 생성하고 나면 통신을 위해서

Subnet을 세팅합니다.

'Infra' 카테고리의 다른 글

Hashicorp Terraform (테라폼)  (0) 2020.10.28
AWS Subnet 생성하기  (0) 2020.07.23
AWS VPC 생성하기  (0) 2020.07.23
AWS EKS Service Role 생성 (IAM)  (0) 2020.07.23
AWS EKS Cluster 세팅  (0) 2020.07.23
S3에 SQS notification event 추가할때 권한 설정  (0) 2020.06.26

안녕하세요 쿤드입니다. 🍀

 

AWS IAM (Identity and Access Management)은

  • AWS Identity and Access Management(IAM)는 AWS 리소스에 대한 액세스를 안전하게 제어할 수 있는 웹 서비스입니다.
  • IAM을 사용하여 리소스를 사용하도록 인증(로그인) 및 권한 부여(권한 있음)된 대상을 제어합니다.

Step 1. EKS Cluster용 Role 생성

  • EKS 선택

 

 

  • EKS - Cluster 선택

 

  • 적절히 Tag 설정
  • Role 관련 name 및 description 세팅 

 

  • Create role 하면 Role이 생성됩니다.
  • 이후에는 EKS 메뉴로 가서 Cluster Service Role의 refresh 버튼을 누르면 보이게 되고 선택해주면 됩니다. 

 

이 Role에 추가한 policy를 확인해보겠습니다.

AmazonEKSClusterPolicy(AWS Managed policy)는 4개 서비스의 권한과 1개의 IAM 인증 권한을 허용합니다.

  • AutoScaling
  • EC2
  • ELB
  • KMS
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "autoscaling:DescribeAutoScalingGroups",
                "autoscaling:UpdateAutoScalingGroup",
                
                "ec2:AttachVolume",
                "ec2:AuthorizeSecurityGroupIngress",
                
                "ec2:CreateRoute",
                "ec2:CreateSecurityGroup",
                "ec2:CreateTags",
                "ec2:CreateVolume",
                
                "ec2:DeleteRoute",
                "ec2:DeleteSecurityGroup",
                "ec2:DeleteVolume",
                
                "ec2:DescribeInstances",
                "ec2:DescribeRouteTables",
                "ec2:DescribeSecurityGroups",
                "ec2:DescribeSubnets",
                "ec2:DescribeVolumes",
                "ec2:DescribeVolumesModifications",
                "ec2:DescribeVpcs",
                "ec2:DescribeDhcpOptions",
                "ec2:DescribeNetworkInterfaces",
                
                "ec2:DetachVolume",
                
                "ec2:ModifyInstanceAttribute",
                "ec2:ModifyVolume",
                
                "ec2:RevokeSecurityGroupIngress",
                
                "elasticloadbalancing:AddTags",
                "elasticloadbalancing:ApplySecurityGroupsToLoadBalancer",
                "elasticloadbalancing:AttachLoadBalancerToSubnets",
                
                "elasticloadbalancing:ConfigureHealthCheck",
                
                "elasticloadbalancing:CreateListener",
                "elasticloadbalancing:CreateLoadBalancer",
                "elasticloadbalancing:CreateLoadBalancerListeners",
                "elasticloadbalancing:CreateLoadBalancerPolicy",
                "elasticloadbalancing:CreateTargetGroup",
                
                "elasticloadbalancing:DeleteListener",
                "elasticloadbalancing:DeleteLoadBalancer",
                "elasticloadbalancing:DeleteLoadBalancerListeners",
                "elasticloadbalancing:DeleteTargetGroup",
                
                "elasticloadbalancing:DeregisterInstancesFromLoadBalancer",
                "elasticloadbalancing:DeregisterTargets",
                
                "elasticloadbalancing:DescribeListeners",
                "elasticloadbalancing:DescribeLoadBalancerAttributes",
                "elasticloadbalancing:DescribeLoadBalancerPolicies",
                "elasticloadbalancing:DescribeLoadBalancers",
                "elasticloadbalancing:DescribeTargetGroupAttributes",
                "elasticloadbalancing:DescribeTargetGroups",
                "elasticloadbalancing:DescribeTargetHealth",
                
                "elasticloadbalancing:DetachLoadBalancerFromSubnets",
                
                "elasticloadbalancing:ModifyListener",
                "elasticloadbalancing:ModifyLoadBalancerAttributes",
                "elasticloadbalancing:ModifyTargetGroup",
                "elasticloadbalancing:ModifyTargetGroupAttributes",
                
                "elasticloadbalancing:RegisterInstancesWithLoadBalancer",
                "elasticloadbalancing:RegisterTargets",
                
                "elasticloadbalancing:SetLoadBalancerPoliciesForBackendServer",
                "elasticloadbalancing:SetLoadBalancerPoliciesOfListener",
                
                "kms:DescribeKey"
            ],
            "Resource": "*"
        },
        {
            "Effect": "Allow",
            "Action": "iam:CreateServiceLinkedRole",
            "Resource": "*",
            "Condition": {
                "StringLike": {
                    "iam:AWSServiceName": "elasticloadbalancing.amazonaws.com"
                }
            }
        }
    ]
}

'Infra' 카테고리의 다른 글

AWS Subnet 생성하기  (0) 2020.07.23
AWS VPC 생성하기  (0) 2020.07.23
AWS EKS Service Role 생성 (IAM)  (0) 2020.07.23
AWS EKS Cluster 세팅  (0) 2020.07.23
S3에 SQS notification event 추가할때 권한 설정  (0) 2020.06.26
AWS의 Cloudwatch와 CloudTrail의 차이  (0) 2020.06.01

안녕하세요 쿤드입니다. 🍀 

이번엔 EKS Cluster를 생성해 보겠습니다.

 

Amazon EKS

  • Amazon EKS는 Kubernetes의 Control Plain or Node를 설치, 운영 및 유지보수 할 필요 없이 AWS에서 Kubernetes를 손쉽게 실행할 수 있는 관리형 서비스입니다.
    • Kubernetes는 컨테이너화된 애플리케이션의 배포, 조정 및 관리 자동화를 위한 오픈 소스 시스템입니다.

 

구축하기

Step 1. 클러스터 설정 (Configure cluster)

  • Name과 version을 선택합니다.
  • Cluster Service로 사용할 IAM role을 미리 생성해두고 선택합니다.
  • Tag는 적절하게 추가합니다. (나중에 관리 및 비용 구분하기 용이하도록)

 

Step 2. 네트워킹 설정 (Specify networking)

VPC(Virtual Private Cloud) 선택

  • 원하는 VPC를 선택합니다.
  • 필요한 경우 새로운 VPC를 생성합니다.

 

Subnet 선택

  • EKS 클러스터를 생성할때는 2개 이상의 서브넷이 필요합니다.
  • 물론 1개의 subnet에 public, private으로 구분할 수도 있는데 그렇게 2개 서브넷을 선택한 경우에는 이런 에러가 발생합니다.

  • 노드를 위치시킬 VPC를 기존 사용하던 곳에 할지 완전히 분리하도록 새로운 VPC를 생성할지 결정한 후에 선택합니다.
  • Endpoint Access 인 경우는 Private으로 설정하면 local pc에서 kubectl 설정하여 접근할때 아래의 문제로 인해서 추가적인 네트웍 설정이 필요합니다.
    • Unable to connect to the server: dial tcp 172.xx.xxx.xx:443: i/o timeout

 

 

나머지는 로깅 할지 여부 설정, 그리고 review 이후에 생성하면 됩니다.

'Infra' 카테고리의 다른 글

AWS VPC 생성하기  (0) 2020.07.23
AWS EKS Service Role 생성 (IAM)  (0) 2020.07.23
AWS EKS Cluster 세팅  (0) 2020.07.23
S3에 SQS notification event 추가할때 권한 설정  (0) 2020.06.26
AWS의 Cloudwatch와 CloudTrail의 차이  (0) 2020.06.01
Route53 DNS health check (for Nginx)  (0) 2019.12.20

안녕하세요 쿤드입니다. 🍀

S3 버킷에서 어떤 object가 생성되면 그에 대한 이벤트를 SQS로 받아서 처리할 필요가 생겼습니다.

설정대로 맞춰놓고 생성을 했는데 

  • [버킷] - [Properties] - Advenced settings [Events] 

에러가 발생합니다.

S3 이벤트 세팅

에러메시지

Unable to validate the following destination configurations. Permissions on the destination queue do not allow S3 to publish notifications from this bucket. (arn:aws:sqs:REGION:AWS계정ID:세팅하려던_SQS_QUEUE_NAME)

 

최초 생성은 IAM role로 접근에 제한을 둔 account로 생성하다가 실패해서 단순히 account에 권한이 없어서 안되는줄 알았습니다.

그래서 ADMIN 권한 (* 접근)을 가진 account로 다시 생성을 했는데 

마찬가지로 에러가 발생합니다.

 

이제서야 AWS 문서를 찾아서 읽어봤습니다.

https://docs.aws.amazon.com/AmazonS3/latest/dev/ways-to-add-notification-config-to-bucket.html 

 

Walkthrough: Configure a bucket for notifications (SNS topic and SQS queue) - Amazon Simple Storage Service

Walkthrough: Configure a bucket for notifications (SNS topic and SQS queue) Walkthrough summary In this example, you add a notification configuration on a bucket requesting Amazon S3 to do the following: Publish events of the s3:ObjectCreated:* type to an

docs.aws.amazon.com

읽어보니

SNS를 추가하면 SNS topic에 권한을 설정해주고

SQS를 추가하는 거라면 마찬가지로 SQS Queue에 권한을 추가하라는 말이었습니다.

 

남은 작업은

이제 정확하게 권한을 추가해주면 되는데 

{
 "Version": "2012-10-17",
 "Id": "example-ID",
 "Statement": [
  {
   "Sid": "example-statement-ID",
   "Effect": "Allow",
   "Principal": {
    "AWS":"*"  
   },
   "Action": [
    "SQS:SendMessage"
   ],
   "Resource": "SQS-queue-ARN",
   "Condition": {
      "ArnLike": { "aws:SourceArn": "arn:aws:s3:*:*:bucket-name" },
      "StringEquals": { "aws:SourceAccount": "bucket-owner-account-id" }
   }
  }
 ]
}

이게 뭐지? (라고 처음엔 느껴졌지만 작업을 마무리하고 다시 읽어보니 이해가 갑니다.)

 

일단 stackoverflow에서 비슷한 문제를 찾았습니다.

 stackoverflow.com/q/54791704/8163714

 

Unable to configure SQS queue notification in S3

I created an SQS queue and added policy under permission tab allowing only my account users to configure the configure the notification Policy Document { "Version": "2012-10-17", "Id": "arn:...

stackoverflow.com

들여쓰기의 차이일 뿐인데 이것을 보니 이해가 갑니다.

https://gist.github.com/marcelog/7b0224b63c90802996ab2dee7d7082e4

 

SQS Policy to allow an S3 bucket to publish messages

SQS Policy to allow an S3 bucket to publish messages - aws-sqs.policy

gist.github.com

이 설정은 SQS에서 QUEUE를 선택하고 

아래 화면에서 볼 수 있었습니다.

여기에 위의 gist에 있는 내용에서 나와 관련된 내용을 추가하고

S3에서 접근할테니 관련 bucket 정보를 추가하면 됩니다.

 

Bucket이 1개만 추가되지 않을 수도 있는데 2개 이상 추가도 됩니다. 

2개의 bucket을 [   ] 배열로 묶으면 더 보기 좋을텐데 방법을 못 찾았습니다.

Principals는 Everybody(*)로 두었는데, 

account로 제한을 더 두는게 나을 것 같은데 방법을 못 찾겠다. 제한을 좀 더 두고 싶은데..

  • arn:aws:iam::계정의ID:root 로만 되는것 같고 *을 줄 수가 없다. 내가 못 찾은걸지도 모르겠지만... 

 

S3에서 event 생성 잘 됩니다.

 

안녕하세요 쿤드입니다. 🍀

CloudWatch 요금 폭탄이 나와서 추적하는데 CloudWatch/CloudTrail의 차이를 안다고 생각했는데
말로 설명하려니 말문이 막혀서 찾게 되었습니다.

 

원작자 허락하에 포스팅

원문: https://medium.com/awesome-cloud/aws-difference-between-cloudwatch-and-cloudtrail-16a486f8bc95

 

CloudWatch vs CloudTrail in AWS

CloudWatch

AWS CloudWatch
CloudWatch는 AWS 서비스 및 자원 활동에 초점을 맞추고, 그 상태와 성능에 대해 보고(report)
CloudTrail은 AWS 환경에서 수행 된 모든 작업의 로그

CloudWatch:

AWS CloudWatch는 AWS 클라우드 리소스와 AWS에서 실행되는 애플리케이션의 모니터링 서비스입니다. 

Amazon CloudWatch를 사용하여 메트릭 수집 및 추적 로그 파일의 수집 및 모니터링, 알람 설정, AWS 리소스 사용량 변화에 자동으로 대응 할 수 있습니다.

CloudTrail:

AWS CloudTrail은 AWS 계정 거버넌스, 컴플라이언스, 운영 감사, 리스크 감사를 가능하게하는 서비스입니다. 

CloudTrail을 사용하면 AWS 인프라 작업 관련 계정 활동을 기록하고 지속적으로 모니터링 및 유지할 수 있습니다. 

CloudTrail은 AWS 관리 콘솔, AWS SDK command line 도구, 기타 AWS 서비스로 실행 된 것을 포함한 AWS 계정 활동 이벤트 기록을 제공합니다. 이 이벤트 기록으로 보안 분석, 자원 변경 추적, 문제 해결이 간소화됩니다.

 

Comparison between CloudWatch and CloudTrail

CloudTrail

 

CloudWatch : "AWS에서 무슨 일이 일어나고 있나?"특정 서비스 또는 응용 프로그램의 모든 이벤트를 기록합니다.

What is happening on AWS?
CloudTrail : "AWS에서 누가 무엇을합니까?"서비스 또는 리소스에 대한 API 호출.

Who did what on AWS?

 

 

CloudWatch는 AWS 리소스와 애플리케이션의 모니터링 서비스입니다. 

CloudTrail은 AWS 계정의 API 활동을 기록하는 웹 서비스입니다. 모두 AWS의 편리한 모니터링 도구입니다.

 

CloudWatch는 기본적으로 EC2 인스턴스, EBS 볼륨, RDS DB 인스턴스와 같은 자원의 무료 기본 모니터링을 제공합니다. 

AWS 계정을 만들면 CloudTrail도 기본적으로 활성화됩니다.
CloudWatch를 사용하면 메트릭 수집 및 추적 로그 파일을 수집하고 모니터링 및 알람 설정을 할 수 있습니다. 

 

한편, CloudTrail는 요청을 한 사용자, 사용 된 서비스 실행 된 액션, 매개 변수 및 AWS 서비스에서 반환 된 응답 요소에 대한 정보를 기록합니다. 

CloudTrail 로그는 지정된 S3 버킷 또는 CloudWatch Logs 로그 그룹에 저장됩니다.

일반적으로 CloudTrail은 API 호출에서 15 분 이내에 이벤트를 전달합니다. 

 

CloudWatch는 기본적인 모니터링은 5 분 간격으로, 자세한 모니터링은 1 분 간격으로 메트릭 데이터를 제공합니다. 

CloudWatch Logs 에이전트는 기본적으로 5 초마다 로그 데이터를 전송합니다.
AWS 리소스의 상세한 모니터링을 사용하여 추가 비용으로 더 자주 메트릭 데이터를 CloudWatch에 전송할 수 있습니다.

CloudTrail은 규정 준수 및 규제 기준의 확보에 도움이됩니다.

CloudWatch Logs는 응용 프로그램 로그에 대한 보고서를 제공하고 

CloudTrail Logs는 AWS 계정에서 발생한 것에 대한 특정 정보를 제공합니다.

 

CloudWatch 이벤트는 AWS 리소스에 대한 변경을 기술 시스템 이벤트의 실시간 스트림입니다. 

CloudTrail은 AWS 계정의 AWS API 호출에 중점을두고 있습니다.
CloudTrail은 AWS 리전마다 관리 이벤트 로그의 무료 복사본을 하나 전달합니다. 관리 이벤트는 사용자가 계정에 로그인 할 때 등 AWS 계정의 리소스로 실행 된 관리 작업이 포함됩니다. 로깅 데이터 이벤트는 부과됩니다. 데이터 이벤트는 S3 객체 수준의 API 활동과 Lambda 함수 실행 활동 등 자원 자체에서 또는 리소스에서 실행되는 리소스 작업이 포함됩니다.

 

Hello, I'm Kundu 🍀

 

https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover.html

 

https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover.html

Creating Amazon Route 53 Health Checks and Configuring DNS Failover

docs.aws.amazon.com

Goal

- Customer incoming through Nginx(NOT Nginx Plus), and Nginx doesn't support failover like ha-proxy. 

   I'd like to use dns-failover for stable service.

 

Setup

 

[Route53] - [Health checks] 

  1. Set your Name 
  2. Select what to monitor, I select Endpoint
  3. Endpoint setup
    1. Public IP address for each Nginx
    2. Host name (I add this '/etc/nginx/conf.d/443_health.conf' --> server_name health.mydomain.com)
    3. HTTPS (443)
    4. Path for Nginx (in my case: /etc/nginx/html/status/health.html) 
    5. set health.html  ( $ echo "alive" > health.html )
  4. Set String matching 'Yes'
  5. Search string 'alive', I already set 'STEP 3-5'
  6. Set Health checker regions

 

 

 

Now I have 2 Health checks

 

[Route53] - [Hosted zones]

Add 2 Record Sets

Edit Record Set each.

  • Routing Policy is up to you. (Multiplevalue Answer, 
  • Health Check to Associate must same IP address (Alias Values)

 

+ Recent posts