Me pehea te hanga kapua FaaS i roto o Kubernetes me te wikitoria i te hackathon Tinkoff

Me pehea te hanga kapua FaaS i roto o Kubernetes me te wikitoria i te hackathon Tinkoff
I timata i tera tau, i timata ta matou kamupene ki te whakarite hackathon. Ko te whakataetae tuatahi i tino angitu, i tuhia e matou i roto Tuhinga. Ko te hackathon tuarua i tu i te Hui-tanguru 2019 a kaore i iti te angitu. Mo nga whainga ki te pupuri i nga mea whakamutunga kaore i roa i mua i tuhi kaiwhakarite.

I whakawhiwhia ki nga kaiuru he mahi tino pai me te tino watea ki te whiriwhiri i te kohinga hangarau mo tona whakatinanatanga. He mea tika ki te whakatinana i tetahi papa whakatau mo te tuku watea o nga mahi kaute a nga kaihoko ka taea te mahi me te rere tere o nga tono, te mau i nga kawenga taumaha, a ko te punaha ano he ngawari te tauine.

Ko te mahi he mea iti noa, ka taea te whakaoti i nga huarahi maha, i te mea i whakaponohia e matou i te wa o te whakaaturanga o nga whakaaturanga whakamutunga o nga kaupapa a nga kaiuru. E 6 nga roopu o nga tangata 5 i te hackathon, he pai nga kaupapa o nga kaiuru katoa, engari ko ta matou papaahi te tino whakataetae. He kaupapa tino pai ta matou, e hiahia ana ahau ki te korero mo tenei tuhinga.

Ko ta matou otinga he turanga i runga i te hoahoanga Korekau i roto i te Kubernetes, e whakaiti ana i te waa ki te kawe mai i nga ahuatanga hou ki te hanga. Ka taea e nga kaitätari te tuhi i te waehere i roto i te taiao e watea ana mo ratou ka tukuna ki roto i te mahi me te kore e uru mai nga miihini me nga kaihanga.

He aha te piro

Ko Tinkoff.ru, pera i te maha o nga kamupene hou, he tohu a nga kaihoko. Ko te tohu he punaha aromatawai a nga kaihoko i runga i nga tikanga tauanga o te tātari raraunga.

Hei tauira, ka huri mai tetahi kaihoko ki a matou me te tono ki te tuku putea ki a ia, ki te whakatuwhera ranei i tetahi kaute kaipakihi takitahi ki a matou. Mena ka whakamahere tatou ki te tuku putea ki a ia, katahi ka hiahia tatou ki te aromatawai i tana utu, a, ki te mea he kaipakihi takitahi te kaute, me tino mohio tatou kaore te kaihoko e whakahaere i nga mahi tinihanga.

Ko te putake mo enei whakatau ko nga tauira pangarau e tātari ana i nga raraunga mai i te tono ake me nga raraunga mai i a maatau rokiroki. I tua atu i te whiwhinga kaute, ka taea hoki te whakamahi tikanga tauanga rite ki te whakaputa i nga taunakitanga takitahi mo nga hua hou mo o taatau kiritaki.

Ka taea e te tikanga o taua aromatawai te whakaae ki nga momo raraunga whakauru. A i etahi wa ka taea e taatau te taapiri i tetahi taapiri hou ki te whakauru, na, i runga i nga hua o te tātari i runga i nga raraunga o mua, ka piki ake te tere o te hurihanga o te whakamahi i te ratonga.

He maha nga raraunga kei a matou mo nga hononga o nga kaihoko, a kei te tipu haere tonu te rahi o enei korero. Mo te mahi kaute, me whai tikanga hoki te tukatuka raraunga (he tauira pangarau ranei) e taea ai e koe te whakatau tere ko wai ka whakaae ki te tono, ko wai ka kore e whakaae, ko wai ka tuku atu i nga hua takirua, hei aromatawai i to raatau paanga.

