EC2 자동 시작 및 자동 정지 비망록

2631 단어 EC2AWS
매일 같은 인스턴스 사용하는데 매번 시작과 정지의 귀찮은 & 중지하는 것을 잊기 때문에 cloudwatch를 사용하여 자동화한 비망록.
(CLI 설정도 조금 지금은 귀찮아)

사용할 서비스


  • IAM
  • CloudWatch
  • AWS Systems Manager

  • 방법



    서비스 역할 만들기



    먼저 IAM에서 서비스 역할을 만듭니다.
    IAM 콘솔 > 역할 > 역할 만들기
    다음과 같은 화면이 나오면 서비스 선택에서 Systems Manager를 선택합니다.
    유스 케이스에는 Systems Manager와 Systems Manager -Inventory and Maintenance Windows가 있지만 이번에는 Systems Manager를 선택합니다.


    액세스 권한 정책은 AmazonSSMAutomationRole를 선택합니다.


    확인 화면이 끝나면 롤 이름 등을 설정합니다. 롤명은 뭐든지 좋지만, 이번은 ssm-automation-role로 했습니다.

    추가가 완료되면 생성한 역할의 트러스트 관계를 편집합니다.
    대부분은 이미 설정되어 있지만 Principal의 Service 부분만 변경해 둡니다.

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Sid": "",
          "Effect": "Allow",
          "Principal": {
            "Service": "events.amazonaws.com" //ssm → evnet
          },
          "Action": "sts:AssumeRole"
        }
      ]
    }
    

    CloudWatch Event 설정(자동 시작)



    그런 다음 CloudWatch Event를 만듭니다.
    CloudWatch > 이벤트 > 규칙 > 규칙 만들기

    이번 이벤트 소스는 Cron 식으로 설정합니다.
    이미지는 일본 시간으로 평일의 오전 10시에 자동 기동시키고 싶은 경우의 cron식입니다. 영국 표준 시간으로 표시되므로 일본 시간에서 9시간 빼야 합니다.
    Cron식: 0 1 ? * 2-6 *
    대상은 SSM Automation을 선택하고 AWS-StartEC2Instance를 선택합니다.
    인스턴스 ID와 역할을 각각 입력하고 다음 화면에서 이름을 지정하면 자동 시작 설정이 완료됩니다.



    CloudWatch Event 설정(자동 중지)



    자동 정지도 기본적으로는 함께입니다. 다른 부분은 cron식과 문서 정도.

    일본 시간의 평일 19시에 정지시키고 싶기 때문에, Cron식은 0 10 ? * 2-6 *로 합니다.
    또한 대상 문서는 AWS-StopEC2Instance 합니다.



    이것으로 자동 정지도 완료입니다.

    좋은 웹페이지 즐겨찾기