본문 바로가기
cloud/k8s(문제풀이)

[따배쿠CKA]15. NodePort 서비스 생성

by mozi2 2022. 8. 11.
반응형

* Node Port 란?

 :외부의 enduser가 접속할 수 있도록 workernode에 포트를 열어주는 역할

: nodePort 없이는 외부에서 접속할 수 없음 

 

set configuration context $ kubectl config use-context k8s

create the service as type NodePort with the port 32767 for the nginx pod with the pod selector app:webui

: 서비스를 만들어서 NodePort : 32767 로 지정하고, nginx 이미지, selector 은 app:webui

 

1. app:webui 로 실행되고 있는 라벨이 있는지 확인

k get pod --selector app=webui
k get pod --selector app=webui --show-labels

2. 포트 확인하기

kubectl describe pods [pod이름]
kkubectl get pods pods [pod이름] -o yaml

: 현재 운영중인 pod 가 어떤 port 를 사용하는지 확인 

: 이에 따라 서비스 생성시 port, targetport 를 확인할 수 있다. 

 

3. servicee 생성

vi my-service.yaml

4. 확인

k apply -f node-port.yaml
k get svc

* Template*
curl [worknode]:[port]

k get nodes
curl node01:32767

 

*유의할점

k get pods -o wide 

: 내가 연결할 --selector 과 pod의 --selector 과 동일해야한다.

: 다를경우 연결되지 않음...

: 반드시 내가 연결할 노드에 정확한 pod를 --selector랑 연결해야함

 

https://kubernetes.io/docs/concepts/services-networking/service/

 

Service

An abstract way to expose an application running on a set of Pods as a network service. With Kubernetes you don't need to modify your application to use an unfamiliar service discovery mechanism. Kubernetes gives Pods their own IP addresses and a single DN

kubernetes.io

 

* 본 게시글은 "TTABAE-LEARN" 을 보고 정리한 내용입니다.

 

 

 

 

 

728x90
반응형