본문 바로가기
Cloud/Google Cloud Platform

GCP Fundamentals #7 - Developing, Deploying, andMonitoring in the Cloud

by HaningYa 2020. 5. 21.
728x90

 

[코스정보]

 

 

Cloud Engineering with Google Cloud 전문 자격증 | Coursera

Learn Cloud Engineering with Google Cloud 전문 자격증 from Google 클라우드. This program provides the skills you need to advance your career as a cloud engineer and recommends training to support your preparation for the industry-recognized Google Cloud ...

www.coursera.org


Development in the cloud

cloud source repository

  • 코드를 GCP 프로젝트 내에서 관리하고 싶다면(깃허브 쓰지 않고)
  • IAM 을 통해 Git 권한을 주고싶다면
  • 근데 직접 Git 인스턴스를 관리하고 싶지 않다면
  • Cloud Source Repository를 써라!
  • 여러 private repo를 만들 수 있다.
  • GCP console를 통해 코드를 볼수 있는 source viewer도 제공한다.

cloud function

  • event driven 한 부분, 예를들어 사용자가 이미지를 업로드 했을 때 형식을 바꾼다던가 썸네일을 만든다던가 하는 작업이 요청되었을 때 따로 리소스를 할당 하지 않고 요청이 있을 때만 처리하고 싶다면
  • cloud function을 쓰면 된다.
  • 서버 런타임 신경 쓰지 않아도 된다. 그냥 코드만 작성하면 된다.
  • 코드가 실행될 때 만 비용을 지불 하면 된다.(100 milisecond)
  • Cloud function은 Cloud Storage, Cloud pub/sub, http call 에 대한 이벤트를 trigger할 수 있다. 
  • 먼저 trigger를 설정하고 그에 대한 코드를 작성한다.
  • 마이크로 서비스 아키텍처에 적합하다.

  • cloud source repository는 코드를 GCP 프로젝트 내에서 private 하게 관리하고 싶을 때 사용한다.

Deployment: Infrastructure as code

deployment in cloud

  • 개발 환경을 배포할때 template 을 사용하면 편하다.
  • Deployment manager를 통해 GCP 리소스에 대한 생성과 관리를 자동화 할 수 있다.
  • YAML 마크업 언어나 파이썬으로 template 파일을 만든다.
    그리고 Deployment Manager에 템플릿을 전달한다.
  • 환경을 수정하고 싶을 땐 template 파일을 수정하여 Deployment manager를 통해 update 한다.
  • cloud source repo 에 template 파일을 저장하고 versioning 할 수 있다.

  • cloud function은 event driven compenet를 무중단 scaling이 가능하다.

Monitoring: Proactive instrumentation

google stackdriver

  • 모니터링은 중요하다.
  • Stackdriver는 monitoring, logging, diagnostics 기능을 가진다.
  • Stackdriver는 인프라 플랫폼에서 오는 다양한 신호들에 대해 엑세스 할 수 있게 해준다.
    - VM, containers, middleware, application, log, metrics and traces 
  • application의 상태와 성능과 가용성에 대한 전반적인 인사이트를 제공해 준다.
  • 그래서 issue 가 발생했을 경우 빠르게 고칠 수 있도록 도와준다.

stack driver 중심 기능

  • Monitoring : 웹앱의 end point를 체크하고 클라우드 환경에 있는 다른 인터넷 엑세스가 가능한 서비스에 대해서도 체크한다.
  • Logging : application의 로그를 저장하고 필터링 할 수 있다. export 도 가능하다.
  • Trace : app engine의 지연율을 확인 할 수 있고 URL 각각의 statistics에 대한 보고서를 받아볼 수 있다.
  • Error reporting : 클라우드 application의 에러들을 담당하고 새로운 에러가 나왔을 때 알려준다.
  • debugging : application production data를 source code와 연동해 주어 디버깅 코드를 작성하지 않고 확인해 볼 수 있다.

실습 : Getting Started with Deployment Manager and Stackdriver

https://googlecoursera.qwiklabs.com/lti_sessions/libraries/gcp-training-content/content/GCPFUND-DMStackdriver

 

  • cloud source repository는 git 인스턴스를 직접 관리 하지 않으면서 IAM 으로 권한을 설정하고 싶을 때 사용한다.
  • cloud function은 event-driven code 를  compute resource 를 할당하지 않고 실행할 수 있다.
  • deployment manager은 GCP 리소스를 관리하는 시스템이다.
  • GCP 리소스에 대한 health, fail check 를 위해서는 stackdriver monitoring을 사용한다.
  • stackdriver logging은 application의 로그를 볼 수 있고 필터링 할 수 있다.
728x90

댓글