GCP Cloud Engineer - 62

2024-04-18

  • Cloud
  • GCP
  • Kubernetes

쿠버네티스 소개

  • 쿠버네티스 정의:

    • ㅁ 쿠버네티스는 컨테이너 인프라를 관리하고 오케스트레이션하는 오픈 소스 플랫폼입니다.

    • ㅁ Google이 개발하고 오픈 소스 커뮤니티에 기증했습니다.

쿠버네티스의 특징

  • 배포 자동화:

    • ㅁ 쿠버네티스는 컨테이너화된 애플리케이션의 배포, 확장로드 밸런싱을 자동화합니다.
  • 자원 관리:

    • 리소스 요청 및 제한을 설정하여 애플리케이션의 확장성을 관리할 수 있습니다.
  • 선언적 및 명령적 구성:

    • 선언적 구성을 통해 원하는 시스템 상태를 정의하고, 쿠버네티스가 이 상태를 유지하도록 합니다.

    • 명령적 구성은 임시 수정을 위해 사용됩니다.

  • 워크로드 지원:

    • 상태 없는(stateless) 애플리케이션상태 있는(stateful) 애플리케이션 모두를 지원합니다.

    • 배치 작업 및 데몬 태스크를 관리할 수 있습니다.

  • 플러그인 및 확장성:

    • ㅁ 쿠버네티스는 다양한 플러그인 및 추가 기능을 통해 확장할 수 있습니다.
  • 포터빌리티:

    • ㅁ 쿠버네티스는 다양한 클라우드 서비스 제공자에서 워크로드를 이동할 수 있어 벤더 종속성을 방지합니다.

Google Kubernetes Engine (GKE) 소개

  • GKE 정의:

    • ㅁ GKE는 Google Cloud에서 제공하는 관리형 쿠버네티스 서비스입니다.

    • ㅁ 컨테이너화된 애플리케이션을 Google Cloud에서 배포, 관리 및 확장을 도와줍니다.

GKE의 주요 특징

  • 완전 관리형 서비스:

    • ㅁ 사용자는 기반 리소스를 프로비저닝할 필요(X)가 없습니다.

    • 자동 수리, 자동 업그레이드 등의 기능을 제공합니다.

  • 클러스터 관리:

    • GKE Autopilot을 통해 클러스터 구성을 Google이 관리합니다.

    • 노드, 확장, 보안 설정 등이 사전 구성됩니다.

  • 보안 및 액세스 관리:

    • ㅁ Google의 Identity and Access Management와 통합되어 계정과 역할 권한을 통해 접근을 제어할 수 있습니다.
  • 통합 및 네트워킹:

    • Google Virtual Private Clouds와 통합되어 Google Cloud의 네트워킹 기능을 활용합니다.

    • Cloud BuildArtifact Registry와의 원활한 통합을 제공합니다.

  • 모니터링 및 운영:

    • ㅁ Google Cloud의 운영 스위트와 통합되어 애플리케이션의 성능을 모니터링합니다.
  • Google Cloud 콘솔:

    • GKE 클러스터 및 리소스에 대한 통찰력을 제공합니다.

    • 리소스 보기, 검사 및 삭제 기능을 제공합니다.

GKE의 사용 이유

  • 부담없는 인프라 관리:

    • 인프라의 유지보수 부담(X)을 줄여주며 쿠버네티스 클러스터를 손쉽게 관리할 수 있도록 돕습니다.

모르는 단어

Stateful / Stateless Application

애플리케이션의 상태(state)는 애플리케이션의 작동을 결정하는 정보를 의미합니다. 이는 메모리, 데이터베이스, 파일 시스템 등에 저장될 수 있습니다.

애플리케이션의 상태는 "상태 있는(stateful)"과 "상태 없는(stateless)" 두 가지로 분류될 수 있습니다.

상태 있는 애플리케이션(Stateful Application):

상태 있는 애플리케이션은 이전의 상태를 기억하고, 이 상태가 현재와 미래의 요청 처리에 영향을 미칩니다.

예를 들어, 데이터베이스는 이전의 쿼리 결과를 저장하고, 이 정보를 사용하여 후속 쿼리를 처리하는 상태 있는 애플리케이션입니다.

상태 없는 애플리케이션(Stateless Application):

상태 없는 애플리케이션은 이전의 상태를 기억하지 않습니다.

각 요청은 독립적으로 처리되며, 이전 또는 후속의 요청에 영향을 미치지 않습니다.

예를 들어, HTTP 웹 서버는 요청을 받아 응답을 제공하지만, 이전의 요청이나 응답을 기억하지 않는 상태 없는 애플리케이션입니다.

상태 있는 애플리케이션은 상태를 관리해야 하므로 복잡성이 증가할 수 있지만, 사용자의 세션을 유지하거나, 데이터를 실시간으로 추적하고 업데이트하는 등의 기능을 제공할 수 있습니다.

반면, 상태 없는 애플리케이션은 간단하고 예측 가능하지만, 이러한 기능을 제공하기 위해서는 추가적인 메커니즘이 필요합니다.

운영 스위트

운영 스위트(Operations Suite)는 IT 운영 팀이 시스템을 모니터링하고, 관리하고, 문제를 해결하는 데 사용하는 일련의 도구와 소프트웨어를 의미합니다.

이는 시스템 모니터링 도구, 로그 관리 시스템, 알림 및 경고 시스템, 티켓 관리 시스템, 배포 및 구성 관리 도구 등을 포함할 수 있습니다.

운영 스위트는 IT 인프라의 성능을 최적화하고, 시스템 장애를 빠르게 파악하고 해결하며, IT 리소스를 효과적으로 관리하는 데 도움이 됩니다.

이는 시스템의 안정성과 가용성을 높이고, IT 운영 팀의 생산성을 향상시킵니다.

Artifact Registry

Artifact Registry는 Google Cloud에서 제공하는 패키지 관리 서비스입니다.

이 서비스는 Docker 컨테이너 이미지와 Maven과 npm과 같은 언어별 패키지를 저장하고 관리하는 데 사용됩니다.

Artifact Registry는 프라이빗 패키지 호스팅, 버전 관리, 패키지 불변성, 패키지 메타데이터 저장 등의 기능을 제공합니다.

또한, Artifact Registry는 Google Cloud의 보안 및 규정 준수 기능을 활용하여 패키지의 보안을 강화합니다.

이는 VPC 서비스 컨트롤, 이중 인증, 암호화 등의 기능을 포함합니다.

따라서, Artifact Registry는 소프트웨어 개발 및 배포 파이프라인의 일부로서 패키지 관리를 단순화하고 표준화하는 데 도움이 됩니다.

GCP Cloud ...

GCP Cloud ...