"쿠버네티스 Ingress"의 두 판 사이의 차이

4번째 줄: 4번째 줄:
* 클러스터 내의 서비스들에 대한 외부 접근(특히 HTTP)을 관리하는 API 객체
* 클러스터 내의 서비스들에 대한 외부 접근(특히 HTTP)을 관리하는 API 객체
* 로드 밸런싱, SSL 터미네이션, 이름-기반 버추얼 호스팅을 제공 가능
* 로드 밸런싱, SSL 터미네이션, 이름-기반 버추얼 호스팅을 제공 가능
==Prefix ★==
<syntaxhighlight lang='yaml'>
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: myingress
spec:
  rules:
  - host: example.com # Host
    http:
      paths:
      - pathType: Prefix
        path: /
        backend:
          service:
            name: myservice # Service
            port:
              number: 80 # Port
</syntaxhighlight>


==ImplementationSpecific ★==
==ImplementationSpecific ★==
10번째 줄: 30번째 줄:
kind: Ingress
kind: Ingress
metadata:
metadata:
   name: my-ingress
   name: myingress
spec:
spec:
   rules:
   rules:
   - host: foo.bar.com
   - host: example.com # Host
     http:
     http:
       paths:
       paths:
19번째 줄: 39번째 줄:
         backend:
         backend:
           service:
           service:
             name: test
             name: myservice # Service
             port:
             port:
               number: 80
               number: 80 # Port
</syntaxhighlight>
</syntaxhighlight>



2023년 12월 28일 (목) 11:18 판

1 개요

Kubernetes Ingress
쿠버네티스 인그레스, 인입, 수신
  • 클러스터 내의 서비스들에 대한 외부 접근(특히 HTTP)을 관리하는 API 객체
  • 로드 밸런싱, SSL 터미네이션, 이름-기반 버추얼 호스팅을 제공 가능

2 Prefix ★

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: myingress
spec:
  rules:
  - host: example.com # Host
    http:
      paths:
      - pathType: Prefix
        path: /
        backend:
          service:
            name: myservice # Service
            port: 
              number: 80 # Port

3 ImplementationSpecific ★

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: myingress
spec:
  rules:
  - host: example.com # Host
    http:
      paths:
      - pathType: ImplementationSpecific
        backend:
          service:
            name: myservice # Service
            port:
              number: 80 # Port

4 tls

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: tls-example-ingress
spec:
  tls:
  - hosts:
      - https-example.foo.com
    secretName: testsecret-tls
  rules:
  - host: https-example.foo.com
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: service1
            port:
              number: 80

5 defaultBackend

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: ingress-resource-backend
spec:
  defaultBackend:
    resource:
      apiGroup: k8s.example.com
      kind: StorageBucket
      name: static-assets
  rules:
    - http:
        paths:
          - path: /icons
            pathType: ImplementationSpecific
            backend:
              resource:
                apiGroup: k8s.example.com
                kind: StorageBucket
                name: icon-assets

6 Prefix

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: minimal-ingress
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
spec:
  rules:
  - http:
      paths:
      - path: /testpath
        pathType: Prefix
        backend:
          service:
            name: test
            port:
              number: 80
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: ingress-wildcard-host
spec:
  rules:
  - host: "foo.bar.com"
    http:
      paths:
      - pathType: Prefix
        path: "/bar"
        backend:
          service:
            name: service1
            port:
              number: 80
  - host: "*.foo.com"
    http:
      paths:
      - pathType: Prefix
        path: "/foo"
        backend:
          service:
            name: service2
            port:
              number: 80

7 구식(v1beta1)

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: traffic-router
spec:
  rules:
    - http:
        paths:
          - path: /
            backend:
              serviceName: servicename
              servicePort: 8080
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
  name: test-ingress
spec:
  rules:
  - host: foo.bar.com
    http:
      paths:
      - path: /
        backend:
          serviceName: test
          servicePort: 80
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
  name: test-ingress
  annotations:
    nginx.ingress.kubernetes.io/rewrite-target: /
spec:
  rules:
  - http:
      paths:
      - path: /testpath
        backend:
          serviceName: test
          servicePort: 80

8 같이 보기

9 참고

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}