728x90
kubernetes에서 object란 spec과 status 등의 값을 포함한 파드, 디플로이먼트 등을 부르는 단위이다.
Pod
- 쿠버네티스에서 실행되는 최소 단위
- 독립적인 공간과 사용 가능한 IP를 가짐
- 하나의 파드는 1개 이상의 컨테이너를 가지지만 보통 파드 1개당 1개의 컨테이너를 적용
run
으로 파드를 생성하면 단일 파드 1개만 생성되고,create deployment
로 파드를 생성하면 deployment라는 그룹 내에서 파드가 생성되고 deployment에 의해 파드가 관리된다.
[root@m-k8s ~]# kubectl run nginx-pod --image=nginx
pod/nginx-pod created
[root@m-k8s ~]# kubectl get pod
NAME READY STATUS RESTARTS AGE
nginx-pod 1/1 Running 0 15s
[root@m-k8s ~]# kubectl create nginx --image=nginx
Error: unknown flag: --image
See 'kubectl create --help' for usage.
[root@m-k8s ~]# kubectl create deployment dpy-nginx --image=nginx
deployment.apps/dpy-nginx created
[root@m-k8s ~]# kubectl get pods
NAME READY STATUS RESTARTS AGE
dpy-nginx-c8d778df-sv6l2 1/1 Running 0 5s
nginx-pod 1/1 Running 0 61s
[root@m-k8s ~]# kubectl get pods -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
dpy-nginx-c8d778df-sv6l2 1/1 Running 0 16s 172.16.132.6 w3-k8s <none> <none>
nginx-pod 1/1 Running 0 72s 172.16.103.129 w2-k8s <none> <none>
[root@m-k8s ~]# curl 172.16.132.6
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
[root@m-k8s ~]# curl 172.16.103.129
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
- nginx이미지를 사용하여 nginx-pod라는 이름의 파드를 생성한다.
- create 명령으로는 단일 파드를 생성할 수 없고, deployment를 생성할 수 있다.
- nginx 이미지를 사용하여 dpy-nginx라는 이름의 디플로이먼트를 생성한다.
- 단일 생성한 파드는 nginx-pod라는 지정한 이름의 파드가 생성되고, 디플로이먼트로 생성한 파드는 dpy-nginx-c8d778df-sv6l2라는 자동으로 추가된 문자열이 있는 이름으로 생성된다.
- 두 가지 다른 방법으로 생성된 파드에 curl 명령으로 웹 페이지 정보를 받아와 정상적으로 동작하는지 확인한다.
디플로이먼트로 생성한 파드 이름에 문자열이 자동으로 추가되는 이유
디플로이먼트로 생성한 파드는 여러 개가 생성될 수도 있고, 언제든지 늘어날 수 있으므로 중복된 이름을 피하기 위해 뒤에 자동으로 문자열이 추가된다.
728x90