[英]Helm not adding timeout param in API server call
當我們使用 helm 創建 Istio VirtualService 或 DestinationRules 時,需要 30 多秒。 所以我們設置了一個更高的5m超時。
命令使用helm upgrade --install --wait --timeout 5m --v 9 helloworld./templateDir
但是,我看到 helm 沒有在 APIserver 調用中傳遞新的超時值。 當我們使用 kubectl 創建它時,我們為kubectl
設置--request-timeout
參數,一切都很好
既然是apiserver的超時,是否可以為helm的所有API服務器請求設置更高的超時值? 您是否可以針對此問題提出其他解決方法?
I0528 17:52:57.664992 11148 round_trippers.go:423] curl -k -v -XPOST -H "Content-Type: application/json" -H "Accept: application/json" 'https://aaaa.sk1.us-east-1.eks.amazonaws.com/apis/networking.istio.io/v1beta1/namespaces/default/destinationrules '
I0528 17:53:27.981691 11148 round_trippers.go:443] POST https://aaaa.sk1.us-east-1.eks.amazonaws.com/apis/networking.istio.io/v1beta1/namespaces/default/destinationrules 504 Gateway Timeout in 30316 milliseconds
I0528 17:53:27.981691 11148 round_trippers.go:449] Response Headers:
I0528 17:53:27.981691 11148 round_trippers.go:452] Audit-Id: cba23005-b8db-47f7-8801-4c89e6447cd3
I0528 17:53:27.981691 11148 round_trippers.go:452] Content-Type: application/json
I0528 17:53:27.981691 11148 round_trippers.go:452] Content-Length: 187
I0528 17:53:27.981691 11148 round_trippers.go:452] Date: Thu, 28 May 2020 12:23:27 GMT
I0528 17:53:27.981691 11148 request.go:1017] Response Body: {"kind":"Status","apiVersion":"v1","metadata":{},"status":"Failure","message":"Timeout: request did not complete within requested timeout 30s","reason":"Timeout","details":{},"code":504}
I0528 17:53:27.982759 11148 request.go:1017] Request Body: {"apiVersion":"networking.istio.io/v1beta1","kind":"VirtualService","metadata":{"name":"mbrsvc","namespace":"default"},"spec":{"hosts":["mbrsvc"],"http":[{"route":[{"destination":{"host":"mbrsvc","subset":"1.0.0"},"weight":100}]}]}}
文檔指出--timeout
應該以秒為單位。
--timeout
:等待 Kube.netes 命令完成的秒數,默認為5m0s
--wait
:等待直到所有 Pod 都處於就緒狀態 state,PVC 已綁定,部署具有最小(maxUnavailable
Desired
Pod 處於就緒狀態 state 並且服務具有 IP 地址(如果是LoadBalancer
則為 Ingress),然后再將發布標記為成功。 它會等待--timeout
值。 如果達到超時,發布將被標記為FAILED
。 注意:在 Deployment 將replicas
設置為 1 且maxUnavailable
未設置為 0 作為滾動更新策略的一部分的情況下,--wait
將返回就緒狀態,因為它已滿足處於就緒狀態的最小 Pod。
希望有所幫助。
此超時來自服務器(代碼 504)而不是來自客戶端(Helm)。 恐怕提供--timeout
不會對這里產生影響
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.