feat: added external-dns with digitalocean configuration

master
Sven Ketelsen 4 years ago
parent 299f7a53b2
commit bc39cdbb04

@ -27,5 +27,6 @@
- { role: kubernetes/cloud-controller-manager } - { role: kubernetes/cloud-controller-manager }
- { role: kubernetes/container-storage-interface } - { role: kubernetes/container-storage-interface }
- { role: kubernetes/cert-manager } - { role: kubernetes/cert-manager }
- { role: kubernetes/external-dns }
- { role: kubernetes/ingress-controller } - { role: kubernetes/ingress-controller }
- { role: kubernetes/apps } - { role: kubernetes/apps }

@ -0,0 +1,30 @@
---
k8s_prometheus_helm__name: "prometheus"
k8s_externaldns_helm__chart_ref: external-dns
k8s_externaldns_helm__chart_repo_url: https://kubernetes-sigs.github.io/external-dns/
k8s_externaldns_helm__chart_version: v1.6.0
k8s_externaldns_helm__release_namespace: external-dns
k8s_externaldns_helm__release_values:
provider: digitalocean
env:
- name: DO_TOKEN
valueFrom:
secretKeyRef:
name: "digitalocean-dns"
key: access-token
interval: "1m"
policy: sync
sources:
- ingress
domainFilters: [
'smardigo.digital'
]
txtOwnerId: "{{ stage }}-external-dns"
txtPrefix: "{{ stage }}"
serviceMonitor:
enabled: true
additionalLabels:
release: "{{ k8s_prometheus_helm__name }}"

@ -0,0 +1,34 @@
---
### tags:
### external-dns
- name: Install external-dns via helm
kubernetes.core.helm:
name: external-dns
chart_ref: "{{ k8s_externaldns_helm__chart_ref }}"
chart_repo_url: "{{ k8s_externaldns_helm__chart_repo_url }}"
chart_version: "{{ k8s_externaldns_helm__chart_version }}"
release_namespace: "{{ k8s_externaldns_helm__release_namespace }}"
create_namespace: yes
release_values: "{{ k8s_externaldns_helm__release_values }}"
when:
- inventory_hostname == groups['kube_control_plane'][0]
tags:
- external-dns
- name: Create secret for digitalocean-dns
kubernetes.core.k8s:
definition:
api_version: v1
kind: Secret
metadata:
namespace: "{{ k8s_externaldns_helm__release_namespace }}"
name: digitalocean-dns
type: Opaque
data:
access-token: "{{ digitalocean_authentication_token | string | b64encode }}"
when:
- inventory_hostname == groups['kube_control_plane'][0]
tags:
- external-dns
Loading…
Cancel
Save