Traefik-hub deployment
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
Adrien Reslinger 2022-06-24 02:25:41 +02:00
parent 7ced7add47
commit e76a31ffeb
Signed by: adrien
GPG key ID: DA7B27055C66D6DE
3 changed files with 54 additions and 6 deletions

View file

@ -102,7 +102,6 @@
kubernetes.core.helm_repository: kubernetes.core.helm_repository:
name: traefik name: traefik
repo_url: "https://helm.traefik.io/traefik" repo_url: "https://helm.traefik.io/traefik"
tags: traefik
- name: Deploy latest version of Traefik - name: Deploy latest version of Traefik
kubernetes.core.helm: kubernetes.core.helm:
context: "{{ my_context }}" context: "{{ my_context }}"
@ -129,4 +128,21 @@
# - traefik-svc.yml.j2 # - traefik-svc.yml.j2
# - traefik-defaultbackend.yml.j2 # - traefik-defaultbackend.yml.j2
- name: Defined traefik-hub repository
kubernetes.core.helm_repository:
name: traefik-hub
repo_url: "https://helm.traefik.io/hub"
when:
- traefik_hub_token is defined
- name: Deploy latest version of Traefik-hub
kubernetes.core.helm:
context: "{{ my_context }}"
name: hub-agent
chart_ref: traefik-hub/hub-agent
release_namespace: "{{ traefik_namespace }}"
values:
token: "{{ traefik_hub_token }}"
when:
- traefik_hub_token is defined
tags: traefik tags: traefik

View file

@ -35,6 +35,14 @@ data:
# - crowdsec-bouncer@file # - crowdsec-bouncer@file
traefik: traefik:
address: ":9000/tcp" address: ":9000/tcp"
metrics:
address: ":9100/tcp"
{% if traefik_hub_token is defined %}
traefikhub-api:
address: ":9900"
traefikhub-tunl:
address: ":9901"
{% endif%}
{% for traefik_entrypoint in traefik_entrypoints %} {% for traefik_entrypoint in traefik_entrypoints %}
{{ traefik_entrypoint.name }}: {{ traefik_entrypoint.name }}:
address: :{{ traefik_entrypoint.port }} address: :{{ traefik_entrypoint.port }}
@ -62,14 +70,18 @@ data:
watch: true watch: true
metrics: metrics:
prometheus: prometheus:
entryPoint: traefik entryPoint: metrics
addRoutersLabels: true
ping: ping:
entryPoint: traefik entryPoint: traefik
api: api:
dashboard: true dashboard: true
{% if traefik_hub_token is defined %}
hub: {}
{% endif %}
log: log:
level: WARN level: ERROR
format: json # format: json
accessLog: {} accessLog: {}
#accessLog: #accessLog:
# filePath: "/var/log/traefik/access.log" # filePath: "/var/log/traefik/access.log"
@ -81,3 +93,9 @@ data:
## BackendName: keep ## BackendName: keep
## BackendURL: keep ## BackendURL: keep
## FrontendName: keep ## FrontendName: keep
experimental:
# kubernetesGateway: true
http3: true
{% if traefik_hub_token is defined %}
hub: true
{% endif %}

View file

@ -1,6 +1,7 @@
# https://github.com/traefik/traefik-helm-chart/blob/master/traefik/values.yaml # https://github.com/traefik/traefik-helm-chart/blob/master/traefik/values.yaml
#image: #image:
# tag: "{{ traefik_version }}" # tag: "{{ traefik_version }}"
#fullnameOverride: "{{ my_context }}"
additionalArguments: additionalArguments:
- --configFile=/etc/traefik/traefik.yaml - --configFile=/etc/traefik/traefik.yaml
#podSecurityPolicy: #podSecurityPolicy:
@ -35,8 +36,9 @@ autoscaling:
resource: resource:
name: memory name: memory
targetAverageUtilization: 60 targetAverageUtilization: 60
{% if traefik_service_type == "NodePort" and false %} {% if traefik_service_type == "NodePort" or traefik_hub_token is defined %}
ports: ports:
{% if traefik_service_type == "NodePort" and false %}
web: web:
# redirectTo: websecure # redirectTo: websecure
# hostPort: 80 # hostPort: 80
@ -48,6 +50,14 @@ ports:
# enabled: true # enabled: true
# options: default # options: default
{% endif %} {% endif %}
{% if traefik_hub_token is defined %}
traefikhub-tunl:
port: 9901
expose: true
exposedPort: 9901
protocol: "TCP"
{% endif %}
{% endif %}
volumes: volumes:
- mountPath: /etc/traefik - mountPath: /etc/traefik
name: traefik-conf name: traefik-conf
@ -61,7 +71,7 @@ volumes:
deployment: deployment:
replicas: 1 replicas: 1
podAnnotations: podAnnotations:
prometheus.io/port: '9000' prometheus.io/port: '9100'
prometheus.io/scrape: 'true' prometheus.io/scrape: 'true'
experimental: experimental:
http3: http3:
@ -70,3 +80,7 @@ experimental:
enabled: true enabled: true
kubernetesGateway: kubernetesGateway:
enabled: false enabled: false
{% if traefik_hub_token is defined %}
hub:
enabled: true
{% endif %}