공부/AWS

    [AWS] EC2 인스턴스에 Public DNS 부여하기

    [AWS] EC2 인스턴스에 Public DNS 부여하기

    EC2 인스턴스를 생성했는데 Public DNS 가 없는 경우가 있다. VPC 에서 우클릭하고 VPC 설정 편집으로 들어간다. DNS 호스트 이름 활성화를 해준다. 인스턴스에 Public DNS 가 생성된 것을 확인할 수 있다.

    [AWS] CodeDeploy Blud/Green 오류 - The IAM role arn:aws:iam::ID:role/codedeploy-be-api-role does not give you permission to perform operations in the following AWS service: AmazonAutoScaling. Contact your AWS administrator if you need help. If you ar..

    [AWS] CodeDeploy Blud/Green 오류 - The IAM role arn:aws:iam::ID:role/codedeploy-be-api-role does not give you permission to perform operations in the following AWS service: AmazonAutoScaling. Contact your AWS administrator if you need help. If you ar..

    CodeDeploy Blue/Green 배포 시 다음과 같은 에러가 발생할 수 있다. 해당 에러는 CodeDeploy 역할에 아래 3가지의 Action들에 대한 정책이 없어서 발생한 것으로 정책을 추가해주면 된다. The IAM role arn:aws:iam::ID:role/codedeploy-be-api-role does not give you permission to perform operations in the following AWS service: AmazonAutoScaling. Contact your AWS administrator if you need help. If you are an AWS administrator, you can grant permissions to your users..

    [AWS] EC2 ssh 접속 오류  bad permissions /  Permission denied (publickey,gssapi-keyex,gssapi-with-mic).

    [AWS] EC2 ssh 접속 오류 bad permissions / Permission denied (publickey,gssapi-keyex,gssapi-with-mic).

    다음과 같은 명령어로 접속하면 ssh -i .pem ec2-user@ 아래 이미지 처럼 접속이 안된다. 해결 방법은 파일 권한을 변경해준다. chmod 400 .pem 접속이 되는 것을 확인할 수 있다.

    [AWS] ECS 사용하기 - ECS Cluster 생성 및 구성

    [AWS] ECS 사용하기 - ECS Cluster 생성 및 구성

    ECS는 OS를 포함하지 않아 가볍고, 빠른 배포, 빠른 기동이 가능한 컨테이너 오케스트레이션 서비스이다. AWS EC2 의 경우 컨테이너를 EC2 서버에 배치하고, 이를 클러스터로 묶어 관리하며 Fargate의 경우 서버 또는 클러스터를 관리할 필요 없이 컨테이너를 논리적으로 관리하는 형태이다. 아래 내용은 AWS ECS Cluster 생성 및 구성 방법에 대한 설명이다. 클러스터 생성 ECS에서 왼쪽 사이드메뉴에서 클러스터로 이동해 클러스터 생성을 선택한다. ECS 클러스터 템플릿은 3가지로 제공된다. 네트워킹 전용 - AWS Fargate EC2 Linux + 네트워킹 EC2 Window + 네트워킹 Cluster 주요 설정을 반영한다. 클러스터 이름 설정 인스턴스 구성 EC2 인스턴스 유형은 어떤..

    [AWS] ALB , NLB, GWLB

    [AWS] ALB , NLB, GWLB

    로드밸런서란 하나의 인터넷 서비스가 발생하는 트래픽이 많을 때 여러 대의 서버가 분산 처리하여 서버의 로드율 증가, 부하량, 속도 저하 등을 고려해 적절히 분산 처리하여 해결해주는 서비스이다. AWS ELB에는 ALB , NLB, CLB 3가지 종류가 있다. 상황에 맞게 부하 분산을 사용 해야 하는데 어떠한 상황에서 사용하면 좋은지 정리해보고자 한다. AWS 종류 AWS 로드밸런서 생성에 가면 아래와 같이 3가지 종류를 확인할 수 있다. ALB Application Layer인 L7계층에서 작동한다. HTTP/HTTPS 트래픽을 처리하는 로드밸런싱에 최적화 되어 있다. IP주소가 변동되기 때문에 클라이언트가 접근하기 위해선 DNS Name을 사용해야 한다. IP 주소 + 포트 번호 + 패킷 내용을 보고 ..

    [AWS] 리전(Region), 가용 영역(Availability Zone)

    [AWS] 리전(Region), 가용 영역(Availability Zone)

    리전 및 가용 영역 리전(Region) AWS의 모든 서비스가 존재하는 물리적인 위치로 리전 안에는 여러개의 가용 영역이 존재한다. 리전이 여러곳에 존재하는 이유 재해 발생시에도 서비스를 공급할 수 있도록 하기 위해서이다. 거리가 멀수록 속도는 상대적으로 느리고, 노드를 많이 거칠 수록 속도는 떨어진다. 리전이 한 곳에 있다면 리전 위치로부터 먼 곳에서 서비스를 이용하고자 하면 속도가 느리다. 최소한 2개 이상의 가용 영역(AZ)로 구성된다. 가용영역(Availability Zone)(AZ) 실제 데이터가 존재하는 데이터 센터이다. 각각의 다른 가용 영역의 장애로부터 격리될 수 있다는 점이 중요하다. 서울 리전은 4개의 AZ로 구성되어 있음(2a, 2b, 2c, 2d) 가용 영역이 여러곳에 존재하는 이유..

    [AWS] ECR에 이미지 업로드

    [AWS] ECR에 이미지 업로드

    ECR ECR(Elastic Container Registry)은 Amazon에서 제공하는 컨테이너 이미지 저장소이다. ECR 리포지토리에서 이미지 URI 를 이용해 빌드한 이미지를 푸시하고 가져올 수 있다. docker push 명령을 사용해 컨테이너 이미지를 ECR 리포지토리로 푸시할 수 있다. IAM ECR 서비스를 이용하려면 IAM 사용자에게 ECR 접근 권한을 주어야 한다. AmazonEC2ContainerRegistryFullAccess 리포지토리 생성 ECR은 ECS에서 확인할 수 있다. 리포지토리를 프라이빗이나 퍼블릭 중 원하는 것을 선택한다. 퍼블릭의 경우 namespace와 리포지토리 이름을 입력해주고 리포지토리 이름을 넣어주는데 퍼블릭의 경우 네임스페이스도 작성할 수 있다. 프라이빗의..

    [AWS] ACM SSL 인증서 발급 받기, 갱신하기

    [AWS] ACM SSL 인증서 발급 받기, 갱신하기

    ACM (AWS Certificate Manager) ACM은 AWS 웹 사이트와 애플리케이션을 보호하는 퍼블릭 및 프라이빗 SSL/TLS X.509 인증서와 키를 만들고, 저장하고, 갱신하는 복잡성을 처리한다라고 공식 홈페이지에 나와있다. 이 서비스는 TLS를 사용하는 보안 웹이 필요한 기업 고객을 위해 인증서를 관리한다. ACM에서 발급받은 인증서를 통해 ELB나 CloudFront에서 HTTPS 통신을 할 수 있다. ACM은 만료되는 인증서의 갱신을 자동화하여 보안 관리를 단순화한다. ACM에서는 이메일 인증 방식과 DNS 인증 방식의 두가지 인증 방식을 사용한다. ACM 인증서 발급 이메일 인증 방식 이메일 인증 방식은 도메인 구매 시 admin으로 등록한 이메일 계정으로 인증 메일이 전송되고 관..

    [AWS] ECS

    [AWS] ECS

    ECS Amazon에서 제공하는 완전관리형 컨테이너 오케스트레이션 서비스로서 클러스터에서 Docker 컨테이너를 이용하여 인프라 환경을 좀 더 편리하게 운영, 관리 할 수 있게 해주는 서비스이다. 비슷한 툴로서는 Kubernetes나 Docker Swarm이 있다. 클러스터는 태스크(작업) 또는 서비스로 일컬어지는 컨테이너들의 집합이다. 컨테이너는 애플리케이션에 필요한 부분을 패키징하여 애플리케이션 별로 격리하는 방식이다. ECS의 작동 방식 ECS는 5가지 구성요소로 구성되어 있다. Cluster (클러스터) Container Instance (컨테이너 인스턴스) Task (작업) Task Definition (작업 정의) Service (서비스) 각각의 구성 요소들에 대해 정리해보았다. Cluster..

    [AWS] CodeBuild, CodeDeploy 결과 Slack으로 알림 전송하기 - AWS Chatbot

    [AWS] CodeBuild, CodeDeploy 결과 Slack으로 알림 전송하기 - AWS Chatbot

    CodeDeploy 사용시 매번 aws 에서 확인하기 불편해서 배포 성공, 실패 시 slack으로 알림을 전송할 수 있게 하고 싶었다. AWS Chatbot slack과 AWS를 연결해주면 해당 슬랙으로 클라이언트가 생성된다. 슬랙에서 알림을 보내려면 AWS Chatbot이 사용할 슬랙의 채널을 구성해야한다. 오른쪽에 있는 주황색 버튼으로 된 새 채널 구성을 누르고 본인이 사용하고자 하는 채널을 선택한다. 챗봇이 사용자의 명령문을 실행하기 위한 IAM 역할을 만들어준다. 채널 가드 레일의 경우 채널 멤버가 수행할 수 있는 작업을 세부적으로 제어하기 때문에 적절하게 선택해 주시면 된다. SNS 의 경우 SMS, Push 로 전달해주는 서비스 인데 필요하면 사용한다. Chatbot IAM 설정 IAM에서 A..