시작하기 전에
- 실습에서는 정해진 기간 동안 Google Cloud 프로젝트와 리소스를 만듭니다.
- 실습에는 시간 제한이 있으며 일시중지 기능이 없습니다. 실습을 종료하면 처음부터 다시 시작해야 합니다.
- 화면 왼쪽 상단에서 실습 시작을 클릭하여 시작합니다.
Deploy an application to App Engine
/ 50
Create an App Engine latency alert
/ 50
이 실습에서는 App Engine에 애플리케이션을 배포한 후 애플리케이션이 액세스할 수 없게 되거나 오류를 발생시키는 경우 알림을 보내는 알림 정책을 만듭니다.
이 실습에서는 다음 작업을 수행하는 방법을 알아봅니다.
각 실습에서는 정해진 기간 동안 새 Google Cloud 프로젝트와 리소스 집합이 무료로 제공됩니다.
실습 시작 버튼을 클릭합니다. 실습 비용을 결제해야 하는 경우 결제 수단을 선택할 수 있는 팝업이 열립니다. 왼쪽에는 다음과 같은 항목이 포함된 실습 세부정보 패널이 있습니다.
Google Cloud 콘솔 열기를 클릭합니다(Chrome 브라우저를 실행 중인 경우 마우스 오른쪽 버튼으로 클릭하고 시크릿 창에서 링크 열기를 선택합니다).
실습에서 리소스가 가동되면 다른 탭이 열리고 로그인 페이지가 표시됩니다.
팁: 두 개의 탭을 각각 별도의 창으로 나란히 정렬하세요.
필요한 경우 아래의 사용자 이름을 복사하여 로그인 대화상자에 붙여넣습니다.
실습 세부정보 패널에서도 사용자 이름을 확인할 수 있습니다.
다음을 클릭합니다.
아래의 비밀번호를 복사하여 시작하기 대화상자에 붙여넣습니다.
실습 세부정보 패널에서도 비밀번호를 확인할 수 있습니다.
다음을 클릭합니다.
이후에 표시되는 페이지를 클릭하여 넘깁니다.
잠시 후 Google Cloud 콘솔이 이 탭에서 열립니다.
초기 로그인 단계를 완료하면 프로젝트 대시보드가 표시됩니다.
Google Cloud Shell은 다양한 개발 도구가 탑재된 가상 머신으로, 5GB의 영구 홈 디렉터리를 제공하며 Google Cloud에서 실행됩니다.
Google Cloud Shell을 사용하면 명령줄을 통해 Google Cloud 리소스에 액세스할 수 있습니다.
Cloud 콘솔의 오른쪽 상단 툴바에서 'Cloud Shell 열기' 버튼을 클릭합니다.
계속을 클릭합니다.
환경을 프로비저닝하고 연결하는 데 몇 분 정도 소요됩니다. 연결되면 사용자가 미리 인증되어 프로젝트가 PROJECT_ID로 설정됩니다. 예:
gcloud는 Google Cloud의 명령줄 도구입니다. Cloud Shell에 사전 설치되어 있으며 명령줄 자동 완성을 지원합니다.
출력:
출력 예시:
출력:
출력 예시:
다음 명령어를 실행하여 Python 환경을 업데이트합니다.
GitHub의 Google Training Data Analyst를 Cloud Shell 환경에 클론합니다. 이 저장소에는 본 실습의 요구사항에 완벽하게 부합하는 간단한 애플리케이션이 들어 있습니다.
클론이 완료되면 샘플 앱이 포함되어 있는 저장소의 deploying-apps-to-gcp 폴더로 디렉터리를 변경합니다.
Cloud Shell 편집기에서 main.py 파일을 엽니다. 메시지가 표시되면 새 창에서 열기를 클릭합니다. 기본적인 'Hello GCP' Python Flask 애플리케이션을 살펴보는 시간을 갖습니다.
편집기를 닫고 Cloud Shell 터미널로 돌아갑니다. 오른쪽 상단에서 터미널 열기를 클릭하여 터미널 창을 여세요. 프로그램을 테스트하려면 모든 Python 애플리케이션 종속 항목을 로드한 후 앱을 시작합니다.
프로그램이 실행되는지 확인하려면 Cloud Shell 툴바에서 웹 미리보기 버튼을 클릭한 후 포트 8080에서 미리보기를 선택합니다.
그러면 프로그램이 새 브라우저 탭을 열고 Hello GCP 메시지를 표시합니다.
애플리케이션이 작동하는 것을 확인했으니 이제 App Engine에 배포해 보겠습니다.
Cloud Shell 코드 편집기로 전환하거나 다시 엽니다. 왼쪽 탐색 트리에서 training-data-analyst/courses/design-process/deploying-apps-to-gcp 폴더를 펼칩니다.
파일 메뉴에서 새 파일을 선택하고 파일 이름을 app.yaml로 지정합니다.
다음 내용을 방금 만든 파일에 붙여넣습니다.
파일 > 저장을 선택하여 파일을 저장합니다.
모든 프로젝트는 사용할 수 있으려면 먼저 App Engine 애플리케이션을 만들어야 합니다. 이 작업은 콘솔 또는 gcloud app create 명령어를 사용하여 프로젝트당 한 번만 수행하면 됩니다. 어느 방법을 사용하든 앱을 만들 리전을 지정해야 합니다.
Cloud Shell 터미널에서 다음 명령어를 실행합니다. 이 변경사항을 적용하려면 Cloud Shell을 승인해야 할 수 있습니다.
기본 애플리케이션을 App Engine에 배포합니다. 다음 명령어는 현재 디렉터리에서 애플리케이션을 찾습니다. app.yaml 파일이 해당 애플리케이션을 Python 애플리케이션으로 선언하는 것을 확인하고는 폴더의 나머지 부분에 애플리케이션이 포함되어 있고 main.py에 시작점이 있을 것이라고 가정합니다. 종속 항목을 로드하고, 애플리케이션을 패키징하고, App Engine에 서비스로 배포합니다.
애플리케이션 배포가 완료될 때까지 기다립니다.
Google Cloud 콘솔 창의 탐색 메뉴()에서 모든 제품 보기 > 서버리스 > App Engine > 대시보드를 클릭합니다.
대시보드 오른쪽 상단에서 아래와 비슷한 애플리케이션 링크가 표시됩니다.
https://project-id.wl.r.appspot.com 형식입니다. 링크를 클릭하여 새로 배포된 앱을 테스트합니다. Cloud Shell에서 실행했을 때와 똑같이 작동할 것입니다.
Google Cloud가 샘플 데이터를 수집할 수 있도록 새로고침을 여러 번 클릭합니다.
내 진행 상황 확인하기를 클릭하여 목표를 확인합니다.
콘솔로 돌아가서 왼쪽 App Engine 아래에서 버전 링크를 클릭합니다.
Diagnose 열에서 로그를 선택합니다.
이제 애플리케이션이 실행되고 있으니, 비정상적으로 높은 지연 시간을 감시하는 알림을 만들어 보겠습니다. 먼저 애플리케이션의 현재 지연 시간을 살펴보겠습니다.
Google Cloud 콘솔의 탐색 메뉴에서 모든 제품 보기, 모니터링 가능성 > 모니터링 > 측정항목 탐색기를 클릭합니다.
측정항목 선택 드롭다운을 클릭하고 활성 옵션을 선택 해제합니다.
Metric을 GAE 애플리케이션 > HTTP > 응답 지연 시간으로 설정합니다. 적용을 클릭합니다. 측정항목이 업타임 체크 측정항목이 아니라 App Engine 측정항목이어야 합니다. 현재 업타임 체크가 없으므로 업타임 체크 측정항목은 작동하지 않습니다.
집계 필드에서 드롭다운을 클릭하고 99번째 백분위수를 선택합니다.
차트를 살펴보는 시간을 갖습니다.
아직 데이터가 많지는 않지만 애플리케이션이 1%의 이상치를 제외하고 가장 빠른 99%의 요청에 응답을 반환하는 데 걸린 평균 시간을 보여주는 차트 선을 표시하기에는 충분할 것입니다.
애플리케이션이 예상대로 작동하고 있습니다. 애플리케이션을 처음 실행했을 때 몇 번의 느린 응답이 있었을 수 있겠지만, 평균적으로 응답 시간이 200밀리초 미만임을 확인할 수 있을 것입니다.
1분 넘게 5초를 초과하는 응답 시간이 있는 경우 알려 주는 알림을 생성해 보겠습니다.
Google Cloud 콘솔의 탐색 메뉴()에서 모든 제품 보기 > 모니터링 가능성 > 모니터링 > 알림을 클릭합니다.
상단에서 알림 채널 수정을 클릭하고 이메일 섹션으로 스크롤합니다. 새로 추가를 사용하여 개인 이메일 주소를 유효한 알림 채널로 추가합니다. Display name으로 원하는 이름을 지정한 다음 저장을 클릭합니다.
기본 알림 페이지로 돌아가서 정책 만들기를 클릭합니다.
측정항목 선택을 클릭하고 활성 옵션을 선택 해제하여 동일한 측정항목 탐색기 페이지를 표시합니다. 다시 한번 Metric을 GAE 애플리케이션 > HTTP > 응답 지연 시간으로 설정합니다. 적용을 클릭합니다. 순환 기간을 1 min으로 설정하고 다음을 클릭합니다.
왼쪽 하단에 있는 표준 측정항목 탐색기 창에 새로운 Configuration 섹션이 추가된 것을 볼 수 있습니다.
임의 시계열 위반 시 Threshold position이 임곗값 초과이고, Threshold value이 8,000ms이면 알림이 트리거되도록 조건을 설정합니다.
condition name을 Response latency [MEAN] for 99th% over 8s로 설정합니다.
알림의 차트를 살펴보는 시간을 갖습니다. 앞에서 측정항목 탐색기로 만든 차트와 동일하지만 이번에는 8초에 알림 선이 그려져 있을 것입니다.
다음을 클릭합니다.
Notifications and name에서 Notification Channel을 펼치고 개인 이메일 주소를 선택한 후 확인을 클릭합니다(이 섹션의 앞부분에서 만든 알림 채널).
알림 제목을 Hello too slow로 지정하고 다음을 클릭합니다. 알림을 검토한 후 정책 만들기를 클릭합니다.
애플리케이션 코드를 업데이트하여 지연을 추가합니다. Cloud Shell 코드 편집기로 돌아갑니다. 왼쪽 탐색 트리에서 training-data-analyst/courses/design-process/deploying-apps-to-gcp 폴더를 펼칩니다.
main.py를 클릭하여 편집기에서 엽니다. 상단 2번 줄의 근처에서 import 문을 추가합니다(이 중 일부는 실습 후반부에서 사용됩니다).
현재 main() 함수를 아래 함수로 바꿉니다. 이 새 버전은 각 요청 중간에 코드를 10초간 일시중지하는 sleep 명령어를 추가합니다. 이 값은 기준치를 크게 넘습니다.
이제 다음을 다시 실행하여 애플리케이션을 재배포합니다.
명령어가 재배포를 완료할 때까지 기다립니다.
명령어가 완료되면 서버리스 > App Engine > 대시보드로 돌아가서 링크가 작동하는지 확인합니다.
일관된 부하를 생성하려면 Cloud Shell에서 다음 명령어를 입력합니다.
몇 분 정도(일반적으로 약 5분) 기다리면 알림을 알려 주는 이메일을 받게 됩니다. 이때 Cloud Shell 터미널로 돌아가서 Ctrl+C를 사용하여 부하 테스터 루프를 중지합니다.
Google Cloud 콘솔의 탐색 메뉴()에서 모든 제품 보기 > 모니터링 가능성 > 모니터링 > 알림을 클릭합니다.
트리거되는 알림과 사고가 생성된 방식을 확인합니다.
사고를 클릭하여 세부정보를 확인합니다.
세부정보 페이지를 조사하고 상단으로 스크롤한 후 사고 확인을 선택합니다.
기본 알림 페이지로 돌아가서 변경사항을 확인합니다.
내 진행 상황 확인하기를 클릭하여 목표를 확인합니다.
알림 CLI(및 API)는 코드 또는 스크립트를 사용하여 알림 정책을 적용할 때 매우 효과적일 수 있습니다.
Cloud Shell 코드 편집기로 돌아갑니다. 왼쪽 탐색기 트리에서 training-data-analyst/courses/design-process/deploying-apps-to-gcp 폴더를 선택합니다.
파일 메뉴에서 새 파일을 선택하고 파일 이름을 app-engine-error-percent-policy.json으로 지정합니다.
500 오류의 개수를 총 응답 수로 나눈 다음 500 오류가 1%를 초과하면 트리거되는 알림 정책을 만듭니다. 다음 내용을 방금 만든 파일에 붙여넣습니다.
파일을 저장합니다. 올바른 폴더에 있는지, 알림 정책이 해당 폴더에 저장되었는지 확인합니다.
다음 명령어를 사용하여 알림 정책을 배포합니다.
Google Cloud 콘솔의 탐색 메뉴()에서 모니터링 가능성 > 모니터링 > 알림을 클릭합니다. 정책 섹션에 방금 배포한 알림 정책이 표시됩니다.
HTTP 오류… 정책을 클릭하여 세부정보를 확인합니다. 알림이 트리거될 때 이메일을 받도록 알림 채널을 수정합니다.
무작위 오류가 있는 App Engine 앱을 배포하여 이 정책을 테스트합니다. Cloud Shell 코드 편집기로 돌아갑니다. 왼쪽 탐색 트리에서 training-data-analyst/courses/design-process/deploying-apps-to-gcp 폴더를 펼칩니다.
Cloud Shell 편집기에서 main.py 파일을 엽니다.
현재 main() 함수를 아래 함수로 바꿉니다. 이 새 함수는 sleep 명령어를 삭제하고 난수 생성기를 사용하여 약 2%의 시간 동안 500 오류를 반환합니다. 이 정도면 HTTP 오류 수 정책이 트리거되기에 충분합니다.
다음 명령어를 사용하여 애플리케이션을 재배포합니다.
명령어의 재배포가 완료할 때까지 기다립니다.
명령어가 완료되면 App Engine > 대시보드로 돌아가서 링크가 작동하는지 확인합니다.
Cloud Shell에서 앞에서 사용한 부하 생성기 명령어를 다시 실행합니다.
Cloud Shell에서 약 2%의 시간 동안 오류가 무작위로 표시됨을 확인할 수 있습니다. 명령어가 계속 실행되도록 둡니다.
Google Cloud 콘솔의 탐색 메뉴()에서 모니터링 가능성 > 모니터링 > 알림을 클릭하고 몇 분 더 기다립니다. 알림 사고가 트리거된 것을 볼 수 있습니다. 이메일도 받게 됩니다. 이는 곧바로 일어나지 않으니 조금 기다려야 합니다.
이메일을 받고 사고가 트리거된 것을 확인했으면 Cloud Shell로 돌아가서 CTRL+C를 눌러 요청을 중지합니다.
몇 분 더 기다리면 사고가 자동으로 해결되는 것을 보게 되고, 이메일을 또 하나 받게 됩니다.
프로젝트를 삭제한 후 이메일이 오지 않도록 하려면 알림 채널을 삭제합니다. HTTP 오류 개수… 정책을 클릭하여 세부정보를 확인합니다. 수정 링크를 클릭하고 알림 채널을 확장한 후 개인 이메일 주소를 선택 해제합니다. Use notification channel을 사용 중지합니다. 변경사항을 저장한 다음 정책을 삭제합니다.
이전 단계를 업타임 체크 알림 정책에 대해 반복합니다.
이 실습에서는 Google Cloud 콘솔과 CLI를 사용하여 알림 정책을 만들고 테스트했습니다. 잘하셨습니다.
실습을 완료하면 실습 종료를 클릭합니다. Google Skills에서 사용된 리소스를 자동으로 삭제하고 계정을 지웁니다.
실습 경험을 평가할 수 있습니다. 해당하는 별표 수를 선택하고 의견을 입력한 후 제출을 클릭합니다.
별점의 의미는 다음과 같습니다.
의견을 제공하고 싶지 않다면 대화상자를 닫으면 됩니다.
의견이나 제안 또는 수정할 사항이 있다면 지원 탭을 사용하세요.
Copyright 2026 Google LLC All rights reserved. Google 및 Google 로고는 Google LLC의 상표입니다. 기타 모든 회사명 및 제품명은 해당 업체의 상표일 수 있습니다.
현재 이 콘텐츠를 이용할 수 없습니다
이용할 수 있게 되면 이메일로 알려드리겠습니다.
감사합니다
이용할 수 있게 되면 이메일로 알려드리겠습니다.
한 번에 실습 1개만 가능
모든 기존 실습을 종료하고 이 실습을 시작할지 확인하세요.