작성
·
94
1
안녕하세요 Pod 관련 강의 실습을 따라해보면서 생긴 질문이 있어 이렇게 글 남깁니다.
k get pod
k get service
이렇게 두가지 커맨드를 사용해서 출력되는 결과가 각각 따로 있고 강사님께서는 nginx-service
에 대한 url를 minikube 에서 조회해서 보여주시는데,
pod과 container 사이의 관계는 이해가 되었는데, 이번 강의에서 의미하는 service는 pod 과 같은 level에 있는 개념으로 이해했습니다. (kind 에서 정의 됨)
이부분에 대한 설명이 좀 더 자세하게 예시와 함께 있으면 더 이해에 많은 도움 될 거 같습니다.
또한 한가지 개인적인 의견으로는, 기술적인 정의 개념과 실제 k8s 를 활용한 가상의 서비스가 비유적으로 mapping이 되는 설명이 있다면 좀 더 처음 접근하는 사람들이 각각 개념들의 관계에 대해 좀 더 쉽게 이해할 수 있게 되지 않을까 생각합니다.
감사합니다!
답변 1
1
안녕하세요 gogo91rla님,
쉽게 설명하자면,
Pod는 쿠버네티스에서 가장 작은 배포 단위입니다. 하나 이상의 컨테이너를 포함하며, 동일한 네트워크 네임스페이스와 스토리지를 공유합니다.
Service는 쿠버네티스에서 네트워크 서비스의 추상화입니다. 여러 Pod를 하나의 논리적인 단위로 묶어서 네트워크 서비스를 제공합니다.
여기서 Pod는 일시적인 특성을 가지고 있어서 IP 주소가 변경될 수 있습니다. 이를 해결하기 위해 Service는 고정된 IP 주소와 DNS 이름을 제공해주고 Pod에 고정적으로 접근할 수 있게 해줍니다.
요약하자면
Pod는 쿠버네티스에서 컨테이너를 실행하는 기본 단위입니다.
Service는 Pod들에 대한 네트워크 액세스를 제공하고, 로드 밸런싱과 디스커버리 기능을 합니다.
Pod와 Service는 라벨을 통해 연결되어, 사용자가 쉽게 접근할 수 있도록 합니다.
또한 비유해서 말하자면
Pod는 건물 안의 방처럼, 특정 기능을 수행하는 컨테이너 그룹입니다.
Service는 건물의 안내 데스크처럼, 여러 방을 관리하고, 방문객이 원하는 방으로 안내합니다.
이렇게 함으로써, 방문객(네트워크 트래픽)이 일시적으로 바뀌는 방(Pod)을 찾기 쉽고, 안정적으로 접근할 수 있습니다.
도움이 되었을까요?