2017-08-30 75 views
2

進入控制器的配置參數,我已經安裝了nginx的,入口控制器kubernetes一個Web應用程序。我可以通過Nginx入口控制器公共IP訪問我的應用程序。如何更改kubernetes

對於這些都佔用超過1分鐘,我們得到網關連接超時錯誤(504)的請求。我通過連接到pod檢查了Nginx入口控制器配置,它的connection_timeout值爲60s。 (問題的根源)

我曾嘗試改變參數以更高的價值和它的長期要求做工精細,雖然Nginx的入口控制器配置得到了重新加載一段時間後違約。

我們怎樣才能改變/堅持Nginx的入口控制器配置參數?

感謝任何幫助。提前致謝。

回答

1

nginx入口控制器可通過configmap進行定製。

你可以通過參數--configmap至入口控制器實現這一目標。來源:https://github.com/kubernetes/ingress/tree/master/controllers/nginx#command-line-arguments

kube-system命名空間,創建一個configmap,給它的名字一樣nginx-load-balancer-conf,然後編輯您進入控制器的複製控制器或daemonset並添加--configmap=nginx-load-balancer-conf說法。

這裏是什麼configmap可能看起來像一個例子:

apiVersion: v1 
data: 
    proxy-connect-timeout: "10" 
    proxy-read-timeout: "120" 
    proxy-send-timeout: "120" 
kind: ConfigMap 
metadata: 
    name: nginx-load-balancer-conf 

這裏是你如何創建它,如果你是上述保存到一個名爲nginx-load-balancer-conf.yaml

kubectl create -f nginx-load-balancer-conf.yaml 

有效的配置文件configmap的參數:https://github.com/kubernetes/ingress/blob/master/controllers/nginx/configuration.md#allowed-parameters-in-configuration-configmap

來源:https://github.com/kubernetes/ingress/blob/master/examples/customization/custom-configuration/nginx/README.md