
시작하기 전에
- 실습에서는 정해진 기간 동안 Google Cloud 프로젝트와 리소스를 만듭니다.
- 실습에는 시간 제한이 있으며 일시중지 기능이 없습니다. 실습을 종료하면 처음부터 다시 시작해야 합니다.
- 화면 왼쪽 상단에서 실습 시작을 클릭하여 시작합니다.
Create the VM instance
/ 30
Create a Cloud Storage bucket and Enable Private Google Access
/ 40
Configure a Cloud NAT gateway
/ 30
이번 실습에서는 외부 IP 주소가 없는 VM 인스턴스에 비공개 Google 액세스 및 Cloud NAT를 구현하는 방법을 알아봅니다. 그런 다음 Google API 및 서비스의 공개 IP 주소와 다른 인터넷 연결에 액세스할 수 있는지 확인합니다.
외부 IP 주소가 없는 VM 인스턴스는 외부 네트워크로부터 격리됩니다. 이러한 인스턴스는 Cloud NAT를 사용해 인터넷에 액세스하여 업데이트와 패치를 적용할 수 있으며 경우에 따라 부트스트랩을 수행할 수 있습니다. 관리형 서비스인 Cloud NAT는 사용자 관리와 개입 없이도 고가용성을 제공합니다.
이 실습에서는 다음 작업을 수행하는 방법을 알아봅니다.
각 실습에서는 정해진 기간 동안 새 Google Cloud 프로젝트와 리소스 집합이 무료로 제공됩니다.
실습 시작 버튼을 클릭합니다. 실습 비용을 결제해야 하는 경우 결제 수단을 선택할 수 있는 팝업이 열립니다. 왼쪽에는 다음과 같은 항목이 포함된 실습 세부정보 패널이 있습니다.
Google Cloud 콘솔 열기를 클릭합니다(Chrome 브라우저를 실행 중인 경우 마우스 오른쪽 버튼으로 클릭하고 시크릿 창에서 링크 열기를 선택합니다).
실습에서 리소스가 가동되면 다른 탭이 열리고 로그인 페이지가 표시됩니다.
팁: 두 개의 탭을 각각 별도의 창으로 나란히 정렬하세요.
필요한 경우 아래의 사용자 이름을 복사하여 로그인 대화상자에 붙여넣습니다.
실습 세부정보 패널에서도 사용자 이름을 확인할 수 있습니다.
다음을 클릭합니다.
아래의 비밀번호를 복사하여 시작하기 대화상자에 붙여넣습니다.
실습 세부정보 패널에서도 비밀번호를 확인할 수 있습니다.
다음을 클릭합니다.
이후에 표시되는 페이지를 클릭하여 넘깁니다.
잠시 후 Google Cloud 콘솔이 이 탭에서 열립니다.
방화벽 규칙이 있는 VPC 네트워크와 외부 IP 주소가 없는 VM 인스턴스를 만들고 IAP 터널을 사용해 이 인스턴스에 연결합니다.
먼저 VM 인스턴스의 VPC 네트워크를 생성한 다음 SSH 액세스를 허용하는 방화벽 규칙을 만듭니다.
Google Cloud 콘솔의 탐색 메뉴()에서 VPC 네트워크 > VPC 네트워크를 클릭합니다.
VPC 네트워크 만들기를 클릭합니다.
이름에 privatenet을 입력합니다.
서브넷 생성 모드에서 커스텀을 클릭합니다.
새 서브넷에서 다음을 지정하고 나머지 설정은 기본값으로 둡니다.
속성 | 값(지정된 대로 값 입력 또는 옵션 선택) |
---|---|
이름 | privatenet-us |
리전 | |
IPv4 주소 범위 | 10.130.0.0/20 |
완료를 클릭합니다.
만들기를 클릭하고 네트워크가 생성될 때까지 기다립니다.
왼쪽 창에서 방화벽을 클릭합니다.
방화벽 규칙 만들기를 클릭합니다.
다음을 지정하고 나머지 설정은 기본값으로 둡니다.
속성 | 값(지정된 대로 값 입력 또는 옵션 선택) |
---|---|
이름 | privatenet-allow-ssh |
네트워크 | privatenet |
대상 | 네트워크의 모든 인스턴스 |
소스 필터 | IPv4 범위 |
소스 IPv4 범위 | 35.235.240.0/20 |
프로토콜 및 포트 | 지정된 프로토콜 및 포트 |
tcp에서 체크박스를 클릭하고 포트 22를 지정합니다.
만들기를 클릭합니다.
Google Cloud 콘솔의 탐색 메뉴()에서 Compute Engine > VM 인스턴스를 클릭합니다.
인스턴스 만들기를 클릭합니다.
머신 구성 페이지에서 다음을 지정하고 나머지 설정은 기본값으로 둡니다.
속성 | 값(지정된 대로 값 입력 또는 옵션 선택) |
---|---|
이름 | vm-internal |
리전 | |
영역 | |
시리즈 | E2 |
머신 유형 | e2-medium(vCPU 2개, 코어 1개, 메모리 4GB) |
OS 및 스토리지를 클릭합니다.
표시된 이미지가 Debian GNU/Linux 12(bookworm)가 아닌 경우 변경을 클릭하고 Debian GNU/Linux 12(bookworm)를 선택한 다음 선택을 클릭합니다.
네트워킹을 클릭합니다.
네트워크 인터페이스에서 다음을 지정하여 네트워크 인터페이스를 수정합니다.
속성 | 값(지정된 대로 값 입력 또는 옵션 선택) |
---|---|
네트워크 | privatenet |
서브네트워크 | privatenet-us |
외부 IPv4 주소 | 없음 |
내 진행 상황 확인하기를 클릭하여 목표를 확인합니다.
Cloud 콘솔에서 Cloud Shell 활성화()를 클릭합니다.
메시지가 표시되면 계속을 클릭합니다.
Cloud Shell에서 다음 명령어를 실행하여 브라우저를 열지 않고 인증을 설정합니다.
[Y/n]이 표시되면 Y를 누른 다음 Enter 키를 누릅니다.
그러면 브라우저에서 링크를 열 수 있습니다. Qwiklabs 계정에 로그인한 것과 동일한 브라우저에서 링크를 엽니다. 로그인하면 복사할 인증 코드를 받게 됩니다. Cloud Shell에 해당 코드를 붙여넣습니다.
다음 명령어를 실행하여 vm-internal에 연결합니다.
vm-internal에 외부 IP 주소가 없기 때문에 정상적으로 실행되지 않아야 합니다.
ping
명령어가 완료될 때까지 기다립니다.외부 IP 주소가 없는 VM 인스턴스는 비공개 Google 액세스를 사용해 Google API 및 서비스의 외부 IP 주소에 연결할 수 있습니다. 기본적으로 비공개 Google 액세스는 VPC 네트워크에서 사용 설정되어 있지 않습니다.
Cloud Storage 버킷을 만들어 Google API 및 서비스에 대한 액세스를 테스트합니다.
Google Cloud 콘솔의 탐색 메뉴()에서 Cloud Storage > 버킷을 클릭합니다.
만들기를 클릭합니다.
다음을 지정하고 나머지 설정은 기본값으로 둡니다.
속성 | 값(지정된 대로 값 입력 또는 옵션 선택) |
---|---|
이름 | 전역적으로 고유한 이름을 입력 |
위치 유형 | 멀티 리전 |
만들기를 클릭합니다. 공개 액세스 방지를 사용 설정하라는 메시지가 표시되면 확인란을 선택하고 확인을 클릭합니다. 스토리지 버킷 이름을 기록해 둡니다.
환경 변수에 버킷 이름을 저장합니다.
이미지를 공개 Cloud Storage 버킷에서 내 버킷으로 복사합니다.
Cloud 콘솔에서 이미지의 이름을 클릭하면 비공개 Google 액세스가 어떻게 구현되는지에 대한 예시를 볼 수 있습니다.
Cloud Shell에 외부 IP 주소가 있기 때문에 정상적으로 작동해야 합니다.
메시지가 표시되면 Y를 입력하여 계속 진행합니다.
환경 변수에 버킷 이름을 저장합니다.
여기서는 실행이 정상적으로 되지 않습니다. 기본적으로 비공개 Google 액세스가 사용 설정되어 있지 않기 때문에 vm-internal은 VPC 네트워크 내에서만 트래픽을 전송할 수 있습니다.
비공개 Google 액세스는 서브넷 수준에서 사용 설정할 수 있습니다. 비공개 Google 액세스를 사용 설정하면 서브넷에 비공개 IP 주소만 있는 인스턴스가 기본 인터넷 게이트웨이에 대한 다음 홉의 기본 경로(0.0.0.0/0)를 통해 Google API 및 서비스로 트래픽을 전송할 수 있습니다.
내 진행 상황 확인하기를 클릭하여 목표를 확인합니다.
vm-internal의 서브넷에 비공개 Google 액세스가 사용 설정되어 있기 때문에 정상적으로 작동해야 합니다.
이제 vm-internal에서 외부 IP 주소 없이 특정 Google API 및 서비스에 액세스할 수 있지만 인스턴스에서 인터넷에 액세스해 업데이트 및 패치를 받을 수 없습니다. Cloud NAT 게이트웨이를 구성하면 vm-internal이 인터넷에 연결할 수 있습니다.
출력은 다음과 같이 표시됩니다(출력 예시).
Cloud Shell에 외부 IP 주소가 있기 때문에 정상적으로 작동해야 합니다.
vm-internal은 Google API 및 서비스에만 액세스할 수 있기 때문에 Google Cloud 패키지에 대해서만 정상적으로 작동해야 합니다.
Cloud NAT는 리전별 리소스입니다. 리전에서 전체 서브넷의 모든 범위에서 발생하는 트래픽을 허용하거나 해당 리전의 특정 서브넷에서 발생하는 트래픽만 허용하거나 또는 특정 기본 및 보조 CIDR 범위에서 발생하는 트랙픽만 허용하도록 구성할 수 있습니다.
Google Cloud 콘솔 제목 표시줄의 검색 필드에 네트워크 서비스를 입력한 다음 제품 및 페이지 섹션에서 네트워크 서비스를 클릭합니다.
네트워크 서비스 페이지에서 '네트워크 서비스' 옆의 고정을 클릭합니다.
Cloud NAT를 클릭합니다.
시작하기를 클릭하여 NAT 게이트웨이를 구성합니다.
다음 사항을 지정합니다.
속성 | 값(지정된 대로 값 입력 또는 옵션 선택) |
---|---|
게이트웨이 이름 | nat-config |
네트워크 | privatenet |
리전 |
Cloud Router에서 새 라우터 만들기를 선택합니다.
이름에 nat-router를 입력합니다.
만들기를 클릭합니다.
내 진행 상황 확인하기를 클릭하여 목표를 확인합니다.
NAT 구성이 VM에 전달되기까지 최대 3분 걸릴 수 있으므로 1분 이상 기다린 후 다시 인터넷 액세스를 시도합니다.
출력은 다음과 같이 표시됩니다(출력 예시).
vm-internal이 NAT 게이트웨이를 사용하고 있기 때문에 정상적으로 작동해야 합니다.
Cloud NAT 로깅을 사용하면 NAT 연결 및 오류를 로깅할 수 있습니다. Cloud NAT 로깅을 사용하도록 설정하면 다음과 같은 각 시나리오에 대해 로그 항목이 하나씩 생성될 수 있습니다.
두 종류의 이벤트를 모두 로깅하거나 둘 중 하나만 로깅하도록 선택할 수 있습니다. 생성된 로그는 Cloud Logging으로 전송됩니다.
로깅이 사용 설정되면 수집된 모든 로그가 기본적으로 Cloud Logging으로 전송됩니다. 필터링을 사용하여 특정 로그만 전송되게 할 수 있습니다.
또한 NAT 게이트웨이를 만들 때 또는 생성된 후 수정을 통해 이러한 값을 지정할 수 있습니다. 다음 안내에서는 기존 NAT 게이트웨이에 대해 로깅을 사용 설정하는 방법을 보여줍니다.
Google Cloud 콘솔의 탐색 메뉴()에서 네트워크 서비스 > Cloud NAT를 클릭합니다.
nat-config
게이트웨이를 클릭한 다음 수정을 클릭합니다.
고급 구성 드롭다운을 클릭하여 이 섹션을 엽니다.
Logging에서 변환 및 오류를 선택하고 저장을 클릭합니다.
nat-config
게이트웨이에 Cloud NAT 로깅을 설정했으니 로그를 볼 수 있는 위치를 알아보겠습니다.
nat-config
를 클릭하여 세부정보를 표시합니다. 그런 다음 로그 탐색기에서 보기를 클릭합니다.
그러면 로그 탐색기가 새 탭에서 열립니다.
게이트웨이에 이 기능을 방금 사용 설정했기 때문에 아직 로그가 표시되지 않습니다.
참고로 Cloud NAT 로그는 다음 시퀀스에 대해 생성됩니다.
호스트를 내부 VM에 다시 연결하여 로그가 생성되었는지 확인해 보겠습니다.
출력은 다음과 같이 표시됩니다(출력 예시).
이 연결을 열어서 로그에 새로운 내용이 표시되었는지 확인해 보겠습니다.
이제 내부 VM에 연결한 이후에 생성된 두 개의 새로운 로그가 표시됩니다.
이제 연결한 VPC 네트워크와 사용한 연결 방법에 대한 세부정보를 로그를 통해 확인할 수 있습니다. 다양한 라벨과 세부정보를 펼쳐서 살펴보세요.
지금까지 외부 IP 주소가 없는 인스턴스인 vm-internal을 만들고 IAP 터널을 사용해 안전하게 연결했습니다. 그리고 비공개 Google 액세스를 사용 설정하고 NAT 게이트웨이를 구성했으며 vm-internal이 Google API 및 서비스와 다른 공개 IP 주소에 액세스할 수 있는지 확인했습니다.
외부 IP 주소가 없는 VM 인스턴스는 외부 네트워크로부터 격리됩니다. 이러한 인스턴스는 Cloud NAT를 사용해 인터넷에 액세스하여 업데이트와 패치를 적용할 수 있으며 경우에 따라 부트스트랩을 수행할 수 있습니다. 관리형 서비스인 Cloud NAT는 사용자 관리와 개입 없이도 고가용성을 제공합니다.
IAP는 VM 인스턴스에 연결할 때 기존의 프로젝트 역할 및 권한을 사용합니다. 기본적으로 인스턴스 소유자에게만 IAP 보안 터널 사용자 역할이 할당됩니다.
다른 사용자가 IAP 터널링을 사용하여 VM에 액세스할 수 있도록 허용하는 방법은 Cloud 아키텍처 센터의 추가 사용자에게 액세스 권한 부여 가이드를 참조하세요.
실습을 완료하면 실습 종료를 클릭합니다. Google Cloud Skills Boost에서 사용된 리소스를 자동으로 삭제하고 계정을 지웁니다.
실습 경험을 평가할 수 있습니다. 해당하는 별표 수를 선택하고 의견을 입력한 후 제출을 클릭합니다.
별점의 의미는 다음과 같습니다.
의견을 제공하고 싶지 않다면 대화상자를 닫으면 됩니다.
의견이나 제안 또는 수정할 사항이 있다면 지원 탭을 사용하세요.
Copyright 2020 Google LLC All rights reserved. Google 및 Google 로고는 Google LLC의 상표입니다. 기타 모든 회사명 및 제품명은 해당 업체의 상표일 수 있습니다.
현재 이 콘텐츠를 이용할 수 없습니다
이용할 수 있게 되면 이메일로 알려드리겠습니다.
감사합니다
이용할 수 있게 되면 이메일로 알려드리겠습니다.
한 번에 실습 1개만 가능
모든 기존 실습을 종료하고 이 실습을 시작할지 확인하세요.