본문 바로가기

GKE21

[GKE 사용하기] 쿠버네티스 컴포넌트(Kubernetes Component) 이번 시간에는 GKE를 잘 사용하기 위해 쿠버네티스 컴포넌트에 대해 알아보도록 하겠습니다. 쿠버네티스를 배포하면 클러스터가 생성됩니다. 쿠버네티스 클러스터는 크게 컨트롤 플레인(Control Plane)이라고도 불리는 마스터(Master)와 노드(Node) 두 개의 컴포넌트로 나누어집니다. 마스터 : 쿠버네티스의 설정 환경을 관리하고, 클러스터의 작업자 노드와 포드(Pod)를 제어 워커 노드 : 애플리케이션 워크로드의 구성 요소인 포드를 호스트. 운영 환경에서는 일반적으로 마스터는 여러 컴퓨터에서 실행되고 클러스터는 일반적으로 여러 노드를 실행하여 고가용성과 내결함성을 제공합니다. 1. 마스터 컴포넌트 마스터 컴포넌트는 클러스터에 대한 전반적인 결정을 내리고, 이벤트를 탐지하고 응답하는, 클러스터 전체를.. 2022. 10. 12.
[GKE 사용하기] 쿠버네티스 핵심 기능 이번 시간에는 GKE를 잘 사용하기 위해 쿠버네티스의 핵심 기능 10가지에 대해 알아보도록 하겠습니다. 1. 자동화된 롤아웃과 롤백(Automated rollouts and rollbacks) 쿠버네티스는 애플리케이션 또는 애플리케이션의 설정을 변경하는 경우, 점진적으로 롤아웃하는 동시에 애플리케이션을 모니터링해서 모든 인스턴스가 동시에 종료되지 않도록 보장합니다. 만약 어떤 문제가 발생하면 쿠버네티스는 변경 사항을 롤백합니다. 즉, 다운타임 없이 애플리케이션의 새로운 버전 및 설정에 대해서 롤아웃과 롤백이 가능하다는 것입니다. 2. 서비스 디스커버리와 로드밸런싱(Service discovery and load balancing) 쿠버네티스를 사용하면 익숙하지 않은 서비스 디스커버리 메커니즘을 사용하기 .. 2022. 10. 6.
[GCP]GKE Pod에 GCE PV를 Attaching 하는 방법 안녕하세요 MC에몽입니다. 이번주는 GKE Pod에 GCE PV를 Attaching 하는 방법을 알아보겠습니다. Compute Engine에 연결하여 사용하던 PV를 Detached한 후, GKE PV로 사용하여 각 Pod에 연결 할 수 있습니다. 정적 데이터를 전달하는 단순한 웹 서버를 GKE로 사용할 경우, ReadOnlyMany Access Mode로 단일 PV에서 여러 Pod를 연결하여 동일한 콘텐츠를 제공하도록 할 수 있습니다. 아래와 같은 Role을 가진 계정으로 실행해 주시기 바랍니다. 1) compute.admin : Compute 관리자 2) container.admin : 쿠버네티스 관리자 다음과 같은 주의사항을 참고하시기 바랍니다. 1) 연결하고자 하는 PV과 GKE Node는 동일한.. 2022. 9. 7.
Persistent Disk 및 Cloud SQL로 GKE에 WordPress 배포 이번 실습에서는 MySQL 데이터베이스를 사용하여 Google Kubernetes Engine(GKE)에서 단일 복제본 WordPress 배포를 설정하는 방법을 설명합니다. MySQL을 설치하는 대신 MySQL의 관리형 버전을 제공하는 Cloud SQL을 사용합니다. WordPress는 PersistentVolumes(PV) 및 PersistentVolumeClaims(PVC)를 사용하여 데이터를 저장합니다. PV는 PVC에서 작성된 요청을 수행하기 위해 관리자가 프로비저닝하거나 Kubernetes에 의해 동적으로 프로비저닝되는 클러스터의 스토리지 볼륨을 나타냅니다. PVC는 특정 스토리지 클래스의 스토리지에 대한 사용자의 요청으로 PV에서 수행할 수 있습니다. PV 및 PVC는 pod 수명 주기와 별개.. 2022. 7. 9.
[GCP]gke 클러스터 저장소 구성(볼륨) gke 클러스터 저장소 구성은 총 3개로 구성되어 있습니다. 볼륨 사용 영구 볼륨 사용 SMB CSI 드라이버를 사용하여 Windows Server 노드에서 SMB 볼륨에 액세스 그렇다면 볼륨의 유형에는 어떤 것들이 있고 어떻게 구성하는지 알아보겠습니다. 볼륨 개념상 볼륨이란 Pod에 있는 모든 컨테이너가 액세스할 수 있는 디렉터리입니다. Pod 사양에서 선언된 볼륨 소스는 디렉터리 생성 방법, 사용되는 저장소 매체, 디렉터리의 초기 콘텐츠를 결정합니다. Pod는 그것에 포함되는 볼륨과 컨테이너가 볼륨을 마운트하는 경로를 각각 지정합니다. 임시 볼륨 유형은 자신을 둘러싸고 있는 Pod와 수명이 같습니다. 이러한 볼륨은 Pod가 생성될 때 생성되며, 컨테이너가 다시 시작될 때까지 유지됩니다. Pod가 종료.. 2022. 6. 17.
[GCP] GKE - 제어 영역 액세스를 위한 승인된 네트워크 추가 안녕하세요. MC에몽입니다. 오늘은 GCP의 Kubernetes Engine 서비스인 GKE의 기능 중 제어 영역 액세스 제어 기능에 대해서 알아보겠습니다. GKE Cluster를 통제하는 제어 영역(Control Plane)은 보안 상 신뢰할 수 없는 IP 주소로 액세스 할 수 없게 차단할 필요가 있습니다. * 제어 영역이란 Kubernetes의 Worker Node를 제어하는 Master Node가 존재하는 영역을 의미합니다. Google Cloud에서는 승인된 네트워크를 사용하여 신뢰할 수 있는 지정된 IP 주소 범위로만 제어 영역에 액세스 할 수 있는 보안적 이점을 제공합니다.[1] 승인된 네트워크는 GKE Cluster 생성 시 추가하거나 기존 클러스터에 승인된 네트워크를 추가할 수 있습니다. .. 2022. 6. 6.
GKE로 배포 관리하기 (3) Blue/Green 배포 안녕하세요 BTC Hallo 팀입니다. 이번 주에는 'Canary 배포'에 이어서 GKE로 배포 관리하는 방법 중 'Blue/Green 배포'에 대해 포스팅 하겠습니다. Blue/Green 배포 순차적 업데이트는 최소한의 오버헤드, 최소한의 성능 영향, 최소한의 다운타임으로 애플리케이션을 배포할 수 있기 때문에 가장 좋은 업데이트 방식이지만, 배포를 모두 완료한 후에 부하 분산기를 수정하여 새 버전을 가리키도록 하는 것이 유리한 경우도 있다. 이 경우에는 Blue/Green 배포가 사용될 수 있습니다. Kubernetes에서는 이전의 'blue' 버전용 배포와 새로운 'green' 버전용 배포를 만들어 업데이트할 수 있습니다. 'blue' 버전에 기존 hello 배포를 사용하면 라우터 역할을 하는 서비스.. 2022. 5. 26.
GKE로 배포 관리하기 (2)Canary 배포 안녕하세요 BTC Hallo 팀입니다. 이번 주에는 저번 주의 '지속적 배포'에 이어서 GKE로 배포 관리하는 방법 중 'Canary 배포'에 대해 이어서 진행해보도록 하겠습니다. Canary 배포 프로덕션 환경에서 일부 사용자를 대상으로 새 배포를 테스트하려면 Canary 배포를 사용할 수 있다. Canary 배포를 사용하면 작은 규모의 일부 사용자에게만 변경 사항을 릴리스하여 새로운 릴리스와 관련된 위험을 완화할 수 있습니다. Canary 배포 만들기 Canary 배포는 새 버전의 별도 배포와 함께 기존 안정화 배포 및 Canary 배포를 동시에 대상으로 삼는 서비스로 구성됩니다. cat deployments/hello-canary.yaml (출력 내용) apiVersion: apps/v1 kind:.. 2022. 5. 20.