IT/Kubernetes

K8S_Service-NodePort, ReplicaSet

nyub 2022. 8. 9. 16:56
반응형

- 목차 - 

1. Service type

2. Service - NodePort

3. ReplicaSet


  1. Service type

ClusterIP = Pod 그룹의 단일점 (Virutal IP) 생성, 제일 기본적인 기능 , 내부 통신용

NodePort = ClusterIP 가 생성된 후 , 모든 Worker Node 에 외부에서 접속가능한 포트가 예약 , 밖에 클라이언트가 해당 포트와 worker node 의 ip 에 접속을 시도하면 저 묶인 pod중 하나로 연결을 해줌
위의 2개는 다 cluster안에서 만 서로 트래픽을 주고 받는거임 외부에서 들어오는것은 ingress를 이용하는게 좋음

Load Balancer == aws,gcp 이런 클라우드 플랫폼 위에서만 가능

External Name = 클러스터 안에서 바깥으로 라우팅 해주는 역할 , DNS이긴 한데 거꾸로 감

출처 : https://tonylim.tistory.com/310

  2. Service - NodePort

2-1. nginx pod 생성

 

2-2. 외부에 노출을 위해 expose

 

2-3. service 확인

 

2-4. 31900포트로 접속 확인

 

2-5. curl로 내부 IP 주소:80 확인

 

2-6. service 삭제 후 8080포트 지정해서 expose

 

2-7. get svc로 확인

 

2-8. port와 target 포트 지정하여 expose

 

2-9. describe로 확인

 

2-10. yml 파일 작성

 

2-11. yml 파일 내용 확인

 

2-12. apply해서 적용하고 확인

 

2-13. 외부 접속 확인

 

 

 

  3. ReplicaSet

3-1. yml 파일 생성

 

3-2. 매니페스트 파일 작성. 아래서 부터 이해하면 쉽다. nginx container spec을 가진 > 템플릿을 > 2개 복사하겠다.

 

3-3. 작성한 파일 apply

 

3-4. get pods 결과 2개 생성 확인

 

3-5. 생성된 두개 중에 하나를 지워도

 

3-6. 또 다른 하나가 생성되며 2개 갯수가 맞춰진다.

 

3-7. rs/nginxrep 화인

 

3-8. 외부 접속을 위해 NodePort expose

 

3-9. 외부 접속 확인

 

3-10. 매니페스트 파일 수정

 

3-11. apply만해도 4개가 복사되는 것 확인. 매니페스트 파일을 관리하면 pods를 쉽게 관리 할 수 있다.

 

3-12. 삭제 할때는 replicaset을 지워줘야합니다. pods 지우면 계속 생성됩니다.

반응형