通常情況下,service和pod的IP可以被集羣網絡訪問。外部訪問的所有流量被丟棄或轉發到別處。ingress是允許入站連接到達羣集服務的規則集合.可以爲外部提供可訪問服務的URL,流量負載均衡,可被終止的ssl連接,以及基於配置的虛擬主機。
k8s ingress配置官網鏈接:https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/annotations.md
在sonar-scanner分析go項目時,結果文件超過1M(nginx ingress controller 默認定義的上傳大小),無法上傳到sonarqube上,因此需要更改nginx配置中client_max_body_size的大小,具體修改ingress文件,如下
針對單個ingress
[root@master24 021-sonarqube]# cat sonarqube-ing.yaml
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: sonarqube
namespace: default
annotations:
nginx.ingress.kubernetes.io/proxy-body-size: "5M"
spec:
rules:
- host: tests.sonar.com
http:
paths:
- backend:
serviceName: sonarqube
servicePort: 9000
path: /
注意到nginx.ingress.kubernetes.io
爲ingress-nginx
的啓動參數的設置:
--annotations-prefix=nginx.ingress.kubernetes.io
針對所有ingress
[root@master24 002-nginx-ingress-controller]# cat nginx-ingress-cm.yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: nginx-custom-configuration
namespace: kube-system
labels:
k8s-app: nginx-ingress-controller
data:
proxy-body-size: "5m"
作者簡潔
作者:小碗湯,一位熱愛、認真寫作的小夥,目前維護原創公衆號:『我的小碗湯』,專注於寫go語言、docker、kubernetes、java等開發、運維知識等提升硬實力的文章,期待你的關注。轉載說明:務必註明來源(註明:來源於公衆號:我的小碗湯,作者:小碗湯)