Mo nga mahi kei a koe, kua whakamahia e matou he punaha whakatau motuhake IBM WebSphere ILOG JRules BRMS, i runga i nga ture kua whakaritea e nga kaititatari, nga tohunga hangarau me nga kaiwhakawhanake, ka whakatau mena ka whakaae, ka whakakore ranei i tetahi hua putea ki te kaihoko.

He maha nga otinga kua rite i runga i te maakete, nga tauira tohu tohu me nga punaha whakatau. Ka whakamahia e matou tetahi o enei punaha i roto i ta maatau kamupene. Engari kei te tipu haere te pakihi, kei te rereke haere, kei te piki haere te maha o nga kaihoko me te maha o nga hua e tukuna ana, me tenei, kei te puea ake nga whakaaro me pehea te whakapai ake i nga tikanga whakatau o naianei. He pono he maha nga whakaaro o nga tangata e mahi ana me te punaha o naianei me pehea te ngawari, te pai, te waatea, engari i etahi wa ka whai hua nga whakaaro o waho. I whakaritea te New Hackathon me te whai ki te kohi whakaaro pai.

Mahi

I tu te hackathon i te 23 o Pepuere. I whakawhiwhia ki nga kaiuru he mahi whawhai: ki te whakawhanake i tetahi punaha whakatau me tutuki nga tikanga maha.

I korerohia mai ki a matou me pehea te mahi o te punaha o naianei me nga raru ka puta mai i te wa e whakahaere ana, me nga whaainga pakihi me whai e te papahanga whakawhanakehia. Me whai tere te punaha ki te maakete mo te whakawhanake i nga ture kia tere ai te mahi a nga kaitätari ki te whakaputa. A, mo te rerenga mai o nga tono, me iti te waa whakatau. Ano hoki, ko te punaha e whakawhanakehia ana me whai mana hoko whakawhiti kia whai waahi ai te kaihoko ki te hoko i etahi atu hua o te kamupene mena ka whakaaehia e maatau me te whai paanga mai i te kaihoko.

E marama ana kaore e taea te tuhi i tetahi kaupapa kua rite ki te tuku mo te po ka tino uru ki roto i te mahi, a he tino uaua ki te kapi katoa i te punaha, na reira i tonohia kia whakatinanahia he waahanga iti rawa atu. He maha nga whakaritenga i whakatauhia me tutuki e te tauira. I taea te whakamatau i nga mea e rua ki te kapi katoa i nga whakaritenga katoa, me te mahi taipitopito mo nga waahanga takitahi o te turanga e whakawhanakehia ana.

Mo te hangarau, i whakawhiwhia nga kaiuru katoa ki te tino watea ki te whiriwhiri. I taea te whakamahi i nga ariā me nga hangarau: Raraunga Raraunga, ako miihini, rapu kaupapa, raraunga nui me etahi atu.

To tatou otinga

I muri i te whakaaro iti, ka whakatauhia e maatau he otinga FaaS ka pai mo te whakaoti i te mahi.

Mo tenei otinga, i tika kia kimihia he angamahi Korekau he tika hei whakatinana i nga ture o te punaha whakatau e whakawhanakehia ana. I te mea ka kaha te whakamahi a Tinkoff i nga Kubernetes mo te whakahaerenga hanganga, i tirohia e matou etahi otinga kua rite i runga i tera; Ka korero atu ahau ki a koe i muri mai.

Ki te rapu i te otinga tino whai hua, i titiro matou ki te hua e whakawhanakehia ana ma nga kanohi o ona kaiwhakamahi. Ko nga kaiwhakamahi matua o ta maatau punaha he kaitātari e uru ana ki te whanaketanga ture. Ko nga ture me tuku ki te tūmau, ka rite ranei ki a maatau, ka tukuna ki te kapua, mo te whakatau i muri mai. Mai i te tirohanga a te kaitätari, penei te ahua o te rerengamahi:

  1. Ka tuhia e te kaitätari he tuhinga, he ture, he tauira ML ranei i runga i nga raraunga mai i te whare putunga. Hei waahanga o te hackathon, i whakatau matou ki te whakamahi i te Mongodb, engari ko te kowhiringa o te punaha rokiroki raraunga ehara i te mea nui ki konei.
  2. I muri i te whakamatautau i nga ture kua whakawhanakehia mo nga raraunga o mua, ka tukuna e te kaitirotiro tana waehere ki te roopu whakahaere.
  3. Hei whakarite i te whakaputanga, ka haere nga waehere katoa ki nga putunga putunga a Git.
  4. Na roto i te roopu whakahaere ka taea te tuku i te waehere ki roto i te kapua hei waahanga kore mahi motuhake.

