Skip to content

ExternalDNS ​

ExternalDNS pitää Frostmoln Hallittu DNS -vyöhykkeidesi tietueet synkronoituina Kubernetes-resurssien Ingress, Service ja Gateway API kanssa — mistä tahansa Kubernetes-klusterista. Kun julkaiset työkuorman, sen isäntänimen tietueet luodaan, päivitetään ja siivotaan automaattisesti; et koskaan muokkaa DNS:ää käsin.

Frostmoln toimittaa webhook-tarjoajan, joka toimii sivuvaununa (sidecar) external-dns-podissa ja kääntää ExternalDNS:n suunnitelmat kutsuiksi Frostmolnin DNS-API:a vasten.

Edellytykset ​

  • Frostmoln DNS -vyöhyke verkkotunnukselle, johon haluat tietueita — katso Hallittu DNS luodaksesi sellaisen.
  • Tunnus webhookille, jompikumpi seuraavista:
  • Lähtevä HTTPS-yhteys työsolmuistasi osoitteeseen registry.k8s.io. Ylävirran ExternalDNS-ohjainvedos haetaan sieltä, kun podi käynnistyy — vain Frostmolnin webhook-vedos on esiladattu solmuihisi, ja vain lisäosan uusimmalle versiolle: klusteri, joka on kiinnitetty aiempaan external-dns-versioon, hakee kyseisen version webhook-vedoksen osoitteesta registry.sweden.frostmoln.cloud solmuilla, jotka on rakennettu version korvaamisen jälkeen, joten salli myös tämä isäntä (tai siirrä kiinnitys). Jos suodatat lähtevää liikennettä isäntänimen perusteella, pelkkä registry.k8s.io ei riitä: haku ohjataan pilvipohjaisiin taustavarastoihin muissa verkkotunnuksissa. Ilman tätä ohjaincontaineri jää tilaan ImagePullBackOff, eikä alusta voi varoittaa sinua — saavutettavuus kuuluu VPC:hesi, ei meille.

Näin se toimii ​

  • Tietueet — webhook listaa tenantin vyöhykkeet ja tietuejoukot ja palauttaa ne ExternalDNS:lle päätepisteinä (yksi tietuejoukko = yksi (nimi, tyyppi) kaikkine arvoineen).
  • Käyttöönotto — luonnit ja päivitykset menevät DNS-API:n idempotentin, kokoelmatason upsertin kautta; poistot ratkaistaan tietuejoukon pysyvän ID:n kautta.
  • Verkkotunnussuodatin — oletuksena webhook hakee tenantin vyöhykenimet käynnistyksessä ja hallitsee vain niitä. Luo uusi vyöhyke → käynnistä podi uudelleen, jotta se poimitaan mukaan (tai aseta DOMAIN_FILTER nimenomaisesti).
  • Omistajuus — käytä ExternalDNS:n oletusarvoista TXT-rekisteriä (--registry=txt ja --txt-owner-id=<klusteri-id>), jotta tietuetta muuttaa vain sen luonut klusteri. TXT-tietuejoukot kulkevat API:n läpi muuttumattomina.

Asennus ​

Frostmoln Hallittu Kubernetes -ympäristössä ExternalDNS Frostmoln-webhookilla on yhden klikkauksen klusterilisäosa. Valitse external-dns klusteria luotaessa tai lisää se jo käynnissä olevaan klusteriin (portaali → klusterin Lisäosat-välilehti, fm kubernetes cluster add-addons, tai addons-joukko API:ssa/Terraform-resurssissa), niin alusta asentaa kaiken puolestasi — external-dns-nimiavaruuden, RBAC:n, ExternalDNS-ohjaimen ja Frostmoln-webhook-sivuvaunun, ja --txt-owner-id on valmiiksi asetettu klusterin id:ksi. Alusta tarjoaa webhook-vedoksen: lisäosan uusimmalle versiolle se on esiasennettu klusterin solmuihin, ja aiempi kiinnitetty versio hakee sen osoitteesta registry.sweden.frostmoln.cloud (katso edellytykset). Et koskaan rakenna tai viittaa siihen itse.

Ainoa sinulle jäävä vaihe on tunnus: Workload Identity -sidonta (suositeltu) tai API-avain-Secret. Kunnes jompikumpi on olemassa, webhook-kontti päättyy lisäosaversiossa v0.22.0-4 virheeseen no credential ja käynnistyy uudelleen (CrashLoopBackOff). Aiemmissa versioissa se odottaa tilassa CreateContainerConfigError. Luo DNS-vyöhykkeesi ensin (tai käynnistä external-dns-Deployment uudelleen sen luomisen jälkeen).

Lisää se luontihetkellä tai myöhemmin

Lisäosan voi valita klusteria luotaessa ja lisätä jo käynnissä olevaan klusteriin. Jälkikäteen lisääminen ei tapahdu heti: lisäys käynnistää oman synkronointinsa ja lisäosa asennetaan tyypillisesti muutamassa minuutissa; jos synkronointia ei voida käynnistää, lisäosa asennetaan vasta alustan seuraavassa synkronoinnissa, enintään tunnin kuluessa. Klusterin lisäosaluettelo näyttää uuden valintasi heti kun se on hyväksytty — se on tekemäsi valinta, ei todiste siitä, että objektit ovat jo klusterissa.

Sen poistaminen on erillinen, nimetty toimenpide. API:ssa ja Terraformissa lähetät aina koko halutun lisäosajoukon, et vain uutta avainta — ja joukko, joka yksinkertaisesti jättää external-dns:n pois, hylätään, koska vanhentuneen klusterinäkymän perusteella rakennettu pyyntö poistaisi muuten lisäosan, johon et koskaan aikonut koskea. Nimeä sen sijaan poistettava: portaalin Poista- painike, fm kubernetes cluster remove-addons tai API-pyynnön remove-kenttä. Terraformissa addons-joukosta poistettu avain toteutetaan nyt paikan päällä klusterin korvaamisen sijaan. API:ssa ja Terraformissa lähetät aina koko halutun lisäosajoukon, et vain uutta avainta.

Jotkin ennen tämän ominaisuuden julkaisua luodut klusterit eivät voi ottaa vastaan uusia lisäosia lainkaan; API kertoo siitä, kun yrität, ja silloin ainoa tie on luoda klusteri uudelleen lisäosa valittuna. ExternalDNS Frostmoln-webhookilla on tällä hetkellä saatavilla vain Frostmoln Hallitussa Kubernetesissa.

Hallittu Kubernetes: ota lisäosa käyttöön ​

Frostmoln Hallittu Kubernetes -ympäristössä helpoin tapa on external-dns-klusterilisäosa: valitse se klusteria luotaessa tai lisää se jo käynnissä olevaan klusteriin (portaali → klusterin Lisäosat-välilehti, fm kubernetes cluster add-addons, tai addons-joukko API:ssa/Terraform-resurssissa), niin alusta asentaa kaiken tässä oppaassa kuvatun — external-dns-nimiavaruuden, RBAC:n ja Deploymentin, ja --txt-owner-id on valmiiksi asetettu klusterin id:ksi.

Ainoa manuaalinen vaihe on tunnus. Katso Todenna Workload Identityllä (suositeltu) tai Tallenna API-avain.

Lisätään jälkikäteen, ja voidaan poistaa

Lisäosan voi lisätä myös klusteriin, joka on jo käynnissä, jolloin lisäys käynnistää oman synkronointinsa ja se asennetaan tyypillisesti muutamassa minuutissa; jos synkronointia ei voida käynnistää, se asennetaan vasta alustan seuraavassa synkronoinnissa, enintään tunnin kuluessa. Sen voi poistaa samalla tavalla — portaalin Lisäosat-välilehdeltä, komennolla fm kubernetes cluster remove-addons tai poistamalla avaimen. Ennen kunkin ominaisuuden julkaisua luotu klusteri ei voi ottaa sitä vastaan tai ei voi poistaa sitä, ja se kertoo siitä kun yrität; luo klusteri uudelleen tai ota manifesti itse käyttöön kohdan Ota käyttöön mukaisesti.

Poisto jättää DNS-tietueesi jäljelle. ExternalDNS omistaa luomansa tietueet, eikä ohjaimen poistaminen poista niitä — mikään ei hallitse niitä sen jälkeen. Jos myöhemmin poistat kuormantasaajan, johon tällainen tietue osoittaa, osoite palaa varantoon ja se voidaan antaa jollekin muulle, vaikka tietueesi yhä osoittaa siihen. Lisäosan valitseminen uudelleen samaan klusteriin palauttaa sen omat tietueet sen hallintaan.

