VPC를 구성하다보면 네트워크 방화벽?에 가까운 SG, NACL을 접하게 될 것이다. 근데 두 개가 왜 필요하지? 두 개의 차이가 뭐가 있지? 이제 한번 같이 알아보자. Network Acess Control List 부터 ~ 특징 정리 Stateless: NACL은 상태를 유지하지 않는(stateless) 방화벽이다. 즉, 인바운드 패킷이 아웃바운드 패킷과 연결되지 않는다. 이는 NACL이 특정 연결의 상태를 추적하지 않고, 각 패킷을 독립적으로 처리함을 의미한다. Subnet 단위: Subnet 단위에 방화벽 개념입니다. 서브넷마다 별도의 NACL을 할당할 수 있다. Allow, Deny 가능 최대 규칙 60개 정도(할당량 추가 요청 기준) Numbered Rules: NACL은 숫자로 된 규칙 번호..
VPC는 AWS를 사용하려면 무조건 알아야하는 서비스 중 하나이다. 이유는 무엇일까? VPC를 한 줄로 설명하면 격리된 네트워크 공간을 제공하는 클라우드 컴퓨팅 서비스이다. Amazon VPC 작동 방식 VPC 및 서브넷: 사용자의 AWS 계정 전용 가상 네트워크이다. VPC는 AWS 클라우드에서 다른 가상 네트워크와 논리적으로 분리되어 있다. VPC의 IP 주소 범위를 지정하고 서브넷과 게이트웨이를 추가하고 보안 그룹을 연결한다. 서브넷은 VPC IP 주소 범위의 하위 집합 이다. Amazon EC2 인스턴스와 같은 AWS 리소스를 서브넷으로 실행할 수 있다. 서브넷은 인터넷, 다른 VPC 및 자체 데이터 센터에 연결하고 라우팅 테이블을 사용하여 서브넷에서 → 서브넷으로 트래픽을 라우팅할 수 있다. 서..
전 글에서는 IAM 대해서 중요한 부분을 언급하고 알아보았다. 이번 글에서는 정확히 이해가 필요한 자격증명기반 정책 및 리소스 기반 정책에 대하여 직접 JSON 형식의 정책을 보고 비교할 수 있는 단계까지 갔으면 한다. 바로 시작하자. 1. 자격증명기반 정책 사용자 또는 역할에게 부여하는 정책 유형 입니다. 누가(Principal) 대상(Resource)에 작업(Action)을 조건(Condition)에 따라 허용여부(Effect)를 결정하는 것이다. { "Version": "2012-10-17", "Statement": [ { "Sid": "ListAndDescribe", "Effect": "Allow", "Action": [ "dynamodb:*" ], "Resource": "*" } ] } 이 부분..
AWS 리소스에 대한 액세스를 안전하게 제어할 수 있는 웹 서비스이다. 쉽게 말해, AWS 내에 존재하는 사용자 및 그룹 또는 서비스가 액세스할 수 있는 AWS 서비스에 대하여 권한을 관리할 수 있는 서비스 이다. 예를 들어서 "전산실에 출입가능한 인원은 보안팀만 출입가능하다." 이때 전산실에 출입하기 위해 키가 필요할 것이고, 키를 지니고 있는 사람은 보안팀 인원이다. 이때 인증할 수 있는 키를 IAM 서비스가 부여해준다고 생각하면 된다. AWS 서비스에서 매우 중요하고 또 중요한 서비스임으로 잘 공부하는게 좋다. 또한, 이 서비스에는 AWS 계정에 대한 공유 액세스, 세분화된 권한, 자격 증명 연동(Active Directory 통합 포함), 다단계 인증(MFA), 사용자에게 임시 액세스 제공 등의 ..
이번 글에서는 EC2 Instance를 생성하는 과정에서 필요한 구성요소에 대해서 작성을 하고자 한다. 바로 시작하자. 구성요소1. EBS EBS는 인스턴스에 사용할 수 있는 블록 수준 스토리지 볼륨을 제공합니다. 하나의 인스턴스 또는 여러개 인스턴스에 동시에 연결할 수 있는 AWS의 외장하드디스크라고 생각하면 된다. 즉, 쉽게 말해 EC2 인스턴스 서버에 데이터를 저장하는 스토리지라고 생각하면 된다. EBS Volume type 범용 SSD 볼륨(gp2 및 gp3) : 다양한 트랙잭션 워크로드를 위한 가격과 성능의 균형을 유지한다. 단일 인스턴스 데이터베이스, 개발 및 데스트 환경에 사용 적합하다. 프로비저닝된 IOPS SSD 볼륨(io1 및 io2): 스토리지 성능과 일관성에 민감한 I/O 집약적 워..
EC2는 약자에서 알아볼 수 있다시피 컴퓨팅 서비스 이다. 좀 더 쉽게 설명하자면 클라우드(인터넷) 환경에서 제공하는 가상의 컴퓨터라고 생각하면 된다. EC2 구성요소 1. 컴퓨팅 = 인스턴스(AMI 인스턴스 스펙) 2. 하드디스크 = EBS (Elastic Block Storage) 3. 랜카드 = ENI(Elastic Network Interface) EC2에 대한 개념은 정말 간단하다. 위에 글로 설명이 다 되기 때문이다. 그럼 EC2를 사용하는 이유는 무엇이 있을까? 그 이유는 바로 컴퓨팅의 용량 확장성, 성능, 쉽게 구성이 가능하다는 점, 사용한만큼의 비용 지불 등 이점이 많이 존재한다. 그럼 각각의 이유에 대해서 파해쳐보자. 컴퓨팅 확장성 용량을 추가(스케일 업)하여 월간 또는 연간 프로세스 ..
생성 1. Codepipeline console에 접근합니다. 2. 파이프라인 생성을 누릅니다. 3. 파이프라인 이름을 입력합니다. 4. 고급 설정에서 아티팩트를 S3 Bucket으로 지정하도록 하겠습니다. 다음 5. 소스 부분에서 전 단계에서 생성해준 Codecommit 리포지토리를 선택합니다. 다음 6. 빌드 스테이지 부분에서 전 단계에서 생성해준 Codebuild Project를 선택합니다. 만약 사용자가 그 전에 환경 변수를 추가하지 않았다면 ! 환경 변수를 추가합니다. 다음 중요한 점은 TASK_NAME은 뒤에 Version을 입력하면 절대 안됩니다. 꼭 작업 이름만 입력!! 7. 배포 공급자 부분에서 Amazon ECS(Blue/Green)를 선택 후 전 단계에서 생성해준 Codedeploy를..
CodePipeline Create 1. Codepipeline console에 접근합니다. 2. 파이프라인 생성을 누릅니다. 3. 파이프라인 이름을 입력합니다. 4. 고급 설정에서 아티팩트를 S3 Bucket으로 지정하도록 하겠습니다. 다음 5. 소스 부분에서 전 단계에서 생성해준 Codecommit 리포지토리를 선택합니다. 다음 6. 빌드 스테이지 부분에서 전 단계에서 생성해준 Codebuild Project를 선택합니다. 다음 7. 배포 공급자 부분에서 Amazon ECS를 선택 후 전 단계에서 생성해준 ECS Cluster와 Service를 선택합니다. 여기서 중요!!! “이미지 정의 파일”을 꼭 입력합니다. 이미지 파일은 Codebuild에서 나온 아티팩트를 사용합니다. 다음 8. 파이프라인 생..