sigs.k8s.io/external-dns@v0.14.1/docs/tutorials/gloo-proxy.md (about)

     1  # Configuring ExternalDNS to use the Gloo Proxy Source
     2  This tutorial describes how to configure ExternalDNS to use the Gloo Proxy source.
     3  It is meant to supplement the other provider-specific setup tutorials.
     4  
     5  ### Manifest (for clusters without RBAC enabled)
     6  ```yaml
     7  apiVersion: apps/v1
     8  kind: Deployment
     9  metadata:
    10    name: external-dns
    11  spec:
    12    strategy:
    13      type: Recreate
    14    selector:
    15      matchLabels:
    16        app: external-dns
    17    template:
    18      metadata:
    19        labels:
    20          app: external-dns
    21      spec:
    22        containers:
    23        - name: external-dns
    24          # update this to the desired external-dns version
    25          image: registry.k8s.io/external-dns/external-dns:v0.14.0
    26          args:
    27          - --source=gloo-proxy
    28          - --gloo-namespace=custom-gloo-system # gloo system namespace. Specify multiple times for multiple namespaces. Omit to use the default (gloo-system)
    29          - --provider=aws
    30          - --registry=txt
    31          - --txt-owner-id=my-identifier
    32  ```
    33  
    34  ### Manifest (for clusters with RBAC enabled)
    35  Could be change if you have mulitple sources
    36  
    37  ```yaml
    38  apiVersion: v1
    39  kind: ServiceAccount
    40  metadata:
    41    name: external-dns
    42  ---
    43  apiVersion: rbac.authorization.k8s.io/v1
    44  kind: ClusterRole
    45  metadata:
    46    name: external-dns
    47  rules:
    48  - apiGroups: [""]
    49    resources: ["services","endpoints","pods"]
    50    verbs: ["get","watch","list"]
    51  - apiGroups: [""]
    52    resources: ["nodes"]
    53    verbs: ["list","watch"]
    54  - apiGroups: ["gloo.solo.io"]
    55    resources: ["proxies"]
    56    verbs: ["get","watch","list"]
    57  - apiGroups: ["gateway.solo.io"]
    58    resources: ["virtualservices"]
    59    verbs: ["get", "list", "watch"]
    60  ---
    61  apiVersion: rbac.authorization.k8s.io/v1
    62  kind: ClusterRoleBinding
    63  metadata:
    64    name: external-dns-viewer
    65  roleRef:
    66    apiGroup: rbac.authorization.k8s.io
    67    kind: ClusterRole
    68    name: external-dns
    69  subjects:
    70  - kind: ServiceAccount
    71    name: external-dns
    72    namespace: default
    73  ---
    74  apiVersion: apps/v1
    75  kind: Deployment
    76  metadata:
    77    name: external-dns
    78  spec:
    79    strategy:
    80      type: Recreate
    81    selector:
    82      matchLabels:
    83        app: external-dns
    84    template:
    85      metadata:
    86        labels:
    87          app: external-dns
    88      spec:
    89        serviceAccountName: external-dns
    90        containers:
    91        - name: external-dns
    92          # update this to the desired external-dns version
    93          image: registry.k8s.io/external-dns/external-dns:v0.14.0
    94          args:
    95          - --source=gloo-proxy
    96          - --gloo-namespace=custom-gloo-system # gloo system namespace. Specify multiple times for multiple namespaces. Omit to use the default (gloo-system)
    97          - --provider=aws
    98          - --registry=txt
    99          - --txt-owner-id=my-identifier
   100  ```
   101