Ko nga raraunga tuatahi mai i nga kaihoko me uru ki tetahi ratonga Whakarangatira motuhake i hangaia hei whakarangatira i te tono tuatahi me nga raraunga mai i te whare putunga. He mea nui ki te whakatinana i tenei ratonga kia pai ai te mahi me te putunga kotahi (mai i te kaitätari te tango raraunga i te wa e whakawhanake ana i nga ture) hei pupuri i te hanganga raraunga whakakotahi.

Ahakoa i mua i te hackathon, i whakatauhia e matou te angamahi Korekau ka whakamahia e matou. I tenei ra he maha nga hangarau i runga i te maakete e whakatinana ana i tenei huarahi. Ko nga otinga rongonui i roto i te hoahoanga Kubernetes ko Fission, Open FaaS me Kubeless. He rite tuhinga pai me o raatau whakaahuatanga me te tātari whakatairite.

I muri i te pauna i nga pai me nga huakore, i whiriwhiria e matou Maenga. He tino ngawari tenei angamahi Korekau ki te whakahaere me te whakatutuki i nga whakaritenga o te mahi.

Ki te mahi tahi me te Fission, me mohio koe ki nga kaupapa matua e rua: te mahi me te taiao. Ko te mahi he waahanga waehere kua tuhia ki roto i tetahi o nga reo kei reira he taiao Fission. Te rarangi o nga taiao i whakatinanahia i roto i tenei anga kei roto ko Python, JS, Haere, JVM me etahi atu reo rongonui me nga hangarau.

Ka taea hoki e te Fission te mahi i nga mahi kua wehea ki te maha o nga konae, kua whakauruhia ki roto i te purongo. Ko te mahinga o te Fission i roto i te kahui Kubernetes e whakapumauhia ana e nga pota motuhake, e whakahaerea ana e te angamahi ake. Ki te mahi tahi me nga putunga kapoi, me tautapa ki ia mahi tona ake huarahi, ka taea e koe te whakawhiti i nga tawhā GET, te tono tinana ranei mo te tono POST.

Ko te mutunga mai, i whakaaro matou ki te tiki i tetahi otinga e taea ai e nga kaitätari te tuku i nga tuhinga ture kua whakawhanakehia me te kore e uru mai nga miihini me nga kaihanga. Ko te huarahi kua whakaahuatia ka whakakorehia te hiahia mo nga kaiwhakawhanake ki te tuhi ano i te waehere kaitātari ki tetahi atu reo. Hei tauira, mo te punaha whakatau o naianei e whakamahia ana e matou, me tuhi matou i nga ture i roto i nga hangarau me nga reo tino motuhake, he iti rawa te whānuitanga, a he kaha ano te ti'aturi ki runga i te tūmau tono, i te mea ko nga ture putea katoa. ka tukuna ki te taiao kotahi. Ko te mutunga, ki te tuku i nga ture hou me tuku te punaha katoa.

I roto i ta maatau otinga i whakaarohia, kaore he take ki te tuku i nga ture; ka ngawari te tuku i te waehere ma te paatene o te paatene. Ano hoki, ko te whakahaerenga hanganga i Kubernetes ka taea e koe te kore e whakaaro mo te uta me te tauine; ka whakatauhia nga raru i waho o te pouaka. A ko te whakamahi i te whare putunga raraunga kotahi ka whakakore i te hiahia ki te whakataurite i nga raraunga tuuturu me nga korero o mua, ka ngawari te mahi a te kaitātari.

He aha ta matou i whiwhi

