kubectl run 명령의 동작 원리kubectl run 명령어는 Kubernetes 클러스터에서 파드를 생성하는 데 사용됩니다. 기본적으로 kubectl run은 다음 단계를 거쳐 실행됩니다:
명령어 입력: 사용자가 kubectl run 명령어를 터미널에 입력합니다. 이 명령어에는 파드의 이름과 실행할 컨테이너 이미지가 포함됩니다.
API 서버 요청: kubectl은 이 정보를 바탕으로 Kubernetes API 서버에 요청을 보냅니다. 이 요청은 새로운 파드를 생성하라는 명령입니다.
파드 생성: Kubernetes API 서버는 이 요청을 수신하고, 클러스터의 노드 중 하나에 새로운 파드를 스케줄링하여 생성합니다. 이 파드 내부에는 지정된 컨테이너 이미지(Nginx)가 포함됩니다.
컨테이너 실행: 노드의 kubelet이 파드를 실행하고, 파드 내부에서 지정된 컨테이너 이미지(Nginx)를 기반으로 컨테이너가 실행됩니다.
상태 확인 및 반환: 컨테이너가 실행되면 그 상태가 API 서버에 의해 지속적으로 모니터링되며, 사용자는 kubectl get pods 명령어 등을 통해 파드의 상태를 확인할 수 있습니다.
nginx 이미지를 사용할 때, 이미지 태그를 지정하지 않으면 기본적으로 nginx:latest 태그가 사용됩니다. latest 태그는 Nginx의 최신 안정 버전을 자동으로 가져오도록 설정되어 있습니다.
그러므로 최신 버전을 사용하려면 이미지 태그를 생략하거나 nginx:latest로 명시적으로 지정하면 됩니다:
kubectl run webserver --image=nginx:latest
이 명령어는 Nginx의 최신 버전을 사용하여 컨테이너를 실행합니다. 하지만 latest 태그가 항상 최신 버전을 보장하는 것은 아니기 때문에, 더 확실히 최신 버전을 확인하고 싶다면 Docker Hub나 공식 Nginx 사이트에서 확인할 수 있습니다.

