Kubernetes

· Kubernetes
도커 이미지 Pull 정책을 지정해서 Pod 생성 시 로컬의 이미지를 사용하도록 할 수 있다. imagePullPolicy IfNotPresent: 이미지가 로컬에 없는 경우 내려받음 Never: 내려받지 않음 -> 로컬에 있는 경우에만 동작 Pod 생성 시 imagePullPolicy 옵션을 Never로 정의해 주면 된다. spec: containers: - image: app imagePullPolicy: Never # 이 옵션 추가
· Kubernetes
Kubernetes는 대규모 서비스 운영에서 사실상 표준으로 자리 잡았다. 그러나 효율적이고 안정적인 운영을 위해선 견고한 모니터링 시스템을 구축이 필수적이다. 이 글에서 Prometheus와 Grafana를 사용하여 효과적인 Kubernetes 모니터링 시스템을 구축하는 방법을 소개한다. 1. 로컬 환경에서 Docker Desktop을 이용한 Kubernetes 클러스터 구축 로컬 환경에서도 Kubernetes를 설치할 수 있는 방법이 여러 가지가 있다. 그중 Docker Desktop 이용해 Kubernetes 환경을 구축해 보자. Docker Desktop 설치 https://www.docker.com/products/docker-desktop/ 여기에 들어가면 OS별 설치 파일이 제공된다. Ena..
· Kubernetes
1. Helm 이란 Helm의 정의를 CircleCI 블로그에서 가져왔다. Helm은 설정 파일을 하나의 재사용 가능한 패키지로 결합하여 Kubernetes 애플리케이션의 생성, 패키징, 설정, 배포를 자동화하는 도구입니다. 내가 생각하는 Helm의 핵심 기능은 "패키징"이라고 생각한다. 패키지를 만들고 잘 만들어둔 패키지는 다양한 곳에서 사용할 수 있다. 마치 만능 양념장과 같다. 쿠버네티스 스터디 중 "Helm을 언제 사용하는 건지 이해가 안되니 개념도 이해가 잘 안 된다"라는 이야기를 하신 분이 있었다. 그에 대한 대답으로 나는 "필요하다고 느껴질 때 사용하게 될 것이다"라고 생각한다. nginx 웹 서버를 하나를 쿠버네티스에 배포한다고 해보자. 그러면 일반적으로 Deployment 리소스를 생성할..
· Kubernetes
개인 로컬 환경에서 손쉽게 쿠버네티스 환경을 구성할 수 있는 방법을 알아보자. Steps Docker Desktop 설치 Kubernetes 사용 설정 Pod 생성해 보기 1. Docker Desktop 설치 Docker Desktop은 도커 환경을 쉽게 구성할 수 있게 도와주는 데스크톱 애플리케이션이다. 도커 설치법을 찾아보면 대게 Docker Desktop 설치가 가이드된다. 도커 데스크톱은 도커의 핵심이 되는 도커 엔진에 그리고 도커를 쉽게 사용하기 위한 GUI 툴 정도라고 이해하고 있다. Docker Desktop = Docker Engine + 이외의 유용한 기능들 이외의 유용한 기능들에 Kubernetes 클러스터를 구성할 수 있게 도와주는 게 포함되어 있다! Docker Desktop 설치 ..
· Kubernetes
Kubernetes를 Control 하기 위한 kubectl과 클러스터를 쉽게 전환하기 위한 kubectx를 알아보자. Steps kubectl kubectx OpenLens 1. kubectl kubernetes control의 준말이라고 알고 있고 나는 kube control이라고 부른다. 말 그대로 쿠버네티스를 컨트롤하기 위한 도구이다. 그리고 CLI 툴이다. 쿠버네티스는 컨테이너화된 워크로드와 서비스를 관리하기 위한 이식할 수 있고, 확장 가능한 오픈소스 플랫폼 뜬금없이 쿠버네티스의 정의를 가져왔지만 우리는 kubectl을 통해 쿠버네티스가 할 수 있는 모든 일들을 할 수 있다. kubectl 설치로 이동하면 각 환경에 맞는 kubectl 을 설치할 수 있게 가이드되어 있다. 2. kubectx ..
· MLOps
쿠버네티스 클러스터를 구축하는 방법은 여러 가지가 있다. 사용하고 있는 노트북 혹은 데스크톱의 CPU와 Memory가 충분하다면 로컬에 Docker Desktop을 이용하면 손쉽게 쿠버네티스 클러스터를 구축할 수 있다. 나는 로컬에 구축할 수 있다면 로컬에 올라간 클러스터를 사용하는 게 제일 간편하다고 생각한다. 하지만 나는 리소스가 충분하지 않았었다. 취업을 준비할 때 많은 기업에서 쿠버네티스를 사용한다고 하여 경쟁력을 높이기 위해 쿠버네티스를 공부하고자 했었지만 구축이 제일 큰 산이였었다. 집에 놀고 있던 데스크탑에 메모리를 추가로 구매해 서버로서 쿠버네티스를 구축하기도 하고 사용하던 노트북에 쿠버네티스를 구축하려고도 했지만 쉽지 않았다. 그러던 중 GCP에서 제공하는 GKE라는 서비스를 알게 되었고..
· MLOps
GCP의 Free Tier는 90일간 300불을 사용할 수 있다. 300불은 GKE를 구성한다면 한 20일 정도면 크레딧을 모두 사용하게된다. 따라서 구글 게정을 새로 생성하고 GKE를 구성하는 것은 공부하는 입장에서 반복적인 일이 되곤한다.. 따라서 Terraform을 이용해 이 과정을 자동화하였다. 아래의 자료는 복잡하고 길지만 실제로 GKE 클러스터를 생성하고 클러스터에 ArgoCD를 설치하기 까지의 과정은 간단하다. Quick Start 1. 1단계 수행 - GCP 프로젝트 생성 2. 레포지토리 clone git clone https://github.com/Ssuwani/provision-gke-with-terraform 3. project_id 입력 in terraform-provision-gk..
ssuwani
'Kubernetes' 태그의 글 목록