[플레이데이터] 6월 13일 수업(ECS-VPC 구축)

싱숭생숭어·2023년 6월 13일
0

플레이데이터 수업

목록 보기
16/21
post-thumbnail

ECS

오케스트레이션?

  • 여러개의 컴퓨터 시스템, 어플리케이션 서비스를 조율하고 관리

ecs

  • aws에서 오케스트레이션 서비스를 해주는 것
  • dockerfile 필요
  • docker와의 합작품

eks

  • aws에서 오케스트레이션 서비스를 해주는 것
  • 쿠버네티스 오픈소스를 활용해서 만든 것

msa

  • 어플리케이션을 컴포넌트 별로 나누어 서비스의 조합으로 구축하는 시스템

서브넷 표기

  • 네트워크의 길이를 나타내는 것
  • 8~15: a클래스의 네트워크망을 쪼개겠다

VPC 생성

  • vpc - vpc - vpc 생성

  • vpc 생성을 하려면 root 계정 사용자가 권한을 줘야함

    • 사용자 -> AmazonRoute53ResolverFullAccess + AmazonRoute53FullAccess + AmazonVPCFullAccess

나는 이렇게 생성했음

이름 태그: ecs-vpc-hg
IPv4 CIDR: 10.0.0.0/16
-> 10이므로 a클래스

생성완료 !

서브넷 생성

vpc - 서브넷 - 서브넷 생성

서브넷은 네트워크 망을 좁혀주는 것

일반적으로는 서브넷끼리 통신하려면 라우팅이 필요하지만, vpc의 경우에는 라우팅 없어도 통신이 가능

CIDR 표기: IP주소/네트워크 길이

네트워크 길이: /24 -> 256개 /20 -> 4096개

서브넷의 이름 -> ecs-public-subnet-1-hg, ecs-private-subnet-1-hg, ecs-public-subnet-2-hg, ecs-private-subnet-2-hg

서브넷의 CIDR블록-> 10.0.1.0/24(public), 10.0.2.0/24(private), 10.0.3.0/24(public), 10.0.4.0/24(private)

  • 1씩 증가하는 이유는

서브넷의 가용영역은 다 다르게 설정해야함

  • 한 지역에 사건이 발생해도 다른 지역에서 가능하도록
  • 2a(public), 2a(private), 2c(public), 2c(private)
  • 2a에 위치한 서버가 다운되어도 aws 자체적으로 2c로 연결하게 해줘서 데이터랑 리소스가 날라가지 않도록 대비해서 2개 지역으로 가용영역을 생성한다는 것 !

인터넷 게이트웨이 생성

VPC - 인터넷 게이트웨이 - 인터넷 게이트웨이 생성

이름 태그만 바꿔서 생성한 다음 작업 - VPC에 연결 - 미리 만들어놓은 VPC 연결

NAT 게이트웨이 생성

생성할때는 탄력적 IP를 할당하면 됨

라우팅 테이블 생성

생성한 후 라우팅 편집 -> 라우팅 추가 -> 대상 IP는 모두 접속 가능하도록 0.0.0.0/0 -> 오른쪽 대상 부분에는 인터넷 게이트웨이 선택 -> 뜨는 인터넷게이트웨이 목록 중에 미리 만들어놓은 게이트웨이 선택 -> 변경사항 저장

서브넷 연결 -> 서브넷 연결 편집 -> 앞서 만든 public 서브넷 두개 선택 -> 연결 저장

다시 라우팅 테이블 생성 하나 더 이름은 ecs-private-route-table-hg

위의 라우팅 테이블과 동일하게 라우팅 편집 -> 라우팅 추가 -> 0.0.0.0/0 + nat 게이트웨이 -> 변경사항 저장

서브넷 연결 -> 서브넷 연결 편집 -> 앞서 선택하지 않은 private 서브넷 두개 선택 -> 연결 저장

결과로 라우팅 테이블이 (public, private) 두 개 생성되고, 각각 서브넷이 두 개씩 연결되어 있음

보안그룹 생성

alb라는 이름의 보안그룹 생성

instance라는 이름의 보안그룹 하나 더 생성

위에서 만든 instance 보안그룹 선택 -> 작업 -> 인바운드 규칙 편집 -> 규칙 추가 -> 소스 부분에서 alb 보안그룹(맨 위에 만든 보안그룹) 선택 -> 규칙 저장

  • 보안그룹은 방화벽 역할을 함. 80번 포트를 열겠다는 것.

  • alb 보안그룹에 있는 애들은 instance 보안그룹에 마음대로 접속이 가능하도록 설정함

앞서 만든 두 개의 public 서브넷 선택 -> 작업 -> 서브넷 설정 편집 -> 퍼블릭 IPv4 주소 자동 할당 활성화

(ecs-public-subnet-1-hgecs-public-subnet-2-hg 이거 두 개 설정만 수정 !)

VPC resource map

load balancer

ec2 - 로드 밸런싱 - 로드밸런서

맨 첫번째 거 create

이름은 ecs-alb-hg

subnet은 둘다 public 선택

보안그룹은 기존거 삭제하고 방금 만든 alb 보안그룹(ecs-sg-alb-hg) 선택

create target group 눌러서 새 창 들어가기

target group 생성

instance - name은 ecs-target-group-hg - HTTP:80 - VPC는 앞서 만든 ecs-vpc-hg - HTTP1 - 나머지는 그대로

  • HTTP1아래에 있는 gRPC는 google에서 만든 오픈 소스 원격 프로시저 호출 시스템

생성한 target group 선택 !

로드 밸런서 생성 완료 !

cloud 9

root 계정 유저가 cloud9 user 권한을 부여해야 생성 가능

cloud 9 - 환경 생성

cloud 9이란 vscode 같은 존재로 이해하면 됨 !

aws 명령어를 ci 환경에서 입력할 수 있음

profile
공부합시당

0개의 댓글