본문 바로가기

개발/MSG-Lab

[MSG] 네이버 클라우드로 인프라 구축하기 - 2, 네트워크

반응형

네이버 클라우드의 VPC에 대한 내용입니다!!

 

1. VPC란

VPC management를 통해 VPC를 생성할 수 있습니다.

VPC는 우리가 사용할 수 있는 IP 범위를 의미한다고 생각하면 편합니다.

예를들어 건물을 짓는데 1층짜리 건물에 방은 10칸이 있는 건물을 짓는다면, 우리는 방 10개를 사용할 수 있는데요.

VPC는 이와 같은 역할을 수행합니다.

단 건물이 몇층인지, 방은 몇개인지를 서브넷 마스크와 ip를 통해 나타냅니다. 10.0.0.0/16 이런식으로요

 

10.0.0.0/16의 의미는,

"10.0.0.0 IP주소 부터 시작할거고, 끝은 앞에서부터 16비트를 마스킹했을때 가능한 가장 큰값으로 할거예요"라는 의미입니다.

 

VPC는 크게 잡아 주어야 합니다.(공간이 충분해야 필요한 분들에게 나눠줄 수 있어요)

 

서브넷 마스크 계산기 링크

 

2. 서브넷이란

앞에서 설정한 VPC 범위 안에서 공간을 나눠 사용하는 것 입니다.

예를들어 앞에서 1층짜리 방 10개짜리 건물을 만들었는데요.

"나는 1번 방부터 3번방까지 사용할래요"라는게 서브넷입니다.

이때 사용하려는 범위는 마찬가지로 서브넷 마스크를 이용해 표현합니다.

 

외부 인터넷과 연결할지, 어떤 용도로 사용할지를 결정해야 합니다.(로드 밸런서용, 그냥 서버용 등등)

이때 서브넷끼리 서로 겹치면 안됍니다(이미 1번방부터 3벙방까지 사용자가 있으면, 1번부터 3번까지는 다른 사용자가 사용불가입니다)

 

3. NAT gateway

앞에서 서브넷을 프라이빗으로(외부 인터넷과 단절) 생성했지만 인터넷을 이용할 수 있습니다.

바로 이 게이트웨이를 활용한다면요!

 

기껏 프라이빗으로 생성했는데 왜 게이트웨이가 필요하냐 물을 수 있습니다.

만약 프라이빗존에 생성된 인스턴스(컴퓨터)에서 설치된 프로그램의 버전이 낮아 upgrade를 해야한다면 어떻게 해결해야 할까요?

이런류의 outbound 요청을 게이트웨이를 통해 처리하게 됩니다

 

4. Route Table

앞에서 게이트웨이만 생성한다고 해서 인터넷에 요청을 보낼 수 없습니다.

라우터 테이블에서 설정을 수정해야합니다.

저는 default-private-table을 수정해서 목적지는 0.0.0.0/0, 타겟 타입은 게이트웨이, 이름은 아까 만든 게이트웨이로 설정했습니다.

 

5. Network ACL

만약 프라이빗존에 인스턴스를 생성했다고 생각해봅시다.

현재 인스턴스의 outbound 요청은 게이트웨이를 통해 잘 처리가 되고 있습니다.

그런데 이 인스턴스로 "접속"해야한다면 어떻게 해야할까요?

예를들어 log를 확인해본다던지, 설치가 잘 진행되었는지 "ls" 혹은 "ps -ef" 등의 명령어를 사용하고 싶다면요?

바로 NACL을 이용해서 bastion server로 프라이빗 존에 생성된 인스턴스에 접속해야합니다!

 

ACL rule에서 inbound 룰을 추가해줍니다.

접근 소스에는 bastion server ip/32 이렇게 입력해주시면 됩니다.

저는 우선순위는 안겹치게, 프로토콜은 TCP, 포트는 전부 공개, 허용여부는 허용으로 설정했습니다.

 

bastion server란? 프라이빗존에 생성된 인스턴스 접속용으로, 퍼블릭존에 생성된 인스턴스예요

반응형