47 lines
1.2 KiB
Django/Jinja
47 lines
1.2 KiB
Django/Jinja
apiVersion: v1
|
|
kind: Pod
|
|
metadata:
|
|
name: nginx-proxy
|
|
namespace: kube-system
|
|
labels:
|
|
addonmanager.kubernetes.io/mode: Reconcile
|
|
k8s-app: kube-nginx
|
|
annotations:
|
|
nginx-cfg-checksum: "{{ nginx_stat.stat.checksum }}"
|
|
spec:
|
|
hostNetwork: true
|
|
dnsPolicy: ClusterFirstWithHostNet
|
|
nodeSelector:
|
|
beta.kubernetes.io/os: linux
|
|
{% if kube_version is version('v1.11.1', '>=') %}
|
|
priorityClassName: system-node-critical
|
|
{% endif %}
|
|
containers:
|
|
- name: nginx-proxy
|
|
image: {{ nginx_image_repo }}:{{ nginx_image_tag }}
|
|
imagePullPolicy: {{ k8s_image_pull_policy }}
|
|
resources:
|
|
requests:
|
|
cpu: {{ loadbalancer_apiserver_cpu_requests }}
|
|
memory: {{ loadbalancer_apiserver_memory_requests }}
|
|
securityContext:
|
|
privileged: true
|
|
{% if loadbalancer_apiserver_healthcheck_port is defined -%}
|
|
livenessProbe:
|
|
httpGet:
|
|
path: /healthz
|
|
port: {{ loadbalancer_apiserver_healthcheck_port }}
|
|
readinessProbe:
|
|
httpGet:
|
|
path: /healthz
|
|
port: {{ loadbalancer_apiserver_healthcheck_port }}
|
|
{% endif -%}
|
|
volumeMounts:
|
|
- mountPath: /etc/nginx
|
|
name: etc-nginx
|
|
readOnly: true
|
|
volumes:
|
|
- name: etc-nginx
|
|
hostPath:
|
|
path: {{ nginx_config_dir }}
|