From ff18f65a1741a815e63f16a46595109399f1a23f Mon Sep 17 00:00:00 2001 From: Keita Mochizuki <37737691+mochizuki875@users.noreply.github.com> Date: Mon, 1 Jul 2024 13:58:05 +0900 Subject: [PATCH] add ingress controller svc nodeport param (#11310) --- inventory/sample/group_vars/k8s_cluster/addons.yml | 2 ++ .../ingress_controller/ingress_nginx/defaults/main.yml | 2 ++ .../ingress_nginx/templates/svc-ingress-nginx.yml.j2 | 6 ++++++ 3 files changed, 10 insertions(+) diff --git a/inventory/sample/group_vars/k8s_cluster/addons.yml b/inventory/sample/group_vars/k8s_cluster/addons.yml index 6f0342f28..d1c369ce2 100644 --- a/inventory/sample/group_vars/k8s_cluster/addons.yml +++ b/inventory/sample/group_vars/k8s_cluster/addons.yml @@ -100,6 +100,8 @@ rbd_provisioner_enabled: false ingress_nginx_enabled: false # ingress_nginx_host_network: false # ingress_nginx_service_type: LoadBalancer +# ingress_nginx_service_nodeport_http: 30080 +# ingress_nginx_service_nodeport_https: 30081 ingress_publish_status_address: "" # ingress_nginx_nodeselector: # kubernetes.io/os: "linux" diff --git a/roles/kubernetes-apps/ingress_controller/ingress_nginx/defaults/main.yml b/roles/kubernetes-apps/ingress_controller/ingress_nginx/defaults/main.yml index 2650136d8..82943024b 100644 --- a/roles/kubernetes-apps/ingress_controller/ingress_nginx/defaults/main.yml +++ b/roles/kubernetes-apps/ingress_controller/ingress_nginx/defaults/main.yml @@ -2,6 +2,8 @@ ingress_nginx_namespace: "ingress-nginx" ingress_nginx_host_network: false ingress_nginx_service_type: LoadBalancer +ingress_nginx_service_nodeport_http: "" +ingress_nginx_service_nodeport_https: "" ingress_publish_status_address: "" ingress_nginx_nodeselector: kubernetes.io/os: "linux" diff --git a/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/svc-ingress-nginx.yml.j2 b/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/svc-ingress-nginx.yml.j2 index b27304992..072b9892b 100644 --- a/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/svc-ingress-nginx.yml.j2 +++ b/roles/kubernetes-apps/ingress_controller/ingress_nginx/templates/svc-ingress-nginx.yml.j2 @@ -14,10 +14,16 @@ spec: port: 80 targetPort: 80 protocol: TCP +{% if (ingress_nginx_service_type == 'NodePort' or ingress_nginx_service_type == 'LoadBalancer') and ingress_nginx_service_nodeport_http %} + nodePort: {{ingress_nginx_service_nodeport_http | int}} +{% endif %} - name: https port: 443 targetPort: 443 protocol: TCP +{% if (ingress_nginx_service_type == 'NodePort' or ingress_nginx_service_type == 'LoadBalancer') and ingress_nginx_service_nodeport_https %} + nodePort: {{ingress_nginx_service_nodeport_https | int}} +{% endif %} selector: app.kubernetes.io/name: ingress-nginx app.kubernetes.io/part-of: ingress-nginx