V tej objavi prikazujemo Kubeflow na AWS (specifična distribucija Kubeflow za AWS) in vrednost, ki jo doda odprtokodnemu Kubeflowu z integracijo visoko optimiziranih storitev AWS, ki izvirajo iz oblaka in so pripravljene za podjetja.
Kubeflow je platforma odprtokodnega strojnega učenja (ML), namenjena preprostemu, prenosljivemu in razširljivemu uvajanju delovnih tokov ML na Kubernetes. Kubeflow ponuja številne komponente, vključno z osrednjo nadzorno ploščo, večuporabniškimi prenosniki Jupyter, Kubeflow Pipelines, KFServing in Katib, kot tudi distribuirane operaterje za usposabljanje za TensorFlow, PyTorch, MXNet in XGBoost, za izdelavo preprostih, razširljivih in prenosljivih delovnih tokov ML .
AWS je pred kratkim lansiral Kubeflow v1.4 kot del lastne distribucije Kubeflow (imenovane Kubeflow na AWS), ki poenostavlja naloge podatkovne znanosti in pomaga graditi zelo zanesljive, varne, prenosljive in razširljive sisteme ML z zmanjšanimi operativnimi režijskimi stroški prek integracij s storitvami, ki jih upravlja AWS. . To distribucijo Kubeflow lahko uporabite za izgradnjo sistemov ML Amazonski elastični kubernetes storitev (Amazon EKS) za izdelavo, usposabljanje, prilagajanje in uvajanje modelov ML za najrazličnejše primere uporabe, vključno z računalniškim vidom, obdelavo naravnega jezika, prevajanjem govora in finančnim modeliranjem.
Izzivi z odprtokodnim Kubeflowom
Ko uporabljate odprtokodni projekt Kubeflow, razmesti vse komponente nadzorne in podatkovne ravnine Kubeflow na delovnih vozliščih Kubernetes. Storitve komponent Kubeflow so razporejene kot del nadzorne ravnine Kubeflow in vse uvedbe virov, povezane z Jupyterjem, usposabljanjem modela, uglaševanjem in gostovanjem, so razporejene na podatkovni ravnini Kubeflow. Nadzorna in podatkovna ravnina Kubeflow se lahko izvajata na istem ali različnih delovnih vozliščih Kubernetes. Ta objava se osredotoča na komponente krmilne ravnine Kubeflow, kot je prikazano v naslednjem diagramu.
Ta model uvajanja morda ne zagotavlja izkušnje, pripravljene za podjetja, zaradi naslednjih razlogov:
- Vse komponente infrastrukture za dvigovanje težkih predmetov nadzorne ravnine Kubeflow, vključno z bazo podatkov, shranjevanjem in avtentikacijo, so nameščene v samem delovnem vozlišču gruče Kubernetes. Zaradi tega je težko implementirati visoko razpoložljivo arhitekturo zasnove nadzorne ravnine Kubeflow s trajnim stanjem v primeru okvare delovnega vozlišča.
- Artefakti, ustvarjeni s krmilno ravnino Kubeflow (kot so primerki MySQL, dnevniki podov ali shramba MinIO), sčasoma rastejo in potrebujejo prostornine za shranjevanje, ki jih je mogoče spreminjati, z zmožnostmi stalnega spremljanja, da zadostijo naraščajočemu povpraševanju po shranjevanju. Ker si nadzorna ravnina Kubeflow deli vire z delovnimi obremenitvami podatkovne ravnine Kubeflow (na primer za delovna mesta usposabljanja, cevovode in uvedbe), lahko pravilna velikost in skaliranje prostorov gruče in shranjevanja Kubernetes postaneta izziv in povzročita povečane operativne stroške.
- Kubernetes omejuje velikost dnevniške datoteke, pri čemer večina namestitev ohranja najnovejšo omejitev 10 MB. Privzeto postanejo dnevniki podov nedostopni, ko dosežejo to zgornjo mejo. Dnevniki lahko tudi postanejo nedostopni, če so podi izločeni, zrušeni, izbrisani ali načrtovani na drugem vozlišču, kar bi lahko vplivalo na razpoložljivost dnevnika vaše aplikacije in zmožnosti spremljanja.
Kubeflow na AWS
Kubeflow na AWS ponuja jasno pot za uporabo Kubeflow z naslednjimi storitvami AWS:
- Izravnalnik obremenitve aplikacije za varno upravljanje zunanjega prometa prek HTTPS
- amazoncloudwatch za trajno upravljanje dnevnika
- AWS Cognito za avtentikacijo uporabnika z varnostjo transportne plasti (TLS)
- AWS posode za globoko učenje za visoko optimizirane slike strežnika prenosnih računalnikov Jupyter
- Elastični datotečni sistem Amazon (Amazon EFS) oz Amazon FSx za Luster za preprosto, razširljivo in brezstrežniško rešitev za shranjevanje datotek za večjo učinkovitost vadbe
- Amazon EKS za upravljane gruče Kubernetes
- Služba za relacijske baze podatkov Amazon (Amazon RDS) za visoko razširljive cevovode in shrambo metapodatkov
- Upravitelj skrivnosti AWS za zaščito skrivnosti, potrebnih za dostop do vaših aplikacij
- Preprosta storitev shranjevanja Amazon (Amazon S3) za shrambo cevovodnih artefaktov, ki je preprosta za uporabo
Te integracije storitve AWS s Kubeflowom (kot je prikazano v naslednjem diagramu) nam omogočajo, da ločimo kritične dele nadzorne ravnine Kubeflow od Kubernetesa, kar zagotavlja varno, razširljivo, prožno in stroškovno optimizirano zasnovo.
Pogovorimo se o prednostih integracije posamezne storitve in njihovih rešitvah glede varnosti, izvajanja cevovodov ML in shranjevanja.
Varna avtentikacija uporabnikov Kubeflow z Amazon Cognito
Varnost v oblaku pri AWS je najvišja prioriteta in vlagamo v tesno integracijo varnosti Kubeflow neposredno v varnostne storitve AWS z deljeno odgovornostjo, kot so naslednje:
- Application Load Balancer (ALB) za zunanje upravljanje prometa
- Upravitelj potrdil AWS (ACM) za podporo TLS
- Vloge IAM za storitvene račune (IRSA) za natančen nadzor dostopa na ravni Kubernetes Pod
- AWS Service Key Management (AWS KMS) za upravljanje ključev za šifriranje podatkov
- AWS ščit za DDoS zaščito
V tem razdelku se osredotočamo na integracijo nadzorne ravnine AWS Kubeflow z Amazon Cognito. Amazon Cognito odpravlja potrebo po upravljanju in vzdrževanju izvorne rešitve Dex (odprtokodni ponudnik OpenID Connect (OIDC), podprt z lokalnim LDAP) rešitve za preverjanje pristnosti uporabnikov in olajša upravljanje skrivnosti.
Uporabite lahko tudi Amazon Cognito, da svojemu uporabniškemu vmesniku Kubeflow hitro in enostavno dodate prijavo uporabnika, prijavo in nadzor dostopa. Amazon Cognito je na voljo na milijone uporabnikov in podpira prijavo s ponudniki socialne identitete (IdP), kot so Facebook, Google in Amazon, ter IdP za podjetja prek SAML 2.0. To zmanjša kompleksnost vaše nastavitve Kubeflow, zaradi česar je operativno vitka in enostavnejša za uporabo, da dosežete izolacijo več uporabnikov.
Oglejmo si potek preverjanja pristnosti več uporabnikov z integracijami Amazon Cognito, ALB in ACM s Kubeflow na AWS. V tej integraciji je več ključnih komponent. Amazon Cognito je konfiguriran kot IdP s povratnim klicem za preverjanje pristnosti, konfiguriranim za usmerjanje zahteve v Kubeflow po preverjanju pristnosti uporabnika. Kot del nastavitve Kubeflow je vhodni vir Kubernetes ustvarjen za upravljanje zunanjega prometa do storitve Istio Gateway. Vhodni krmilnik AWS ALB zagotovi izravnalnik obremenitve za ta vhod. Uporabljamo Amazonska pot 53 da konfigurirate javni DNS za registrirano domeno in ustvarite potrdila z uporabo ACM, da omogočite preverjanje pristnosti TLS v izravnalniku obremenitve.
Naslednji diagram prikazuje tipičen uporabniški delovni tok prijave v Amazon Cognito in preusmeritve na Kubeflow v ustreznem imenskem prostoru.
Potek dela vsebuje naslednje korake:
- Uporabnik pošlje zahtevo HTTPS na osrednjo nadzorno ploščo Kubeflow, ki gostuje za izravnalnikom obremenitve. Pot 53 razreši FQDN v zapis vzdevka ALB.
- Če piškotek ni prisoten, izravnalnik obremenitve preusmeri uporabnika na avtorizacijsko končno točko Amazon Cognito, tako da lahko Amazon Cognito preveri pristnost uporabnika.
- Ko je uporabnik overjen, ga Amazon Cognito pošlje nazaj v izravnalnik obremenitve s kodo za odobritev avtorizacije.
- Izravnalnik obremenitve predstavi kodo za odobritev avtorizacije končni točki žetona Amazon Cognito.
- Po prejemu veljavne kode za odobritev avtorizacije Amazon Cognito zagotovi žeton ID in dostopni žeton za izravnalnik obremenitve.
- Ko vaš izravnalnik obremenitve uspešno overi uporabnika, pošlje žeton dostopa do končne točke uporabniških informacij Amazon Cognito in prejme zahtevke uporabnikov. Izravnalnik obremenitve podpiše in doda uporabniške zahtevke v glavo HTTP
x-amzn-oidc-*
v obliki zahteve spletnega žetona JSON (JWT). - Zahteva iz izravnalnika obremenitve se pošlje v blok Istio Ingress Gateway.
- Istio Gateway z uporabo filtra odposlanca dekodira
x-amzn-oidc-data
vrednost, pridobi polje e-pošte in doda glavo HTTP po merikubeflow-userid
, ki ga uporablja avtorizacijski sloj Kubeflow. - Pravila za nadzor dostopa na podlagi virov Istio se uporabijo za dohodno zahtevo za potrditev dostopa do nadzorne plošče Kubeflow. Če kateri koli od teh ni dostopen uporabniku, se vrne odgovor o napaki. Če je zahteva potrjena, se posreduje ustrezni storitvi Kubeflow in omogoča dostop do nadzorne plošče Kubeflow
Vztrajni metapodatki komponente Kubeflow in shranjevanje artefaktov z Amazon RDS in Amazon S3
Kubeflow na AWS omogoča integracijo z Služba za relacijske baze podatkov Amazon (Amazon RDS) v Kubeflow Pipelines in AutoML (Katib) za trajno shranjevanje metapodatkov in Amazon S3 v Kubeflow Pipelines za trajno shranjevanje artefaktov. Nadaljujmo s podrobnejšo razpravo o cevovodih Kubeflow.
Kubeflow Pipelines je platforma za gradnjo in uvajanje prenosljivih, razširljivih delovnih tokov ML. Ti delovni tokovi lahko pomagajo avtomatizirati zapletene cevovode ML z uporabo vgrajenih in prilagojenih komponent Kubeflow. Kubeflow Pipelines vključuje Python SDK, prevajalnik DSL za pretvorbo kode Python v statično konfiguracijo, storitev Pipelines, ki poganja cevovode iz statične konfiguracije, in nabor krmilnikov za zagon vsebnikov znotraj Kubernetes Pods, potrebnih za dokončanje cevovoda.
Metapodatki Kubeflow Pipelines za cevovodne poskuse in zagone so shranjeni v MySQL, artefakti, vključno s paketi cevovodov in meritvami, pa so shranjeni v MinIO.
Kot je prikazano v naslednjem diagramu, vam Kubeflow na AWS omogoča shranjevanje naslednjih komponent s storitvami, ki jih upravlja AWS:
- Metapodatki cevovoda v Amazon RDS – Amazon RDS zagotavlja razširljivo, zelo razpoložljivo in zanesljivo arhitekturo uvajanja Multi-AZ z vgrajenim samodejnim mehanizmom za preklop ob napaki in zmogljivostjo, ki jo je mogoče spremeniti v velikosti, za industrijsko standardno relacijsko bazo podatkov, kot je MySQL. Upravlja skupne naloge skrbništva baze podatkov, ne da bi bilo treba zagotoviti infrastrukturo ali vzdrževati programsko opremo.
- Artefakti cevovoda v Amazon S3 – Amazon S3 ponuja vodilno razširljivost v panogi, razpoložljivost podatkov, varnost in zmogljivost ter se lahko uporablja za izpolnjevanje vaših zahteve skladnosti.
Te integracije pomagajo razbremeniti upravljanje in vzdrževanje metapodatkov in shranjevanja artefaktov s samoupravljanega Kubeflowa na upravljane storitve AWS, ki jih je lažje nastaviti, upravljati in prilagajati.
Podpora za porazdeljene datotečne sisteme z Amazon EFS in Amazon FSx
Kubeflow gradi na Kubernetesu, ki zagotavlja infrastrukturo za obsežno, porazdeljeno obdelavo podatkov, vključno z usposabljanjem in prilagajanjem velikih modelov z globokim omrežjem z milijoni ali celo milijardami parametrov. Za podporo takšnim sistemom ML za porazdeljeno obdelavo podatkov Kubeflow na AWS zagotavlja integracijo z naslednjimi storitvami za shranjevanje:
- Amazon EFS – Visoko zmogljiv porazdeljen datotečni sistem, ki izvira iz oblaka, ki ga lahko upravljate prek Gonilnik Amazon EFS CSI. Amazon EFS zagotavlja
ReadWriteMany
način dostopa, zdaj pa ga lahko uporabite za vpenjanje v sklope (Jupyter, usposabljanje modela, uravnavanje modela), ki se izvajajo v podatkovni ravnini Kubeflow, da zagotovite obstojen, razširljiv in deljiv delovni prostor, ki se samodejno poveča in zmanjša, ko dodajate in odstranjujete datoteke z ni potrebe po upravljanju. - Amazon FSx za Luster – Optimiziran datotečni sistem za računalniško intenzivne delovne obremenitve, kot sta visokozmogljivo računalništvo in ML, ki ga lahko upravljate prek Gonilnik Amazon FSx CSI. FSx za Luster ponuja
ReadWriteMany
tudi način dostopa in ga lahko uporabite za predpomnjenje podatkov o vadbi z neposredno povezavo z Amazon S3 kot podporno shrambo, ki jo lahko uporabite za podporo strežnikom za prenosne računalnike Jupyter ali porazdeljeno vadbo, ki se izvaja v podatkovni ravnini Kubeflow. S to konfiguracijo vam ni treba prenašati podatkov v datotečni sistem, preden uporabite nosilec. FSx za Luster zagotavlja dosledne zakasnitve v submilisekundah in visoko sočasnost ter se lahko poveča na TB/s prepustnosti in milijone IOPS.
Možnosti uvedbe Kubeflow
AWS ponuja različne možnosti uvajanja Kubeflow:
- Uvedba z Amazon Cognito
- Uvedba z Amazon RDS in Amazon S3
- Uvedba z Amazon Cognito, Amazon RDS in Amazon S3
- Vanilija uvedba
Za podrobnosti o integraciji storitve in razpoložljivih dodatkih za vsako od teh možnosti glejte Možnosti razmestitve. Namestite lahko možnost, ki najbolj ustreza vašemu primeru uporabe.
V naslednjem razdelku se sprehodimo skozi korake za namestitev distribucije AWS Kubeflow v1.4 na Amazon EKS. Nato uporabimo obstoječi primer cevovoda XGBoost, ki je na voljo na osrednji nadzorni plošči uporabniškega vmesnika Kubeflow, da prikažemo integracijo in uporabo AWS Kubeflow z Amazon Cognito, Amazon RDS in Amazon S3, z upraviteljem skrivnosti kot dodatkom.
Predpogoji
Za ta korak morate imeti naslednje predpogoje:
- An AWS račun.
- Obstoječa gruča Amazon EKS. To bi morala biti različica Kubernetes 1.19 ali novejša. Za samodejno ustvarjanje gruče z uporabo eksctl, Glej Ustvarite gručo Amazon EKS in uporabite možnost eksctl.
Namestite naslednja orodja na odjemalski računalnik, ki se uporablja za dostop do vaše gruče Kubernetes. Lahko uporabiš AWS Cloud9, integrirano razvojno okolje (IDE) v oblaku za nastavitev gruče Kubernetes.
- Vmesnik ukazne vrstice AWS (AWS CLI) – orodje ukazne vrstice za interakcijo s storitvami AWS. Za navodila za namestitev glejte Nameščanje, posodabljanje in odstranjevanje vmesnika CLI AWS.
- eksctl > 0.56 – Orodje ukazne vrstice za delo z gručami Amazon EKS, ki avtomatizira številne posamezne naloge.
- kubectl – Orodje ukazne vrstice za delo z gručami Kubernetes.
- git – Porazdeljena programska oprema za nadzor različic.
- Python 3.8+ – Programsko okolje Python.
- pip – Upravitelj paketov za Python.
- prilagodite različico 3.2.0 – Orodje ukazne vrstice za prilagajanje predmetov Kubernetes prek datoteke za prilagajanje.
Namestite Kubeflow na AWS
Konfigurirajte kubectl tako, da se lahko povežete z gručo Amazon EKS:
Različni krmilniki pri uvajanju Kubeflow uporabljajo Vloge IAM za storitvene račune (IRSA). Ponudnik OIDC mora obstajati, da vaša gruča uporablja IRSA. Ustvarite ponudnika OIDC in ga povežite z njim za gručo Amazon EKS tako, da zaženete naslednji ukaz, če ga vaša gruča še nima:
Klonirajte repo manifestov AWS in repo manifestov Kubeflow ter preverite ustrezne veje izdaje:
Za več informacij o teh različicah glejte Izdaje in različice.
Nastavite Amazon RDS, Amazon S3 in Secrets Manager
Vire Amazon RDS in Amazon S3 ustvarite, preden uvedete manifeste Kubeflow. Uporabljamo avtomatizirane skripte Python, ki skrbijo za ustvarjanje vedra S3, baze podatkov RDS in zahtevanih skrivnosti v upravitelju skrivnosti. Prav tako ureja zahtevane konfiguracijske datoteke za cevovod Kubeflow in AutoML, da se med namestitvijo Kubeflow pravilno konfigurirata za bazo podatkov RDS in vedro S3.
Ustvarite uporabnika IAM z dovoljenji za dovoljenje GetBucketLocation
ter dostop za branje in pisanje do objektov v vedru S3, kamor želite shraniti artefakte Kubeflow. Uporabi AWS_ACCESS_KEY_ID
in AWS_SECRET_ACCESS_KEY
uporabnika IAM v naslednji kodi:
Nastavite Amazon Cognito kot ponudnika preverjanja pristnosti
V tem razdelku ustvarimo domeno po meri v Route 53 in ALB za usmerjanje zunanjega prometa na Kubeflow Istio Gateway. ACM uporabljamo za ustvarjanje potrdila za omogočanje avtentikacije TLS pri ALB in Amazon Cognito za vzdrževanje skupine uporabnikov in upravljanje avtentikacije uporabnikov.
Nadomestite naslednje vrednosti
- route53.rootDomain.name – Registrirana domena. Predpostavimo, da je ta domena
example.com
. - route53.rootDomain.hostedZoneId – Če je vaša domena upravljana v Route53, vnesite ID gostujočega območja, ki ga najdete pod podrobnostmi gostujočega območja. Preskočite ta korak, če vašo domeno upravlja drug ponudnik domene.
- route53.subDomain.name – Ime poddomene, kjer želite gostiti Kubeflow (npr.
platform.example.com
). Za več informacij o poddomenah glejte Uvajanje Kubeflow z AWS Cognito kot IdP. - cluster.name – Ime gruče in mesto, kjer je nameščen Kubeflow.
- grozd.regija – Regija gruče, kjer je razporejen Kubeflow (na primer
us-west-2
). - cognitoUserpool.name – Ime skupine uporabnikov Amazon Cognito (npr.
kubeflow-users
).
Konfiguracijska datoteka je videti nekako takole kot naslednja koda:
Zaženite skript, da ustvarite vire:
Skript posodablja config.yaml
z imeni virov, ID-ji in ARN-ji, ki jih je ustvaril. Videti je nekako takole kot naslednja koda:
Zgradite manifeste in namestite Kubeflow
Razmestite Kubeflow z naslednjim ukazom:
Posodobite domeno z naslovom ALB
Uvedba ustvari izravnalnik obremenitve aplikacije AWS, ki ga upravlja vstop. Vnose DNS za poddomeno na poti 53 posodobimo z DNS izravnalnika obremenitve. Zaženite naslednji ukaz, da preverite, ali je izravnalnik obremenitve omogočen (to traja približno 3–5 minut):
Če ADDRESS
polje je po nekaj minutah prazno, preverite dnevnike alb-ingress-controller
. Za navodila glejte ALB ne zagotavlja.
Ko je izravnalnik obremenitve omogočen, kopirajte ime DNS izravnalnika obremenitve in nadomestite naslov kubeflow.alb.dns
in ${kubeflow_manifest_dir}/tests/e2e/utils/cognito_bootstrap/config.yaml
. Razdelek Kubeflow konfiguracijske datoteke izgleda kot naslednja koda:
Zaženite naslednji skript, da posodobite vnose DNS za poddomeno na poti 53 z DNS omogočenega izravnalnika obremenitve:
Odpravljanje težav
Če med namestitvijo naletite na težave, si oglejte vodnik za odpravljanje težav ali začnite na novo, tako da sledite razdelku »Počisti« v tem blogu.
Predstavitev primera uporabe
Zdaj, ko smo dokončali namestitev zahtevanih komponent Kubeflow, si jih oglejmo v akciji z uporabo enega od obstoječih primerov, ki jih ponuja Kubeflow Pipelines na nadzorni plošči.
Do nadzorne plošče Kubeflow dostopajte z uporabo Amazon Cognito
Za začetek si zagotovimo dostop do nadzorne plošče Kubeflow. Ker smo kot IdP uporabili Amazon Cognito, uporabite informacije, navedene v uradna datoteka README. Najprej ustvarimo nekaj uporabnikov na konzoli Amazon Cognito. To so uporabniki, ki se bodo prijavili na centralno nadzorno ploščo. Naslednji, ustvarite profil za uporabnika, ki ste ga ustvarili. Nato bi morali imeti možnost dostopa do nadzorne plošče prek prijavne strani na naslovu https://kubeflow.platform.example.com.
Naslednji posnetek zaslona prikazuje našo nadzorno ploščo Kubeflow.
Zaženite cevovod
Na nadzorni plošči Kubeflow izberite Cevovodi v imenu navigacije. Videti bi morali štiri primere, ki jih ponuja Kubeflow Pipelines, ki jih lahko zaženete neposredno, da raziščete različne funkcije Pipelines.
Za to objavo uporabljamo vzorec XGBoost, imenovan [Demo] XGBoost – Iterative model training. Izvorno kodo najdete na GitHub. To je preprost cevovod, ki uporablja obstoječe XGBoost/Train
in XGBoost/Predict
Komponente cevovoda Kubeflow za iterativno usposabljanje modela, dokler se metrike ne štejejo za dobre na podlagi določenih metrik.
Za zagon cevovoda izvedite naslednje korake:
- Izberite cevovod in izberite Ustvari poskus.
- Pod Podrobnosti eksperimenta, vnesite ime (za to objavo,
demo-blog
) in izbirni opis. - Izberite Naslednji.
- Pod Podrobnosti o teku¸ izberite svoj cevovod in različico cevovoda.
- za Ime zagona, vnesite ime.
- za Preizkusna, izberite poskus, ki ste ga ustvarili.
- za Vrsta tekatako, da izberete Enkratno.
- Izberite Začetek.
Ko se cevovod začne izvajati, bi morali videti komponente dokončane (v nekaj sekundah). Na tej stopnji lahko izberete katero koli od dokončanih komponent, da vidite več podrobnosti.
Dostop do artefaktov v Amazon S3
Med uvajanjem Kubeflow smo določili, da naj Kubeflow Pipelines uporablja Amazon S3 za shranjevanje svojih artefaktov. To vključuje vse izhodne artefakte cevovoda, predpomnjene izvedbe in cevovodne grafe – vse to je mogoče nato uporabiti za bogate vizualizacije in vrednotenje zmogljivosti.
Ko je potek cevovoda končan, bi morali videti artefakte v vedru S3, ki ste ga ustvarili med namestitvijo. Če želite to potrditi, izberite katero koli dokončano komponento cevovoda in preverite Input / Output razdelek o privzetem Graf zavihek. URL-ji artefakta morajo kazati na vedro S3, ki ste ga navedli med uvajanjem.
Za potrditev, da so bili viri dodani v Amazon S3, lahko tudi preverimo vedro S3 v našem računu AWS prek konzole Amazon S3.
Naslednji posnetek zaslona prikazuje naše datoteke.
Preverite metapodatke ML v Amazon RDS
Med uvajanjem smo integrirali tudi Kubeflow Pipelines z Amazon RDS, kar pomeni, da je treba vse metapodatke o cevovodih shraniti v Amazon RDS. To vključuje vse informacije o času izvajanja, kot je stanje opravila, razpoložljivost artefaktov, lastnosti po meri, povezane z izvajanjem ali artefakti, in več.
Če želite preveriti integracijo Amazon RDS, sledite korakom v uradna datoteka README. Natančneje, dokončajte naslednje korake:
- Pridobite uporabniško ime in geslo za Amazon RDS iz skrivnosti, ki je bila ustvarjena med namestitvijo:
- Uporabite te poverilnice za povezavo z Amazon RDS znotraj gruče:
- Ko se odpre poziv MySQL, lahko preverimo
mlpipelines
baze podatkov, kot sledi: - Zdaj lahko beremo vsebino določenih tabel in se prepričamo, da lahko vidimo informacije o metapodatkih o poskusih, ki so izvajali cevovode:
Čiščenje
Če želite odstraniti Kubeflow in izbrisati vire AWS, ki ste jih ustvarili, izvedite naslednje korake:
- Izbrišite vhodni in vhodno upravljani izravnalnik obremenitve tako, da zaženete naslednji ukaz:
- Izbrišite preostale komponente Kubeflow:
- Izbrišite vire AWS, ki so jih ustvarili skripti:
- Viri, ustvarjeni za integracijo Amazon RDS in Amazon S3. Prepričajte se, da imate konfiguracijsko datoteko, ki jo je ustvaril skript
${kubeflow_manifest_dir}/tests/e2e/utils/rds-s3/metadata.yaml
: - Viri, ustvarjeni za integracijo Amazon Cognito. Prepričajte se, da imate konfiguracijsko datoteko, ki jo je ustvaril skript
${kubeflow_manifest_dir}/tests/e2e/utils/cognito_bootstrap/config.yaml
:
- Viri, ustvarjeni za integracijo Amazon RDS in Amazon S3. Prepričajte se, da imate konfiguracijsko datoteko, ki jo je ustvaril skript
- Če ste ustvarili namensko gručo Amazon EKS za Kubeflow z eksctl, jo lahko izbrišete z naslednjim ukazom:
Povzetek
V tej objavi smo poudarili vrednost, ki jo nudi Kubeflow na AWS prek izvornih integracij storitev, ki jih upravlja AWS, za varne, razširljive in za podjetja pripravljene delovne obremenitve AI in ML. Izbirate lahko med več možnostmi uvajanja za namestitev Kubeflow na AWS z različnimi integracijami storitev. Primer uporabe v tej objavi je pokazal integracijo Kubeflow z Amazon Cognito, Secrets Manager, Amazon RDS in Amazon S3. Če želite začeti uporabljati Kubeflow v AWS, si oglejte razpoložljive možnosti uvedbe, integrirane v AWS, v Kubeflow na AWS.
Začenši z v1.3, lahko sledite Repozitorij AWS Labs za sledenje vsem prispevkom AWS v Kubeflow. Najdete nas tudi na Kubeflow #AWS Slack Channel; vaše povratne informacije nam bodo pomagale določiti prednost naslednjim funkcijam za prispevanje k projektu Kubeflow.
O avtorjih
Kanwaljit Khurmi je specialist za rešitve AI/ML pri Amazon Web Services. Sodeluje z izdelkom AWS, inženiringom in strankami, da bi zagotovil smernice in tehnično pomoč, ki jim pomaga izboljšati vrednost njihovih hibridnih rešitev ML pri uporabi AWS. Kanwaljit je specializiran za pomoč strankam z aplikacijami za vsebnike in strojnim učenjem.
Meghna Baijal je programski inženir z umetno inteligenco AWS, ki uporabnikom olajša vključitev delovnih obremenitev strojnega učenja v AWS z gradnjo izdelkov in platform ML, kot so vsebniki za globoko učenje, AMI za globoko učenje, krmilniki AWS za Kubernetes (ACK) in Kubeflow na AWS . Zunaj dela rada bere, potuje in se ukvarja s slikanjem.
Suraj Kota je programski inženir, specializiran za infrastrukturo strojnega učenja. Gradi orodja za preprost začetek in povečanje delovne obremenitve strojnega učenja na AWS. Delal je na AWS Deep Learning Containers, Deep Learning AMI, SageMaker Operators for Kubernetes in drugih odprtokodnih integracijah, kot je Kubeflow.
- Coinsmart. Najboljša evropska borza bitcoinov in kriptovalut.
- Platoblockchain. Web3 Metaverse Intelligence. Razširjeno znanje. PROST DOSTOP.
- CryptoHawk. Altcoin radar. Brezplačen preizkus.
- Vir: 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
- O meni
- dostop
- Račun
- Ukrep
- Add-on
- Naslov
- admin
- uprava
- podružnice
- AI
- vsi
- že
- Amazon
- Amazon Web Services
- Še ena
- uporaba
- aplikacije
- primerno
- Arhitektura
- okoli
- Sodelavec
- overjena
- preverja pristnost
- Preverjanje pristnosti
- pooblastilo
- avtomatizirati
- Avtomatizirano
- avtomatizira
- razpoložljivost
- Na voljo
- AWS
- postanejo
- Prednosti
- BEST
- milijardah
- Blog
- meja
- izgradnjo
- Building
- Gradi
- vgrajeno
- Zmogljivosti
- kapaciteta
- ki
- primeri
- CD
- potrdilo
- Potrdila
- izziv
- Na blagajno
- Izberite
- terjatve
- razred
- Koda
- Skupno
- dokončanje
- kompleksna
- komponenta
- računalnik
- računalništvo
- konfiguracija
- Connect
- Povezovanje
- Konzole
- Zabojniki
- Vsebuje
- vsebina
- naprej
- prispevajo
- nadzor
- krmilnik
- avtorske pravice
- bi
- ustvarjajo
- ustvaril
- ustvari
- Ustvarjanje
- Oblikovanje
- Mandatno
- kritično
- po meri
- Stranke, ki so
- Armaturna plošča
- datum
- obdelava podatkov
- znanost o podatkih
- Baze podatkov
- DDoS
- namenjen
- Povpraševanje
- izkazati
- Dokazano
- razporedi
- razporejeni
- uvajanja
- uvajanje
- razmestitve
- razpolaga
- Oblikovanje
- Podatki
- Podrobnosti
- Razvoj
- Dex
- drugačen
- neposredna
- neposredno
- razpravlja
- porazdeljena
- distribucija
- dns
- Ne
- domena
- enostavno
- enostaven za uporabo
- echo
- E-naslov
- omogočajo
- šifriranje
- Končna točka
- inženir
- Inženiring
- Vnesite
- Podjetje
- okolje
- Ocena
- Event
- Primer
- obstoječih
- izkušnje
- poskus
- raziskuje
- Napaka
- Lastnosti
- povratne informacije
- finančna
- prva
- fit
- Pretok
- Osredotočite
- Osredotoča
- sledi
- po
- format
- je pokazala,
- sveže
- pridobivanje
- git
- GitHub
- dobro
- Grow
- Pridelovanje
- pomoč
- pomoč
- Pomaga
- tukaj
- visoka
- več
- Poudarjeno
- zelo
- gostovanje
- HTTPS
- Hybrid
- identiteta
- vpliv
- izvajati
- izboljšanje
- Inc
- vključuje
- Vključno
- povečal
- individualna
- vodilne
- info
- Podatki
- Infrastruktura
- namestitev
- integrirana
- integracija
- integracije
- vlaganjem
- izolacija
- Vprašanja
- IT
- sam
- Delovna mesta
- vzdrževanje
- Ključne
- Labs
- jezik
- velika
- začela
- učenje
- dviganje
- vrstica
- obremenitev
- lokalna
- stroj
- strojno učenje
- vzdrževati
- IZDELA
- Izdelava
- upravljanje
- upravlja
- upravljanje
- upravitelj
- Meritve
- milijoni
- ML
- Model
- modeli
- spremljanje
- več
- Najbolj
- Imena
- naravna
- ostalo
- net
- mreža
- vozlišča
- prenosnik
- Številka
- Ponudbe
- odprite
- open source
- Odpre
- operaterji
- optimizirana
- Možnost
- možnosti
- Ostalo
- lastne
- Geslo
- performance
- platforma
- Platforme
- Točka
- politike
- bazen
- predstaviti
- prednostna naloga
- obravnavati
- Izdelek
- Izdelki
- Programiranje
- Projekt
- zaščito
- zagotavljajo
- zagotavlja
- zagotavljanje
- javnega
- hitro
- dosežejo
- reading
- Razlogi
- zapis
- registriranih
- sprostitev
- zahteva
- obvezna
- Zahteve
- vir
- viri
- Odgovor
- REST
- Pot
- Run
- tek
- Prilagodljivost
- razširljive
- Lestvica
- skaliranje
- Znanost
- SDK
- SEC
- sekund
- zavarovanje
- varnost
- Brez strežnika
- Storitev
- Storitve
- nastavite
- nastavitev
- Delnice
- Znaki
- Enostavno
- Velikosti
- Slack
- spanje
- So
- socialna
- Software
- Software Engineer
- trdna
- Rešitev
- rešitve
- nekaj
- Nekaj
- Izvorna koda
- specialist
- specializirani
- specializirano
- posebej
- Stage
- Začetek
- začel
- začne
- Država
- Status
- shranjevanje
- trgovina
- Uspešno
- podpora
- Podpira
- sistem
- sistemi
- Naloge
- tehnični
- Vir
- skozi
- čas
- žeton
- orodje
- orodja
- vrh
- sledenje
- Prometa
- usposabljanje
- prenos
- prevod
- prevoz
- Potovanje
- ui
- Nadgradnja
- posodobitve
- us
- uporaba
- Uporabniki
- potrjeno
- vrednost
- raznolikost
- različnih
- preverjanje
- Vizija
- Obseg
- web
- spletne storitve
- WHO
- v
- brez
- delo
- delal
- deluje
- deluje