GCP Cloud Engineer - 17
2024-04-14
- Cloud
- GCP
- Kubernetes
Kubernetes
-
ㅇ Kubernetes Overview: Kubernetes is an
open-source platformfor managingcontainerized workloads and services, which simplifies theorchestration(오케스트라) of many containersacrossmultiple hosts. -
ㅇ Cluster Management: Utilizes a
cluster of nodes, where anoderepresents acomputing instance, different from aGoogle Cloud virtual machine. -
ㅇ Pods and Deployments:
Podsare thesmallest deployable units in Kubernetes, typically containingone container, butcan hold multiple if they share dependencies. Deploymentsmanage groups of these podsto ensureavailability and scaling. -
ㅇ Services and Networking: Kubernetes provides services that
assign a stable IP address to groups of pods, facilitatingconsistent accessandload balancingthroughnetwork load balancersin GKE. -
ㅇ Scaling and Autoscaling:
Scalingis managed withcommandslikekubectl scale, withoptions for autoscalingbased onparameters like CPU utilization. -
ㅇ Declarative Management:
Promotesusingconfiguration filesto definedesired states, rather thanimperative commands, formanaging deployments and updates. -
ㅇ Update and Rollout Strategies:
Updatesare managed throughkubectl rolloutor byapplying changes in deployment configuration files, withstrategies to minimize riskduring updates.
쿠버네티스
-
ㅇ 쿠버네티스 개요: 쿠버네티스는 컨테이너화된 워크로드 및 서비스를 관리하는 오픈 소스 플랫폼으로, 다수의 호스트에서 많은 컨테이너를 용이하게 조정합니다.
-
ㅇ 클러스터 관리: 노드의 클러스터를 사용하며, 여기서 노드는 컴퓨팅 인스턴스를 나타내고, 구글 클라우드의 가상 머신과는 다릅니다.
-
ㅇ 파드 및 배포: 파드는 쿠버네티스에서 배포 가능한 가장 작은 단위로, 일반적으로 하나의 컨테이너를 포함하지만, 의존성을 공유하는 경우 여러 개를 포함할 수 있습니다. 배포는 이러한 파드의 그룹을 관리하여 가용성과 확장성을 보장합니다.
-
ㅇ 서비스 및 네트워킹: 쿠버네티스는 파드 그룹에 안정적인 IP 주소를 할당하는 서비스를 제공하여, GKE의 네트워크 로드 밸런서를 통해 일관된 접근성과 로드 밸런싱을 촉진합니다.
-
ㅇ 확장 및 자동 확장:
kubectl scale과 같은 명령을 사용하여 확장을 관리하며, CPU 사용률과 같은 매개변수에 기반한 자동 확장 옵션을 제공합니다. -
ㅇ 선언적 관리: 배포 및 업데이트를 관리하기 위해 명령어 대신 원하는 상태를 정의하는 구성 파일을 사용하는 것을 촉진합니다.
-
ㅇ 업데이트 및 롤아웃 전략:
kubectl rollout을 사용하거나 배포 구성 파일의 변경 사항을 적용하여 업데이트를 관리하며, 업데이트 동안의 위험을 최소화하기 위한 전략을 사용합니다.
Google Kubernetes Engine (GKE)
-
ㅇ Google Kubernetes Engine (GKE): A
managed Kubernetes servicehosted by Google in the cloud,simplifying container management. -
ㅇ Cluster Configuration:
GKE uses multiple Compute Engine instancesgrouped toformaKubernetes cluster. -
ㅇ Cluster Creation:
Clusterscanbe createdusing theGoogle Cloud Consoleor thegcloudcommand from the Cloud Software Development Kit. -
ㅇ Customization and Flexibility:
Supports customizationwithvarious machine types,numbers of nodes, andnetwork settings. -
ㅇ Kubernetes Integration:
Provides tools and commandstointeractwith yourcluster,deploy and manage applications, setpolicies, andmonitor workload health. -
ㅇ Advanced Management Features: Includes
load balancing,node pools for resource flexibility,automatic node scaling,automatic software upgrades,node auto-repairforhealthandavailability, and integratedlogging and monitoringforoperational visibility. -
ㅇ Starting a Cluster: To
initiateaKubernetes cluster in GKE, use the command:gcloud container clusters create k1.
구글 쿠버네티스 엔진 (GKE)
-
ㅇ 구글 쿠버네티스 엔진 (GKE): 구글 클라우드에서 호스팅되는 관리형 쿠버네티스 서비스로, 컨테이너 관리를 간소화합니다.
-
ㅇ 클러스터 구성: 여러 컴퓨트 엔진 인스턴스를 그룹화하여 쿠버네티스 클러스터를 형성합니다.
-
ㅇ 클러스터 생성: 클러스터는 Google Cloud Console 또는 Cloud Software Development Kit의
gcloud명령을 사용하여 생성할 수 있습니다. -
ㅇ 맞춤 설정 및 유연성: 다양한 머신 유형, 노드 수 및 네트워크 설정을 지원하는 맞춤 설정이 가능합니다.
-
ㅇ 쿠버네티스 통합: 클러스터와 상호 작용, 애플리케이션 배포 및 관리, 정책 설정, 워크로드 건강 모니터링을 위한 도구 및 명령 제공.
-
ㅇ 고급 관리 기능: 로드 밸런싱, 자원 유연성을 위한 노드 풀, 자동 노드 스케일링, 소프트웨어 자동 업그레이드, 건강 및 가용성을 위한 노드 자동 수리, 운영 가시성을 위한 통합 로깅 및 모니터링 포함.
-
ㅇ 클러스터 시작: GKE에서 쿠버네티스 클러스터를 시작하려면 다음 명령을 사용합니다:
gcloud container clusters create k1.
GCP Cloud ...
GCP Cloud ...