Kubernetes

kubectl - create, apply의 차이점

양승길 2023. 1. 2. 23:06

변경의 차이

create, apply 모두 스펙에 따라 pod 생성을 하는 기능을 갖고 있지만,
스펙 파일을 일부 변경하고 create를 호출하면
이미 만들어진 오브젝트이기 때문에 실행이 불가능하다.
하지만 apply는 생성이 아닌 적용이기 때문에 변경한 스펙에 맞춰준다는 특징이 있다.

create문 재호출

$ kubectl create -f ./pod.yaml
$ # pod.yaml 수정
$ kubectl create -f ./pod.yaml
Error from server (AlreadyExists): error when creating "pod.yaml": deployments.apps "deploy-sample" already exists

apply문 재호출

$ kubectl apply -f ./pod.yaml
$ # pod.yaml 수정
$ kubectl apply -f ./pod.yaml
$ # 변경 내용 적용

그렇다고 해서 create가 무조건 안좋다고 볼 수는 없고,
ad-hoc(즉석이라는 사전적 의미)으로 오브젝트를 생성 할때, 편리한 장점이 있다.

'Kubernetes' 카테고리의 다른 글

Object의 정의  (0) 2023.01.02
Pod와 Deployment의 차이  (1) 2023.01.02
k8s - 구성요소 및 간단한 정리  (0) 2023.01.01