I te mea i tae mai matou ki te hackathon me te otinga kua rite (i roto i o maatau wawata), ko te mahi katoa ko te huri i o maatau whakaaro katoa ki nga rarangi tohu.

Ko te matua ki te angitu i tetahi hackathon ko te whakarite me te mahere tuhi pai. Na reira, ko te mea tuatahi i mahia e matou ko te whakatau he aha nga waahanga o to maatau hoahoanga punaha me nga hangarau ka whakamahia e matou.

Ko te hoahoanga o to maatau kaupapa e whai ake nei:

Me pehea te hanga kapua FaaS i roto o Kubernetes me te wikitoria i te hackathon Tinkoff
Ko tenei hoahoa e whakaatu ana i nga waahi urunga e rua, ko te kaitirotiro (te kaiwhakamahi matua o to maatau punaha) me te kaihoko.

He penei te hanganga o te mahi mahi. Ka hangaia e te kaitatari he mahi ture me te mahi whakarangatira raraunga mo tana tauira, ka penapena i tana waehere ki roto i te putunga Git, ka tukuna tana tauira ki te kapua ma te tono kaiwhakahaere. Me whakaaro tatou me pehea te karanga i te mahi kua tukuna me te whakatau mo nga tono mai i nga kaihoko:

  1. Ka whakakiia e te kiritaki tetahi puka i runga i te paetukutuku me te tuku i tana tono ki te kaiwhakahaere. Ko te tono e tika ana kia whakatauhia ka tae mai ki te whakaurunga punaha, ka tuhia ki roto i te papaunga raraunga i tona ahua taketake.
  2. I muri mai, ka tukuna te tono mata mo te whakarangatira, mehemea e tika ana. Ka taea e koe te taapiri i te tono tuatahi me nga raraunga mai i nga ratonga o waho me te rokiroki. Ko te patai whakarangatira ka puta ka rongoa ano ki te paataka raraunga.
  3. Ka whakarewahia te mahi kaitātari, e mau ana i te patai whakarangatira hei whakaurunga ka puta he otinga, ka tuhia hoki ki te rokiroki.

I whakatauhia e matou ki te whakamahi i te MongoDB hei rokiroki i roto i ta maatau punaha na runga i te whakatakotoranga tuhinga o nga raraunga i te ahua o nga tuhinga JSON, mai i nga ratonga whakarangatira, tae atu ki te tono taketake, i whakahiatohia nga raraunga katoa ma nga kaiwhakahaere REST.

Na, he XNUMX haora te roa ki te whakatinana i te turanga. I tino angitu te tohatoha o nga mahi; kei ia mema o te roopu tana ake waahanga kawenga i roto i ta maatau kaupapa:

  1. Ko nga panui whakahaere o mua mo te mahi a te kaitātari, e taea ai e ia te tango ture mai i te punaha whakahaere putanga o nga tuhinga tuhi, te kowhiri i nga whiringa mo te whakarangatira i nga raraunga whakauru me te whakatika i nga tuhinga ture i runga ipurangi.
  2. Kaiwhakahaere o muri, tae atu ki te REST API mo mua me te whakauru ki te VCS.
  3. Te whakatu hanganga i roto i te Google Cloud me te whakawhanake i tetahi ratonga hei whakarangatira i nga raraunga puna.
  4. He kōwae mo te whakauru i te tono kaiwhakahaere me te angamahi Korekau mo te tuku ture.
  5. Ko nga tuhinga o nga ture mo te whakamatautau i te mahinga o te punaha katoa me te whakahiatotanga o nga tātaritanga i runga i nga tono taumai (kua whakatauhia) mo te whakaaturanga whakamutunga.

Tatou kia timata i te raupapa.

I tuhia to maatau mua ki te Angular 7 ma te whakamahi i te kete UI putea. He penei te ahua o te putanga whakamutunga o te roopu whakahaere:

