2025/04 5

Kubernetes (4)

Kubernetes의 배포 전략과 컨트롤러 이해하기DeploymentDeployment는 쿠버네티스에서 애플리케이션의 배포와 업데이트를 관리하는 핵심 컨트롤러다. 이를 통해 ReplicaSet의 생성 및 관리부터 애플리케이션 업데이트와 롤백까지 선언적으로 수행할 수 있다. Deployment를 사용하면 Pod 및 ReplicaSet을 명시적으로 생성할 수 있으며, 쿠버네티스 컨트롤 플레인은 현재 상태를 지속적으로 모니터링하여 원하는 상태로 유지한다.Deployment의 주요 기능은 다음과 같다.Pod와 ReplicaSet의 생명주기를 자동으로 관리한다.다양한 애플리케이션 배포 전략을 지원한다.문제가 발생했을 때 이전 버전으로 롤백하는 기능을 제공한다.애플리케이션의 확장성과 스케일링을 자동화한다.Deplo..

기록/Kubenetes 2025.04.14

컨테이너와 가상 머신(VM)

개요쿠버네티스에 대한 정보를 찾아보다가 문득 다음 글을 눈에 띄었다. 컨테이너와 VM의 차이는 무엇일까?도커를 자주 사용해왔고 최근에는 vm도 다루기 시작했지만 이 차이를 설명할 정도로 이에 대해 이해하지 못하고 있었다. 그래서 이번에는 이들에 대해 알아보고자 한다!가상 머신(Virtual Machine)의 구조와 작동 방식가상 머신의 정의가상 머신은 물리적인 하드웨어 위에 하이퍼바이저(Hypervisor)를 설치하고, 그 위에 각기 다른 운영 체제(Guest OS)를 설치하여 독립적인 실행 환경을 제공한다. 각 VM은 자체적인 커널과 사용자 공간을 가지며, 물리적 하드웨어를 가상화하여 사용한다.사용자 공간과 커널 공간의 활용커널 공간: 각 VM은 자체 운영 체제를 포함하므로, 고유의 커널 공간을 가진..

Kubernetes (3)

Objects - Namespace, ResourceQuota, LimitRange쿠버네티스 클러스터에서 자원 관리는 핵심적인 요소다. 기본적으로 쿠버네티스의 컨테이너는 제한 없이 클러스터 자원을 사용할 수 있어 한 애플리케이션이 전체 클러스터 자원을 독점할 위험이 있다. 이런 문제를 해결하기 위해 쿠버네티스는 Namespace, ResourceQuota, LimitRange라는 세 가지 핵심 오브젝트를 제공한다. 이 글에서는 이 세 가지 오브젝트의 개념, 활용법, 그리고 실제 구현 방식에 대해 자세히 알아본다.Namespace 이해하기네임스페이스는 쿠버네티스 클러스터 내에서 논리적으로 자원을 분리하는 가상 클러스터다. 네임스페이스를 통해 여러 팀이나 프로젝트가 동일한 클러스터를 공유하면서도 각자의 자원..

기록/Kubenetes 2025.04.11

Kubernetes (2)

개념 정리쿠버네티스의 핵심 개념인 Pod, Service, Volume, ConfigMap 및 Secret을 중심으로 이해하기 쉽게 정리해보고자 한다!Pod - Container, Label, NodeSchedulePod의 기본 개념Pod는 쿠버네티스에서 배포할 수 있는 가장 작은 단위로, 하나 이상의 컨테이너를 포함한다. 같은 Pod 내의 컨테이너들은 스토리지와 네트워크를 공유하며 서로 로컬호스트처럼 통신할 수 있다.노드 스케줄링쿠버네티스는 자동으로 Pod를 노드에 배치하지만, 특정 노드에 Pod를 배치해야 하는 경우가 있다. 이를 위한 방법으로는:nodeSelector: Pod 명세의 spec 섹션에 특정 레이블을 가진 노드를 지정하는 방법Node Affinity: 노드 선택에 더 유연한 표현식을 제..

기록/Kubenetes 2025.04.10

Kubernetes (1)

쿠버네티스쿠버네티스(Kubernetes)는 컨테이너화된 애플리케이션의 배포, 확장, 관리를 자동화하고 조율하기 위한 오픈소스 플랫폼이다. 구글이 개발한 이 시스템은 일주일에 수십억 개의 컨테이너를 생성하고 관리하던 경험을 바탕으로 만들어졌으며, 현재는 클라우드 네이티브 컴퓨팅 재단(CNCF)에서 관리하고 있다. 흔히 'K8s'라고도 불리는데, 이는 'K'와 's' 사이에 8개의 문자가 있다는 의미에서 비롯되었다.쿠버네티스 아키텍처 구성요소클러스터(Cluster)클러스터는 쿠버네티스의 가장 기본적인 단위로, 노드라고 불리는 머신들의 집합이다. 이 클러스터는 컨테이너화된 애플리케이션을 실행하며, 컴퓨팅 리소스를 공유하여 애플리케이션의 배포와 관리를 담당한다.마스터 노드(Master Node/Control P..

기록/Kubenetes 2025.04.08
728x90
반응형