mirror of https://github.com/easzlab/kubeasz.git
63 lines
1.8 KiB
Django/Jinja
63 lines
1.8 KiB
Django/Jinja
user root;
|
|
worker_processes 1;
|
|
|
|
error_log /etc/l4lb/logs/error.log warn;
|
|
|
|
events {
|
|
worker_connections 3000;
|
|
}
|
|
|
|
stream {
|
|
upstream apiservers {
|
|
{% for host in groups['kube_master'] %}
|
|
server {{ host }}:{{ SECURE_PORT }} max_fails=2 fail_timeout=3s;
|
|
{% endfor %}
|
|
}
|
|
|
|
server {
|
|
listen 0.0.0.0:{{ EX_APISERVER_PORT }};
|
|
proxy_connect_timeout 1s;
|
|
proxy_pass apiservers;
|
|
}
|
|
{% if INGRESS_NODEPORT_LB == "yes" %}
|
|
|
|
upstream ingress-nodes {
|
|
{% if groups['kube_node']|length > 3 %}
|
|
server {{ groups['kube_node'][0] }}:{{ INGRESS_NODEPORT_LB_PORT }} max_fails=2 fail_timeout=3s;
|
|
server {{ groups['kube_node'][1] }}:{{ INGRESS_NODEPORT_LB_PORT }} max_fails=2 fail_timeout=3s;
|
|
server {{ groups['kube_node'][2] }}:{{ INGRESS_NODEPORT_LB_PORT }} max_fails=2 fail_timeout=3s;
|
|
{% else %}
|
|
{% for host in groups['kube_node'] %}
|
|
server {{ host }}:{{ INGRESS_NODEPORT_LB_PORT }} max_fails=2 fail_timeout=3s;
|
|
{% endfor %}
|
|
{% endif %}
|
|
}
|
|
|
|
server {
|
|
listen 0.0.0.0:80;
|
|
proxy_connect_timeout 1s;
|
|
proxy_pass ingress-nodes;
|
|
}
|
|
{% endif %}
|
|
{% if INGRESS_TLS_NODEPORT_LB == "yes" %}
|
|
|
|
upstream ingress-tls-nodes {
|
|
{% if groups['kube_node']|length > 3 %}
|
|
server {{ groups['kube_node'][0] }}:{{ INGRESS_TLS_NODEPORT_LB_PORT }} max_fails=2 fail_timeout=3s;
|
|
server {{ groups['kube_node'][1] }}:{{ INGRESS_TLS_NODEPORT_LB_PORT }} max_fails=2 fail_timeout=3s;
|
|
server {{ groups['kube_node'][2] }}:{{ INGRESS_TLS_NODEPORT_LB_PORT }} max_fails=2 fail_timeout=3s;
|
|
{% else %}
|
|
{% for host in groups['kube_node'] %}
|
|
server {{ host }}:{{ INGRESS_TLS_NODEPORT_LB_PORT }} max_fails=2 fail_timeout=3s;
|
|
{% endfor %}
|
|
{% endif %}
|
|
}
|
|
|
|
server {
|
|
listen 0.0.0.0:443;
|
|
proxy_connect_timeout 1s;
|
|
proxy_pass ingress-tls-nodes;
|
|
}
|
|
{% endif %}
|
|
}
|