Ingress-nginx

Ingress-nginx

728x90

# Ingress-nginx 개요

- 버추얼 박스를 활용하여 구성하기

- nginx 가 ALB를 구현해 준다고 보면 됨

# Ingress-nginx 구성 확인과 간단한 환경 구성

kubectl get nodes kubectl create deployment http-go --image gasbugs/http-go kubectl get pod

# 외부로 expose 하기

kubectl expose deployment http-go --port=8080 --type=NodePort

- 포트확인하는 방법

kubectl get svc

- G 클라우드에서 할경우 방화벽 오픈 해야함

gcloud compute firewall-rules create http-go-svc-rule --allow=tcp:32410

# 서비스 확인하기

- ip 정보 확인하기 : 마스터 노드의 ip정보 확인하기

kubectl get nodes -o wide curl 10.106.106.155:32410

- 베어메탈에 ingress-nginx 설치

- 구글 클라우드에 붙여넣기

kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.0.0/deploy/static/provider/baremetal/deploy.yaml

# 실행된 서비스 찾기

- 실행된 목록에서 서비스를 상세히 보기

kubectl get service/ingress-nginx-controller -n ingress-nginx

NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE ingress-nginx-controller NodePort 10.112.7.152 80:31755/TCP,443:32387/TCP 2m47s

- ingress 룰 생성하기

apiVersion: extensions/v1beta1 kind: Ingress metadata: name: http-go-ingress annotations: nginx.ingress.kubernetes.io/rewrite-target: / spec: rules: - host: gasbugs.com http: paths: - path: /hostname backend: serviceName: http-go servicePort: 8080

vim http-go-ingress.yaml kubectl create -f ttp-go-ingress.yaml

# 연결상태 확인하기

kubectl get svc -n ingress-nginx ingress-nginx-controller

# 연결상태에서 확인된 80 포트의 연결포트를 열어준다.

gcloud compute firewall-rules create ingress-svc-rule --allow=tcp:31755

# 서비스 확인하기

kubectl get nodes -o wide curl 34.64.185.51:32410

- 404 에러가 뜨면 정상적으로 서비스가 연결된 것이라고 볼 수 있다.

# etc/hosts 에서 도메인 추가하기

sudo vim /etc/hosts 34.64.185.51 gasbugs.com curl gasbugs.com:31755/hostname

- 실행을 한다면 결과값을 볼 수 있다.

728x90

공유하기 글 요소 저작자표시

from http://may9noy.tistory.com/269 by ccl(A) rewrite - 2021-09-20 16:00:28