
시작하기 전에
- 실습에서는 정해진 기간 동안 Google Cloud 프로젝트와 리소스를 만듭니다.
- 실습에는 시간 제한이 있으며 일시중지 기능이 없습니다. 실습을 종료하면 처음부터 다시 시작해야 합니다.
- 화면 왼쪽 상단에서 실습 시작을 클릭하여 시작합니다.
Create a VPC network and VM instances
/ 30
Create custom mode VPC networks with firewall rules
/ 40
Create VM instances
/ 30
솔루션 설계자라면 사용 중인 네트워크가 AWS의 클라우드 인프라 요소 중 하나라는 사실을 잘 알고 있을 것입니다. 어떤 방식으로 다양한 리소스를 연결하고, 네트워크를 세분화하며, 보안을 보장할 수 있는가는 Google Cloud로 작업하는 클라우드 설계자의 주요 관심사입니다.
AWS에는 다른 리소스와 함께 AWS 계정 전용의 격리된 가상 네트워크인 Amazon Virtual Private Cloud(VPC)가 하나 이상 있습니다. Amazon VPC를 사용하여 안전한 가상 네트워크에서 리소스를 실행할 수 있습니다.
AWS의 VPC는 범위가 리전별로 구분되며 한 리전에만 존재할 수 있습니다. AWS 계정을 생성하면 구성할 필요 없이 각 AWS 리전에 하나의 기본 VPC가 생성됩니다.
둘 이상의 리전에 있는 앱이나 리소스를 연결하려는 경우 VPC 피어링 또는 전송 게이트웨이를 사용할 수 있습니다.
AWS VPC에서는 다양한 가용성 영역에 비공개 및 공개 서브넷을 설정하여 가용성과 내결함성을 개선합니다. 권장사항에 따라 보안 그룹, 경로 테이블, AWS Network Firewall 규칙을 만들면 네트워크 보안을 개선할 수 있습니다.
이 모든 것을 염두에 두고 강력한 아키텍처 배포를 위해 Google Cloud에서 사용할 수 있는 네트워킹 서비스에 대해 살펴보겠습니다.
Google Cloud Virtual Private Cloud(VPC)는 Compute Engine 가상 머신(VM) 인스턴스, Kubernetes Engine 컨테이너, App Engine 가변형 환경에 네트워킹 기능을 제공합니다. 즉, VPC 네트워크가 없으면 VM 인스턴스, 컨테이너 또는 App Engine 애플리케이션을 만들 수 없습니다. 따라서 시작하려면 각 Google Cloud 프로젝트에 기본 네트워크가 있어야 합니다.
VPC 네트워크는 Google Cloud 내에서 가상화된다는 점을 제외하면 물리적 네트워크와 유사하다고 생각할 수 있습니다. VPC 네트워크는 데이터 센터의 리전별 가상 서브네트워크(서브넷) 목록으로 구성된 전역 리소스이며 모든 리소스는 전역 광역 통신망(WAN)을 통해 연결됩니다. VPC 네트워크는 Google Cloud에서 논리적으로 서로 격리됩니다.
이 실습에서는 방화벽 규칙과 두 개의 VM 인스턴스가 있는 자동 모드 VPC 네트워크를 만듭니다. 그런 다음 자동 모드 네트워크를 커스텀 모드 네트워크로 전환하고 아래의 네트워크 다이어그램 예시와 같이 다른 커스텀 모드 네트워크를 만듭니다. 또한 네트워크 간의 연결도 테스트합니다.
이 실습에서는 다음 작업을 수행하는 방법을 알아봅니다.
각 실습에서는 정해진 기간 동안 새 Google Cloud 프로젝트와 리소스 집합이 무료로 제공됩니다.
시크릿 창을 사용하여 Qwiklabs에 로그인합니다.
실습 사용 가능 시간(예: 1:15:00
)을 참고하여 해당 시간 내에 완료합니다.
일시중지 기능은 없습니다. 필요한 경우 다시 시작할 수 있지만 처음부터 시작해야 합니다.
준비가 되면 실습 시작을 클릭합니다.
실습 사용자 인증 정보(사용자 이름 및 비밀번호)를 기록해 두세요. Google Cloud Console에 로그인합니다.
Google Console 열기를 클릭합니다.
다른 계정 사용을 클릭한 다음, 안내 메시지에 이 실습에 대한 사용자 인증 정보를 복사하여 붙여넣습니다.
다른 사용자 인증 정보를 사용하는 경우 오류가 발생하거나 요금이 부과됩니다.
약관에 동의하고 리소스 복구 페이지를 건너뜁니다.
각 Google Cloud 프로젝트에는 서브넷, 경로, 방화벽 규칙이 있는 기본 네트워크가 있습니다.
기본 네트워크는 각 Google Cloud 리전에 서브넷을 하나씩 가지고 있습니다.
경로는 인스턴스에서 네트워크 내부 또는 Google Cloud 외부에 있는 대상으로 트래픽을 보내는 방법을 VM 인스턴스 및 VPC 네트워크에 알려줍니다. 각 VPC 네트워크에는 해당 서브넷 간에 트래픽을 라우팅하고 요건을 충족하는 인스턴스에서 인터넷으로 트래픽을 전송하는 몇 가지 기본 경로가 있습니다.
각 VPC 네트워크는 사용자가 구성할 수 있는 분산 가상 방화벽을 구현합니다. 방화벽 규칙을 사용하면 어떤 패킷이 어떤 대상으로 이동하는지 제어할 수 있습니다. 모든 VPC 네트워크에는 모든 수신 연결을 차단하고 모든 발신 연결을 허용하는 두 가지 묵시적인 방화벽 규칙이 있습니다.
왼쪽 창에서 방화벽을 클릭합니다.
기본 네트워크에는 다음 4개의 인그레스 방화벽 규칙이 있습니다.
이 방화벽 규칙은 모든(0.0.0.0/0) ICMP, RDP, SSH 인그레스 트래픽을 허용하고 네트워크(10.128.0.0/9) 내부의 모든 TCP, UDP, ICMP 트래픽을 허용합니다. 대상, 필터, 프로토콜/포트, 작업 열에 이 규칙이 설명되어 있습니다.
네트워크가 삭제될 때까지 기다렸다가 진행하세요.
경로가 없는 것을 알 수 있습니다.
방화벽 규칙이 없는 것을 알 수 있습니다.
VPC 네트워크가 없으면 VM 인스턴스를 만들 수 없음을 확인합니다.
오류를 확인합니다.
두 개의 VM 인스턴스가 있는 자동 모드 네트워크를 만드는 작업을 수행해야 합니다. 자동 모드 네트워크는 각 리전에 서브넷을 자동으로 생성하기 때문에 쉽게 설정하고 사용할 수 있습니다. 하지만 사용하는 리전과 IP 주소 범위를 포함하여 VPC 네트워크에 생성되는 서브넷을 완전히 제어할 수는 없습니다.
Google VPC 문서에서 자동 모드 네트워크 선택 시 고려사항을 언제든지 자세히 살펴볼 수 있으며, 지금은 프로토타입 제작을 위해 자동 모드 네트워크를 사용하고 있다고 가정하겠습니다.
자동 모드 네트워크는 각 리전에 자동으로 서브넷을 만듭니다.
이들은 기본 네트워크에 지정된 표준 방화벽 규칙과 동일합니다. deny-all-ingress 및 allow-all-egress 규칙도 표시되지만 이러한 규칙은 묵시적이기 때문에 사용자가 선택하거나 중지할 수 없습니다. 이 두 규칙은 우선순위가 낮으므로(정수 값이 클수록 우선순위가 낮음) ICMP, 커스텀, RDP, SSH 규칙이 먼저 고려됩니다.
만들기를 클릭합니다.
새 네트워크가 준비되면 mynetwork를 클릭합니다.
Cloud 콘솔의 탐색 메뉴(☰)에서 Compute Engine > VM 인스턴스를 클릭하고 인스턴스 만들기를 클릭합니다.
다음과 같이 필드를 작성하고 다른 필드는 모두 기본값으로 둡니다.
머신 구성에서
다음 값을 선택합니다.
속성 | 값(지정된 대로 값 입력 또는 옵션 선택) |
---|---|
이름 | mynet-vm-1 |
리전 | |
영역 | |
시리즈 | E2 |
머신 유형 | e2-micro(vCPU 2개, 1GB 메모리) |
OS 및 스토리지를 클릭합니다.
변경을 클릭하여 부팅 디스크 구성을 시작합니다.
선택을 클릭합니다.
만들기를 클릭합니다.
인스턴스 만들기를 클릭합니다.
머신 구성에서
다음 값을 선택합니다.
속성 | 값(지정된 대로 값 입력 또는 옵션 선택) |
---|---|
이름 | mynet-vm-2 |
리전 | |
영역 | |
시리즈 | E2 |
머신 유형 | e2-micro(vCPU 2개, 1GB 메모리) |
OS 및 스토리지를 클릭합니다.
변경을 클릭하여 부팅 디스크 구성을 시작합니다.
선택을 클릭합니다.
만들기를 클릭합니다.
참고: 두 VM 인스턴스의 외부 IP 주소는 임시 주소입니다. 인스턴스가 중지되면 해당 인스턴스에 할당된 모든 임시 외부 IP 주소가 일반 Compute Engine 풀로 다시 해제되어 다른 프로젝트에서 사용할 수 있게 됩니다.
중지된 인스턴스가 다시 시작되면 해당 인스턴스에 새 임시 외부 IP 주소가 할당됩니다. 아니면 고정 외부 IP 주소를 예약할 수도 있습니다. 그러면 해당 주소는 명시적으로 해제될 때까지 프로젝트에 무기한으로 할당됩니다.mynetwork에 만든 방화벽 규칙은 mynetwork 내부(내부 IP)와 해당 네트워크 외부(외부 IP)에서 발생한 인그레스 SSH 및 ICMP 트래픽을 허용합니다.
mynet-vm-2의 외부 및 내부 IP 주소를 확인합니다.
allow-custom 방화벽 규칙이 있으므로 mynet-vm-2의 내부 IP를 핑할 수 있습니다.
자동 모드 네트워크가 지금까지 원활하게 작동했지만, 실습 목표에 따라 새 리전을 사용할 수 있을 때 새 서브넷이 자동으로 생성되지 않도록 이 네트워크를 커스텀 모드 네트워크로 전환해야 합니다. 이 경우 수동으로 생성된 서브넷 또는 정적 경로에 사용되는 IP 주소와 겹치거나 전체적인 네트워크 계획에 차질이 발생할 수 있습니다.
mynetwork의 모드가 커스텀으로 변경될 때까지 기다립니다.
기다리는 동안 새로고침을 클릭해도 됩니다.
내 진행 상황 확인하기를 클릭하여 목표를 확인합니다.
아래 다이어그램 예시와 같이 SSH, ICMP, RDP 인그레스 트래픽을 허용하는 방화벽 규칙과 VM 인스턴스가 있는 커스텀 네트워크 2개(managementnet 및 privatenet)를 추가로 만드는 작업을 수행해야 합니다(vm-appliance 제외).
이들 네트워크의 IP CIDR 범위는 겹치지 않기 때문에 네트워크 간의 VPC 피어링과 같은 메커니즘을 설정할 수 있습니다. 온프레미스 네트워크와 다른 IP CIDR 범위를 지정하는 경우에는 VPN 또는 Cloud Interconnect를 사용하여 하이브리드 연결을 구성할 수도 있습니다.
Cloud 콘솔을 사용하여 managementnet 네트워크를 만듭니다.
Cloud 콘솔의 탐색 메뉴()에서 VPC 네트워크 > VPC 네트워크를 클릭합니다.
VPC 네트워크 만들기를 클릭합니다.
이름에 managementnet를 입력합니다.
서브넷 생성 모드에서 커스텀을 클릭합니다.
다음을 지정하고 나머지 설정은 기본값으로 둡니다.
속성 | 값(지정된 대로 값 입력 또는 옵션 선택) |
---|---|
이름 | managementsubnet-1 |
리전 | |
IPv4 범위 | 10.240.0.0/20 |
완료를 클릭합니다.
상응하는 명령줄을 클릭합니다.
이러한 명령어는 gcloud
명령줄을 사용하여 네트워크와 서브넷을 만들 수 있음을 보여줍니다. 유사한 매개변수와 함께 이러한 명령어를 사용하여 privatenet 네트워크를 만들겠습니다.
닫기를 클릭합니다.
만들기를 클릭합니다.
gcloud
명령줄을 사용하여 privatenet 네트워크를 만듭니다.
출력은 다음과 같습니다.
managementnet 네트워크의 VM 인스턴스에 대한 SSH, ICMP, RDP 인그레스 트래픽을 허용하는 방화벽 규칙을 만듭니다.
Cloud Console의 탐색 메뉴()에서 VPC 네트워크 > 방화벽을 클릭합니다.
방화벽 규칙 만들기를 클릭합니다.
다음을 지정하고 나머지 설정은 기본값으로 둡니다.
속성 | 값(지정된 대로 값 입력 또는 옵션 선택) |
---|---|
이름 | managementnet-allow-icmp-ssh-rdp |
네트워크 | managementnet |
대상 | 네트워크의 모든 인스턴스 |
소스 필터 | IPv4 범위 |
소스 IPv4 범위 | 0.0.0.0/0 |
프로토콜 및 포트 | 지정된 프로토콜 및 포트 |
tcp를 선택하고 포트 22 및 3389를 지정합니다.
기타 프로토콜을 선택하고 icmp 프로토콜을 지정합니다.
상응하는 명령줄을 클릭합니다.
이러한 명령어는 gcloud
명령줄을 사용하여 방화벽 규칙을 만들 수도 있음을 보여줍니다. 유사한 매개변수와 함께 이러한 명령어를 사용하여 privatenet의 방화벽 규칙을 만들겠습니다.
닫기를 클릭합니다.
만들기를 클릭합니다.
gcloud
명령줄을 사용하여 privatenet 네트워크의 방화벽 규칙을 만듭니다.
출력은 다음과 같습니다.
출력은 다음과 같습니다.
mynetwork 네트워크의 방화벽 규칙은 이미 생성되어 있습니다. 여러 개의 프로토콜과 포트를 하나의 방화벽 규칙(privatenet 및 managementnet)에 정의하거나 여러 규칙(기본 및 mynetwork)에 분산시킬 수 있습니다.
내 진행 상황 확인하기를 클릭하여 목표를 확인합니다.
이어서 다음 두 개의 VM 인스턴스를 만듭니다.
Cloud 콘솔을 사용하여 managementnet-vm-1 인스턴스를 만듭니다.
Cloud 콘솔의 탐색 메뉴(☰)에서 Compute Engine > VM 인스턴스를 클릭하고 인스턴스 만들기를 클릭합니다.
다음과 같이 필드를 작성하고 다른 필드는 모두 기본값으로 둡니다.
머신 구성에서
다음 값을 선택합니다.
속성 | 값(지정된 대로 값 입력 또는 옵션 선택) |
---|---|
이름 | managementnet-vm-1 |
리전 | |
영역 | |
시리즈 | E2 |
머신 유형 | e2-micro(vCPU 2개, 1GB 메모리) |
OS 및 스토리지를 클릭합니다.
변경을 클릭하여 부팅 디스크 구성을 시작합니다.
선택을 클릭합니다.
네트워킹을 클릭합니다.
네트워크 인터페이스에서 드롭다운 화살표를 클릭하여 수정합니다.
다음을 지정하고 나머지 설정은 기본값으로 둡니다.
속성 | 값(지정된 대로 값 입력 또는 옵션 선택) |
---|---|
네트워크 | managementnet |
서브네트워크 | managementsubnet-1 |
완료를 클릭합니다.
상응하는 코드를 클릭합니다.
이는 gcloud
명령줄을 사용하여 VM 인스턴스를 만들 수도 있음을 보여줍니다. 유사한 파라미터와 함께 이러한 명령어를 사용하여 privatenet-vm-1 인스턴스를 만들겠습니다.
닫기를 클릭합니다.
만들기를 클릭합니다.
gcloud
명령줄을 사용하여 privatenet-vm-1 인스턴스를 만듭니다.
Cloud 콘솔에 해당 VM 인스턴스가 나열되는지 확인합니다.
열에서 영역을 선택합니다.
내 진행 상황 확인하기를 클릭하여 목표를 확인합니다.
VM 인스턴스 간의 연결을 살펴봅니다. 구체적으로는 여러 VM 인스턴스가 동일한 영역에 존재하는 경우와 동일한 VPC 네트워크에 존재하는 경우 어떤 결과가 발생하는지 비교해 봅니다.
VM 인스턴스의 외부 IP 주소를 핑하여 공용 인터넷에서 인스턴스에 도달할 수 있는지 확인합니다.
명령어가 정상적으로 실행됩니다.
명령어가 정상적으로 실행됩니다.
명령어가 정상적으로 실행됩니다.
VM 인스턴스의 내부 IP 주소를 핑하여 VPC 네트워크 내에서 인스턴스에 도달할 수 있는지 확인합니다.
이 실습에서는 기본 네트워크를 살펴보고 VPC 네트워크 없이는 VM 인스턴스를 만들 수 없다는 사실도 확인했습니다. 이 실습을 통해 서브넷, 경로, 방화벽 규칙, 2개의 VM 인스턴스가 있는 자동 모드 VPC 네트워크를 새로 만들고 VM 인스턴스의 연결을 테스트해 보았습니다. 프로덕션에는 자동 모드 네트워크가 권장되지 않기 때문에 자동 모드 네트워크를 커스텀 모드 네트워크로 전환했습니다.
이어서 Cloud 콘솔과 gcloud 명령줄을 사용하여 방화벽 규칙 및 VM 인스턴스가 있는 커스텀 모드 VPC 네트워크를 두 개 더 만들었습니다. 그런 다음 VPC 네트워크 간의 연결을 테스트했는데, 외부 IP 주소를 핑할 때는 실행됐지만 내부 IP 주소를 핑할 때는 실행되지 않았습니다.
VPC 네트워크는 기본적으로 격리되어 있는 비공개 네트워크 도메인입니다. 따라서 VPC 피어링 또는 VPN과 같은 메커니즘을 설정하지 않는 한, 네트워크 간 내부 IP 주소 통신은 허용되지 않습니다.
AWS와 Google Cloud의 유사점을 살펴보겠습니다.
Google Cloud와 AWS의 차이점을 이해하는 것도 중요합니다.
실습을 완료하면 실습 종료를 클릭합니다. Google Cloud Skills Boost에서 사용된 리소스를 자동으로 삭제하고 계정을 지웁니다.
실습 경험을 평가할 수 있습니다. 해당하는 별표 수를 선택하고 의견을 입력한 후 제출을 클릭합니다.
별점의 의미는 다음과 같습니다.
의견을 제공하고 싶지 않다면 대화상자를 닫으면 됩니다.
의견이나 제안 또는 수정할 사항이 있다면 지원 탭을 사용하세요.
Copyright 2020 Google LLC All rights reserved. Google 및 Google 로고는 Google LLC의 상표입니다. 기타 모든 회사명 및 제품명은 해당 업체의 상표일 수 있습니다.
현재 이 콘텐츠를 이용할 수 없습니다
이용할 수 있게 되면 이메일로 알려드리겠습니다.
감사합니다
이용할 수 있게 되면 이메일로 알려드리겠습니다.
한 번에 실습 1개만 가능
모든 기존 실습을 종료하고 이 실습을 시작할지 확인하세요.