본문 바로가기
[K8s] 가상 IP 및 서비스 프록시 https://kubernetes.io/ko/docs/reference/networking/virtual-ips/쿠버네티스 클러스터의 모든 노드는 kube-proxy를 실행한다(kube-proxy를 대체하는 구성요소를 직접 배포한 경우가 아니라면).kube-proxy는 ExternalName 외의 type의 서비스를 위한 가상 IP 메커니즘의 구현을 담당한다.항상 발생하는 질문은, 왜 쿠버네티스가 인바운드 트래픽을 백엔드로 전달하기 위해 프록시에 의존하는가 하는 점이다. 다른 접근법이 있는가? 예를 들어, 여러 A 값 (또는 IPv6의 경우 AAAA)을 가진 DNS 레코드를 구성하고, 라운드-로빈 이름 확인 방식을 취할 수 있는가?There are a few reasons for using proxyin.. 2025. 6. 18.
[K8s] Controler-node ip가 변경될 경우 1. /etc/kubernetes/manifest 아이피 변경/etc/kubernetes/manifest 하위 대상cd /etc/kubernetes/manifestsudo find . -type f -exec sed -i 's/192.168.137.30/192.168.56.30/g' {} +2. 인증서 재생성기존 X.509 인증서 중 재생성이 필요한 인증서를 지운 후 재생성출처: https://github.com/kubernetes/kubeadm/issues/338?ref=jangho.io#issuecomment-407383077cd /etc/kubernetes/pki# apiserver 인증서 삭제sudo rm apiserver.{crt,key} # a. Default CIDR이 10.96.0.0/1.. 2025. 6. 18.
install kubenetes 보호되어 있는 글 입니다. 2025. 3. 4.
쿠버네티스 스토리지 컨테이너 환경에서 별도 설정을 하지 않으면 데이터는 호스트 노드의 임시 디스크(ephemeral disk)에 보관된다.컨테이너를 삭제하면 임시 디스크에 있는 데이터는 저장되지 않고 컨테이너와 함께 삭제된다.이러한 문제를 쿠버네티스에서는 파드와 데이터를 분리해서 영구 볼륨이라는 별도의 추상화된 리소스로 해결한다. 쿠버네티스 볼륨 구성 주요 리소스영구 볼륨(PV, PersistentVolume)영구볼륨 요청자(PVC, PersistentVolumeClaim)스토리지 클래스(StorageClass)오픈소스 OpenEBS 로컬 호스트패스를 이용해 스토리지 클래스를 만들고 스토리지 관련 설정을 YAML로 작성해보자.apiVersion: v1kind: Podmetadata: name: busyboxspec: c.. 2024. 2. 26.
MetalLB를 이용한 로드밸런서 타입 서비스 구축 노드포트 타입 서비스는 외부 클라이언트에서 접속했을 때 특정 도메인이 아닌 특정 노드가 실제로 사용하는 IP 주소를 지정해서 접속한다.하지만 노드 IP는 변경될 수 있고, 80, 443 등 기본 포트가 아닌 특수 포트 30000 ~ 32767 중 하나의 포트를 사용해야 하므로 실제 서비스에 적응하기는 어렵다.이를 해결하기 위해 쿠버네티스는 부하분산이 가능한 로드밸런서 타입의 서비스를 제공한다. NodePort: 100.2.3.4:30000 접속Load-Balancer: http(s)://www.myweb.com 접속 *퍼블릭 클라우드에서는 로드밸런서를 사용하면 추가 비용이 발생하기 때문에 주로 Ingress를 사용해 비용을 절감한다. 대표적인 LB 솔루션은 MetalLB와 Porter가 있다. (둘 다 .. 2024. 2. 23.
kube-proxy 부하분산 설정의 이해 모든 쿠버네티스 서비스는 기본 설정으로 부하분산을 지원한다. 쿠버네티스의 모든 노드에서 실행 중인 kube-proxy 파드는 노드 내에서 실행 중인 모든 파드의 네트워크 트래픽을 처리한다. kube-proxy는 쿠버네티스 서비스와 연동해서 파드의 모든 인그레스(Ingress), 이그레스(egress) 통신을 처리한다. kube-proxy는 기본 설정으로 IPVS(IP Virtual Server) 모드로 동작한다.kube-proxy 모드 관련 설정은 kube-proxy 설정 파일인 컨피그맵에서 확인 가능하다.kubectl describe cm -n kube-system kube-proxy...mode: ipvs... #파드의 수량을 5개로k scale deployment nginx-hello --repli.. 2024. 2. 23.