WEB BE Repository/kubernetes, k8s 3

[쿠버네티스 튜토리얼] 3. 서비스 노출: ClusterIP, NodePort, Ingress

Kubernetes에서 Service(서비스) 객체는 Pod들의 논리적인 집합에 단일 접근 포인트(IP 및 DNS 이름)을 제공하는 역할을 한다.앞서 Deployment로 Nginx Pod 여러 개를 띄웠다면, 클라이언트가 그중 어떤 Pod에 접속해야 할지 알기 어렵다.Service를 사용하면 여러 Pod들을 하나의 서비스로 묶고, 부하 분산(Load Balancing) 및 서비스 디스커버리(DNS)를 제공할 수 있다. Kubernetes에는 몇 가지 서비스 유형(Service Types)이 있다.ClusterIP (기본값)클러스터 내부에서만 접근 가능한 가상 IP를 부여한다.내부 서비스 용도로 사용된다.NodePort각 Node의 IP에서 정해진 포트를 열어, 외부에서 노드IP:포트로 접근할 수 있게 ..

[쿠버네티스 튜토리얼] 2. Deployment 생성과 ReplicaSet 이해

Deployment는 Kubernetes에서 애플리케이션의 배포(Deployment)와 업데이트를 관리하는 상위 리소스이다.Deployment를 생성하면 Kubernetes는 자동으로 ReplicaSet이라는 객체를 만들고, ReplicaSet이 정의된 수만큼 Pod를 생성하여 애플리케이션을 실행한다.Deployment를 통해 롤링 업데이트, 자동 복구, 배포 이력관리 등이 가능하며, 운영 환경에서 주로 사용된다.ReplicaSet은 말 그대로 Pod 레플리카(복제본) 집합을 관리하는 객체이다.“이런 Pod를 N개 running 시켜라”라는 역할을 하며, 자체적으로는 수평 확장만 관리할 뿐 업데이트 전략 등은 없다.Deployment가 ReplicaSet을 감싸서 관리한다고 이해할 수 있다. 요약하면, ..

[쿠버네티스 튜토리얼] 1. k3s로 배워보자.

서비스를 배포할 때, 롤링/카나리/블루 그린같은 무중단 배포 전략을 고려하다 보면, 자연스레 컨테이너를 다루는 방식으로 손이 가게 된다. 현재 진행하고 있는 프로젝트 Pinit의 경우, MSA로 구성되어 있어서, 무중단 배포를 위한 전략을 쉽게 선택할 수 있는 도구가 필요했다. 이때, 도커 컴포즈와 쿠버네티스를 보통 이야기하는데, 이번 기회에 쿠버네티스를 한번 쭉 써보면서 MSA의 인프라 구성에 대해 이해하고자 다음과 같이 튜토리얼을 시작했다. k3s는 Rancher사가 배포한 경량 Kubernetes로, 리소스가 적은 환경이나 로컬 실습에 적합하다.k3s는 설치가 매우 간단하며, 단일 바이너리에 Kubernetes의 핵심 기능을 모두 포함하고 있다.이 섹션에서는 Ubuntu 20.04+ 환경에 k3..