CS 내용 요약, 지식/Google Cloud Associate

Google Cloud Associate 강의 요약: cloud function, cloud run, KMS

걍판자 2025. 1. 3. 23:36
반응형
  • Cloud functions: 특정 이벤트가 빌생활시 원하는 코드 실행
    • node.js, python, go, java, .NET, Ruby로 작성가능하며 서버나 가용성, scaling에 대한 걱정을 할 필요가 없다.
    • 메서드의 수, 메서드의 compute time, 메모리와 cpu 사용량에 따라 네가 사용한 만큼만 지불함.
    • 자동으로 이벤트의 수에 따라 병렬적으로 수가 증감함.
    • 오래 실행되는 프로세스에는 적당하지 않음. 즉각적인 반응을 원할때 좋음.
    • 시간제한: 기본 1분에서 60분
    • 버전: 2가지 세대가 있음.
    • 이벤트가 발생하면(클라우드 storage에 업로드한다거나) -> trigger로 function call
  • cloud run: 컨테이너 관리를 도와줌
    • knative 라는 하나의 open standard에 build 됨
    • 서버리스로 뭐든지 할 수 있게 도와주고, 역시 쓴 만큼만 지불함
    • end-to-end 개발자 통합 경험을 제공함
    • 언어 제한 없음
    • 다른 cloud code, cloud build, cloud monitoring, cloud logging등과 통합 가능
    • anthos로 쿠버네티스 클라우드를 어디서나 실행 가능함.
    • cloud run의 명령어
      • deploy a new container: gcloud run deploy SERVICE_NAME --image IMAGE_URL --revision-suffix v1
      • list available versions: gcloud run revisions list
      • adjust traffic assignments: gloud run services update-traffic myservice --to-revisions=v2=10, v1=90
  • cloud function 버전 2에서 좋아진 점
    • http-triggered function에 대한 timeout 증가
    • ram과 vCPU사이즈 2배 증가
    • 동시에 1개에서 1000개로 처리개수 증가
    • 다양한 함수 개정과 트래픽 분할 지원
    • 90개 넘는 이벤트 타입 지원
  • scaling과 동시성에 대한 설명
    • 서버리스 function들이 그렇듯 메서드에 따라 autoscaling 된다. 하나의 함수는 오직 하나의 인스턴스에만 실행되기에 그에 따라 인스턴스를 늘린다.
    • 인스턴스가 0일 때 요청이 들어오면 인스턴스를 시작하는 과정에서 cold start로 느려지는 문제가 생긴다. 이를 해결하려면 항상 최소의 instance는 구성하고 있어야 한다. 물론 비용은 추가되겠지만
    • 1세대 cloud function은 전형적인 서버리스 함수 아키텍처였으나 2세대는 하나의 함수 인스턴스가 동시에 여러 개를 처리할 수 있는 동시성 기능이 추가되었다.
  • cloud functions의 deployment 옵션
    • gcloud functions deploy {Name} 이 기본이고 이후에 인자들을 붙일 수 있다.
    • --docker-registry(레지스트리에 이미지 저장), --docker-repository(레포지토리에 이미지 저장), --gen2(버전 2 사용), --runtime(언어), --service-account(계정), --timeout, --max-instances, --min-instances, --source(파일), --trigger-{트리거 내용}

  • 데이터 상태 3가지
      1. rest: 디바이스나 백업에 저장되기만 한 상태
      1. motion: 네트워크로 전송되는 중 상태(in transit), 클라우드 내부끼리 소통하는지, 클라우드에서 외부 인터넷으로 소통하는지에 따라 보안 달라짐
      1. in use: 영구적이지 않은 상태로 저장되는 상태: RAM
  • 암호화
    • 보통 보안을 위해 하드디스크, 데이터베이스, 파일서버, 전송 중인 데이터 모두 암호화시킨다.
    • 대칭키 암호화: 암호화와 복호화에 같은 key를 사용하는 방법
      • 핵심 1: 올바른 암호화 알고리즘
      • 핵심 2: 암호화 키는 어떻게 암호화하나
      • 핵심 3: 암호화 키는 어떻게 공유하나
    • 비대칭 키 암호화: 공용키와 개인키 2개를 사용하는 방법
      • 공용키는 모두 알고 있고, 각자 개인키를 가지는 방법(RSA)
  • cloud KMS
    • 키를 생성, 관리할 뿐만 아니라 GCP 서비스에 적용 가능
    • 암호화, 복호화, 서명 API 제공
    • on-premises 그러니까 기업이 자체적으로 만들고 관리하는 키도 쓸 수 있음
    • GCP 서비스의 3가지 암호화 방법
      • google-managed key: 별다른 구성 없이 그냥 구글 꺼 씀
      • customer-managed key: KMS의 키 사용
      • customoer-supplied key: on-premise로 만든 키 사용, 관리
반응형