Sobes.tech
Junior — Middle

Ի՞նչ տարբերություն կա 'kubectl apply' և 'kubectl create' հրամանների միջև Kubernetes-ում ռեսուրսները կառավարելիս։

sobes.tech AI

Պատասխան AI-ից

Kubernetes-ում ռեսուրսները կառավարելու համար օգտագործվում են kubectl create և kubectl apply հրամանները, բայց ունեն տարբեր կիրառման սցենարներ:

  • kubectl create — ստեղծում է նոր ռեսուրս մանֆեստից: Եթե նույն անունով ռեսուրս արդեն գոյություն ունի, հրամանը կավարտվի սխալով:

  • kubectl apply — կիրառում է փոփոխություններ գոյություն ունեցող ռեսուրսի վրա կամ ստեղծում է այն, եթե չկա: Օգտագործում է դեկլարատիվ կառավարման մեխանիզմ, համեմատելով ընթացիկ և ցանկալի վիճակները:

Օրինակ՝

kubectl create -f pod.yaml  # ստեղծում է պոդ, եթե չկա
kubectl apply -f pod.yaml   # ստեղծում կամ թարմացնում է պոդը փոփոխությունների հաշվի առմամբ

Այսպիսով, apply հարմար է կոնֆիգուրացիաների կառավարում GitOps ռեժիմում և հաճախակի փոփոխությունների դեպքում, իսկ create՝ ռեսուրսների միանգամյա ստեղծման համար։