Kubernetes 사용 ingress - nginx
설치 하 다.
ingress - nginx 는 ingress 의 실현 이다. 현 재 는
kubernetes
프로젝트 아래 에 놓 여 있다. 이 를 통 해 친아들 이 라 고 할 수 있 지만 업데이트 빈도 도 매우 높다. 게다가 예전 에 다른 환경 에서 nginx 를 사용 하 는 장면 도 많아 서 생각 하지 않 고 많이 사용 했다 고 생각한다.내 가 ingress - nginx 를 설 치 했 을 때 최신 버 전 은
0.16.2
이 었 다.먼저 문서 에 따라 먼저 설치 mandatory.yaml
:kubectl apply -f \
https://raw.githubusercontent.com/kubernetes/ingress-nginx/nginx-0.16.2/deploy/mandatory.yaml
이 단계 에서 다음 과 같은 일 을 했다.
ingress-nginx
namespace 이것 도 신기 한 조작 이다. ingress 야 말로 서 비 스 를 진정 으로 외부 에 노출 시 키 는 자원 이지 만 사실은 오히려
service
서 비 스 를 최종 적 으로 노출 시 키 는 임 무 를 완성 했다.여기 서 우 리 는 여러 가지 선택 을 할 수 있다.서 비 스 를 특정한 포트 를 통 해
NodePort
사용 하거나:apiVersion: v1
kind: Service
metadata:
name: ingress-nginx
namespace: ingress-nginx
spec:
type: NodePort
ports:
- name: http
port: 80
targetPort: 80
protocol: TCP
- name: https
port: 443
targetPort: 443
protocol: TCP
selector:
app: ingress-nginx
또는
externalIPS
를 사용 하여 service
특정한 IP 를 통 해 직접 노출 시 킵 니 다.apiVersion: v1
kind: Service
metadata:
name: ingress-nginx
namespace: ingress-nginx
spec:
externalIPs:
-
ports:
- name: http
port: 80
targetPort: 80
protocol: TCP
- name: https
port: 443
targetPort: 443
protocol: TCP
selector:
app: ingress-nginx
여기 서 제 가 사용 하 는 것 은 두 번 째 입 니 다. 이렇게 드 러 난 서 비 스 는 더욱 깨끗 합 니 다.
그리고 작업 여 부 를 테스트 해 보 세 요.
curl http://
404 설명 이 기본 백 엔 드 로 연결 되 었 습 니 다.
외부 서비스 노출
그리고 우 리 는
ingress
우리 의 자바 서 비 스 를 경로 /api
에 노출 시 킵 니 다.apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: openbayes-server-ing
annotations:
nginx.ingress.kubernetes.io/ssl-redirect: "false"
spec:
rules:
- http:
paths:
- path: /api
backend:
serviceName: openbayes-server-svc
servicePort: 80
kubectl apply -f ingress.yaml
그리고 이 api 를 정상적으로 방문 할 수 있 는 지 다시 시도 해 보 세 요.
annotation 을 사용 하여 특정 서 비 스 를 설정 합 니 다.
기본 nginx 설정 은 서비스 에 적합 하지 않 습 니 다. Nginx Configuration 에 방문 하면 ingress - nginx 가 제공 하 는 세 가지 nginx 설정 방식 을 볼 수 있 습 니 다.그 중에서 ConfigMaps 는 nginx 기본 설정 에 대한 수정 을 실현 할 수 있 습 니 다.ingress annotation 은 특정 ingress 를 설정 할 수 있 습 니 다.
예 를 들 어 우리
curl http:///api
는 파일 을 업로드 하 는 수요 가 있 고 기본 적 인 요청 크기 는 /api
로 파일 업로드 오류 1m
를 초래 할 수 있 습 니 다. 주석 추가 413
를 통 해 요청 크기 제한 을 지정 할 수 있 습 니 다.apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: openbayes-server-ing
annotations:
nginx.ingress.kubernetes.io/proxy-body-size: "1024m"
nginx.ingress.kubernetes.io/ssl-redirect: "false"
spec:
rules:
- http:
paths:
- path: /api
backend:
serviceName: openbayes-server-svc
servicePort: 80
ingress 를 수정 할 때마다 nginx - ingress - controller 는 nginx. conf 를 기본적으로 업데이트 하고 즉시 효력 이 발생 합 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.