mirror of
https://github.com/kubernetes-sigs/external-dns.git
synced 2025-08-07 01:56:57 +02:00
The new BlueCat provider uses the BlueCat API Gateway(REST API). Not the legacy XML based BlueCat API. https://github.com/bluecatlabs/gateway-workflows
65 lines
1.6 KiB
Markdown
65 lines
1.6 KiB
Markdown
# Setting up external-dns for BlueCat
|
|
|
|
## Prerequisites
|
|
Install the BlueCat Gateway product and deploy the [community gateway workflows](https://github.com/bluecatlabs/gateway-workflows).
|
|
|
|
## Deploy
|
|
Setup configuration file as k8s `Secret`.
|
|
```
|
|
cat << EOF > ~/bluecat.json
|
|
{
|
|
"gatewayHost": "https://bluecatgw.example.com",
|
|
"gatewayUsername": "user",
|
|
"GatewayPassword": "pass",
|
|
"dnsConfiguration": "Example",
|
|
"dnsView": "Internal",
|
|
"rootZone": "example.com"
|
|
}
|
|
EOF
|
|
kubectl create secret generic bluecatconfig --from-file ~/bluecat.json -n bluecat-example
|
|
```
|
|
|
|
Setup up deployment/service account:
|
|
```
|
|
apiVersion: v1
|
|
kind: ServiceAccount
|
|
metadata:
|
|
name: external-dns
|
|
namespace: bluecat-example
|
|
---
|
|
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: external-dns
|
|
namespace: bluecat-example
|
|
spec:
|
|
selector:
|
|
matchLabels:
|
|
app: external-dns
|
|
strategy:
|
|
type: Recreate
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: external-dns
|
|
spec:
|
|
serviceAccountName: external-dns
|
|
volumes:
|
|
- name: bluecatconfig
|
|
secret:
|
|
secretName: bluecatconfig
|
|
containers:
|
|
- name: external-dns
|
|
image: k8s.gcr.io/external-dns/external-dns:$TAG # no released versions include the bluecat provider yet
|
|
volumeMounts:
|
|
- name: bluecatconfig
|
|
mountPath: "/etc/external-dns/"
|
|
readOnly: true
|
|
args:
|
|
- --log-level=debug
|
|
- --source=service
|
|
- --provider=bluecat
|
|
- --txt-owner-id=bluecat-example
|
|
- --bluecat-config-file=/etc/external-dns/bluecat.json
|
|
```
|