티스토리 뷰
https://subicura.com/k8s/guide/ingress.html
Ingress
도메인을 이용하여 서로 다른 서비스에 접근하는 방법을 알아봅니다.
subicura.com
서비스 (NodePort) 의 문제는 서비스 당 하나의 포트만 오픈할수 있기 때문에 서비스가 늘어날수록 관리가 어려워진다.
예를들어 하나의 클러스터에서 서비스가 여러개라면 NodePort를 이용하면 서비스 갯수만큼 포트를 열고 사용자에게 노출시켜야 한다.
Ingress
Ingress 는 도메인,경로 별로 서비스에 분기를 나눠서 접근하게 할 수 있다.
minikube Ingress 활성화
Ingress는 Pod, ReplicaSet, Deployment, Service 와 달리 별도의 컨트롤러를 설치해야 한다.
minikube ingress 활성화
minikube addons enable ingress
에러발생시
(https://tose33.tistory.com/1356)
echo-v1.yml
# ingress/echo-v1
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: echo-v1
spec:
rules:
- host: v1.echo.172.24.225.84.sslip.io # 이 도메인으로 접속하면
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: echo-v1 # 이 서비스로 요청을 보내라
port:
number: 3000
--- # deployment/echo-v1
apiVersion: apps/v1
kind: Deployment
metadata:
name: echo-v1
spec:
replicas: 3
selector:
matchLabels:
app: echo
tier: app
version: v1
template:
metadata:
labels:
app: echo
tier: app
version: v1
spec:
containers:
- name: echo
image: ghcr.io/subicura/echo:v1
livenessProbe:
httpGet:
path: /
port: 3000
--- # service/echo-v1
apiVersion: v1
kind: Service
metadata:
name: echo-v1
spec:
ports:
- port: 3000
protocol: TCP
selector:
app: echo
tier: app
version: v1
- Ingress 에서 spec.rules.host 에 명시된 도메인으로 접속 시 아래 path 에 명시된 service 로 요청을 보내게 된다.
- ip는 클러스터의 ip를 명시해줘야 한다 (여기서는 minikube 의 ip 이므로 minikube ip 로 확인)
ingress의 host에 명시한 도메인으로 접속해보면 접속이 된다.
새로고침 해보면 아래와 같이 host-name 이 변하는데
pod이 3개이기 때문에 ingress가 로드밸런서 처럼 분산시켜 주는 것이다.
'Web > Kubernetes' 카테고리의 다른 글
Kubernetes ConfigMap (0) | 2024.01.08 |
---|---|
Kubernetes Volume (0) | 2024.01.08 |
minikube addons enable ingress 시 MK_ADDON_ENABLE 에러 (0) | 2024.01.08 |
Kubernetes로 배포하기, yml 정리 (0) | 2024.01.06 |
Kubernetes Service (ClusterIP, NodePort, Load Balanacer) (0) | 2024.01.06 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Dijkstra
- greedy
- Unity
- dfs
- floyd warshall
- Stack
- Tree
- DP
- 자료구조
- BFS
- 이분탐색
- CSS
- C
- Python
- back tracking
- priority queue
- graph
- db
- 재귀
- recursion
- Spring
- two pointer
- binary search
- 조합
- Kruskal
- Implementation
- MVC
- C++
- Brute Force
- permutation
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
글 보관함