Me pehea te hanga kapua FaaS i roto o Kubernetes me te wikitoria i te hackathon Tinkoff
I te mea he iti noa te wa, ka ngana matou ki te whakatinana i nga mahi matua anake. Hei tuku i tetahi mahi i roto i te roopu Kubernetes, i tika te kowhiri i tetahi huihuinga (he ratonga e tika ana kia tukuna he ture ki roto i te kapua) me te waehere o te mahi e whakatinana ana i te arorau whakatau. Mo ia tukunga ture mo te ratonga kua tohua, i tuhia e matou he raarangi mo tenei huihuinga. I te papa whakahaere ka kite koe i nga raarangi o nga huihuinga katoa.

Ko nga waehere mahi katoa i rongoa ki roto i te putunga Git mamao, me whakanoho ano ki te papa whakahaere. Hei whakaputa i te waehere, i penapena nga mahi katoa ki nga peka rereke o te putunga. Ka whakaratohia ano hoki e te roopu whakahaere te kaha ki te whakarereke i nga tuhinga tuhi, na i mua i te tuku i tetahi mahi ki te whakaputa, kaore e taea e koe anake te tirotiro i te waehere kua tuhia, engari me whakarereke ano hoki.

Me pehea te hanga kapua FaaS i roto o Kubernetes me te wikitoria i te hackathon Tinkoff
I tua atu i nga mahi ture, i whakatinanahia ano e matou te kaha ki te whakarangatira i nga raraunga puna ma te whakamahi i nga mahi Whakanui, ko te waehere he tuhinga tuhi ka taea te haere ki te whare putunga raraunga, waea atu ki nga ratonga tuatoru me te mahi i nga tatauranga tuatahi. . Hei whakaatu i ta maatau otinga, i tatauhia e matou te tohu zodiac o te kaihoko i whakarere i te tono me te whakatau i tana kaiwhakahaere waea ma te whakamahi i te ratonga REST tuatoru.

Ko te tuara o te papa i tuhia ki Java ka whakatinanahia hei tono Spring Boot. I te tuatahi i whakamahere matou ki te whakamahi i te Postgres ki te penapena i nga raraunga kaiwhakahaere, engari, hei waahanga o te hackathon, i whakatau matou ki te whakawhāiti i a matou ki te H2 ngawari kia pai ai te wa. I te taha o muri, i whakatinanahia te whakauru ki te Bitbucket ki te whakaputa i nga mahi whakarangatira patai me nga tuhinga ture. Mo te whakauru ki nga putunga Git mamao, i whakamahia e matou whare pukapuka JGit, he momo takai i runga i nga whakahau CLI, ka taea e koe te whakahaere i nga tohutohu git ma te whakamahi i tetahi atanga rorohiko ngawari. No reira e rua nga putunga motuhake mo nga mahi whakarangatira me nga ture, ka wehewehea nga tuhinga katoa ki nga raarangi. Na roto i te UI i taea te kowhiri i te tukunga hou o te tuhinga o te peka o te putunga. I te wa e whakarereke ana i te waehere na roto i te roopu whakahaere, ka mahia nga tohu o te waehere kua whakarereketia i roto i nga whare putunga mamao.

Hei whakatinana i o maatau whakaaro, me whai hanganga tika. I whakatau matou ki te tuku i a maatau roopu Kubernetes ki te kapua. Ko ta matou whiriwhiri ko Google Cloud Platform. I whakauruhia te angamahi kore-tumau Fission ki runga i te kahui Kubernetes, i horahia e matou ki Gcloud. I te timatanga, i whakatinanahia te ratonga whakarangatira raraunga puna hei tono Java motuhake i takai ki roto i te Pod i roto i te kahui k8s. Engari i muri i te whakaaturanga tuatahi o to maatau kaupapa i waenganui o te hackathon, i kiihia kia ngawari ake te ratonga Whakanui ki te whai waahi ki te whiriwhiri me pehea te whakarangatira i nga raraunga mata o nga tono taumai. A kaore matou i whai waahi engari ki te hanga i te ratonga whakarangatira kia kore ai he Tūmau.

