2016-04-28 46 views
1

我在用於創建2個副本(副本)的yaml文件中定義了一個ReplicaSet。根據我的理解,ReplicaSetspec部分中的更改將被解釋爲最終將應用於現實世界的期望狀態的變化。例如,使用以下代碼修補副本數:爲什麼不在.spec.template.metadata.labels中更改副本集影響集羣

curl --request PATCH \ 
    --header 'Content-Type: application/strategic-merge-patch+json' \ 
    --data '{"spec":{"replicas":3}}' \ 
    http://localhost:8080/apis/extensions/v1beta1/namespaces/default/replicasets/hello-v2 

會導致數據包的數量發生變化。但是,如果我爲標籤貼上標籤以添加標籤:

curl --request PATCH \ 
     --header 'Content-Type: application/strategic-merge-patch+json' \ 
     --data '{"spec": {"template": {"metadata":{"labels":{"active":"true"}}}}}' \ 
     http://localhost:8080/apis/extensions/v1beta1/namespaces/default/replicasets/hello-v2 

我在現有的窗格上看不到此更改。新吊艙(通過縮放ReplicaSet 包含新標籤創建,例如,

什麼時候到改變爲spec影響當前狀態,當不是嗎?

回答

0

到模板的變化將只有當該模板被用於標記新的副本時纔會顯示,模板(副本/選擇器)之外的更改將立即生效如果您想正常更改已存在的Pod的PodSpec或標籤,則應該看一下在滾動更新功能Deployments

相關問題