mirror of
https://github.com/kubernetes-sigs/external-dns.git
synced 2025-08-06 17:46:57 +02:00
Revert changes to charts/external-dns/README.md and add helm docs for docs/tutorials/cloudflare.md
This commit is contained in:
parent
1b275fc3f4
commit
a7e487d413
@ -35,35 +35,6 @@ helm upgrade --install external-dns external-dns/external-dns --version 1.14.4
|
||||
Configuring the _ExternalDNS_ provider should be done via the `provider.name` value with provider specific configuration being set via the `provider.<name>.<key>` values, where supported, and the `extraArgs` value. For legacy support `provider` can be set to the name of the provider with all additional configuration being set via the `extraArgs` value.
|
||||
See [documentation](https://kubernetes-sigs.github.io/external-dns/#new-providers) for more info on available providers and tutorials.
|
||||
|
||||
### Provider Example
|
||||
#### Setting Up ExternalDNS with CloudFlare
|
||||
To deploy ExternalDNS configured for the CloudFlare DNS provider, begin by creating a Kubernetes secret to securely store your CloudFlare API key. This key will enable ExternalDNS to authenticate with CloudFlare:
|
||||
```shell
|
||||
kubectl create secret generic cloudflare-api-key --from-literal=apiKey=YOUR_API_KEY
|
||||
```
|
||||
Ensure to replace YOUR_API_KEY with your actual CloudFlare API key.
|
||||
|
||||
Next, create a values.yaml file to configure ExternalDNS to use CloudFlare as the DNS provider. This file should include the necessary environment variables:
|
||||
```shell
|
||||
provider:
|
||||
name: cloudflare
|
||||
env:
|
||||
- name: CF_API_KEY
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: cloudflare-api-key
|
||||
key: apiKey
|
||||
- name: CF_API_EMAIL
|
||||
value: "example@example.com"
|
||||
```
|
||||
Replace your-email@example.com with the email associated with your CloudFlare account.
|
||||
|
||||
Finally, install the ExternalDNS chart with Helm using the configuration specified in your values.yaml file:
|
||||
```shell
|
||||
helm upgrade --install external-dns external-dns/external-dns --version 1.14.4 --values values.yaml
|
||||
```
|
||||
This command will configure ExternalDNS to manage DNS records using CloudFlare, based on resources present in your Kubernetes cluster.
|
||||
|
||||
### Providers with Specific Configuration Support
|
||||
|
||||
| Provider | Supported |
|
||||
|
@ -34,8 +34,36 @@ Cloudflare API has a [global rate limit of 1,200 requests per five minutes](http
|
||||
## Deploy ExternalDNS
|
||||
|
||||
Connect your `kubectl` client to the cluster you want to test ExternalDNS with.
|
||||
|
||||
Begin by creating a Kubernetes secret to securely store your CloudFlare API key. This key will enable ExternalDNS to authenticate with CloudFlare:
|
||||
```shell
|
||||
kubectl create secret generic cloudflare-api-key --from-literal=apiKey=YOUR_API_KEY
|
||||
```
|
||||
Ensure to replace YOUR_API_KEY with your actual CloudFlare API key.
|
||||
Then apply one of the following manifests file to deploy ExternalDNS.
|
||||
|
||||
### Using Helm
|
||||
|
||||
Create a values.yaml file to configure ExternalDNS to use CloudFlare as the DNS provider. This file should include the necessary environment variables:
|
||||
```shell
|
||||
provider:
|
||||
name: cloudflare
|
||||
env:
|
||||
- name: CF_API_KEY
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: cloudflare-api-key
|
||||
key: apiKey
|
||||
- name: CF_API_EMAIL
|
||||
value: "YOUR_CLOUDFLARE_EMAIL"
|
||||
```
|
||||
Replace YOUR_CLOUDFLARE_EMAIL with the email associated with your CloudFlare account.
|
||||
|
||||
Finally, install the ExternalDNS chart with Helm using the configuration specified in your values.yaml file:
|
||||
```shell
|
||||
helm upgrade --install external-dns external-dns/external-dns --version 1.14.4 --values values.yaml
|
||||
```
|
||||
|
||||
### Manifest (for clusters without RBAC enabled)
|
||||
|
||||
```yaml
|
||||
@ -66,7 +94,10 @@ spec:
|
||||
- --cloudflare-dns-records-per-page=5000 # (optional) configure how many DNS records to fetch per request
|
||||
env:
|
||||
- name: CF_API_KEY
|
||||
value: "YOUR_CLOUDFLARE_API_KEY"
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: cloudflare-api-key
|
||||
key: apiKey
|
||||
- name: CF_API_EMAIL
|
||||
value: "YOUR_CLOUDFLARE_EMAIL"
|
||||
```
|
||||
@ -135,7 +166,10 @@ spec:
|
||||
- --cloudflare-dns-records-per-page=5000 # (optional) configure how many DNS records to fetch per request
|
||||
env:
|
||||
- name: CF_API_KEY
|
||||
value: "YOUR_CLOUDFLARE_API_KEY"
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: cloudflare-api-key
|
||||
key: apiKey
|
||||
- name: CF_API_EMAIL
|
||||
value: "YOUR_CLOUDFLARE_EMAIL"
|
||||
```
|
||||
|
Loading…
Reference in New Issue
Block a user