키보드워리어

[쿠버네티스] 서비스와 인그레스 본문

도커&쿠버네티스

[쿠버네티스] 서비스와 인그레스

꽉 쥔 주먹속에 안경닦이 2023. 8. 20. 10:05
728x90

안녕하세요 오늘은 [쿠버네티스] 서비스와 인그레스에 대해 살펴봅니다.

쿠버네티스
쿠버네티스


Service and Ingress

서비스를 갖게되면 Ip 어드레스를 고정적으로 가지고 있음으로 변동되지 않습니다.

각 팟(Pod)에 연결할 수 있는 주소 또는 영구 IP주소가 있으면, 앱은 각각의
서비스와 데이터베이스 팟이 독립적인 서비스를 갖게됩니다.

그리고 데이터베이스 팟이 죽어도 서비스는 죽지 않습니다.
다시 엔드포인트를 지정하는 귀찮은 일은 하지 않아도 됩니다.

앱은 브라우저를 통해서 연결가능합니다.
외부소스의 통신을 생각해보면 데이터베이스가 공개적인 노출되는것은 바람직하지 않습니다.

이를 위해서 내부 서비스라는 것을 생성하게 됩니다. 내부 서비스는 서비스를 생성할 때 지정하는 특정 유형의 서비스입니다.

기본적으로 노드의 IP주소와 서비스의 포트번호로 이루어진 HTTP 프로토콜을 사용합니다. 이건 테스트에만 유용하고 그다지 좋지 않습니다.

IP주소
IP주소

보통은 앱에 안전한 도메인 이름을 사용하여 통신하고 싶을 것이고 이를위해 쿠버네티스의 다른 구성요소가 필요합니다.

그게바로 Ingress 입니다.

Ingress

서비스 대신에 먼저 요청이 인그레스로 전송되고, 인그레스가 전달한 다음에 서비스로 포워딩됩니다.

결론

만약 앱의 팟이 다운되거나 죽은 경우 사용자는 앱에 접근할 수 없습니다.

이러한 분산시스템과 컨테이너의 장점으로 App Pod와 DB Pod등은 하나의 파트만을 의존하는 대신
여러 서버에 복제합니다.

다른 노드에 앱 복제본이 실행되며, 이 복제본도 서비스에 연결됩니다.


이상 부족한 컨텐츠 읽어주셔서 너무 감사드립니다.

내용 피드백이 있는 경우 댓글 부탁드립니다!

다음 포스팅 때 뵙겠습니다! 감사합니다 🤗

728x90