Workload Identityä käytettäessä poista lisäosan sidonta (tai aja sille terraform destroy) sen käyttöoikeuden peruuttamiseksi. Avainta ei jää jäljelle.

API-avainta käytettäessä myös nimiavaruus external-dns ja frostmoln-dns-salaisuutesi säilyvät. Salaisuus sisältää Frostmolnin API-avaimen, eikä salaisuuden poistaminen mitätöi avainta. Toimi tässä järjestyksessä:

  1. Jos jokin muu käyttää samaa avainta, anna sille ensin oma avain.

  2. Mitätöi tämä avain. Vain sen luonut käyttäjä voi tehdä sen: portaalin kohdassa Asetukset → API-avaimet tai komennoilla fm account api-key list ja fm account api-key revoke. Kaikki avaimet alkavat merkkijonolla fmk_, joten vertaa avaimen 12 ensimmäistä merkkiä listattuun avaimen etuliitteeseen. Lue ne salaisuudesta:

    bash
    kubectl -n external-dns get secret frostmoln-dns -o jsonpath='{.data.api-key}' | base64 -d | cut -c1-12
  3. Poista salaisuus vasta sen jälkeen — alusta ei näytä koko avainta enää koskaan, joten lue etuliite ennen kuin salaisuus on poistettu.

Jos ExternalDNS:ää ei ole vielä poistettu, se kirjaa mitätöinnin jälkeen todennusvirheitä, kunnes se on poistettu; älä laita tähän salaisuuteen uutta avainta virheiden hiljentämiseksi. Jos haluat valita lisäosan myöhemmin uudelleen, luo uusi avain ja salaisuus.

Klusterin korvaaminen: ota sen tietueet haltuun ​

ExternalDNS muuttaa vain tietueita, joiden TXT-omistajuustietue nimeää sen oman klusterin tunnuksen. Uudella klusterilla on uusi tunnus, joten se ei päivitä aiemman klusterin julkaisemia tietueita, ei edes samoilla nimillä. Sen lokissa lukee All records are already up to date, vaikka nimi osoittaa yhä vanhan klusterin osoitteeseen. Näin käy, kun poistat klusterin ja luot uuden, ja samoin käyttäytyy blue/green-siirto klusterista toiseen.

Kun haluat siirtää nimen uudelle klusterille, kirjoita sen TXT-tietueen omistaja uudelleen siirron yhteydessä:

  1. Hae uuden klusterin tunnus komennolla fm kubernetes cluster list.

  2. Listaa vyöhykkeen TXT-tietueet komennolla fm dns record list <zone-id> --type TXT -o json. ExternalDNS nimeää jokaisen niistä omistamansa tietueen mukaan tietuetyyppi edessä, joten a-www.example.com omistaa A-tietueen www.example.com. Arvo sisältää external-dns/owner=<vanha klusterin tunnus>.

  3. Kopioi arvo täsmälleen ja vaihda vain tunnus kohdan external-dns/owner= jälkeen:

    bash
    fm dns record update <zone-id> <txt-record-id> --value '<arvo uudella klusterin tunnuksella>'

Minuutin kuluessa uuden klusterin ExternalDNS käsittelee tietuetta omanaan ja osoittaa sen uuteen osoitteeseen. Jos vanha klusteri on yhä käynnissä, se lakkaa hallitsemasta nimeä samalla hetkellä.

Kirjoita uudelleen nimen kaikki omistajuustietueet ennen kuin siirryt seuraavaan nimeen. Niitä on yksi tietuetyyppiä kohden (A, AAAA, CNAME), eikä kumpikaan klusteri hallitse nimeä, jonka jokin omistajuustietue on yhä vanhalla tunnuksella. Jokerimerkkinimen *.example.com omistaa a-*.example.com. Tämä ei toimi vyöhykkeen apex-nimelle, koska sen omistajuustietue olisi vyöhykkeen ulkopuolella.

Älä sen sijaan käytä vanhaa tunnusta uuden klusterin --txt-owner-id-arvona. Hallitussa lisäosassa alusta asettaa arvon, ja kaksi käynnissä olevaa klusteria samalla omistajatunnuksella poistavat toistensa tietueita.

Todenna Workload Identityllä (suositeltu) ​

