Privaatne API vastab sinu sülearvutist ja minikube'i Pod ei jõua selleni. Enne kui muudate hostil midagi, nimeta aktiivse profiili taga olev draiver, sest see üks tõsiasi otsustab, millisest võrgust päring tegelikult väljub. Seejärel testi sama lõpp-punkti hostilt, noodilt ja Podilt. Ainult üks neist kolmest on see, mis ebaõnnestus, ja vale oletus maksab ühe pärastlõuna.

Samm 0: nimeta draiver ja päritolu

Küsi minikube'ilt, milline profiil on aktiivne ja kuidas see töötab. Konteineri draiver paneb noodi sinu masina konteinerisse, VM-i draiver paneb selle virtuaalmasinasse ja kaugdraiver paneb selle hoopis mujale.

minikube profile list
minikube status
kubectl config current-context

Kirjuta sellest üles, kust päring algab. Vastus määrab, milline resolver ja millised marsruudid loevad, ja see ei ole alati hosti oma. Kaks profiili samal sülearvutil võivad sama URL-i puhul käituda täiesti erinevalt.

ContextWhat has to work
Host processHost resolver and host route to the private destination
minikube nodeThe node's own resolver and its outbound path
PodPod DNS through cluster services plus the cluster network path

Samm 1: testi sama lõpp-punkti kolm korda

Kasuta üht ohutut lõpp-punkti ja hoia hostinimi, port ja aadressiperekond kõigis kolmes testis samad. Kui muudate neist midagi jooksude vahel, ei ole tulemused võrreldavad.

curl -sS -o /dev/null -w '%{http_code}\n' https://api.corp.example/health
minikube ssh -- curl -sS -o /dev/null -w '%{http_code}\n' https://api.corp.example/health
kubectl run probe --rm -it --image=curlimages/curl --restart=Never -- \
  curl -sS -o /dev/null -w '%{http_code}\n' https://api.corp.example/health

Noodi õnnestunud image-tõmbamine ei tõesta midagi nimede lahendamise kohta privaatse hosti jaoks. Õnnestunud avalik päring ei tõesta veel vähem. Hoia tulemused kontekstide kaupa eraldi, sest muster kolme rea ulatuses on diagnoos ja üksik ebaõnnestumine on vihje.

Kui ka hosti rida ebaõnnestub, lõpeta. Teil on hosti võrguprobleem ja klaster on tähelepanu kõrvalejuhtimine.

Samm 2: säilita hosti tee klastrini

On teine suund, mille inimesed unustavad: host peab jätkuvalt jõudma klastri enda API-ni ja teenusteni. VPN-klient võib paigaldada marsruute, mis konkureerivad prefiksitega, mida minikube kasutab oma noodivõrgu, teenusevahemiku ja podivahemiku jaoks.

Kui see juhtub, on sümptom segane, sest tunnel töötab ja kubectl lakkab vastamast või NodePort keeldub ühendustest. See näeb välja nagu klastri rike ja on sülearvuti marsruutimise rike.

Kontrolli hosti marsruutimistabelit minikube'i vahemike vastu enne, kui süüdistad tunnelit milleski muus. Kattuvus on tavaliselt näha täpsema marsruudina, mis osutab tunneliliidesele prefiksi jaoks, mida klaster ootab endale kuuluvat.

Samm 3: lahenda kattuvus VPN-i väljalülitamata

minikube'i enda VPN-i ja puhverserveri käsiraamat käsitleb neid konflikte ja kohtleb oma näitevahemikke kontrollitavate asjadena, mitte universaalse loendina. Lugege seda selle profiili kõrval, mis teil tegelikult on.

Kui tegelik kattuvus on olemas, on toetatud vastus mittekattuv vahemik või sihilik kohaliku juurdepääsu poliitika, mille on heaks kiitnud VPN-i omanik. Teenusevahemiku muutmine ei ole sama mis podivahemiku muutmine, ja kumbki ei ole sama mis noodivõrgu muutmine.

Ettevõtte tunneli väljalülitamine, et kohalik klaster töötaks, ei ole möödasõit; see on poliitikaotsus, mille peab tegema keegi teine. Viige see selle inimeseni, selle asemel et teha seda vaikselt pärast seda, kui kõik teised on koju läinud. Kui olete seda juba teinud, panage see tagasi enne, kui küsite.

Samm 4: eralda puhverserver, DNS ja neli rikkekuju

Kui puhverserver on vajalik, tehke kindlaks, milline kontekst seda vajab. Hostil olev brauseri seade ei konfigureeri noodi sees olevat protsessi ja Pod vajab keskkonnamuutujaid või klastritasemel puhverserveri konfiguratsiooni.

Seejärel liigitage rike selle kirjeldamise asemel. Nimi, mis ei lahene, on DNS. Nimi, mis laheneb ja keeldub ühendusest, on marsruutimine või kuulaja. Ühendus, mis luuakse ja ebaõnnestub identiteedis, on TLS. Õnnestunud ühendus koos veakehaga on rakendus.

Kõik need neli kuuluvad erineva paranduse juurde ja ainult üks neist puudutab VPN-i. Kirjutage üles, millist te igas kontekstis nägite, ja järgmine inimene pärib tõendid, mitte loo.

Seotud artiklid