https://kubernetes.io/ko/docs/concepts/services-networking/ingress/
인그레스는 클러스터 내의 서비스에 대한 외부 접근을 관리하는 API 오브젝트이다.
일반적으로는 HTTP프로토콜 통한 접근을 관리함. HTTP기반 네트워크 서비스를 쿠버네티스에서 이용하기 위해선 HTTP프로토콜의 개념들(URI, path, hostname 등)을 어디선가는 이해하고 소통할 수 있어야 한다. 바로 Ingress 오브젝트가 쿠버네티스 API를 통해 정의한 룰 기반으로, 외부 백엔드와 소통할 수 있게 해주는 역할을 한다.
인그레스는 로드 밸런싱, SSL 종점, 명칭 기반의 가상 호스팅을 제공함.
💡 Ingress는 이제 더이상 기능 확장이 없다. (Ingress is frozen) 네트워크 관련한 추가 기능은 이제 Gateway API에 추가된다.
노드: 쿠버네티스에 속한 워커 머신, 클러스터에 속해 있음.
클러스터: 쿠버네티스에서 관리되는 컨테이너화 된 애
에지 라우터(Edge router): 클러스터에 방화벽 정책을 적용하는 라우터. 쿠버네틱스에 속한게 아니라 클라우드 공급자 또는 물리적 게이트웨이일 수 있음.
클러스터 네트워크(Cluster network): 쿠버네티스 네트워킹 모델에 따라 클러스터 내부에서 통신을 용이하게 하는 논리적 / 물리적 링크 집합.
서비스: 레이블 셀렉터를 사용해 파드 집합을 식별하는 쿠버네티스 서비스. 서비스는 클러스터 네크워크 내에서만 라우팅 가능한 가상 IP를 갖고 있다고 가정.
다음의 예를 보자. 인그레스가 모든 트래픽을 하나의 서비스로 보내는 그림임.