RStudio på Amazon SageMaker er bransjens første fullt administrerte RStudio Workbench i sky. Du kan raskt starte det velkjente RStudio integrerte utviklingsmiljøet (IDE), og ringe opp og ned de underliggende dataressursene uten å avbryte arbeidet ditt, noe som gjør det enkelt å bygge maskinlæring (ML) og analyseløsninger i R i stor skala. RStudio på SageMaker kommer allerede med en innebygd bilde forhåndskonfigurert med R-programmerings- og datavitenskapsverktøy; Imidlertid må du ofte tilpasse IDE-miljøet ditt. Fra og med i dag kan du ta med ditt eget tilpassede bilde med pakker og verktøy etter eget valg, og gjøre dem tilgjengelige for alle brukerne av RStudio på SageMaker med noen få klikk.
Å ta med ditt eget tilpassede bilde har flere fordeler. Du kan standardisere og forenkle startopplevelsen for dataforskere og utviklere ved å gi et startbilde, forhåndskonfigurere driverne som kreves for å koble til datalagre, eller forhåndsinstallere spesialisert datavitenskapsprogramvare for forretningsdomenet ditt. Videre kan organisasjoner som tidligere har vært vert for sin egen RStudio Workbench ha eksisterende containeriserte miljøer som de ønsker å fortsette å bruke i RStudio på SageMaker.
I dette innlegget deler vi trinnvise instruksjoner for å lage et tilpasset bilde og bringe det til RStudio på SageMaker ved å bruke AWS-administrasjonskonsoll or AWS kommandolinjegrensesnitt (AWS CLI). Du kan få ditt første tilpassede IDE-miljø oppe og kjøre i noen få enkle trinn. For mer informasjon om innholdet som diskuteres i dette innlegget, se Ta med ditt eget RStudio-bilde.
Løsningsoversikt
Når en dataforsker starter en ny sesjon i RStudio på SageMaker, klargjøres en ny on-demand ML-beregningsforekomst og et containerbilde som definerer kjøretidsmiljøet (operativsystem, biblioteker, R-versjoner og så videre) kjøres på ML forekomst. Du kan gi dataforskerne dine flere valg for kjøretidsmiljøet ved å lage tilpassede containerbilder og gjøre dem tilgjengelige på RStudio Workbench-starteren, som vist i følgende skjermbilde.
Følgende diagram beskriver prosessen for å bringe ditt egendefinerte bilde. Først bygger du et tilpasset containerbilde fra en Dockerfile og skyver det til et depot inn Amazon Elastic Container Registry (Amazon ECR). Deretter lager du et SageMaker-bilde som peker til beholderbildet i Amazon ECR, og legger ved det bildet til SageMaker-domene. Dette gjør det tilpassede bildet tilgjengelig for å starte en ny økt i RStudio.
Forutsetninger
For å implementere denne løsningen må du ha følgende forutsetninger:
- En RStudio på SageMaker-domenet
- AWS identitets- og tilgangsadministrasjon (IAM) retningslinjer for å samhandle med Amazon ECR
- Den riktige AWS CLI-versjonen
Vi gir mer informasjon om hver i denne delen.
RStudio på SageMaker-domenet
Hvis du har et eksisterende SageMaker-domene med RStudio aktivert før 7. april 2022, må du slette og gjenskape RStudioServerPro
app under brukerprofilnavnet domain-shared
for å få de siste oppdateringene for å ta med din egen tilpassede bildefunksjon. AWS CLI-kommandoene er som følger. Merk at denne handlingen avbryter RStudio-brukere på SageMaker.
Hvis dette er første gang du bruker RStudio på SageMaker, følg trinn-for-trinn-oppsettprosessen beskrevet i Kom i gang med RStudio på Amazon SageMaker, eller kjør følgende AWS skyformasjon mal for å sette opp din første RStudio på SageMaker-domenet. Hvis du allerede har en fungerende RStudio på SageMaker-domenet, kan du hoppe over dette trinnet.
Følgende RStudio på SageMaker CloudFormation-mal krever en RStudio-lisens godkjent gjennom AWS License Manager. For mer om lisensiering, se RStudio lisens. Vær også oppmerksom på at kun ett SageMaker-domene er tillatt per AWS-region, så du må bruke en AWS-konto og region som ikke har et eksisterende domene.
- Velg Start Stack.
Linken tar deg til us-east-1-regionen, men du kan endre til din foretrukne region. - på Angi mal delen velger neste.
- på Spesifiser stakkdetaljer seksjon, for Stabelnavn, skriv inn et navn.
- Til parametere, skriv inn et SageMaker-brukerprofilnavn.
- Velg neste.
- på Konfigurer stakkalternativer delen velger neste.
- på Anmeldelse seksjon, velg Jeg erkjenner at AWS CloudFormation kan skape IAM-ressurser Og velg neste.
- Når stabelstatusen endres til
CREATE_COMPLETE
, gå til kontroll Panel på SageMaker-konsollen for å finne domenet og den nye brukeren.
IAM-retningslinjer for å samhandle med Amazon ECR
For å samhandle med dine private Amazon ECR-lagre, trenger du følgende IAM-tillatelser i IAM-brukeren eller rollen du vil bruke til å bygge og pushe Docker-bilder:
For å først bygge fra et offentlig Amazon ECR-bilde som vist i dette innlegget, må du legge ved det AWS-administrerte AmazonElasticContainerRegistryPublicReadOnly policy til din IAM-bruker eller rolle også.
For å bygge et Docker-containerbilde kan du bruke enten en lokal Docker-klient eller SageMaker Docker Build CLI-verktøy fra en terminal i RStudio på SageMaker. For sistnevnte, følg forutsetningene i Bruke Amazon SageMaker Studio Image Build CLI til å bygge containerbilder fra Studio-notatbøkene dine for å sette opp IAM-tillatelser og CLI-verktøyet.
AWS CLI-versjoner
Det er minimumsversjonskrav for AWS CLI-verktøyet for å kjøre kommandoene nevnt i dette innlegget. Sørg for å oppgradere AWS CLI på terminalen du ønsker:
- AWS CLI v1 >= 1.23.6
- AWS CLI v2 >= 2.6.2
Forbered en Dockerfile
Du kan tilpasse kjøretidsmiljøet ditt i RStudio i en Dockerfile. Fordi tilpasningen avhenger av brukstilfellet og kravene, viser vi deg det viktigste og de vanligste tilpasningene i dette eksemplet. Du kan laste ned hele eksempel Dockerfile.
Installer RStudio Workbench-sesjonskomponenter
Den viktigste programvaren å installere i ditt tilpassede containerbilde er RStudio Workbench. Vi laster ned fra offentlig S3-bøtte hostet av RStudio PBC. Det er mange versjonsutgivelser og OS-distribusjoner for bruk. Versjonen av installasjonen må være kompatibel med RStudio Workbench-versjonen som brukes i RStudio på SageMaker, som er 1.4.1717-3 i skrivende stund. OS (argument-OS i følgende utdrag) må samsvare med basen OS
brukt i beholderbildet. I vårt utvalg Dockerfile, er basisbildet vi bruker Amazon Linux 2 fra et AWS-administrert offentlig Amazon ECR-lager. Det kompatible RStudio Workbench OS er centos7.
Du kan finne alle OS-utgivelsesalternativene med følgende kommando:
Installer R (og versjoner av R)
Kjøretiden for det tilpassede RStudio-beholderbildet ditt trenger minst én versjon av R. Vi kan først installere en versjon av R og gjøre den til standard R ved å lage myke lenker til /usr/local/bin/
:
Dataforskere trenger ofte flere versjoner av R slik at de enkelt kan bytte mellom prosjekter og kodebase. RStudio på SageMaker støtter enkel veksling mellom R-versjoner, som vist i følgende skjermbilde.
RStudio på SageMaker skanner automatisk og oppdager versjoner av R i følgende kataloger:
Vi kan installere flere versjoner i beholderbildet, som vist i følgende utdrag. De vil bli installert i /opt/R/
.
Installer RStudio Professional-drivere
Dataforskere trenger ofte å få tilgang til data fra kilder som f.eks Amazonas Athena og Amazon RedShift i RStudio på SageMaker. Du kan gjøre det ved å bruke RStudio profesjonelle drivere og RStudio-tilkoblinger. Sørg for at du installerer de relevante bibliotekene og driverne som vist i følgende utdrag:
Installer tilpassede biblioteker
Du kan også installere flere R- og Python-biblioteker slik at dataforskere ikke trenger å installere dem umiddelbart:
Når du er ferdig med tilpasningen i en Dockerfile, er det på tide å bygge et beholderbilde og skyve det til Amazon ECR.
Bygg og send til Amazon ECR
Du kan bygge et containerbilde fra Dockerfilen fra en terminal der Docker-motoren er installert, for eksempel din lokale terminal eller AWS Cloud9. Hvis du bygger den fra en terminal i RStudio på SageMaker, kan du bruke SageMaker Studio Bildebygging. Vi viser fremgangsmåten for begge tilnærmingene.
I en lokal terminal der Docker-motoren er til stede, kan du kjøre følgende kommandoer fra der Dockerfilen er. Du kan bruke eksempelskriptet create-and-update-image.sh.
I en terminal på RStudio på SageMaker, kjør følgende kommandoer:
Etter disse kommandoene har du et depot og et Docker-beholderbilde i Amazon ECR for vårt neste trinn, der vi legger ved beholderbildet for bruk i RStudio på SageMaker. Legg merke til bilde-URI i Amazon ECR <ACCOUNT_ID>.dkr.ecr.<REGION>.amazonaws.com/<REPO>:<TAG>
for senere bruk.
Oppdater RStudio på SageMaker gjennom konsollen
RStudio på SageMaker tillater kjøretidstilpasning gjennom bruk av et tilpasset SageMaker-bilde. Et SageMaker-bilde er en holder for et sett med SageMaker-bildeversjoner. Hver bildeversjon representerer et beholderbilde som er kompatibelt med RStudio på SageMaker og lagret i et Amazon ECR-lager. For å gjøre et tilpasset SageMaker-bilde tilgjengelig for alle RStudio-brukere innenfor et domene, kan du legge ved bildet til domenet ved å følge trinnene i denne delen.
- På SageMaker-konsollen, naviger til Egendefinerte SageMaker Studio-bilder knyttet til domene side, og velg Legg ved bilde.
- Plukke ut Nytt bilde, og skriv inn din Amazon ECR-bilde-URI.
- Velg neste.
- på Bildeegenskaper seksjon, gi en Bilde navn (obligatorisk), Navn på bilde (valgfri), Beskrivelse (valgfritt), IAM-rolle og tagger.
De bildevisningsnavn, hvis gitt, vises i sesjonsstarteren i RStudio på SageMaker. Hvis Navn på bilde feltet står tomt, den bilde navn vises i RStudio på SageMaker i stedet. - Permisjon EFS-monteringsbane og Avansert konfigurasjon (Bruker-ID og Gruppe-ID) som standard fordi RStudio på SageMaker administrerer konfigurasjonen for oss.
- på Bildetype seksjon, velg RStudio-bilde.
- Velg Send.
Du kan nå se en ny oppføring i listen. Det er verdt å merke seg at med introduksjonen av støtte for tilpassede RStudio-bilder, kan du se en ny Brukstype kolonne i tabellen for å angi om et bilde er et RStudio-bilde eller et Amazon SageMaker Studio bilde.
Det kan ta opptil 5–10 minutter før de egendefinerte bildene er tilgjengelige i brukergrensesnittet for øktstarter. Du kan deretter starte en ny R-økt i RStudio på SageMaker med dine egendefinerte bilder.
Over tid kan det være lurt å pensjonere gamle og utdaterte bilder. For å fjerne de egendefinerte bildene fra listen over egendefinerte bilder i RStudio, velg bildene i listen og velg Løsne.
Velg Løsne igjen for å bekrefte.
Oppdater RStudio på SageMaker via AWS CLI
De følgende delene beskriver trinnene for å lage et SageMaker-bilde og legge det ved bruk i RStudio på SageMaker på SageMaker-konsollen og ved å bruke AWS CLI. Du kan bruke eksempelskriptet create-and-update-image.sh.
Lag SageMaker-bildet og bildeversjonen
Det første trinnet er å lage et SageMaker-bilde fra det tilpassede beholderbildet i Amazon ECR ved å kjøre følgende to kommandoer:
Merk at det egendefinerte bildet som vises i sesjonsstarteren i RStudio på SageMaker, bestemmes av inndata fra --display-name
. Hvis det valgfrie visningsnavnet ikke er oppgitt, vil inntastingen av --image-name
brukes i stedet. Vær også oppmerksom på at IAM-rollen lar SageMaker legge ved et Amazon ECR-bilde til RStudio på SageMaker.
Opprett en AppImageConfig
I tillegg til et SageMaker-bilde, som fanger opp bilde-URI fra Amazon ECR, en appbildekonfigurasjon (AppImageConfig) kreves for bruk i et SageMaker-domene. Vi forenkler konfigurasjonen for en RSessionApp
bilde slik at vi bare kan lage en plassholderkonfigurasjon med følgende kommando:
Koble til et SageMaker-domene
Med SageMaker-bildet og appbildekonfigurasjonen opprettet, er vi klare til å legge ved det tilpassede beholderbildet til SageMaker-domenet. For å gjøre et tilpasset SageMaker-bilde tilgjengelig for alle RStudio-brukere innenfor et domene, legger du ved bildet til domenet som standard brukerinnstilling. Alle eksisterende brukere og eventuelle nye brukere vil kunne bruke det tilpassede bildet.
For bedre lesbarhet plasserer vi følgende konfigurasjon i JSON-filen default-user-settings.json:
I denne filen kan vi spesifisere bildet og AppImageConfig
navnepar i en liste i DefaultUserSettings.RSessionAppSettings.CustomImages
. Denne forrige kodebiten forutsetter at to egendefinerte bilder blir opprettet.
Kjør deretter følgende kommando for å oppdatere SageMaker-domenet:
Etter at du har oppdatert domenet, kan det ta opptil 5–10 minutter før de egendefinerte bildene er tilgjengelige i brukergrensesnittet for øktstarter. Du kan deretter starte en ny R-økt i RStudio på SageMaker med dine egendefinerte bilder.
Koble bilder fra et SageMaker-domene
Du kan fjerne bilder ganske enkelt ved å fjerne ImageName
og AppImageConfigName
par fra default-user-settings.json
og oppdatering av domenet.
For eksempel å oppdatere domenet med følgende default-user-settings.json
Fjerner r-4.1.3-rstudio-2022
fra R-økten starter UI og forlater r-4.1.3-rstudio-1.4.1717-3
som det eneste tilpassede bildet som er tilgjengelig for alle brukere på et domene:
Rydd opp
For å trygt fjerne bilder og ressurser i SageMaker-domenet, fullfør følgende trinn i Rydd opp i bilderessurser.
For å trygt fjerne RStudio på SageMaker og SageMaker-domenet, fullfør følgende trinn i Slett et Amazon SageMaker-domene for å slette enhver RSessionGateway-app, brukerprofil og domenet.
For å trygt fjerne bilder og arkiver i Amazon ECR, fullfør følgende trinn i Sletter et bilde.
Til slutt, for å slette CloudFormation-malen:
- På AWS CloudFormation-konsollen velger du Stabler.
- Velg stabelen du distribuerte for denne løsningen.
- Velg Slett.
konklusjonen
RStudio på SageMaker gjør det enkelt for dataforskere å bygge ML og analytiske løsninger i R i stor skala, og for administratorer å administrere et robust datavitenskapelig miljø for utviklerne sine. Dataforskere ønsker å tilpasse miljøet slik at de kan bruke de riktige bibliotekene til riktig jobb og oppnå ønsket reproduserbarhet for hvert ML-prosjekt. Administratorer må standardisere datavitenskapsmiljøet av regulatoriske og sikkerhetsmessige årsaker. Du kan nå lage tilpassede containerbilder som oppfyller dine organisasjonskrav og lar dataforskere bruke dem i RStudio på SageMaker.
Vi oppfordrer deg til å prøve det. Lykke til med utviklingen!
Om forfatterne
Michael Hsieh er en senior AI/ML spesialistløsningsarkitekt. Han jobber med kunder for å fremme deres ML-reise med en kombinasjon av AWS ML-tilbud og ML-domenekunnskapen hans. Som en Seattle-transplantasjon elsker han å utforske den fantastiske naturen byen har å tilby, for eksempel turstier, kajakkpadling i SLU og solnedgangen ved Shilshole Bay.
Declan Kelly er programvareingeniør i Amazon SageMaker Studio-teamet. Han har jobbet på Amazon SageMaker Studio siden lanseringen på AWS re:Invent 2019. Utenom jobben liker han å gå og klatre.
Sean Morgan er AI/ML Solutions Architect hos AWS. Han har erfaring innen halvleder- og akademisk forskningsfelt, og bruker sin erfaring til å hjelpe kundene med å nå sine mål på AWS. På fritiden er Sean en aktiv bidragsyter og vedlikeholder av åpen kildekode, og er spesialinteressegruppeleder for TensorFlow-tillegg.
- Myntsmart. Europas beste Bitcoin og Crypto Exchange.
- Platoblokkkjede. Web3 Metaverse Intelligence. Kunnskap forsterket. FRI TILGANG.
- CryptoHawk. Altcoin Radar. Gratis prøveperiode.
- Kilde: https://aws.amazon.com/blogs/machine-learning/use-a-custom-image-to-bring-your-own-development-environment-to-rstudio-on-amazon-sagemaker/
- "
- &
- 1.3
- 10
- 100
- 2019
- 2022
- 7
- a
- Om oss
- adgang
- Logg inn
- Oppnå
- Handling
- aktiv
- tillegg
- Ytterligere
- administratorer
- avansere
- Alle
- tillater
- allerede
- Amazon
- analytics
- app
- tilnærminger
- hensiktsmessig
- April
- tilgjengelig
- AWS
- bukt
- fordi
- være
- Fordeler
- Bedre
- mellom
- grensen
- bringe
- bygge
- Bygning
- virksomhet
- Kan få
- fanger
- saken
- endring
- valg
- valg
- Velg
- City
- Cloud
- kode
- Kolonne
- kombinasjon
- Felles
- kompatibel
- fullføre
- Beregn
- Konfigurasjon
- Tilkobling
- Konsoll
- Container
- innhold
- fortsette
- bidragsyter
- skape
- opprettet
- Opprette
- skikk
- Kunder
- tilpasse
- dato
- datavitenskap
- dataforsker
- demonstrere
- avhenger
- utplassert
- beskrive
- beskrevet
- detaljer
- utviklere
- Utvikling
- Vise
- Distribusjoner
- Docker
- ikke
- domene
- ned
- nedlasting
- hver enkelt
- lett
- effekt
- oppmuntre
- Motor
- ingeniør
- Enter
- Miljø
- Nedbør
- eksempel
- eksisterende
- erfaring
- kjent
- Felt
- Først
- første gang
- følge
- etter
- følger
- Gratis
- fra
- fullt
- Dess
- få
- Mål
- flott
- Gruppe
- lykkelig
- hjelpe
- holder
- vert
- Men
- HTTPS
- Identitet
- bilde
- bilder
- iverksette
- viktig
- industriens
- informasjon
- inngang
- installere
- f.eks
- integrert
- interesse
- IT
- Jobb
- reise
- kunnskap
- siste
- lansere
- lansere
- føre
- læring
- Tillatelse
- Lisensiering
- linje
- LINK
- lenker
- linux
- Liste
- lokal
- maskin
- maskinlæring
- gjøre
- GJØR AT
- Making
- administrer
- fikk til
- ledelse
- leder
- Match
- nevnt
- kunne
- minimum
- ML
- mer
- Morgan
- mest
- mor
- flere
- Natur
- Naviger
- behov
- neste
- tilby
- tilbud
- drift
- operativsystem
- alternativer
- organisasjons
- organisasjoner
- egen
- poeng
- Politikk
- politikk
- trekkes
- presentere
- privat
- prosess
- profesjonell
- Profil
- Programmering
- prosjekt
- prosjekter
- gi
- forutsatt
- gi
- offentlig
- raskt
- RE
- å nå
- grunner
- region
- regulatorer
- slipp
- Utgivelser
- relevant
- fjerne
- Repository
- representerer
- påkrevd
- Krav
- Krever
- forskning
- ressurs
- Ressurser
- Rolle
- Kjør
- rennende
- trygt
- Skala
- Vitenskap
- Forsker
- forskere
- Sean
- sikkerhet
- halvledere
- sett
- innstilling
- oppsett
- flere
- Del
- Vis
- vist
- Enkelt
- siden
- So
- Soft
- Software
- Software Engineer
- solid
- løsning
- Solutions
- spesiell
- spesialist
- spesialisert
- stable
- startet
- starter
- Uttalelse
- status
- butikker
- studio
- Solnedgang
- støtte
- Støtter
- Bytte om
- system
- lag
- terminal
- De
- Gjennom
- tid
- i dag
- verktøy
- verktøy
- ui
- etter
- Oppdater
- oppdateringer
- oppdatering
- us
- bruke
- Brukere
- versjon
- om
- innenfor
- uten
- Arbeid
- arbeid
- virker
- verdt
- skriving
- Din