ProHoster > Blog > Pulega > Kubernetes fautuaga & togafiti: itulau sese masani ile NGINX Ingress
Kubernetes fautuaga & togafiti: itulau sese masani ile NGINX Ingress
I lenei tusiga, ou te fia talanoa e uiga i ni vaega se lua o le NGINX Ingress e fesoʻotaʻi ma le faʻaalia o itulau sese faʻapitoa, faʻapea foʻi ma tapulaʻa o loʻo i ai ia i latou ma auala e galue ai.
1. Suia le fa'ailoga pito i tua
Ona o le faaletonu, o le NGINX Ingress e faʻaaogaina le faʻaogaina o tua, lea e faʻatino ai galuega tutusa. O lona uiga pe a talosagaina se Ingress e faʻamaonia ai se talimalo e le oi totonu o punaoa Ingress, matou te mauaina le itulau o loʻo i lalo ma le 404 tali tali:
Ae ui i lea, o le tele ma le tele o taimi e o mai ai a matou tagata faʻatau ma se talosaga e faʻaali a latou itulau ma se logo faʻapitoa ma isi mea lelei nai lo le tulaga masani 404. Ina ia faia lenei mea, NGINX Ingress ua mafai ona fausia i totonu toe faauigaina default-backend-service. Matou te pasi le faʻailoga faʻapipiʻi e fai ma finauga i le filifiliga o le igoa tutusa namespace/servicename. O le taulaga o le tautua e tatau ona 80.
Ina ia faia lenei mea, e tatau ona e fatuina lau lava pod (deployment) ma le tautua ma lau talosaga (faʻataʻitaʻiga faʻatinoga i le YAML mai le fale teu oloa ingress-nginx), lea o le a tuʻuina atu nai lo le faʻaletonu tua.
O se fa'ata'ita'iga la'ititi lea:
~$ 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>
O lea la, vaega uma e le o faʻaalia manino e ala ile YAML ma kind: Ingress, pauu i le default-backend. I le lisi o loʻo i luga, na avea lenei vaega sadsdasdas.
2. Taulimaina o mea sese HTTP i le talosaga e faʻaaoga ai le backend le faʻaogaina
O le isi tulaga o talosaga e faʻamutaina i HTTP sese (404, 500, 502...) i se talosaga e le faʻaogaina ia tulaga (o itulau matagofie e fetaui e le gaosia). E mafai foi ona mafua lenei mea ona o le manaʻo o tagata atiaʻe e tautua ia lava itulau sese i le tele o talosaga.
Ina ia faʻatinoina lenei mataupu i le itu o le server matou te manaʻomia:
Mulimuli i fa'atonuga o lo'o i luga mai le parakalafa e uiga i le fa'aletonu i tua;
Faʻaopoopo se ki i le nginx-ingress configuration ConfigMap custom-http-errors, mo se faʻataʻitaʻiga, ma le tau 404,503 (e manino lava e fetaui ma tulafono sese o loʻo ufiufi e le tulafono fou).
Ua ausia le faʻamoemoega: pe a faʻagasolo le talosaga a le kalani ma maua se mea sese ma se tali tali o le 404 poʻo le 503, o le a otometi lava ona toe faʻafeiloaʻi le talosaga i le faʻailoga fou fou...
Ae ui i lea, pe a atiaʻe se talosaga mo le faʻaogaina o tua ma aga masani-http-sese, e tatau ona e amanaia se vaega taua:
!!! 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.
O le mea moni pe a toe faʻafeiloaʻi se talosaga, o ulutala o le a aofia ai faʻamatalaga aoga ma le code tali muamua ma faʻamatalaga faaopoopo (o loʻo avanoa la latou lisi atoa. iinei).
O lona uiga o oe lava e tatau tausia lelei le code tali sa'o. O se faataitaiga lenei mai fa'amaumauga pe fa'apefea ona galue.
O talosaga eseese e ese'ese i tua fa'aletonu
Ina ia mautinoa o le fofo e le o le lalolagi atoa mo le fuifui atoa, ae e faʻaaogaina naʻo faʻaoga faʻapitoa, e te manaʻomia muamua le siakiina o le Ingress version. Afai e fetaui 0.23 pe sili atu, fa'aaoga fa'amatalaga Ingress:
E mafai ona tatou faatoilaloina default-backend mo taʻitasi Ingress's fa'aaogā fa'amatalaga;
E mafai ona tatou faatoilaloina custom-http-errors mo taʻitasi Ingress's fa'aaogā fa'amatalaga.
O se taunuuga, o le punaoa Ingress o le a foliga pei o lenei:
I lenei tulaga, o mea sese 404 ma 502 o le a toe faʻafeiloaʻi i le mea sese-itulau auaunaga ma ulutala talafeagai uma.
В O lomiga muamua o Ingress e leʻi iai lenei uiga (fa'amauina fa'amaoni ile 0.23). Ma afai e iai sau 2 faʻaoga eseese o loʻo taʻavale i totonu o lau fuifui ma e te manaʻo e faʻamaonia se eseʻesega-backend-auʻaunaga ma le faʻagasologa o faʻailoga sese eseese mo i latou taʻitasi, ona o lenei mea e tatau ona e faʻaogaina galuega, lea e lua a matou.
Ingress <0.23: fa'alatalata tasi
O lenei filifiliga e sili atu ona faigofie. I le avea ai ma se talosaga e tautuaina ona itulau, e iai a matou HTML masani, e le iloa pe faʻafefea ona vaʻai i ulutala ma toe faʻafoʻi tulafono tali saʻo. O sea talosaga o loʻo taʻavale i fafo ma Ingress mai le url /error-pages, ma i le lisi ws o le a toe faafoi HTML.
Ole 'au'aunaga mo lenei fa'ata'ita'iga e tatau ona i ai ile ituaiga ClusterIP.
I le taimi lava e tasi, i le talosaga lea o le a matou faʻaogaina ai le mea sese, i Ingress matou te faʻaopoopoina se server-snippet poʻo se faʻapipiʻi-snippet ma mea nei:
O se filifiliga mo se talosaga e mafai ona faʻagasolo ulutala ... Ma i se tulaga lautele o se auala sili atu lea, nono mai aganuʻu-http-errors. O le fa'aaogaina ma le lima (kopi) o le a fa'atagaina oe e le suia tulaga fa'alelalolagi.
O laasaga nei. Tatou te fatuina fa'apipi'i tutusa faʻatasi ai ma se talosaga e mafai ona faʻalogo i ulutala manaʻomia ma tali saʻo. Fa'aopoopo se server-snippet i le talosaga Ingress ma mea nei:
E pei ona mafai ona e vaʻaia, mo mea sese taʻitasi tatou te manaʻo e faʻatautaia, e manaʻomia ona tatou faia o tatou lava nofoaga, lea o le a faʻapipiʻi uma ai ulutala manaʻomia, e pei o le "native" tasi. aga'i-itulau sese. O le auala lea e mafai ai ona tatou fatuina itulau sese faʻapitoa faʻapitoa e oʻo lava mo nofoaga taʻitasi ma sapalai.