Tässä viestissä näytämme Kubeflow AWS:ssä (AWS-spesifinen Kubeflow-jakelu) ja sen lisäarvo avoimen lähdekoodin Kubeflowin verrattuna integroimalla erittäin optimoituja, pilvipohjaisia, yrityskäyttöön sopivia AWS-palveluita.
Kubeflow on avoimen lähdekoodin koneoppimisalusta (ML), joka on omistettu tekemään ML-työnkulkujen käyttöönotosta Kubernetesissa yksinkertaista, kannettavaa ja skaalautuvaa. Kubeflow tarjoaa monia komponentteja, kuten keskitetyn kojelaudan, monen käyttäjän Jupyter-muistikirjat, Kubeflow Pipelines, KFServing ja Katib sekä hajautetut koulutusoperaattorit TensorFlowille, PyTorchille, MXNetille ja XGBoostille yksinkertaisten, skaalautuvien ja kannettavien ML-työnkulkujen luomiseksi. .
AWS julkaisi äskettäin Kubeflow v1.4:n osana omaa Kubeflow-jakeluaan (Kubeflow AWS:ssä), joka virtaviivaistaa datatieteen tehtäviä ja auttaa rakentamaan erittäin luotettavia, turvallisia, kannettavia ja skaalautuvia ML-järjestelmiä pienemmillä käyttökustannuksilla integroimalla AWS:n hallinnoimiin palveluihin. . Voit käyttää tätä Kubeflow-jakelua ML-järjestelmien rakentamiseen Amazonin elastisten kuberneettien palvelu (Amazon EKS) rakentaa, kouluttaa, virittää ja ottaa käyttöön ML-malleja monenlaisiin käyttötarkoituksiin, mukaan lukien tietokonenäköön, luonnollisen kielen käsittelyyn, puheen kääntämiseen ja taloudelliseen mallinnukseen.
Haasteita avoimen lähdekoodin Kubeflow:n kanssa
Kun käytät avoimen lähdekoodin Kubeflow-projektia, se ottaa käyttöön kaikki Kubeflow-ohjaustason ja datatason komponentit Kubernetes-työntekijäsolmuissa. Kubeflow-komponenttipalvelut otetaan käyttöön osana Kubeflow-ohjaustasoa, ja kaikki Jupyteriin, mallikoulutukseen, viritykseen ja isännöintiin liittyvät resurssien käyttöönotot otetaan käyttöön Kubeflow-tietotasolla. Kubeflow-ohjaustaso ja datataso voivat toimia samoissa tai eri Kubernetes-työntekijäsolmuissa. Tämä viesti keskittyy Kubeflow-ohjaustason komponentteihin seuraavan kaavion mukaisesti.
Tämä käyttöönottomalli ei välttämättä tarjoa yritysvalmis kokemusta seuraavista syistä:
- Kaikki Kubeflow-ohjaustason raskaan noston infrastruktuurikomponentit, mukaan lukien tietokanta, tallennustila ja todennus, on otettu käyttöön itse Kubernetes-klusterin työntekijäsolmussa. Tämän vuoksi on haastavaa toteuttaa erittäin saatavilla oleva Kubeflow-ohjaustason suunnitteluarkkitehtuuri, jossa on pysyvä tila työntekijän solmun vian sattuessa.
- Kubeflow-ohjaustason luomat artefaktit (kuten MySQL-esiintymät, pod-lokit tai MinIO-tallennustila) kasvavat ajan myötä ja tarvitsevat kokoa muutettavia tallennustilavuuksia jatkuvalla valvontatoiminnolla vastatakseen kasvavaan tallennustarpeeseen. Koska Kubeflow-ohjaustaso jakaa resursseja Kubeflow-datatason työkuormien kanssa (esimerkiksi koulutustöitä, putkia ja käyttöönottoja varten), Kubernetes-klusteri- ja tallennustilavuuksien oikea kokoaminen ja skaalaus voi muuttua haastavaksi ja lisätä käyttökustannuksia.
- Kubernetes rajoittaa lokitiedoston kokoa, ja useimmat asennukset säilyttävät uusimman 10 megatavun rajan. Oletusarvoisesti pod-lokit eivät ole käytettävissä, kun ne saavuttavat tämän ylärajan. Lokeihin voi myös tulla pääsy, jos podit häädetään, kaatuvat, poistetaan tai ajoitetaan toisessa solmussa, mikä voi vaikuttaa sovelluslokin saatavuuteen ja valvontaominaisuuksiin.
Kubeflow AWS:ssä
Kubeflow AWS:ssä tarjoaa selkeän polun käyttää Kubeflowa seuraavilla AWS-palveluilla:
- Sovelluksen kuormituksen tasaaja turvalliseen ulkoiseen liikenteenhallintaan HTTPS:n kautta
- amazonin pilvikello jatkuvaa lokinhallintaa varten
- AWS Cognito käyttäjän todennusta varten Transport Layer Securityn (TLS) avulla
- AWS Deep Learning Containers erittäin optimoiduille Jupyter-muistikirjan palvelinkuville
- Amazonin elastinen tiedostojärjestelmä (Amazon EFS) tai Amazon FSx Lusterille Yksinkertainen, skaalautuva ja palvelimeton tiedostojen tallennusratkaisu parantaa harjoittelun suorituskykyä
- Amazon EKS hallituille Kubernetes-klustereille
- Amazon Relational Database -palvelu (Amazon RDS) erittäin skaalautuville putkille ja metatietosäilölle
- AWS -salaisuuksien hallinta suojellaksesi salaisuuksia, joita tarvitaan sovelluksiesi käyttämiseen
- Amazonin yksinkertainen tallennuspalvelu (Amazon S3) helppokäyttöiseen putkiesinekauppaan
Nämä AWS-palveluintegraatiot Kubeflow:n kanssa (kuten seuraavassa kaaviossa) antavat meille mahdollisuuden erottaa Kubeflow-ohjaustason kriittiset osat Kubernetesista, mikä tarjoaa turvallisen, skaalautuvan, joustavan ja kustannusoptimoidun suunnittelun.
Keskustellaan kunkin palveluintegraation eduista ja niiden ratkaisuista tietoturvan, ML-putkien käytön ja varastoinnin ympärillä.
Kubeflow-käyttäjien suojattu todennus Amazon Cogniton avulla
AWS:n pilvitietoturva on tärkein prioriteetti, ja panostamme Kubeflow-tietoturvan tiiviiseen integrointiin suoraan AWS:n jaetun vastuun tietoturvapalveluihin, kuten seuraaviin:
- Application Load Balancer (ALB) ulkoiseen liikenteenhallintaan
- AWS-varmenteen hallinta (ACM) tukee TLS:ää
- Palvelutilien IAM -roolit (IRSA) tarkkaan kulunvalvontaan Kubernetes Pod -tasolla
- AWS-avainhallintapalvelu (AWS KMS) tietojen salausavainten hallintaan
- AWS-suoja DDoS-suojausta varten
Tässä osiossa keskitymme AWS Kubeflow -ohjaustason integrointiin Amazon Cogniton kanssa. Amazon Cognito poistaa tarpeen hallita ja ylläpitää alkuperäistä Dex-ratkaisua (avoimen lähdekoodin OpenID Connect (OIDC) -palveluntarjoaja, jota tukee paikallinen LDAP) käyttäjien todennusta varten ja tekee salaisuuden hallinnasta helpompaa.
Voit myös käyttää Amazon Cognitoa lisätäksesi käyttäjien kirjautumisen, kirjautumisen ja pääsynhallinnan Kubeflow-käyttöliittymään nopeasti ja helposti. Amazon Cognito skaalautuu miljooniin käyttäjiin ja tukee kirjautumista sosiaalisen identiteetin tarjoajien (IdP:iden), kuten Facebookin, Googlen ja Amazonin, sekä yritysten IDP:ien kanssa SAML 2.0:n kautta. Tämä vähentää Kubeflow-asetuksien monimutkaisuutta, mikä tekee siitä toiminnallisesti kevyemmän ja helpomman käyttää usean käyttäjän eristämisen saavuttamiseksi.
Tarkastellaan monen käyttäjän todennuskulkua Amazon Cogniton, ALB:n ja ACM:n integraatioilla Kubeflown kanssa AWS:ssä. Tässä integraatiossa on useita avainkomponentteja. Amazon Cognito on määritetty IdP:ksi, jonka todennussoitto on määritetty reitittämään pyyntö Kubeflow:lle käyttäjän todennuksen jälkeen. Osana Kubeflow-asennusta luodaan Kubernetes-sisääntuloresurssi hallitsemaan ulkoista liikennettä Istio Gateway -palveluun. AWS ALB Ingress Controller tarjoaa kuormantasaajan tälle sisääntulolle. Käytämme Amazon-reitti 53 määrittääksesi julkisen DNS:n rekisteröidylle toimialueelle ja luodaksesi varmenteita ACM:n avulla TLS-todennuksen mahdollistamiseksi kuormituksen tasapainottimessa.
Seuraava kaavio näyttää tyypillisen käyttäjän työnkulun Amazon Cognitoon kirjautumiseen ja Kubeflow:hon uudelleenohjaukseen omassa nimiavaruudessaan.
Työnkulku sisältää seuraavat vaiheet:
- Käyttäjä lähettää HTTPS-pyynnön Kubeflow-keskukseen, jota isännöidään kuormituksen tasapainottimen takana. Reitti 53 ratkaisee FQDN:n ALB-aliastietueeksi.
- Jos evästettä ei ole, kuormituksen tasapainotin ohjaa käyttäjän Amazon Cogniton valtuutuksen päätepisteeseen, jotta Amazon Cognito voi todentaa käyttäjän.
- Kun käyttäjä on todennettu, Amazon Cognito lähettää käyttäjän takaisin kuormantasaajaan valtuutuskoodilla.
- Kuormituksen tasapainotin näyttää valtuutuksen myöntämiskoodin Amazon Cognito -tunnuksen päätepisteelle.
- Saatuaan kelvollisen valtuutuskoodin Amazon Cognito toimittaa ID-tunnuksen ja pääsytunnuksen kuormantasaajalle.
- Kun kuormantasauslaite on todennut käyttäjän onnistuneesti, se lähettää pääsytunnuksen Amazon Cogniton käyttäjätietojen päätepisteeseen ja vastaanottaa käyttäjien vaatimuksia. Kuormantasaaja allekirjoittaa ja lisää käyttäjien vaatimuksia HTTP-otsikkoon
x-amzn-oidc-*
JSON-verkkotunnuksen (JWT) pyyntömuodossa. - Kuormantasaajan pyyntö lähetetään Istio Ingress Gatewayn podiin.
- Istio Gateway purkaa lähettisuodattimen avulla
x-amzn-oidc-data
arvo, hakee sähköpostikentän ja lisää mukautetun HTTP-otsikonkubeflow-userid
, jota Kubeflow-valtuutustaso käyttää. - Istion resurssipohjaisia kulunvalvontakäytäntöjä sovelletaan saapuvaan pyyntöön Kubeflow Dashboardin käyttöoikeuden vahvistamiseksi. Jos jompikumpi niistä ei ole käyttäjän saatavilla, virhevastaus lähetetään takaisin. Jos pyyntö vahvistetaan, se välitetään asianmukaiseen Kubeflow-palveluun ja tarjoaa pääsyn Kubeflow Dashboardiin
Pysyvät Kubeflow-komponenttien metatiedot ja artefaktien tallennus Amazon RDS:n ja Amazon S3:n kanssa
Kubeflow on AWS tarjoaa integroinnin Amazon Relational Database -palvelu (Amazon RDS) Kubeflow Pipelinesissä ja AutoML:ssä (Kattib) jatkuvaa metatietojen tallennusta varten ja Amazon S3 Kubeflow Pipelinesissä pysyvää artefaktien tallennusta varten. Jatketaan keskustelua Kubeflow Pipelinesistä yksityiskohtaisemmin.
Kubeflow Pipelines on alusta kannettavien, skaalautuvien ML-työnkulkujen rakentamiseen ja käyttöönottoon. Nämä työnkulut voivat auttaa automatisoimaan monimutkaisia ML-putkilinjoja käyttämällä sisäänrakennettuja ja mukautettuja Kubeflow-komponentteja. Kubeflow Pipelines sisältää Python SDK:n, DSL-kääntäjän Python-koodin muuntamiseksi staattiseksi konfiguraatioksi, Pipelines-palvelun, joka ajaa liukuhihnat staattisesta määrityksestä, ja joukon ohjaimia, jotka suorittavat putkilinjan loppuun saattamiseen tarvittavia Kubernetes Pods -säiliöitä.
Kubeflow Pipelinesin metatiedot liukuhihnakokeiluja ja -ajoja varten tallennetaan MySQL:ään, ja artefaktit, mukaan lukien liukuhihnapaketit ja mittarit, tallennetaan MinIO:han.
Kuten seuraavassa kaaviossa näkyy, Kubeflow AWS:ssä antaa sinun tallentaa seuraavat komponentit AWS:n hallinnoimiin palveluihin:
- Pipeline-metatiedot Amazon RDS:ssä – Amazon RDS tarjoaa skaalautuvan, erittäin saatavilla olevan ja luotettavan Multi-AZ-käyttöönottoarkkitehtuurin, jossa on sisäänrakennettu automaattinen vikasietomekanismi ja kapasiteetti, jota voidaan muuttaa alan standardinmukaiselle relaatiotietokannalle, kuten MySQL. Se hallitsee yleisiä tietokannan hallintatehtäviä ilman infrastruktuurin luomista tai ohjelmistojen ylläpitoa.
- Pipeline-artefaktit Amazon S3:ssa – Amazon S3 tarjoaa alan johtavan skaalautuvuuden, tiedon saatavuuden, turvallisuuden ja suorituskyvyn, ja sitä voidaan käyttää vastaamaan tarpeisiisi. vaatimustenmukaisuusvaatimukset.
Nämä integraatiot auttavat siirtämään metatietojen ja artefaktitallennusten hallinnan ja ylläpidon itsehallitulta Kubeflowlta AWS-hallintapalveluihin, jotka on helpompi määrittää, käyttää ja skaalata.
Tuki hajautetuille tiedostojärjestelmille Amazon EFS:n ja Amazon FSx:n kanssa
Kubeflow perustuu Kubernetesiin, joka tarjoaa infrastruktuurin laajamittaiseen, hajautettuun tietojenkäsittelyyn, mukaan lukien koulutus ja viritys suurten mallien syvään verkkoon, jossa on miljoonia tai jopa miljardeja parametreja. Tällaisten hajautetun tietojenkäsittelyn ML-järjestelmien tukemiseksi Kubeflow on AWS tarjoaa integroinnin seuraaviin tallennuspalveluihin:
- Amazon EFS – Tehokas, pilvipohjainen, hajautettu tiedostojärjestelmä, jota voit hallita mm Amazon EFS CSI -ohjain. Amazon EFS tarjoaa
ReadWriteMany
pääsytilassa, ja voit nyt käyttää sitä liittääksesi koteloihin (Jupyter, mallin koulutus, mallin viritys), jotka toimivat Kubeflow-datatasossa. Näin voit tarjota pysyvän, skaalautuvan ja jaettavan työtilan, joka kasvaa ja kutistuu automaattisesti, kun lisäät ja poistat tiedostoja ei tarvita hallintaa. - Amazon FSx Lusterille – Optimoitu tiedostojärjestelmä laskentaintensiivisille työkuormille, kuten korkean suorituskyvyn laskentaan ja ML:ään, jota voit hallita Amazon FSx CSI -ohjain. FSx for Luster tarjoaa
ReadWriteMany
myös pääsytila, ja voit käyttää sitä harjoitustietojen välimuistiin suoralla liitännällä Amazon S3:een tukisäilönä, jota voit käyttää tukemaan Jupyter-muistikirjapalvelimia tai hajautettua harjoittelua Kubeflow-tietotasossa. Tällä kokoonpanolla sinun ei tarvitse siirtää tietoja tiedostojärjestelmään ennen taltion käyttöä. FSx for Luster tarjoaa tasaisen millisekunnin viiveet ja korkean samanaikaisuuden, ja se voi skaalata TB/s:iin ja miljooniin IOPS:iin.
Kubeflow-käyttöönottovaihtoehdot
AWS tarjoaa erilaisia Kubeflow-käyttöönottovaihtoehtoja:
- Käyttöönotto Amazon Cogniton kanssa
- Käyttöönotto Amazon RDS:n ja Amazon S3:n kanssa
- Käyttöönotto Amazon Cogniton, Amazon RDS:n ja Amazon S3:n kanssa
- Vaniljan käyttöönotto
Katso lisätietoja palvelun integroinnista ja kullekin näistä vaihtoehdoista saatavilla olevista lisäosista Käyttöönottoasetukset. Voit sovittaa vaihtoehdon, joka sopii parhaiten käyttötilanteeseesi.
Seuraavassa osiossa käymme läpi vaiheet AWS Kubeflow v1.4 -jakelun asentamiseksi Amazon EKS:ään. Sitten käytämme olemassa olevaa XGBoost-putkilinjaesimerkkiä, joka on saatavilla Kubeflow-keskuksen käyttöliittymän kojelaudassa, esitelläksemme AWS Kubeflow:n integrointia ja käyttöä Amazon Cogniton, Amazon RDS:n ja Amazon S3:n kanssa Secrets Managerin lisäosana.
Edellytykset
Tätä kävelyä varten sinulla tulisi olla seuraavat edellytykset:
- An AWS-tili.
- Olemassa oleva Amazon EKS -klusteri. Sen pitäisi olla Kubernetes-versio 1.19 tai uudempi. Automaattiseen klusterin luomiseen käyttämällä esimerkkiKatso Luo Amazon EKS -klusteri ja käytä eksctl-vaihtoehtoa.
Asenna seuraavat työkalut asiakaskoneeseen, jolla voit käyttää Kubernetes-klusteria. Voit käyttää AWS-pilvi9, pilvipohjainen integroitu kehitysympäristö (IDE) Kubernetes-klusterin asennukseen.
- AWS-komentoriviliitäntä (AWS CLI) – komentorivityökalu vuorovaikutukseen AWS-palvelujen kanssa. Katso asennusohjeet kohdasta AWS CLI: n asentaminen, päivittäminen ja poistaminen.
- esimerkki > 0.56 – Komentorivityökalu Amazon EKS -klustereiden kanssa työskentelemiseen, joka automatisoi monia yksittäisiä tehtäviä.
- kubectl – Komentorivityökalu Kubernetes-klusterien kanssa työskentelemiseen.
- mennä – Hajautettu versionhallintaohjelmisto.
- Python 3.8+ – Python-ohjelmointiympäristö.
- pIP – Pythonin paketinhallinta.
- kustomize versio 3.2.0 – Komentorivityökalu Kubernetes-objektien mukauttamiseen kustomization-tiedoston kautta.
Asenna Kubeflow AWS:ään
Määritä kubectl niin, että voit muodostaa yhteyden Amazon EKS -klusteriin:
Kubeflow-asennuksessa käytetään erilaisia ohjaimia Palvelutilien IAM -roolit (IRSA). OIDC-palveluntarjoajan on oltava olemassa, jotta klusterisi voi käyttää IRSA:ta. Luo OIDC-palveluntarjoaja ja liitä se Amazon EKS -klusteriisi suorittamalla seuraava komento, jos klusterillasi ei vielä ole sellaista:
Kloonaa AWS-luettelorepo ja Kubeflow-luettelorepo ja tarkista vastaavat julkaisuhaarat:
Lisätietoja näistä versioista on kohdassa Julkaisut ja versiot.
Määritä Amazon RDS, Amazon S3 ja Secrets Manager
Luot Amazon RDS- ja Amazon S3 -resurssit ennen Kubeflow-luetteloiden käyttöönottoa. Käytämme automaattisia Python-skriptejä, jotka huolehtivat S3-säihön, RDS-tietokannan ja vaadittujen salaisuuksien luomisesta Secrets Managerissa. Se myös muokkaa Kubeflow-putkilinjan ja AutoML:n vaadittuja määritystiedostoja, jotta ne määritetään oikein RDS-tietokantaa ja S3-säilöä varten Kubeflow-asennuksen aikana.
Luo IAM-käyttäjä joilla on oikeudet sallia GetBucketLocation
ja luku- ja kirjoitusoikeudet S3-säihön objekteihin, joihin haluat tallentaa Kubeflow-artefaktit. Käytä AWS_ACCESS_KEY_ID
ja AWS_SECRET_ACCESS_KEY
IAM-käyttäjästä seuraavassa koodissa:
Määritä Amazon Cognito todennuspalveluntarjoajaksi
Tässä osiossa luomme mukautetun verkkotunnuksen Route 53:een ja ALB:hen ulkoisen liikenteen reitittämiseksi Kubeflow Istio Gatewaylle. Luomme ACM:n avulla sertifikaatin, joka mahdollistaa TLS-todennuksen ALB:ssa ja Amazon Cognito ylläpitääksemme käyttäjäpoolia ja hallitaksemme käyttäjien todennusta.
Korvaa seuraavat arvot
- reitti53.rootDomain.name – Rekisteröity verkkotunnus. Oletetaan, että tämä verkkotunnus on
example.com
. - route53.rootDomain.hostedZoneId – Jos verkkotunnustasi hallinnoidaan Route53:ssa, syötä isännöidyn vyöhykkeen tunnus, joka löytyy isännöidyn vyöhykkeen tiedoista. Ohita tämä vaihe, jos verkkotunnustasi hallinnoi toinen verkkotunnuksen tarjoaja.
- reitti53.aliDomain.nimi – sen aliverkkotunnuksen nimi, jossa haluat isännöidä Kubeflow:ta (esim.
platform.example.com
). Lisätietoja aliverkkotunnuksista on kohdassa Kubeflown käyttöönotto AWS Cogniton kanssa IdP:nä. - klusterin.nimi – Klusterin nimi ja paikka, jossa Kubeflow on otettu käyttöön.
- cluster.region – klusterin alue, jossa Kubeflow on otettu käyttöön (esim.
us-west-2
). - cognitoUserpool.name – Amazon Cognito -käyttäjäpoolin nimi (esim.
kubeflow-users
).
Asetustiedosto näyttää seuraavan koodin kaltaiselta:
Suorita komentosarja resurssien luomiseksi:
Käsikirjoitus päivittää config.yaml
tiedosto sen luomilla resurssien nimillä, tunnuksilla ja ARN-numeroilla. Se näyttää jotain seuraavalta koodilta:
Luo luetteloita ja ota Kubeflow käyttöön
Ota Kubeflow käyttöön seuraavalla komennolla:
Päivitä verkkotunnus ALB-osoitteella
Käyttöönotto luo tulonhallinnan AWS-sovelluskuormituksen tasapainottimen. Päivitämme reitin 53 aliverkkotunnuksen DNS-merkinnät kuormituksen tasapainottimen DNS:llä. Suorita seuraava komento tarkistaaksesi, onko kuormituksen tasapainottaja valmiina (tämä kestää noin 3–5 minuuttia):
Jos ADDRESS
kenttä on tyhjä muutaman minuutin kuluttua, tarkista lokit alb-ingress-controller
. Katso ohjeet kohdasta ALB ei pysty tekemään varauksia.
Kun kuormanjakolaite on käytössä, kopioi kuormituksen tasaajan DNS-nimi ja korvaa osoite kubeflow.alb.dns
in ${kubeflow_manifest_dir}/tests/e2e/utils/cognito_bootstrap/config.yaml
. Konfig-tiedoston Kubeflow-osio näyttää seuraavalta koodilta:
Suorita seuraava komentosarja päivittääksesi reitin 53 aliverkkotunnuksen DNS-merkinnät varustetun kuormituksen tasaajan DNS:llä:
Ongelmien karttoittaminen
Jos kohtaat ongelmia asennuksen aikana, katso kohtaa vianetsintäopas tai aloita alusta seuraamalla tämän blogin Siivous-osiota.
Käytä tapauksen esittelyä
Nyt kun olemme saaneet tarvittavat Kubeflow-komponentit asennuksen valmiiksi, katsotaanpa niitä toiminnassa käyttämällä yhtä Kubeflow Pipelinesin kojelaudassa tarjoamista esimerkeistä.
Käytä Kubeflow Dashboardia Amazon Cogniton avulla
Aloita pääsemällä käyttämään Kubeflow Dashboardia. Koska käytimme Amazon Cognitoa IDP:nä, käytä julkaisussa annettuja tietoja virallinen README-tiedosto. Luomme ensin joitakin käyttäjiä Amazon Cognito -konsoliin. Nämä ovat käyttäjiä, jotka kirjautuvat sisään keskitettyyn kojelautaan. Seuraava, luo profiili luomallesi käyttäjälle. Sitten sinun pitäisi päästä kojelautaan kirjautumissivun kautta osoitteessa https://kubeflow.platform.example.com.
Seuraava kuvakaappaus näyttää Kubeflow-hallintapaneelimme.
Suorita putki
Valitse Kubeflow Dashboardista putkistojen navigoinnin nimessä. Sinun pitäisi nähdä neljä Kubeflow Pipelinesin tarjoamaa esimerkkiä, joita voit suorittaa suoraan tutkiaksesi erilaisia Pipelines-ominaisuuksia.
Tässä viestissä käytämme XGBoost-näytettä nimeltä [Demo] XGBoost – Iterative model training. Löydät lähdekoodin osoitteesta GitHub. Tämä on yksinkertainen putki, joka käyttää olemassa olevaa XGBoost/Train
ja XGBoost/Predict
Kubeflow-liukuhihnakomponentit kouluttavat mallia iteratiivisesti, kunnes mittareita pidetään hyvinä määritettyjen mittareiden perusteella.
Suorita liukuhihna suorittamalla seuraavat vaiheet:
- Valitse putkisto ja valitse Luo kokeilu.
- Alle Kokeilun tiedot, kirjoita nimi (tälle viestille,
demo-blog
) ja valinnainen kuvaus. - Valita seuraava.
- Alle Ajon tiedot¸ valitse putkisto ja liukuhihnaversio.
- varten Suorituksen nimi, kirjoita nimi.
- varten Kokeilu, valitse luomasi kokeilu.
- varten Suoritustyyppivalitse Kerta-.
- Valita Aloita.
Kun liukuhihna alkaa toimia, sinun pitäisi nähdä komponenttien valmistuvan (muutamassa sekunnissa). Tässä vaiheessa voit valita minkä tahansa valmiista komponentista nähdäksesi lisätietoja.
Käytä Amazon S3:n esineitä
Kubeflow:n käyttöönoton aikana määritimme, että Kubeflow Pipelinesin tulisi käyttää Amazon S3:a artefaktien tallentamiseen. Tämä sisältää kaikki liukuhihnan tulosteen artefaktit, välimuistissa olevat ajot ja liukuhihnakaaviot – joita kaikkia voidaan sitten käyttää monipuolisiin visualisointeihin ja suorituskyvyn arviointiin.
Kun liukuhihnan ajo on valmis, sinun pitäisi pystyä näkemään artefaktit asennuksen aikana luomassasi S3-ämpärissä. Vahvista tämä valitsemalla mikä tahansa liukuhihnan valmis komponentti ja tarkistamalla Input / Output -osio oletuksena Kaavio -välilehti. Artefaktien URL-osoitteiden tulee osoittaa S3-säilöyn, jonka määritit käyttöönoton aikana.
Vahvistaaksemme, että resurssit on lisätty Amazon S3:een, voimme myös tarkistaa AWS-tilillämme olevan S3-ämpäri Amazon S3 -konsolin kautta.
Seuraava kuvakaappaus näyttää tiedostomme.
Tarkista ML-metatiedot Amazon RDS:ssä
Integroimme myös Kubeflow Pipelinesin Amazon RDS:ään käyttöönoton aikana, mikä tarkoittaa, että kaikki putkien metatiedot tulee tallentaa Amazon RDS:ään. Tämä sisältää kaikki ajonaikaiset tiedot, kuten tehtävän tilan, artefaktien saatavuuden, suoritukseen tai artefakteihin liittyvät mukautetut ominaisuudet ja paljon muuta.
Vahvista Amazon RDS -integraatio noudattamalla kohdassa annettuja ohjeita virallinen README-tiedosto. Suorita erityisesti seuraavat vaiheet:
- Hanki Amazon RDS -käyttäjänimi ja salasana salaisuudesta, joka luotiin asennuksen aikana:
- Käytä näitä tunnistetietoja muodostaaksesi yhteyden Amazon RDS:ään klusterin sisältä:
- Kun MySQL-kehote avautuu, voimme tarkistaa
mlpipelines
tietokanta seuraavasti: - Nyt voimme lukea tiettyjen taulukoiden sisällön varmistaaksemme, että voimme nähdä metatietotiedot putkia suorittaneista kokeista:
Puhdistaa
Poista Kubeflow ja luomasi AWS-resurssit seuraavasti:
- Poista sisääntulo ja sisääntulon hallinnoima kuormituksen tasapainotin suorittamalla seuraava komento:
- Poista loput Kubeflow-komponentit:
- Poista komentosarjojen luomat AWS-resurssit:
- Amazon RDS- ja Amazon S3 -integraatiota varten luodut resurssit. Varmista, että sinulla on skriptin luoma asetustiedosto
${kubeflow_manifest_dir}/tests/e2e/utils/rds-s3/metadata.yaml
: - Amazon Cognito -integraatiota varten luodut resurssit. Varmista, että sinulla on skriptin luoma asetustiedosto
${kubeflow_manifest_dir}/tests/e2e/utils/cognito_bootstrap/config.yaml
:
- Amazon RDS- ja Amazon S3 -integraatiota varten luodut resurssit. Varmista, että sinulla on skriptin luoma asetustiedosto
- Jos loit erillisen Amazon EKS -klusterin Kubeflowlle eksctl:llä, voit poistaa sen seuraavalla komennolla:
Yhteenveto
Tässä viestissä korostimme arvoa, jonka Kubeflow AWS:ssä tarjoaa alkuperäisten AWS-hallittujen palveluintegraatioiden kautta turvallisiin, skaalautuviin ja yritysvalmiisiin tekoäly- ja ML-työkuormiin. Voit valita useista käyttöönottovaihtoehdoista asentaaksesi Kubeflown AWS:ään erilaisilla palveluintegroinneilla. Tämän viestin käyttötapaus osoitti Kubeflow-integraation Amazon Cogniton, Secrets Managerin, Amazon RDS:n ja Amazon S3:n kanssa. Aloita Kubeflow AWS:ssä tutustumalla saatavilla oleviin AWS-integroituihin käyttöönottovaihtoehtoihin Kubeflow AWS:ssä.
V1.3:sta alkaen voit seurata AWS Labs -arkisto seurataksesi kaikkia AWS-panoksia Kubeflowiin. Löydät meidät myös osoitteesta Kubeflow #AWS Slack Channel; antamasi palautteesi auttaa meitä priorisoimaan seuraavat Kubeflow-projektin ominaisuudet.
Tietoja Tekijät
Kanwaljit Khurmi on AI/ML Specialist Solutions -arkkitehti Amazon Web Servicesissä. Hän työskentelee AWS-tuotteen, suunnittelun ja asiakkaiden kanssa tarjotakseen ohjausta ja teknistä apua, joka auttaa heitä parantamaan hybridi-ML-ratkaisujen arvoa AWS:n käytössä. Kanwaljit on erikoistunut auttamaan asiakkaita kontti- ja koneoppimissovelluksissa.
Meghna Baijal on ohjelmistosuunnittelija, jossa on AWS AI, mikä helpottaa käyttäjien koneoppimistyökuormien siirtämistä AWS:ään rakentamalla ML-tuotteita ja -alustoja, kuten Deep Learning Containers, Deep Learning AMI:t, AWS-ohjaimet Kubernetesille (ACK) ja Kubeflow on AWS. . Työn ulkopuolella hän nauttii lukemisesta, matkustamisesta ja maalaamisesta.
Suraj Kota on koneoppimisinfrastruktuuriin erikoistunut ohjelmistosuunnittelija. Hän rakentaa työkaluja, joiden avulla pääset helposti alkuun ja skaalaamaan koneoppimistyömäärää AWS:ssä. Hän työskenteli AWS Deep Learning Containersin, Deep Learning AMI:n, SageMaker Operatoreiden Kubernetesille ja muiden avoimen lähdekoodin integraatioiden, kuten Kubeflow, parissa.
- Coinsmart. Euroopan paras Bitcoin- ja kryptopörssi.
- Platoblockchain. Web3 Metaverse Intelligence. Tietoa laajennettu. VAPAA PÄÄSY.
- CryptoHawk. Altcoinin tutka. Ilmainen kokeilu.
- Lähde: https://aws.amazon.com/blogs/machine-learning/build-and-deploy-a-scalable-machine-learning-system-on-kubernetes-with-kubeflow-on-aws/
- "
- 10
- 100
- 420
- 7
- Meistä
- pääsy
- Tili
- Toiminta
- Lisäosan
- osoite
- admin
- hallinto
- Kumppanit
- AI
- Kaikki
- jo
- Amazon
- Amazon Web Services
- Toinen
- Hakemus
- sovellukset
- sopiva
- arkkitehtuuri
- noin
- Työtoveri
- todennettu
- todentaa
- Authentication
- lupa
- automatisoida
- Automatisoitu
- automaatti
- saatavuus
- saatavissa
- AWS
- tulevat
- Hyödyt
- PARAS
- miljardeja
- Uutiset ja media
- reunus
- rakentaa
- Rakentaminen
- rakentaa
- sisäänrakennettu
- kyvyt
- Koko
- joka
- tapauksissa
- CD
- todistus
- todistukset
- haastava
- Kassa
- Valita
- vaatimukset
- luokka
- koodi
- Yhteinen
- Suoritettuaan
- monimutkainen
- komponentti
- tietokone
- tietojenkäsittely
- Konfigurointi
- kytkeä
- Liitännät
- Console
- Kontit
- sisältää
- pitoisuus
- jatkaa
- edistävät
- ohjaus
- ohjain
- tekijänoikeus
- voisi
- luoda
- luotu
- luo
- Luominen
- luominen
- Valtakirja
- kriittinen
- asiakassuhde
- Asiakkaat
- kojelauta
- tiedot
- tietojenkäsittely
- tietojenkäsittely
- tietokanta
- DDoS
- omistautunut
- Kysyntä
- osoittaa
- osoittivat
- sijoittaa
- käyttöön
- levityspinnalta
- käyttöönotto
- käyttöönotot
- lauennut
- Malli
- yksityiskohta
- yksityiskohdat
- Kehitys
- Dex
- eri
- ohjata
- suoraan
- pohtia
- jaettu
- jakelu
- dns
- ei
- verkkotunnuksen
- helposti
- helppo käyttää
- kaiku
- mahdollistaa
- salaus
- päätepiste
- insinööri
- Tekniikka
- enter
- yritys
- ympäristö
- arviointi
- tapahtuma
- esimerkki
- olemassa
- experience
- kokeilu
- tutkia
- Epäonnistuminen
- Ominaisuudet
- palaute
- taloudellinen
- Etunimi
- sovittaa
- virtaus
- Keskittää
- keskittyy
- seurata
- jälkeen
- muoto
- löytyi
- tuore
- saada
- mennä
- GitHub
- hyvä
- Kasvaa
- Kasvava
- auttaa
- auttaa
- auttaa
- tätä
- Korkea
- korkeampi
- Korostettu
- erittäin
- hotellit
- HTTPS
- Hybridi
- Identiteetti
- Vaikutus
- toteuttaa
- parantaa
- Inc.
- sisältää
- Mukaan lukien
- kasvoi
- henkilökohtainen
- alan johtava
- tiedot
- tiedot
- Infrastruktuuri
- asentaa
- integroitu
- integraatio
- integraatiot
- investoimalla
- eristäminen
- kysymykset
- IT
- itse
- Työpaikat
- pito
- avain
- Labs
- Kieli
- suuri
- käynnistettiin
- oppiminen
- nosto
- linja
- kuormitus
- paikallinen
- kone
- koneoppiminen
- ylläpitää
- TEE
- Tekeminen
- hoitaa
- onnistui
- johto
- johtaja
- Metrics
- miljoonia
- ML
- malli
- mallit
- seuranta
- lisää
- eniten
- nimet
- Luonnollinen
- suunnistus
- netto
- verkko
- solmut
- muistikirja
- numero
- Tarjoukset
- avata
- avoimen lähdekoodin
- avautuu
- operaattorit
- optimoitu
- Vaihtoehto
- Vaihtoehdot
- Muut
- oma
- Salasana
- suorituskyky
- foorumi
- Platforms
- Kohta
- politiikkaa
- pool
- esittää
- prioriteetti
- käsittely
- Tuotteet
- Tuotteemme
- Ohjelmointi
- projekti
- suojella
- toimittaa
- tarjoaa
- tarjoamalla
- julkinen
- nopeasti
- tavoittaa
- Lukeminen
- syistä
- ennätys
- kirjattu
- vapauta
- pyyntö
- tarvitaan
- vaatimukset
- resurssi
- Esittelymateriaalit
- vastaus
- REST
- Reitti
- ajaa
- juoksu
- skaalautuvuus
- skaalautuva
- Asteikko
- skaalaus
- tiede
- sdk
- SEK
- sekuntia
- turvallinen
- turvallisuus
- serverless
- palvelu
- Palvelut
- setti
- setup
- osakkeet
- Signs
- Yksinkertainen
- Koko
- löysä
- nukkua
- So
- sosiaalinen
- Tuotteemme
- Software Engineer
- vankka
- ratkaisu
- Ratkaisumme
- jonkin verran
- jotain
- lähdekoodi
- asiantuntija
- erikoistunut
- erikoistunut
- erityisesti
- Vaihe
- Alkaa
- alkoi
- alkaa
- Osavaltio
- Tila
- Levytila
- verkkokaupasta
- Onnistuneesti
- tuki
- Tukee
- järjestelmä
- järjestelmät
- tehtävät
- Tekninen
- Lähde
- Kautta
- aika
- symbolinen
- työkalu
- työkalut
- ylin
- raita
- liikenne
- koulutus
- siirtää
- Kääntäminen
- kuljettaa
- Matkustaminen
- ui
- Päivitykset
- Päivitykset
- us
- käyttää
- Käyttäjät
- validoitu
- arvo
- lajike
- eri
- todentaa
- visio
- tilavuus
- verkko
- verkkopalvelut
- KUKA
- sisällä
- ilman
- Referenssit
- työskenteli
- työskentely
- toimii