Ingress 정의 HTTP나 HTTPS를 통해 클러스터 내부의 서비스를 외부로 노출 기능 Service에 외부 URL을 제공 트래픽을 로드밸런싱 SSL 인증서 처리 Virtual hostring을 지정 구축순서 1. ingress-nginx.yaml 다운로드 링크 : https://kubernetes.github.io/ingress-nginx/deploy/#bare-metal-clusters root@master:~# wget https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.1.0/deploy/static/provider/baremetal/deploy.yaml --2021-12-01 15:19:15-- https://ra..
kube-proxy 정의 Kubernetes Service의 backend 구현 endpoint 연결을 위한 iptables 구성 nodePort로의 접근과 Pod 연결을 구현 (iptables 구성) kube-proxy mode userspace 클라이언트의 서비스 요청을 iptables를 거쳐 kube-proxy가 받아서 연결 kubernetes 초기버전에 잠깐 사용 iptables default kubernetes network mode kube-proxy service API 요청시 받아서 iptables 룰을 통해 연결 클라이언트 연결은 kube-proxy가 받아서 iptables 룰을 통해 연결 IPVS 리눅스 커널이 지원하는 L4 로드밸런싱 기술을 이용 별도의 ipvs 지원 모듈을 설정한 후..
Headless Service 정의 ClusterIP가 없는 서비스로 단일 진입점이 필요 없을 때 사용 Service와 연결된 Pod의 endpoint로 DNS 레코드가 생성됨 쿠버네티스 coreDNS에 등록되며 DNS resolving Service로 요청이 가능해진다. Pod의 DNS 주소: pod-ip-addr.namespace.pod.cluster.local 생성 사전에 Deployment를 먼저 생성하고 그 다음에 Service를 생성하여 묶어준다. root@master:~# cat > deploy-nginx.yaml apiVersion: apps/v1 kind: Deployment metadata: name: webui spec: replicas: 3 selector: matchLabels: ..
Service (서비스) 정의 동일한 서비스를 제공하는 Pod 그룹의 단일 진입점을 제공 파드들의 하나의 IP로 묶어서 관리를 해줌 Service 종류 ClusterIP selector의 label가 동일한 파드들의 그룹으로 묶어 단일 진입점 (Virtual_IP)을 생성 클러스터 내부에서만 사용가능 type 생략 시 default 값으로 10.96.0.0/12 범위에서 할당됨 생성 사전에 Deployment를 먼저 생성하고 그 다음에 Service를 생성하여 ClusterIP로 묶어준다. root@master:~# cat > deploy-nginx.yaml apiVersion: apps/v1 kind: Deployment metadata: name: webui spec: replicas: 3 selec..
