Maqaalkan, waxaan rabaa in aan ka hadlo laba sifo oo ka mid ah NGINX Ingress oo la xidhiidha muujinta boggaga khaladka shakhsi ahaaneed, iyo sidoo kale xaddidaadaha ka jira iyaga iyo siyaabaha looga shaqeeyo iyaga.
1. Beddelidda dhabarka dambe
Sida caadiga ah, NGINX Ingress waxay isticmaashaa dhabarka asalka ah, kaas oo qabta shaqada u dhiganta. Tani waxay ka dhigan tahay marka la codsanayo soo-galitaanka oo qeexaya martigeliyaha aan ku jirin agabka gudaha, waxaan heleynaa bogga soo socda oo leh 404 summada jawaabta:
Si kastaba ha ahaatee, marar badan iyo marar badan macaamiisheena waxay la yimaadaan codsi ah inay muujiyaan boggooda oo leh calaamadda shirkadda iyo adeegyada kale halkii ay ka ahaan lahaayeen heerka 404. Si tan loo sameeyo, NGINX Ingress ayaa leh karti ku dhisan dib u qeexid default-backend-service. Waxaanu u gudbinaa qaabka gelitaanka dood ahaan ikhtiyaarka isla magaca namespace/servicename. Dekadda adeeggu waa inay noqotaa 80.
Si tan loo sameeyo, waxaad u baahan tahay inaad abuurto sanduuqaaga (diridda) iyo adeegga codsigaaga (tusaale ahaan fulinta YAML Laga soo bilaabo kaydka ingress-nginx), kaas oo la siin doono bedelkii dhabarka hore.
Halkan waxaa ah sawir yar:
~$ curl -i -XGET http://sadsdasdas.kube-cloud.my/
HTTP/1.1 404 Not Found
Date: Mon, 11 Mar 2019 05:38:15 GMT
Content-Type: */*
Transfer-Encoding: chunked
Connection: keep-alive
<span>The page you're looking for could not be found.</span>
Markaa dhammaan domains-yada aan si cad loogu abuurin YAML leh kind: Ingress, ku dhaca dhabarka dambe. Liiska sare, domainkani wuxuu noqday sadsdasdas.
2. Wax ka qabashada khaladaadka HTTP ee arjiga iyadoo la isticmaalayo dhabarka caadiga ah
Xaalad kale ayaa ah codsiyada ku dhamaanaya khaladaadka HTTP (404, 500, 502...) codsi aan ka shaqaynayn xaaladahan oo kale (bogagga quruxda badan ee u dhigma lama soo saarin). Tani waxay sidoo kale laga yaabaa inay sabab u tahay rabitaanka horumarinta si ay ugu adeegaan bogag qalad ah oo isku mid ah codsiyo badan.
Si loo hirgeliyo kiiskan dhinaca server-ka waxaan u baahanahay:
Raac tilmaamaha kore ee cutubka ku saabsan dhabarka dambe;
Ku dar furaha isku xidhka nginx-ingress ConfigMap custom-http-errors, tusaale ahaan, oo leh qiimaha 404,503 (sida cad waxay u dhigantaa koodka qaladka ee uu daboolayo qaanuunka cusub).
Natiijadii la filayey waa la gaarey: marka codsiga macmiilku uu socdo oo uu helo qalad leh lambarka jawaabta 404 ama 503, codsiga waxaa si toos ah loogu wareejin doonaa dhabarka cusub ee asalka ah...
Si kastaba ha ahaatee, marka la samaynayo arji loogu talagalay dhabarka dambe iyo caadada-http- khaladaadka, waxaad u baahan tahay inaad tixgeliso sifo muhiim ah:
!!! Important The custom backend is expected to return the correct HTTP status code instead of 200. NGINX does not change the response from the custom default backend.
Xaqiiqdu waxay tahay in marka codsiga dib loo hagayo, madaxyadu waxay ka koobnaan doonaan macluumaad faa'iido leh oo leh koodkii jawaabta hore iyo macluumaad dheeraad ah (liiska dhamaystiran waa la heli karaa halkan).
Tani waxay la macno tahay in adiga laftaadu ay waajib tahay daryeesho code jawaabta saxda ah. Waa kan tusaale laga bilaabo dukumeentiyada sida ay u shaqeyso.
Codsiyada kala duwan waxay leeyihiin dib-u-celin hore oo kala duwan
Si loo hubiyo in xalku aanu ahayn mid caalami ah kooxda oo dhan, laakiin ay khusayso codsiyada gaarka ah, marka hore waxaad u baahan tahay inaad hubiso nooca Ingress-ka. Haddii ay ku habboon tahay 0.23 ama ka badan, adeegso sharraxaadda Ingress-ka asalka ah:
Π Noocyadii hore ee Ingress ma lahayn sifadan (Qiimaha ugu sarreeya saamiyada 0.23). Oo haddii aad haysato 2 codsi oo kala duwan oo ku dhex jira kooxdaada oo aad rabto inaad qeexdo adeeg-backend-ka duwan oo kala duwan iyo habaynta koodhadhka khaladaadka kala duwan mid kasta oo iyaga ka mid ah, tani waa inaad isticmaashaa xalal, kuwaas oo aanu laba ka mid ah hayno.
Soo galitaanka <0.23: u wajahid mid
Doorashadan ayaa ka fudud. Codsi ahaan u adeega bogaggiisa, waxaanu leenahay HTML joogto ah, kaas oo aan garanayn sida loo eego madaxyada oo u soo celiyo koodka jawaabta saxda ah. Codsigan oo kale waxa lagu soo rogey Ingress ka url /error-pages, iyo ku jira buugga ws waxay noqon doontaa HTML-ka la soo celiyay.
Isla mar ahaantaana, arjiga aan ka baaraandegi doono qaladka, gudaha Ingress waxaan ku darnaa server-snippet ama qaabeynta-snippet leh waxyaabaha soo socda:
Ikhtiyaar ah codsiga ka shaqayn kara madaxyada Isticmaalka gacanta (koobiyaynta) waxay kuu ogolaanaysaa inaadan bedelin goobaha caalamiga ah.
Talaabooyinka waa sida soo socota. Waxaan abuurnaa isla geynta oo wata codsi dhageysan kara cinwaannada muhiimka ah oo si sax ah uga jawaabi kara. Ku dar qayb ka mid ah server-ka codsiga Ingress oo wata nuxurka soo socda: