Kubernetes 클러스터에서 Pod, Deployment, DaemonSet 등 매번 생성을 하려면 yaml 스켈레톤 파일이 필요했는데 이러한 문제를 해소해주는 명령어가 있다는걸 알고 매우 반가웠다. 찾아보면 이것 뿐만 아니라 추가적으로 나올 것 같아서 발견할 때마다 이 글에 추가해 나갈 예정이다.

기본적으로 다음 사이트를 많이 참조할 예정이다. https://kubernetes.io/ko/docs/reference/kubectl/cheatsheet/

Yaml 구조 생성

kubectl run nginx --image=nginx --generator=run-pod/v1 --dry-run -o yaml
kubectl create deployment nginx --image=nginx --dry-run -o yaml
kubectl create service nodeport nginx --tcp=80:31051 --dry-run -o yaml


다음으로 생성시 deployment와 service는 꼭 selector를 수정 해야되는걸 기억해야겠다.

네임스페이스 지정

kubectl config set-context $(kubectl config current-context) --namespace=prod
kubectl config set-context --current --namespace=prod


컨텍스트를 수정해서 다음 접속 부터 고정적으로 네임스페이스를 prod로 만들어준다.

리소스 생성 시 참고 명령어

스켈레톤 파일을 대신하여 kubectl explain pod --recursive를 이용하면 해당 필드를 어떻게 사용할지 쉽게 알 수 있다.

kubectl explain --recursive pods.spec.containers과 같이 지정해 가면서 자세하게 살펴볼 수도 있어서 매우 유용하다.