Lisäosaversiosta v0.22.0-4 alkaen webhook todentaa Workload Identityllä. Alusta luo sille lyhytikäisen, vyöhykkeeseen rajatun tunnisteen ja uusii sen suunnilleen tunnin välein. Luotavaa, Secretiin tallennettavaa, kierrätettävää tai mitätöitävää API-avainta ei ole, eikä mitään päädy Terraform-tilaasi. Lisäosan palvelutili (external-dns nimiavaruudessa external-dns) on jo liitetty mukaan, joten sinun tarvitsee vain myöntää sille käyttöoikeus.

Tarvitset:

  1. Workload Identity -lisäosan samaan klusteriin. Katso Workload Identity → Vaihe 1.
  2. external-dns-lisäosan version v0.22.0-4 tai uudemman. Siirrä olemassa olevan klusterin kiinnitys komennolla fm kubernetes cluster pin-addons <cluster-id> --version external-dns=v0.22.0-4, portaalin Lisäosat-välilehdellä tai Terraformin addon_versions-asetuksella.
  3. Sidonnan kohteelle external-dns/external-dns sekä käyttöoikeuskäytännön, joka sallii sen listata vyöhykkeet sekä lukea, päivittää ja poistaa hallitsemissaan vyöhykkeissä. Tietueen luominen tai muuttaminen lasketaan sen omistavan vyöhykkeen päivitykseksi, ja tietueen poistaminen lasketaan poistoksi kyseisessä vyöhykkeessä. Rajaa tämä sääntö vyöhykkeesi id:hen:
hcl
resource "frostmoln_workload_identity_binding" "external_dns" {
  cluster_id      = frostmoln_kubernetes_cluster.prod.id
  namespace       = "external-dns"
  service_account = "external-dns"
}

data "frostmoln_iam_policy_document" "external_dns" {
  rule {
    name       = "list-zones"
    access     = "allow"
    operations = ["network:dns-zones:list"]
    targets    = ["frn:network:*:*:dns-zones/*"]
  }

  rule {
    name       = "manage-zone"
    access     = "allow"
    operations = ["network:dns-zones:read", "network:dns-zones:update", "network:dns-zones:delete"]
    targets    = ["frn:network:*:*:dns-zones/${frostmoln_dns_zone.example.id}"]
  }
}

resource "frostmoln_iam_policy" "external_dns" {
  name     = "external-dns"
  document = data.frostmoln_iam_policy_document.external_dns.json
}

resource "frostmoln_iam_policy_attachment" "external_dns" {
  policy_id     = frostmoln_iam_policy.external_dns.id
  attachee_type = "workload_identity"
  attachee_id   = frostmoln_workload_identity_binding.external_dns.id
}

network:dns-zones:delete sallii myös vyöhykkeen poistamisen

Tietueilla ei vielä ole omaa oikeuttaan, joten oikeus, jota external-dns tarvitsee tietueen poistamiseen, sallii samalla tunnistetiedon poistaa koko vyöhykkeen, johon se on rajattu. Pidä sääntö rajattuna vyöhykkeisiin, joita external-dns hallitsee. Ilman delete-oikeutta external-dns julkaisee tietueita mutta ei voi koskaan poistaa niitä: poistetun Servicen tietue jää DNS:ään osoittamaan osoitteeseen, joka voidaan antaa uudelleen käyttöön, ja webhook kirjaa lokiin 403 ... does not permit network:dns-zones:delete joka minuutti.

fm-CLI:llä luo sidonta ilman oikeuksia ja liitä siihen sama käytäntö:

bash
fm kubernetes workload-identity binding create \
  --cluster <cluster-id> --namespace external-dns --service-account external-dns
fm iam policy create --name external-dns --document @external-dns-policy.json
fm iam policy attach <policy-id> --type workload_identity --id <binding-id>

Kun Workload Identity -lisäosa ja sidonta ovat paikallaan, sinun ei tarvitse tehdä muuta. Tunnus kytketään podiin vain podin luontihetkellä, joten podi, joka luotiin ennen kuin Workload Identity -lisäosa oli käynnissä, ei saa sitä. Tämä koskee myös klustereita, joissa molemmat lisäosat valittiin yhtä aikaa. Workload-identityn versiosta v0.3.0-1 alkaen lisäosa käynnistää tällaisen podin itse uudelleen parin minuutin kuluessa, ja podi palaa tunnuksen kanssa. Vanhemmassa workload-identityn versiossa podi käyttää edelleen API-avainta tai, jos avainta ei ole, käynnistyy uudelleen virheellä workload identity is not injected. Siirrä klusteri uudempaan versioon:

