通常情况下,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: sonarqubenamespace: defaultannotations:ingress.kubernetes.io/proxy-body-size: "600M"
spec:rules:- host: tests.sonar.comhttp:paths:- backend:serviceName: sonarqubeservicePort: 9000path: /
- 针对所有ingress
[root@master24 002-nginx-ingress-controller]# cat nginx-ingress-cm.yaml
apiVersion: v1
kind: ConfigMap
metadata:name: nginx-custom-configurationnamespace: kube-systemlabels:k8s-app: nginx-ingress-controller
data:proxy-body-size: "50m"