Hei mahi tahi me te Fission, i whakamahia e matou te Fission CLI, me whakauru ki runga ake o te Kubernetes CLI. He ngawari noa te whakatakoto i nga mahi ki roto i te kahui k8s; me tautapa noa koe i tetahi huarahi o roto me te whakauru ki te mahi hei tuku i nga waka taumai mena ka hiahiatia te uru ki waho o te tautau. Ko te whakamahi i tetahi mahi kaore e neke ake i te 10 hēkona.

Ko te whakaaturanga whakamutunga o te kaupapa me te whakarapopototanga

Hei whakaatu i te mahi a to maatau punaha, kua tukuna e matou he puka ngawari ki runga i te tūmau mamao ka taea e koe te tuku tono mo tetahi o nga hua o te peeke. Ki te tono, me whakauru koe i to kupu tuatahi, te ra whanau me te nama waea.

Ko nga raraunga mai i te puka kiritaki i haere ki te kaiwhakahaere, i tukuna i te wa kotahi nga tono mo nga ture katoa e waatea ana, i mua i te whakarangatira i nga raraunga i runga i nga tikanga kua tohua, ka tiakina i roto i te rokiroki noa. I te katoa, e toru nga mahi i tukuna e matou hei whakatau mo nga tono taumai me nga ratonga whakarangatira raraunga e 4. I muri i te tuku i te tono, ka whiwhi te kaihoko i ta maatau whakatau:

Me pehea te hanga kapua FaaS i roto o Kubernetes me te wikitoria i te hackathon Tinkoff
I tua atu i te whakahē, i te whakaaetanga ranei, i whakawhiwhia ano e te kiritaki he rarangi o etahi atu hua, nga tono i tukuna e matou i roto i te whakarara. Koinei ta matou whakaatu i te tupono o te hoko-whiti i roto i ta maatau papaahi.

E 3 nga hua putea tito noa e waatea ana:

  • Te nama.
  • Taka
  • mokete.

I te wa o te whakaaturanga, i horahia e matou nga mahi kua rite me nga tuhinga whakarangatira mo ia ratonga.

Ka hiahiatia e ia ture tana ake huinga raraunga whakauru. Na, ki te whakaae i te mokete, i tatauhia e matou te tohu zodiac a te kiritaki me te hono i tenei ki te arorau o te maramataka marama. Hei whakaae i tetahi taakaro, i tirohia e matou kua eke te kaihoko ki te tau o te nuinga, a ki te tuku putea, ka tukuna e matou he tono ki tetahi ratonga tuwhera o waho mo te whakatau i te kaiwhakahaere waea, a ka whakatauhia.

I ngana matou ki te whakahihiri, ki te tauwhitiwhiti, ka taea e nga tangata katoa te haere ki ta matou puka ki te tirotiro i te wateatanga o a matou ratonga pakiwaitara ki a ratou. A, i te mutunga o te whakaaturanga, i whakaatu matou i nga tātaritanga o nga tono kua whakawhiwhia, e whakaatu ana e hia nga taangata i whakamahi i ta maatau ratonga, te maha o nga whakaaetanga me nga whakahē.

Hei kohi tātaritanga ipurangi, i tukuna ano e matou he taputapu BI tuwhera puna Papapapa ka wirihia ki ta maatau waahanga rokiroki. Ma te Metabase ka taea e koe te hanga mata me nga tātaritanga i runga i nga raraunga e pai ana ki a maatau; me rehita noa koe i tetahi hononga ki te papaaarangi, kowhiria nga ripanga (i a maatau, ko nga kohinga raraunga, mai i ta maatau whakamahi i te MongoDB), me te tohu i nga mara e pai ana ki a maatau. .

Ko te mutunga mai, he tauira pai o te turanga whakatau, a i te wa o te whakaaturanga, ka taea e ia kaiwhakarongo te tirotiro i ana mahi. He otinga whakamere, he tauira kua oti me te whakaaturanga angitu i taea e matou te wikitoria, ahakoa te kaha o te whakataetae mai i etahi atu kapa. E mohio ana ahau ka taea hoki te tuhi i tetahi tuhinga whakamere ki runga i te kaupapa o ia kapa.

Source: will.com

Tāpiri i te kōrero