inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

쿠버네티스 어나더 클래스-Sprint3 (#실무핵심 #Docker #Nginx #Minio #Longhorn)

📝 Nginx 사용 시 마주하게 되는 상황들과 해결 방법 (💻 실습)

강사님 질문 드립니다.

50

내일은 한걸음 더 나아갈거야

작성한 질문수 69

1

만약 ingress 서비스를 실제 업무에 사용하게 되면

blue/green 배포시에 어떻게 동작하는지 궁금합니다.

아울러 ingress 서비스가 사용되는 경우에 대한 설명 부탁드립니다.

 

감사합니다.

kubernetes infrastructure container

답변 2

1

일프로

인그레스에서의 Blue/Green 배포 방식은

Ingress 리소스에서 backend 서비스만 변경해주면 됩니다.

spec:
  rules:
    - host: myapp.com
      http:
        paths:
        - path: /
          pathType: Prefix
          backend:
            service:
              name: myapp-green
              port:
                number: 80

기존에는 myapp-blue 서비스가 연결되어 있었다고 할 때, myapp-green를 위한 Service와 Deployment를 만들고, Ingress에서 위 yaml과 같이 myapp-green로 만 변경해주면 되요.

그리고 ingress 는 트래픽 제어를 Nginx를 사용할 때 주로 사용합니다. 작은 규모에서 쿠버네티스를 시작할 때 Nginx를 쓰는 게 간편하고요. Nginx에 설정을 반영시키기 위한 용도로 ingress를 사용하는 거죠.

하지만 규모가 커지면 Nginx와 ingress로는 부족 할 수 있습니다. 점점 다양하고, 섬세한 배포 방식도 요구 되면서 그에 맞는 트래픽 제어 컨트롤러들이 사용되고요. 이때부터는 Istio나 Traefik, Linkerd 등이 필요해져요. 어떤 걸 선택해야 할지는 또 상황에 따라 다르다는 점이 있고요.

그런 부분에 있어서 Nginx는 트래픽 제어나 배포를 위한 첫 번째 단계라고 할 수 있습니다.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. 내일은 한걸음 더 나아갈거야님.

인그레스(ingress)는 쿠버네티스에서 외부 트래픽을 클러스터 내부의 서비스로 라우팅하기 위해 사용되는 중요한 컴포넌트입니다. 인그레스를 사용하면 도메인 기반의 HTTP 및 HTTPS 라우팅을 손쉽게 설정할 수 있으며, 다양한 규칙을 통해 트래픽을 원하는 서비스로 분배할 수 있습니다.

Blue/Green 배포와 Ingress의 사용

  • Blue/Green 배포: 이 배포 전략은 두 개의 동일한 환경(Blue와 Green)을 유지하면서 새로운 버전을 기존 버전과 병렬로 실행하는 것입니다. 인그레스를 사용할 때, 두 개의 서비스(예: blue-service와 green-service)를 각각 설정하고, 인그레스 규칙을 통해 사용자 요청을 새로운 Green 서비스로 이동할 수 있습니다. 인그레스를 통해 HTTP 경로를 변경하거나, 인그레스 내에서 별도의 앤드포인트를 설정하여 트래픽을 적절히 라우팅할 수 있습니다.

  • 인그레스의 사용 경우:

    1. 도메인 기반의 라우팅: 여러 애플리케이션을 하나의 도메인 아래에서 서빙하고자 할 때 유용합니다.
    2. SSL 설정: 인그레스를 사용하여 HTTPS 설정을 집중적으로 관리할 수 있습니다.
    3. 로드 밸런싱: 트래픽을 균등하게 분배하여 서비스의 안정성과 효율성을 높이고자 할 때 사용됩니다.

더 나아가 관련된 질의응답을 통해 자세한 설명을 확인하시려면 아래의 게시물을 참고하세요:

  • Ingress 관련 질문 드립니다: 클라우드 환경에서의 인그레스 설정에 대한 자세한 논의가 포함된 게시물입니다.
  • Ingress에 대해: 인그레스 설정 및 관련 포트 설정, HPA 관련된 질문과 답변을 확인할 수 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

Volume과 VolumeMount는 왜 나눠놨을까요?

1

68

2

mc: command not found

0

78

2

http://k8s.core:31080/hostname 요청

1

62

2

worker node에 대해서

1

63

2

내부 Pod간 통신 시 Nginx 사용

1

75

2

로컬 개발환경 구축시 k8s 환경에 대한 테스트는 어떻게 하는지 궁금합니다.

1

83

1

실무 관점에서

1

58

1

강사님 한번에 질문을 하게 되면 좋은데 그렇지 못해 죄송합니다.

1

62

2

강사님 인그레스와 관련하여 질문 드립니다.

1

61

2

강의내용설명중 이해안가는부분이 있습니다.

1

76

2

tls ingress 기본값 설정

1

101

2

tls인증서 관련시

1

82

2

노트포트타입서비스 만들때 관한 설명

1

111

2

노드 cpu사용량

1

84

2

3211 app소스 경로

0

80

2

어떻게 파일을 읽나요?

0

91

3

이클립스에 해봤는데요

0

178

3

cni 구조 설명시 헷갈린점

0

106

2

술루션 엔지니어란 무엇인지요?

1

97

2

질문드립니다( headless service)

1

69

2

preStop sleep 5초의 기준이 궁금합니다.

1

127

2

설치가 안되서 질문드립니다.

1

231

3

질문드립니다.

1

103

2

질문드립니다.

1

100

2