Skip to content

Commit 9482da2

Browse files
Merge pull request #343 from lablabs/feat/ingress-controller
Feat: ingress controller
2 parents a7d789c + a77297a commit 9482da2

File tree

6 files changed

+18
-3
lines changed

6 files changed

+18
-3
lines changed

README.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,10 @@ The Role can install the RKE2 in 3 modes:
2222

2323
> It is possible to upgrade RKE2 by changing `rke2_version` variable and re-running the playbook with this role. During the upgrade process the RKE2 service on the nodes will be restarted one by one. The Ansible Role will check if the node on which the service was restarted is in Ready state and only then proceed with restarting service on another Kubernetes node.
2424
25-
## Requirements
25+
## Requirements for Anisble Controller
2626

2727
* Ansible 2.10+
28+
* `netaddr` Python package
2829

2930
## Tested on
3031

@@ -322,6 +323,9 @@ rke2_agents_group_name: workers
322323
# rke2_kube_scheduler_arg:
323324
# - "bind-address=0.0.0.0"
324325

326+
# Configure Ingress Controller (allowed values: nginx-ingress, traefik, none)
327+
rke2_ingress_controller: nginx-ingress
328+
325329
# (Optional) Configure nginx via HelmChartConfig: https://docs.rke2.io/networking/networking_services#nginx-ingress-controller
326330
# rke2_ingress_nginx_values:
327331
# controller:

defaults/main.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -284,6 +284,9 @@ rke2_agents_group_name: workers
284284
# rke2_kube_scheduler_arg:
285285
# - "bind-address=0.0.0.0"
286286

287+
# Configure Ingress Controller (allowed values: nginx-ingress, traefik, none)
288+
rke2_ingress_controller: nginx-ingress
289+
287290
# (Optional) Configure nginx via HelmChartConfig: https://docs.rke2.io/networking/networking_services#nginx-ingress-controller
288291
# rke2_ingress_nginx_values:
289292
# controller:

meta/argument_specs.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -420,6 +420,11 @@ argument_specs:
420420
required: false
421421
description: "Customize default kube-scheduler arguments."
422422

423+
rke2_ingress_controller:
424+
type: str
425+
default: "nginx-ingress"
426+
description: "Ingress controller to use (nginx-ingress, traefik, or none)"
427+
423428
rke2_ingress_nginx_values:
424429
type: dict
425430
default: {}

tasks/first_server_restore.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,5 @@
1313
delete node {{ item }} 2>&1 || true
1414
args:
1515
executable: /bin/bash
16-
with_items: "{{ node_names.stdout_lines | difference(groups[rke2_cluster_group_name] ) }}"
16+
with_items: "{{ node_names.stdout_lines | difference(groups[rke2_cluster_group_name]) }}"
1717
changed_when: false

tasks/main.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@
7878

7979
- name: Rolling cordon and drain restart when version changes - agents
8080
ansible.builtin.include_tasks: rolling_restart.yml
81-
with_items: "{{ groups[rke2_agents_group_name] | default([] ) }}"
81+
with_items: "{{ groups[rke2_agents_group_name] | default([]) }}"
8282
loop_control:
8383
loop_var: _host_item
8484
when:

templates/config.yaml.j2

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,3 +99,6 @@ service-cidr: "{% for network in rke2_service_cidr %}{{ network }}{% if not loop
9999
{% if (rke2_selinux | bool ) %}
100100
selinux: true
101101
{% endif %}
102+
{% if rke2_type == 'server' %}
103+
ingress-controller: {{ rke2_ingress_controller }}
104+
{% endif %}

0 commit comments

Comments
 (0)