bash
fm kubernetes cluster pin-addons <cluster-id> --version workload-identity=v0.3.0-1

Webhook lokittaa, mitä tunnusta se käyttää:

bash
kubectl -n external-dns logs deploy/external-dns -c frostmoln-webhook | grep authenticating
# ... "authenticating with the workload-identity credential"

Workload Identity menee API-avaimen edelle

Jokainen pyyntö käyttää Workload Identity -tunnistetta aina, kun sellainen on olemassa, ja palaa frostmoln-dns-API-avaimeen vain, kun tunnistetta ei ole. Näin käy esimerkiksi, kun Workload Identity -lisäosa on asennettu mutta external-dns:lle ei ole sidontaa. Siksi voit siirtyä ilman katkoa: lisää sidonta, tarkista yllä oleva lokirivi ja mitätöi sitten avain ja poista sen Secret. Jos sidonta poistetaan, sen viimeinen tunniste vanhenee noin tunnin kuluessa. Sen jälkeen webhookin pyynnöt epäonnistuvat virheellä 401, kunnes sidonta on taas olemassa. Avainta ei käytetä varalla, kun vanhentunut tunniste on yhä levyllä.

Tallenna API-avain (varavaihtoehto) ​

Käytä API-avainta, kun Workload Identity ei ole käytettävissä: klusterissa ilman Workload Identity -lisäosaa, lisäosaversioissa ennen v0.22.0-4 tai kun otat alla olevan manifestin käyttöön itse. Laita tenant-API-avain Secretiin, jota webhook voi lukea:

bash
kubectl create namespace external-dns   # ohita, jos lisäosa on jo luonut sen
kubectl create secret generic frostmoln-dns \
  --namespace external-dns \
  --from-literal=api-key=fmk_...

Ota käyttöön ​

Hallitussa Kubernetesissa lisäosan kanssa voit ohittaa tämän osion — vain yllä oleva Secret tarvitaan.

Alla oleva manifesti suorittaa external-dns:n Frostmoln-webhookin kanssa sivuvaununa sekä ServiceAccountin ja RBAC:n, joita external-dns tarvitsee. Korvaa <klusteri-id> arvolla, joka on yksilöllinen tälle klusterille — se leimaa TXT-omistajuustietueet, jotta useat klusterit voivat turvallisesti jakaa vyöhykkeen. Podi määrittelee koko restricted-Pod Security -sopimuksen (Hallittu Kubernetes valvoo sitä koko klusterissa; eksplisiittinen runAsUser on tärkeä, koska ylävirran external-dns-vedos toimii root-käyttäjänä).

Hallitussa Kubernetesissa alusta esilataa webhook-vedoksen solmuihisi, ja vedos sijaitsee Frostmolnin sisäisessä rekisterissä, johon klusterisi ei yllä — joten <webhook-image> ei ole sinun valintasi. Sen on oltava viite, joka on jo solmuissa; mikä tahansa muu arvo jättää sivuvaunun tilaan ImagePullBackOff. Lue se klusterista ja liitä se sellaisenaan:

bash
kubectl get nodes -o json \
  | jq -r '.items[].status.images[]?.names[]?' \
  | grep 'external-dns-frostmoln-webhook:' | sort -u

Useampi kuin yksi viite tarkoittaa, että solmuvarantosi kattaa kaksi solmuvedossukupolvea: käytä sitä, joka on jokaisessa solmussa, tai päivitä varanto niin että ne täsmäävät. Jos tulostetta ei tule lainkaan, vedosta ei ole listattu kuormitetussa solmussa — kokeile yhtä solmua kerrallaan (kubectl get node <name> -o json) tai ota yhteyttä tukeen.

yaml
apiVersion: v1
kind: ServiceAccount
metadata:
  name: external-dns
  namespace: external-dns
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  name: external-dns
rules:
  - apiGroups: ['']
    resources: ['services', 'endpoints', 'pods', 'nodes']
    verbs: ['get', 'watch', 'list']
  - apiGroups: ['discovery.k8s.io']
    resources: ['endpointslices']
    verbs: ['get', 'watch', 'list']
  - apiGroups: ['extensions', 'networking.k8s.io']
    resources: ['ingresses']
    verbs: ['get', 'watch', 'list']
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: external-dns
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: external-dns
subjects:
  - kind: ServiceAccount
    name: external-dns
    namespace: external-dns
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: external-dns
  namespace: external-dns
