쿠버네티스 기초
쿠버네티스 기초
인그레스(Ingress)
- 인그레스 트래픽
* 외부에서 서버로 유입되는 트래픽
- 인그레스
외부 요청을 어떻게 처리할 것인지 네트워크 7계층 레벨에서 정의하는 쿠버네티스 오브젝트이다.
외부 요청 라우팅
/apple, /apple/red 등과 같이 특정 경로로 들어온 요청을 어떠한 서비스로 전달할지 정의하는 라우팅
* 가상호스트 기반의 요청 처리
같은 IP에 대해 다른 도메인 이름으로 요청이 도착했을 때 어떻게 처리할 것인지 정의
* SSL/TLS 보안 연결 처리
여러 개의 서비스로 요청을 라우팅할 때, 보안 연결을 위한 인증서를 쉽게 적용
# ingress 리스트 확인
kubectl get ingress
# ingress 적용
kubectl aaply -f file.yaml
# 간단한 ingress 예제
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: ingress-example
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /
kubernets.io/ingress.class: "nginx"
spec:
rules:
- host: alicek106.example.com
http:
paths:
- path: /echo-hostname
backend:
serviceName: hostname-service
servicePort: 80
- host: 해당 도메인 이름으로 접근하는 요청에 대해서 규칙을 적용
- path: 해당 경로에 들어온 요청을 어느 서비스로 전달할 것인지 정의
- serviceName, servicePort: path로 들어온 요청이 전달된 서비스와 포트
annotion은 인그레스의 추가적인 기능을 사용할 수 있다.
- 인그레스 트래픽
* 외부에서 서버로 유입되는 트래픽 - 인그레스
외부 요청을 어떻게 처리할 것인지 네트워크 7계층 레벨에서 정의하는 쿠버네티스 오브젝트이다.
외부 요청 라우팅
/apple, /apple/red 등과 같이 특정 경로로 들어온 요청을 어떠한 서비스로 전달할지 정의하는 라우팅
* 가상호스트 기반의 요청 처리
같은 IP에 대해 다른 도메인 이름으로 요청이 도착했을 때 어떻게 처리할 것인지 정의
* SSL/TLS 보안 연결 처리
여러 개의 서비스로 요청을 라우팅할 때, 보안 연결을 위한 인증서를 쉽게 적용
# ingress 리스트 확인
kubectl get ingress
# ingress 적용
kubectl aaply -f file.yaml
# 간단한 ingress 예제
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: ingress-example
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /
kubernets.io/ingress.class: "nginx"
spec:
rules:
- host: alicek106.example.com
http:
paths:
- path: /echo-hostname
backend:
serviceName: hostname-service
servicePort: 80
- host: 해당 도메인 이름으로 접근하는 요청에 대해서 규칙을 적용
- path: 해당 경로에 들어온 요청을 어느 서비스로 전달할 것인지 정의
- serviceName, servicePort: path로 들어온 요청이 전달된 서비스와 포트
annotion은 인그레스의 추가적인 기능을 사용할 수 있다.
인그레스만 적용해서는 아무일이 일어나지 않는다. 인그레스는 선언적인 오브젝트일 뿐이기 때문에
인그레스 컨트롤러(Ingress Controller)라고 하는 특수한 서버에 적용해야만 그 규칙을 사용할 수 있다.
인그레스 컨트롤러
대표적으로 Nginx 웹 서버 인그레스 컨트롤러가 있다.
- Kong API 게이트웨이, GKE 등의 클라우드 플랫폼에서 제공되는 인그레스 컨트롤러가 있다.
Author And Source
이 문제에 관하여(쿠버네티스 기초), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@noose/쿠버네티스-고급저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)