본문 바로가기
반응형

kubernetes7

[minikube] 쿠버네티스 네트워킹, 디스커버리를 이용한 MySQL 파드와 연동하기 (데이터베이스 연결) 쿠버네티스의 네트워킹과 서비스 디스커버리 이해하기쿠버네티스에서 네트워킹과 서비스 디스커버리는 컨테이너 간 통신을 가능하게 하는 핵심 메커니즘이다. 이 기능을 통해 분산된 마이크로서비스들이 서로를 찾고 통신할 수 있으며, 이는 현대적인 클라우드 네이티브 애플리케이션 구축의 필수 요소이다. 이 글에서는 쿠버네티스의 네트워킹 처리 방법과 서비스 디스커버리 작동 원리에 대해 자세히 알아보고 실제 적용 방법까지 다룬다.쿠버네티스 네트워킹의 기본 원리쿠버네티스에서 네트워킹은 애플리케이션 컨테이너가 서로 통신할 수 있도록 하는 중요한 기반이다. 이를 이해하기 위해서는 컨테이너 간 통신의 기본 개념을 먼저 알아야 한다.컨테이너 간 통신의 필요성애플리케이션을 개발할 때 다양한 서비스를 분리하여 배포하는 것이 일반적이다... 2025. 5. 1.
[minikube] 쿠버네티스 디플로이먼트(Deployment)를 이용한 롤링 베포, 롤백 가이드 (rolling, rollout) 쿠버네티스 Deployment(디플로이먼트) 이해와 활용 가이드쿠버네티스에서 Deployment는 포드를 관리하는 가장 일반적인 방법이다. 레플리카 세트의 기능을 확장하여 애플리케이션의 지속적인 배포와 업데이트를 가능하게 해주는 리소스이다. 이 글에서는 디플로이먼트의 개념, 구조, 그리고 실제 활용 방법에 대해 상세히 알아보도록 한다.디플로이먼트란 무엇인가디플로이먼트는 쿠버네티스에서 기본적으로 레플리카 세트를 관리하는 더 고급 수준의 컨트롤러이다. 레플리카 세트의 모든 기능을 포함하면서 추가로 롤링 업데이트와 롤백과 같은 배포 관련 기능을 제공한다. 가장 큰 장점은 가동 중지 시간 없이 애플리케이션을 업데이트할 수 있다는 점이다.디플로이먼트는 레플리카 세트를 생성하고 관리하며, 레플리카 세트는 포드를 생.. 2025. 4. 30.
[minikube] 쿠버네티스 레플리카셋(replicaset)을 이용한 무중단 베포 가이드 (고가용성 유지) ReplicaSet: Pod 수명 관리를 책임지는 컨트롤러1. ReplicaSet이란?Kubernetes에서 ReplicaSet은 특정 수의 Pod 복제본이 항상 실행되도록 보장해주는 **컨트롤러(controller)**이다. 만약 어떤 Pod가 종료되거나 장애로 인해 사라지더라도, ReplicaSet은 새로운 Pod를 자동으로 생성하여 원하는 개수를 유지한다.이는 특히 무중단 서비스 제공과 고가용성(HA, High Availability) 확보에 필수적인 요소다.2. 왜 필요한가?Kubernetes에서는 Pod 자체는 일시적인 존재다. 다음과 같은 상황을 생각해보자.Pod가 예기치 않게 종료되면 수동으로 다시 띄워야 할까?서비스 확장을 위해 Pod 수를 늘리고 싶다면 어떻게 해야 할까?이러한 반복적이고.. 2025. 4. 30.
[minikube] 쿠버네티스 Queue 파드 및 서비스 배포 가이드 쿠버네티스에서 ActiveMQ(Queue) 포드 및 서비스 배포 가이드이번 시간에는 여러분이 직접 ActiveMQ(Queue) 서비스를 쿠버네티스에 포드와 서비스로 배포하는 방법을 실습해보겠다.1. 실습 개요필요한 이미지는 richardchesterwood/k8s-fleetman-queue:release1이다.release1 태그를 사용하는 이유는 프로토타입과 구분되는 실제 릴리스 환경에서만 큐가 동작하도록 하기 위함이다.포드가 실행 중일 때 8161 포트로 큐 관리 콘솔이 노출된다.관리 콘솔의 기본 아이디와 비밀번호는 각각 admin, admin이다.NodePort로 8161 포트를 직접 노출하는 것은 권장되지 않으나, 현재는 로컬 환경이므로 30010 포트로 노출한다.포트 번호는 30000~32767.. 2025. 4. 27.
[minikube] 쿠버네티스 서비스(Service) 구조와 실행 Kubernetes에서 Service란? – Pod를 외부로 노출하는 방법앞선 강의에서는 Kubernetes 클러스터 안에 첫 번째 Pod를 만들어보고, 그 안에 웹 애플리케이션 컨테이너를 배포했습니다. 하지만 그 상태에서는 웹 브라우저로 아무리 접근해도 연결되지 않았습니다. 왜 그럴까요?그 이유는 Pod는 기본적으로 외부에서 접근할 수 없도록 설계되어 있기 때문입니다. 이 제한을 해결하기 위해 Kubernetes는 Service라는 리소스를 제공합니다.왜 Service가 필요한가?Kubernetes에서 Pod는 수명이 짧고 가볍게 쓰고 버리는 존재입니다. 특정 Pod가 중단되면, Kubernetes는 새롭게 동일한 Pod를 생성합니다. 이 과정에서 IP 주소도 바뀌게 됩니다. 이렇게 계속 바뀌는 Pod.. 2025. 4. 8.
[minikube] 쿠버네티스 포드(pod) 구조와 실행 쿠버네티스 포드(Pod)란 무엇인가쿠버네티스(Kubernetes)를 본격적으로 사용하기 전, 가장 기본적인 개념인 포드(Pod)부터 이해해봅니다.포드는 쿠버네티스에서 가장 작고 기본적인 배포 유닛으로, 하나 또는 그 이상의 컨테이너를 감싸는 추상화된 단위입니다. 포드는 왜 중요한가?마이크로서비스 아키텍처에서는 여러 개의 컨테이너를 배포해야 합니다.도커(Docker)만 사용한다면 각각의 컨테이너를 수동으로 관리해야 하는데, 이는 매우 번거로운 작업입니다.쿠버네티스는 이러한 컨테이너를 효율적으로 배포하고 관리할 수 있도록 '포드'라는 개념을 도입했습니다.포드의 구성공식 문서에 따르면, 포드는 다음과 같은 구성 요소를 가집니다:하나 이상의 컨테이너 (주로 도커 기반)공유 스토리지 및 네트워크실행 방법이 정의된.. 2025. 4. 8.
[minikube] Kubernetes 실습을 위한 Minikube 설치 가이드 (Mac / Windows / Linux) 이글은 Minikube를 다양한 운영체제(Mac / Windows / Linux)에서 가장 간편하게 설치하는 방법을 설명합니다.필자는 Mac OS기반에서 설치했습니다. 1. 쿠버네티스 개요컨테이너란?컨테이너는 애플리케이션(프로그램)과 그 프로그램을 실행하는 데 필요한 모든 라이브러리, 설정 파일, 의존성 등을 하나로 묶은 실행 단위입니다.쉽게 말해, "앱이 어디서든 잘 실행되게 하기 위한 일회용 독립 상자"입니다.컨테이너 = 앱 + 실행환경 + 설정격리된 공간에서 돌아가기 때문에, 다른 앱과 충돌 없이 실행됨실행 속도가 빠르고, 가볍고, 효율적임클라우드에 배포하기 좋고, 실수로 깨지는 일이 적음가장 대표적인 컨테이너 실행 환경은 Docker입니다.쿠버네티스(Kubernetes)란?Kubernetes(줄여.. 2025. 4. 8.