Med cloud computing, etter hvert som datakraft og data ble mer tilgjengelig, har maskinlæring (ML) nå en innvirkning på tvers av alle bransjer og er en kjernedel av enhver virksomhet og bransje.
Amazon SageMaker Studio er det første fullt integrerte ML-utviklingsmiljøet (IDE) med et nettbasert visuelt grensesnitt. Du kan utføre alle ML-utviklingstrinn og ha full tilgang, kontroll og synlighet i hvert trinn som kreves for å bygge, trene og distribuere modeller.
Amazon RedShift er et fullt administrert, raskt, sikkert og skalerbart skydatavarehus. Organisasjoner ønsker ofte å bruke SageMaker Studio for å få spådommer fra data som er lagret i et datavarehus som Amazon Redshift.
Som beskrevet i AWS godt arkitektert rammeverk, separering av arbeidsbelastninger på tvers av kontoer gjør at organisasjonen din kan sette felles rekkverk samtidig som miljøer isoleres. Dette kan være spesielt nyttig for visse sikkerhetskrav, samt for å forenkle kostnadskontroll og overvåking mellom prosjekter og team. Organisasjoner med en flerkontoarkitektur har vanligvis Amazon Redshift og SageMaker Studio i to separate AWS-kontoer. Amazon Redshift og SageMaker Studio er også vanligvis konfigurert i VPC-er med private subnett for å forbedre sikkerheten og redusere risikoen for uautorisert tilgang som en beste praksis.
Amazon RedShift naturlig støtter datadeling på tvers av kontoer når RA3-nodetyper brukes. Hvis du bruker andre Amazon Redshift-nodetyper, for eksempel DS2 eller DC2, kan du bruke VPC-peering for å etablere en krysskontoforbindelse mellom Amazon Redshift og SageMaker Studio.
I dette innlegget går vi gjennom trinnvise instruksjoner for å etablere en tilkobling på tvers av kontoer til enhver Amazon Redshift-nodetype (RA3, DC2, DS2) ved å koble Amazon Redshift-klyngen som ligger i en AWS-konto til SageMaker Studio i en annen AWS konto i samme region ved å bruke VPC-peering.
Løsningsoversikt
Vi starter med to AWS-kontoer: en produsentkonto hos Amazon Redshift-datavarehuset, og en forbrukerkonto for Amazon SageMaker ML use cases som har SageMaker Studio satt opp. Følgende er en oversikt over arbeidsflyten på høyt nivå:
- Sett opp SageMaker Studio med
VPCOnly
modus på forbrukerkontoen. Dette forhindrer SageMaker fra å gi internettilgang til studionotatbøkene dine. All SageMaker Studio-trafikk går gjennom spesifisert VPC og subnett. - Oppdater SageMaker Studio-domenet ditt for å slå på
SourceIdentity
for å spre brukerprofilnavnet. - Lag en AWS identitets- og tilgangsadministrasjon (IAM) rolle i Amazon Redshift-produsentkontoen som SageMaker Studio IAM-rollen vil påta seg for å få tilgang til Amazon Redshift.
- Oppdater SageMaker IAM-utførelsesrollen i SageMaker Studio-forbrukerkontoen som SageMaker Studio vil bruke til å påta seg rollen i produsentens Amazon Redshift-konto.
- Sett opp en peering-forbindelse mellom VPC-er i Amazon Redshift-produsentkontoen og SageMaker Studio-forbrukerkontoen.
- Spør Amazon Redshift i SageMaker Studio i forbrukerkontoen.
Følgende diagram illustrerer løsningsarkitekturen.
Forutsetninger
Trinnene i dette innlegget forutsetter at Amazon Redshift er lansert i et privat undernett i Amazon Redshift-produsentkontoen. Å starte Amazon Redshift i et privat undernett gir et ekstra lag med sikkerhet og isolasjon sammenlignet med å starte det i et offentlig undernett fordi det private undernettet ikke er direkte tilgjengelig fra internett og sikrere mot eksterne angrep.
For å laste ned offentlige biblioteker må du opprette en VPC og et privat og offentlig undernett i SageMaker-forbrukerkontoen. Start deretter en NAT-gateway i det offentlige undernettet og legg til en Internett-gateway for SageMaker Studio i det private undernettet for å få tilgang til internett. For instruksjoner om hvordan du oppretter en tilkobling til et privat subnett, se Hvordan setter jeg opp en NAT-gateway for et privat undernett i Amazon VPC?
Sett opp SageMaker Studio med VPConly-modus på forbrukerkontoen
For å lage SageMaker Studio med VPCOnly
modus, fullfør følgende trinn:
- Velg på SageMaker-konsollen studie i navigasjonsruten.
- Start SageMaker Studio, velg Standard oppsett, og velg Konfigurer.
Hvis du allerede bruker AWS IAM Identity Center (etterfølger til AWS Single Sign-On) for å få tilgang til AWS-kontoene dine, kan du bruke den til autentisering. Ellers kan du bruke IAM for autentisering og bruke dine eksisterende forente roller.
- på Generelle innstillinger seksjon, velg Lag en ny rolle.
- på Lag en IAM-rolle seksjon, spesifiser eventuelt din Amazon enkel lagringstjeneste (Amazon S3) bøtter ved å velge Noen, Spesifikkeller none, velg deretter Skape rolle.
Dette skaper en SageMaker-utførelsesrolle, som f.eks AmazonSageMaker-ExecutionRole-00000000
.
- Under Nettverk og lagringsseksjon, velg VPC, undernett (privat undernett) og sikkerhetsgruppen du opprettet som en forutsetning.
- Plukke ut Kun VPC, velg deretter neste.
Oppdater SageMaker Studio-domenet ditt for å slå på SourceIdentity for å spre brukerprofilnavnet
SageMaker Studio er integrert med AWS CloudTrail for å gjøre det mulig for administratorer å overvåke og revidere brukeraktivitet og API-anrop fra SageMaker Studio-notatbøker. Du kan konfigurere SageMaker Studio til å registrere brukeridentiteten (spesifikt brukerprofilnavn) for å overvåke og revidere brukeraktivitet og API-anrop fra SageMaker Studio-notatbøker i CloudTrail-hendelser.
For å logge spesifikk brukeraktivitet blant flere brukerprofiler, anbefaler vi at du slår på SourceIdentity
for å spre SageMaker Studio-domenet med brukerprofilnavnet. Dette lar deg beholde brukerinformasjonen inn i økten slik at du kan tilskrive handlinger til en bestemt bruker. Denne egenskapen opprettholdes også når du kjeder roller, slik at du kan få finmasket innsyn i handlingene deres i produsentkontoen. Fra det tidspunktet dette innlegget ble skrevet, kan du bare konfigurere dette ved å bruke AWS kommandolinjegrensesnitt (AWS CLI) eller et hvilket som helst kommandolinjeverktøy.
For å oppdatere denne konfigurasjonen må alle appene i domenet være i stoppet or Slettet tilstand.
Bruk følgende kode for å aktivere spredning av brukerprofilnavnet som SourceIdentity
:
Dette krever at du legger til sts:SetSourceIdentity
i tillitsforholdet for din utførelsesrolle.
Opprett en IAM-rolle i Amazon Redshift-produsentkontoen som SageMaker Studio må anta for å få tilgang til Amazon Redshift
For å opprette en rolle som SageMaker vil påta seg for å få tilgang til Amazon Redshift, fullfør følgende trinn:
- Åpne IAM-konsollen i Amazon Redshift-produsentkontoen.
- Velg Roller i navigasjonsruten, og velg deretter Skape rolle.
- På Velg pålitelig enhet side, velg Tilpasset tillitspolicy.
- Skriv inn følgende tilpassede tillitspolicy i redigeringsprogrammet og oppgi SageMaker-forbrukerkonto-IDen og SageMaker-utførelsesrollen du opprettet:
- Velg neste.
- På Legg til nødvendige tillatelser side, velg Opprett policy.
- Legg til følgende eksempelpolicy og gjør nødvendige endringer basert på konfigurasjonen din.
- Lagre policyen ved å legge til et navn, for eksempel
RedshiftROAPIUserAccess
.
De SourceIdentity
attributtet brukes til å knytte identiteten til den opprinnelige SageMaker Studio-brukeren til Amazon Redshift-databasebrukeren. Handlingene til brukeren i produsentkontoen kan deretter overvåkes ved hjelp av CloudTrail og Amazon Redshift-databaserevisjonslogger.
- På Gi navn, anmeld og opprett side, skriv inn et rollenavn, se gjennom innstillingene og velg Skape rolle.
Oppdater IAM-rollen i SageMaker-forbrukerkontoen som SageMaker Studio overtar i Amazon Redshift-produsentkontoen
For å oppdatere SageMaker-utførelsesrollen slik at den tar rollen som vi nettopp opprettet, fullfør følgende trinn:
- Åpne IAM-konsollen i SageMaker-forbrukerkontoen.
- Velg Roller i navigasjonsruten, velg deretter SageMaker-utførelsesrollen som vi opprettet (
AmazonSageMaker-ExecutionRole-*
). - på Retningslinjer for tillatelser seksjon, om Legg til tillatelser meny, velg Lag inline policy.
- I redaktøren, på JSON fanen, skriv inn følgende policy, hvor er ARN for rollen du opprettet i Amazon Redshift-produsentkontoen:
Du kan få ARN for rollen opprettet i Amazon Redshift-produsentkontoen på IAM-konsollen, som vist i følgende skjermbilde.
- Velg Gjennomgå retningslinjene.
- Til Navn, skriv inn et navn for policyen din.
- Velg Opprett policy.
Tillatelsesretningslinjene dine skal ligne på følgende skjermbilde.
Sett opp en peering-forbindelse mellom VPC-ene i Amazon Redshift-produsentkontoen og SageMaker Studio-forbrukerkontoen
For å etablere kommunikasjon mellom SageMaker Studio VPC og Amazon Redshift VPC, må de to VPC-ene peering ved hjelp av VPC-peering. Fullfør følgende trinn for å opprette en tilkobling:
- I enten Amazon Redshift- eller SageMaker-kontoen åpner du Amazon VPC-konsollen.
- Velg i navigasjonsruten Peering-forbindelser, velg deretter Opprett peering-tilkobling.
- Til Navn, skriv inn et navn for tilkoblingen.
- Under Velg en lokal VPC å peer med, velg en lokal VPC.
- Under Velg en annen VPC å peer med, spesifiser en annen VPC i samme region og en annen konto.
- Velg Opprett peering-tilkobling.
- Se gjennom VPC-peering-tilkoblingen og velg Aksepter forespørsel for å aktivere.
Etter at VPC-peering-forbindelsen er etablert, oppretter du ruter på både SageMaker og Amazon Redshift VPC-ene for å fullføre tilkoblingen mellom dem.
- I SageMaker-kontoen åpner du Amazon VPC-konsollen.
- Velg Rutetabeller i navigasjonsruten, velg deretter VPC-en som er knyttet til SageMaker og rediger rutene.
- Legg til CIDR for destinasjonen Amazon Redshift VPC og målet som peering-tilkoblingen.
- Legg i tillegg til en NAT-gateway.
- Velg lagre endringer.
- I Amazon Redshift-kontoen åpner du Amazon VPC-konsollen.
- Velg Rutetabeller i navigasjonsruten, velg deretter VPC-en som er knyttet til Amazon Redshift og rediger rutene.
- Legg til CIDR for destinasjonen SageMaker VPC og målet som peering-tilkoblingen.
- Legg i tillegg til en internettgateway.
- Velg lagre endringer.
Du kan koble til SageMaker Studio fra din VPC gjennom et grensesnittendepunkt i din VPC i stedet for å koble til over internett. Når du bruker et VPC-grensesnittendepunkt, utføres kommunikasjonen mellom VPC-en og SageMaker API eller kjøretid helt og sikkert innenfor AWS-nettverket.
- For å opprette et VPC-endepunkt, åpne VPC-konsollen i SageMaker-kontoen.
- Velg endepunkter i navigasjonsruten, og velg deretter Lag endepunkt.
- Spesifiser SageMaker VPC, de respektive undernett og passende sikkerhetsgrupper for å tillate innkommende og utgående NFS-trafikk for SageMaker notebook-domenet, og velg Opprett VPC-endepunkt.
Spør Amazon Redshift i SageMaker Studio i forbrukerkontoen
Etter at alt nettverket har blitt etablert, følg trinnene i denne delen for å koble til Amazon Redshift-klyngen i SageMaker Studio-forbrukerkontoen ved å bruke AWS SDK for pandas-biblioteket:
- Lag en ny notatbok i SageMaker Studio.
- Hvis AWS SDK for pandas-pakken ikke er installert, kan du installere den ved å bruke følgende:
Denne installasjonen er ikke vedvarende og vil gå tapt hvis KernelGateway-appen slettes. Egendefinerte pakker kan legges til som en del av en Livssykluskonfigurasjon.
- Skriv inn følgende kode i den første cellen og kjør koden. Erstatte
RoleArn
ogregion_name
verdier basert på kontoinnstillingene dine:
- Skriv inn følgende kode i en ny celle og kjør koden for å få det gjeldende SageMaker-brukerprofilnavnet:
- Skriv inn følgende kode i en ny celle og kjør koden:
For å kunne forespørre Amazon Redshift, må databaseadministratoren tildele den nyopprettede brukeren de nødvendige lesetillatelsene i Amazon Redshift-klyngen i produsentkontoen.
- Skriv inn følgende kode i en ny celle, oppdater spørringen slik at den samsvarer med Amazon Redshift-tabellen, og kjør cellen. Dette bør returnere postene vellykket for videre databehandling og analyse.
Du kan nå begynne å bygge datatransformasjoner og analyser basert på forretningskravene dine.
Rydd opp
For å rydde opp i ressurser for å unngå å pådra seg gjentakende kostnader, slett SageMaker VPC-endepunktene, Amazon Redshift-klyngen og SageMaker Studio-appene, brukerne og domenet. Slett også eventuelle S3-bøtter og objekter du har opprettet.
konklusjonen
I dette innlegget viste vi hvordan man etablerer en krysskontoforbindelse mellom private Amazon Redshift og SageMaker Studio VPCer i forskjellige kontoer ved å bruke VPC-peering og få tilgang til Amazon Redshift-data i SageMaker Studio ved hjelp av IAM-rollekjeding, samtidig som brukerens identitet logges når brukeren fikk tilgang til Amazon Redshift fra SageMaker Studio. Med denne løsningen eliminerer du behovet for å manuelt flytte data mellom kontoer for å få tilgang til data. Vi gikk også gjennom hvordan du får tilgang til Amazon Redshift-klyngen ved å bruke AWS SDK for panda-biblioteket i SageMaker Studio og forbereder dataene for ML-brukstilfellene dine.
For å lære mer om Amazon Redshift og SageMaker, se Amazon Redshift Database utviklerveiledning og Amazon SageMaker-dokumentasjon.
Om forfatterne
Supriya Puragundla er Senior Solutions Architect hos AWS. Hun hjelper nøkkelkundekontoer på deres AI- og ML-reise. Hun brenner for datadrevet AI og dybdeområdet innen maskinlæring.
Marc Karp er en maskinlæringsarkitekt med Amazon SageMaker-teamet. Han fokuserer på å hjelpe kunder med å designe, distribuere og administrere ML-arbeidsmengder i stor skala. På fritiden liker han å reise og utforske nye steder.
- SEO-drevet innhold og PR-distribusjon. Bli forsterket i dag.
- PlatoData.Network Vertical Generative Ai. Styrk deg selv. Tilgang her.
- PlatoAiStream. Web3 Intelligence. Kunnskap forsterket. Tilgang her.
- PlatoESG. Bil / elbiler, Karbon, CleanTech, Energi, Miljø, Solenergi, Avfallshåndtering. Tilgang her.
- BlockOffsets. Modernisering av eierskap for miljøkompensasjon. Tilgang her.
- kilde: https://aws.amazon.com/blogs/machine-learning/configure-cross-account-access-of-amazon-redshift-clusters-in-amazon-sagemaker-studio-using-vpc-peering/
- : har
- :er
- :ikke
- :hvor
- $OPP
- 10
- 100
- 11
- 13
- 14
- 15%
- 7
- 8
- 9
- a
- Om oss
- adgang
- aksesseres
- tilgjengelig
- Tilgang
- Logg inn
- kontoer
- tvers
- Handling
- handlinger
- aktivitet
- legge til
- la til
- legge
- Ytterligere
- administratorer
- AI
- Alle
- tillate
- tillater
- allerede
- også
- Amazon
- Amazon RedShift
- Amazon SageMaker
- Amazon SageMaker Studio
- Amazon Web Services
- blant
- an
- analyse
- og
- En annen
- noen
- api
- app
- hensiktsmessig
- apps
- arkitektur
- ER
- AREA
- AS
- assosiert
- anta
- antar
- At
- Angrep
- revisjon
- Autentisering
- tilgjengelig
- unngå
- AWS
- basert
- BE
- ble
- fordi
- vært
- BEST
- mellom
- både
- bygge
- Bygning
- virksomhet
- by
- ring
- Samtaler
- CAN
- Kan få
- saker
- sentrum
- viss
- kjede
- Velg
- Cloud
- cloud computing
- Cluster
- kode
- Felles
- Kommunikasjon
- sammenlignet
- fullføre
- Beregn
- databehandling
- tilstand
- gjennomført
- Konfigurasjon
- konfigurert
- Koble
- Tilkobling
- tilkobling
- Tilkobling
- Konsoll
- forbruker
- kontroll
- kontroller
- Kjerne
- Kostnad
- Kostnader
- skape
- opprettet
- skaper
- Credentials
- Gjeldende
- skikk
- kunde
- Kunder
- dato
- databehandling
- datadeling
- data-drevet
- Database
- dato tid
- utplassere
- dybde
- beskrevet
- utforming
- destinasjonen
- Utvikler
- Utvikling
- forskjellig
- direkte
- do
- domene
- nedlasting
- hver enkelt
- redaktør
- effekt
- enten
- eliminere
- muliggjøre
- muliggjør
- Endpoint
- Enter
- fullstendig
- Miljø
- miljøer
- etablere
- etablert
- hendelser
- Hver
- gjennomføring
- eksisterende
- Utforske
- utvendig
- FAST
- Først
- fokuserer
- følge
- etter
- Til
- fra
- fullt
- videre
- gateway
- få
- Gruppe
- Gruppens
- Ha
- he
- hjelpe
- hjelper
- høyt nivå
- hans
- Hvordan
- Hvordan
- HTML
- http
- HTTPS
- i
- ID
- Identitet
- if
- illustrerer
- Påvirkning
- importere
- forbedre
- in
- industri
- informasjon
- installere
- installasjon
- installerte
- i stedet
- instruksjoner
- integrert
- Interface
- Internet
- Internettilgang
- inn
- isolasjon
- IT
- reise
- jpg
- JSON
- bare
- nøkkel
- lansere
- lansert
- lansere
- lag
- LÆRE
- læring
- bibliotekene
- Bibliotek
- linje
- lokal
- ligger
- logg
- logging
- Se
- tapte
- maskin
- maskinlæring
- gjøre
- Making
- administrer
- fikk til
- manuelt
- Match
- Meny
- metadata
- metode
- ML
- Mote
- modeller
- Overvåke
- overvåket
- overvåking
- mer
- flytte
- må
- navn
- Navigasjon
- nødvendig
- Trenger
- behov
- nettverk
- nettverk
- Ny
- nylig
- node
- bærbare
- nå
- objekt
- gjenstander
- of
- ofte
- on
- ONE
- bare
- åpen
- or
- organisasjon
- organisasjoner
- original
- Annen
- ellers
- vår
- enn
- oversikt
- pakke
- pakker
- side
- pandaer
- brød
- del
- spesielt
- passere
- lidenskapelig
- likemann
- Utfør
- tillatelse
- tillatelser
- steder
- plato
- Platon Data Intelligence
- PlatonData
- Politikk
- politikk
- Post
- makt
- praksis
- Spådommer
- Forbered
- forhindrer
- Principal
- privat
- prosessering
- produsent
- Profil
- Profiler
- prosjekter
- gi
- gir
- gi
- offentlig
- Lese
- anbefales
- rekord
- poster
- gjentakende
- redusere
- region
- forholdet
- erstatte
- anmode
- påkrevd
- Krav
- Krever
- ressurs
- Ressurser
- de
- retur
- avkastning
- anmeldelse
- Risiko
- Rolle
- roller
- ruter
- Kjør
- sagemaker
- samme
- skalerbar
- Skala
- SDK
- Seksjon
- sikre
- sikkert
- sikkerhet
- velge
- senior
- separat
- separering
- Tjenester
- Session
- sett
- innstillinger
- flere
- deling
- hun
- bør
- viste
- vist
- lignende
- Enkelt
- forenkle
- enkelt
- So
- løsning
- Solutions
- spesifikk
- spesielt
- spesifisert
- Begynn
- Tilstand
- Uttalelse
- Trinn
- Steps
- lagring
- lagret
- studio
- subnett
- subnett
- vellykket
- slik
- bord
- Target
- lag
- lag
- midlertidig
- Det
- De
- Området
- deres
- Dem
- deretter
- denne
- Gjennom
- SLIPS
- tid
- til
- verktøy
- trafikk
- Tog
- transformasjoner
- Traveling
- Stol
- klarert
- SVING
- to
- typen
- typer
- typisk
- Oppdater
- bruke
- brukt
- Bruker
- Brukere
- ved hjelp av
- Verdier
- versjon
- synlighet
- gikk
- ønsker
- var
- we
- web
- webtjenester
- Web-basert
- VI VIL
- når
- mens
- vil
- med
- innenfor
- arbeidsflyt
- skrevet
- Du
- Din
- zephyrnet