반응형

Container Orchestration 47

Kubernetes Ingress란? (클러스터 외부 트래픽 관리)

Overview오늘은 Kubernetes Ingress에 대해 학습하고 정리해보겠다. Ingress는 클러스터 외부에서 내부 서비스로 HTTP 및 HTTPS 트래픽을 관리하는 핵심 컴포넌트이다. Kubernetes에서 외부 트래픽을 내부 서비스로 안전하고 효율적으로 라우팅하는 가장 핵심적인 리소스 중 하나가 바로 Ingress다. 단순히 외부 접근을 허용하는 것을 넘어서, 트래픽의 흐름을 제어하고, SSL 종료, 도메인 기반 라우팅, URL path 기반 매핑 등 다양한 기능을 제공한다.개발/운영 환경에서는 서비스가 많아질수록 URL 및 도메인 기반 라우팅이 필요해지며, 이때 Ingress를 적절히 활용하면 관리 복잡도를 줄이고 보안을 향상시킬 수 있다. 이 글에서는 Ingress의 개념, 역할, 설정 ..

Kubernetes Probe (Liveness, Readiness, Startup)

Overview Kubernetes에서 애플리케이션의 안정적인 운영을 위해 중요한 개념 중 하나가 바로 Probe이다.클러스터를 구축하거나 배포 설정을 하다 보면 liveness, readiness, startup 같은 Probe 설정을 자주 마주하게 된다. Probe는 단순히 컨테이너가 살아 있는지뿐만 아니라, 서비스 요청을 받을 준비가 되었는지, 기동이 완료되었는지 등 다양한 상태를 세밀하게 감지해준다.이러한 Probe를 적절히 구성하면 장애 회복 속도 개선, 잘못된 트래픽 분산 방지, 무한 재시작 루프 방지 등의 효과를 얻을 수 있다. 이 글에서는 Kubernetes에서 지원하는 Probe의 개념과 종류, 각각의 용도와 동작 방식을 실무적 관점에서 정리해본다.            Probe란?Pro..

Kubernetes 컨테이너 이미지 생성하기

Overview 컨테이너 이미지를 만들어 보자.Kubernetes에서 애플리케이션을 서비스하려면 반드시 컨테이너화된 앱, 즉 컨테이너 이미지가 필요하다.  이 문서에서는 간단히 hello +  서버의 hostname을 출력하는 웹 애플리케이션을 Docker로 만들어보고, 이후 쿠버네티스에서 사용할 수 있도록 준비한다. hostname을 출력하는 이유는, 나중에 로드밸런싱이나 Pod 변경 시 어떤 인스턴스가 응답하는지 확인하기 위함이다.   개발 목표웹서버: Apache + CGI언어: Python로직: "hello + hostname" 출력 위와 같은 컨테이너 이미지를 만들자.        Docker 환경 준비 빌드 머신 준비목적: Docker CLI로 컨테이너 이미지 빌드crictl은 이미지 빌드를 ..

Kubernetes 클러스터 구축하기(kubespray)

OverviewKubernetes 클러스터를 구성하는 방법에는 여러 가지가 있지만, Kubespray는 특히 프로덕션 환경에서 사용하기에 적합한 Ansible 기반의 자동화 설치 도구이다.이 글에서는 Debian 기반의 KVM 환경에서 Kubespray를 사용해 v1.23.6 버전의 Kubernetes 클러스터를 설치하는 전 과정을 다룬다.VM 생성, containerd 설치, 사전 네트워크 설정, Ansible 환경 구성, SSH 인증, 인벤토리 설정, 클러스터 구성 등 실습 위주로 단계별로 설명한다.특히 kubeadm 방식보다 더 복잡하지만 유연한 구성이 가능하다는 점에서 Kubespray는 중급 이상의 Kubernetes 사용자에게 강력한 도구가 된다. Kubespray 도구를 사용하여 현 최신버전..

Kubernetes 클러스터 구축하기(kubeadm)

Overview Kubernetes는 다양한 클라우드 환경과 온프레미스 환경에서 확장성과 신뢰성을 제공하는 컨테이너 오케스트레이션 플랫폼이다.이번 글에서는 kubeadm을 활용하여 직접 Kubernetes 클러스터를 구성하는 과정을 자세히 다룬다. 운영체제 설치부터 VM 생성, containerd 설정, kubeadm 초기화, Calico 네트워크 설치, 워커 노드 조인까지 실제 환경 구축에 필요한 모든 절차를 실습 중심으로 설명한다.  특히, Kubeadm을 활용한 클러스터 구축은 프로덕션 환경에서도 안정적으로 적용 가능하며, 이를 통해 Kubernetes의 구조와 작동 원리에 대한 깊은 이해를 쌓을 수 있다.    2022.05 기준  버전OS : Debian 11.3 Bullseyekubernete..

쿠버네티스 배포 도구 : Kubeadm vs Kubespray vs Kops

Overview 오늘은 쿠버네티스의 클러스터를 설정하는 도구인 Kubeadm 과 Kubespray 그리고 Kops 차이를 알아보고자 한다.먼저, 많은 웹 사이트의 Article에서는, Kubeadm는 quick start를 위해서 사용하기 좋고, Kubespray는 production 레벨에서 적용할 수 있는 솔루션이라고 말하고 있다. 또한, 배포 프로세스를 용이하게 하기 위해 `Kops` , `Kubeadm` , `Kubespray` 또는 `Kubo` 와 같은 여러 도구 를 사용할 수 있다 .  차트는 Mermaid Live Editor를 활용해서 그렸다.         Kubeadm  vs Kubespray vs Kops        Kops핵심 Kubernetes 팀에서 유지 관리하는 kops의 가..

Kubernetes 개념과 Minikube 실습

OverviewKubernetes(쿠버네티스)는 컨테이너화된 애플리케이션을 관리하는 오픈소스 플랫폼이다.이를 통해 컨테이너 기반 애플리케이션의 배포, 확장, 운영을 자동화할 수 있으며, 확장성, 유연성, 높은 가용성을 제공한다.본 문서에서는 Kubernetes의 개념, 특징, 아키텍처, 그리고 Minikube를 활용한 실습 과정을 정리한다.        1. Kubernetes 개념과 특징, 아키텍처  1) 개념Kubernetes는 컨테이너를 효율적으로 관리하고, 배포/확장/운영을 자동화하는 컨테이너 오케스트레이션 플랫폼이다.다양한 환경(클라우드, 온프레미스, 하이브리드)에서 컨테이너 애플리케이션을 안정적으로 실행할 수 있도록 지원한다.   2) 특징 다양한 배포 방식 지원Deployment, State..

반응형