spec:
  replicas: 1
  strategy:
    type: Recreate
  selector:
    matchLabels:
      app: external-dns
  template:
    metadata:
      labels:
        app: external-dns
    spec:
      serviceAccountName: external-dns
      securityContext:
        runAsNonRoot: true
        runAsUser: 65532
        runAsGroup: 65532
        seccompProfile:
          type: RuntimeDefault
      containers:
        - name: external-dns
          image: registry.k8s.io/external-dns/external-dns:v0.21.0
          args:
            - --source=ingress
            - --source=service
            - --provider=webhook
            - --registry=txt
            - --txt-owner-id=<cluster-id>
          securityContext:
            readOnlyRootFilesystem: true
            allowPrivilegeEscalation: false
            capabilities:
              drop: [ALL]
        - name: frostmoln-webhook
          image: <webhook-image>
          imagePullPolicy: IfNotPresent
          env:
            - name: FROSTMOLN_API_KEY
              valueFrom:
                secretKeyRef:
                  name: frostmoln-dns
                  key: api-key
          ports:
            - containerPort: 8080
              name: http
          livenessProbe:
            httpGet:
              path: /healthz
              port: http
          readinessProbe:
            httpGet:
              path: /healthz
              port: http
          securityContext:
            readOnlyRootFilesystem: true
            allowPrivilegeEscalation: false
            capabilities:
              drop: [ALL]

Ota se käyttöön:

bash
kubectl apply -f external-dns.yaml

Webhook-API kuuntelee vain podin loopback-osoitetta — se on sopimuksen mukaan todentamaton ja hylkää minkä tahansa muun sidontaosoitteen — ja FROSTMOLN_API_URL:n on oltava https. Molemmat pakotetaan käynnistyksessä.

Konfigurointi ​

Lisäosa asettaa järkevät oletusarvot. Säätääksesi webhook-sivuvaunua, muokkaa external-dns-Deploymentia ja aseta nämä ympäristömuuttujat:

MuuttujaOletusKuvaus
FROSTMOLN_WORKLOAD_CREDENTIALS_FILEWorkload Identityn asettamaWorkload Identityn tunnistetiedosto. Alusta injektoi sen; älä aseta sitä itse
FROSTMOLN_API_KEY—Tenant-API-avain (fmk_...). Ei tarvita Workload Identityn kanssa
FROSTMOLN_API_KEY_FILE—Lue avain sen sijaan liitetystä tiedostosta, jotta se pysyy poin ympäristön ulkopuolella
FROSTMOLN_API_URLhttps://api.frostmoln.cloud/apiAsiakas-API:n perus-URL (oltava https)
FROSTMOLN_TENANT_IDjohdetaan avaimestaTenantin ohitus
DOMAIN_FILTERvyöhykenimesiPilkulla erotellun verkkotunnussuodattimen ohitus
ZONE_CACHE_TTL1mKuinka kauan vyöhykeluetteloa pidetään välimuistissa
DRY_RUNfalseKirjaa muutokset, jotka ExternalDNS tekisi, ottamatta niitä käyttöön

Huomautukset ja varaukset ​

  • Julkiset vyöhykkeet hylkäävät yksityiset ja loopback-kohteet. Julkisen vyöhykkeen A/AAAA-tietueen on osoitettava reititettävään osoitteeseen — kuormantasaajaan tai julkiseen IP:hen, ei klusterin sisäiseen IP:hen. Sisäisille nimille käytä yksityistä (vpcId) vyöhykettä.
  • Delegoi vyöhyke ennen kuin odotat julkista nimenselvitystä. Vyöhyke vastaa internetissä vasta, kun verkkotunnuksesi on delegoitu sen nimipalvelimiin — katso Hallittu DNS → Delegoi verkkotunnuksesi.
  • Uudet vyöhykkeet vaativat webhookin uudelleenkäynnistyksen. Verkkotunnussuodatin haetaan kerran käynnistyksessä, joten käynnistä external-dns-podi uudelleen luotuasi vyöhykkeen, jota haluat ExternalDNS:n hallitsevan.
  • TXT-omistajuutta tuetaan natiivisti — pidä --registry=txt ja klusterikohtaisesti yksilöllinen --txt-owner-id, jotta useat klusterit voivat turvallisesti jakaa vyöhykkeen. Korvaavan klusterin on otettava edeltäjänsä tietueet haltuun.

Liittyvät ​