Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

Accedi agli oggetti Amazon S3 con il driver CSI Mountpoint per Amazon S3

Modalità Focus
Accedi agli oggetti Amazon S3 con il driver CSI Mountpoint per Amazon S3 - Amazon EKS

Aiutaci a migliorare questa pagina

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Per contribuire a questa guida per l'utente, scegli il GitHub link Modifica questa pagina nel riquadro destro di ogni pagina.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Aiutaci a migliorare questa pagina

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Per contribuire a questa guida per l'utente, scegli il GitHub link Modifica questa pagina nel riquadro destro di ogni pagina.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Con il driver Mountpoint for Amazon S3 Container Storage Interface (CSI), le applicazioni Kubernetes possono accedere agli oggetti Amazon S3 tramite un'interfaccia di file system, ottenendo un throughput aggregato elevato senza modificare alcun codice applicativo. Basato su Mountpoint per Amazon S3, il driver CSI presenta un bucket Amazon S3 come volume a cui possono accedere i container in Amazon EKS e i cluster Kubernetes autogestiti. Questo argomento mostra come distribuire il driver CSI Mountpoint for Amazon S3 nel cluster Amazon EKS.

Considerazioni

  • Il driver CSI Mountpoint for Amazon S3 non è attualmente compatibile con le immagini dei container basate su Windows.

  • Il driver CSI Mountpoint for Amazon S3 non è attualmente compatibile con Amazon EKS Hybrid Nodes.

  • Il driver CSI Mountpoint for Amazon S3 non supporta Fargate. AWS Tuttavia, sono supportati i container in esecuzione su Amazon EC2 (con Amazon EKS o un'installazione Kubernetes personalizzata).

  • Il driver CSI Mountpoint for Amazon S3 supporta solo il provisioning statico. Il provisioning dinamico, o la creazione di nuovi bucket, non è supportato.

    Nota

    Il provisioning statico si riferisce all'utilizzo di un bucket Amazon S3 esistente specificato come bucketName volumeAttributes nell'oggetto. PersistentVolume Per ulteriori informazioni, consulta Static Provisioning on. GitHub

  • I volumi montati con il driver CSI Mountpoint for Amazon S3 non supportano tutte le funzionalità del file system POSIX. Per informazioni dettagliate sul comportamento del file system, consulta Mountpoint for Amazon S3 sul comportamento del file system. GitHub

Prerequisiti

  • Un provider di AWS Identity and Access Management (IAM) OpenID Connect (OIDC) esistente per il tuo cluster. Per determinare se disponi già di un provider IAM o per crearne uno, consulta Per creare un provider di identità IAM OIDC per il cluster.

  • Versione 2.12.3 o successiva della AWS CLI installata e configurata sul dispositivo o. AWS CloudShell

  • Lo strumento a riga di comando kubectl è installato sul dispositivo o AWS CloudShell. La versione può essere la stessa o fino a una versione secondaria precedente o successiva alla versione Kubernetes del cluster. Ad esempio, se la versione del cluster è 1.29, puoi usare kubectl versione 1.28, 1.29 o 1.30. Per installare o aggiornare kubectl, consulta Configurazione kubectl e eksctl:

Creazione di una policy IAM

Il driver CSI Mountpoint for Amazon S3 richiede le autorizzazioni Amazon S3 per interagire con il file system. In questa sezione viene descritto come creare una policy IAM che conceda le autorizzazioni necessarie.

La seguente politica di esempio segue le raccomandazioni di autorizzazione IAM per Mountpoint. In alternativa, puoi utilizzare la politica AWS gestita AmazonS3 FullAccess, ma questa politica gestita concede più autorizzazioni di quelle necessarie per Mountpoint.

Per ulteriori informazioni sulle autorizzazioni consigliate per Mountpoint, consulta Mountpoint IAM permissions on. GitHub

  1. Aprire la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  2. Nel pannello di navigazione a sinistra, seleziona Policy.

  3. Nella pagina Policy, scegli Crea policy.

  4. Per Editor di policy, scegli JSON.

  5. In Editor di policy, copia e incolla quanto segue:

    Importante

    Sostituisci amzn-s3-demo-bucket1 con il nome del bucket Amazon S3.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "MountpointFullBucketAccess", "Effect": "Allow", "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws: s3:::amzn-s3-demo-bucket1" ] }, { "Sid": "MountpointFullObjectAccess", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:PutObject", "s3:AbortMultipartUpload", "s3:DeleteObject" ], "Resource": [ "arn:aws: s3:::amzn-s3-demo-bucket1/*" ] } ] }

    I bucket di directory, introdotti con la classe di storage Amazon S3 Express One Zone, utilizzano un meccanismo di autenticazione diverso rispetto ai bucket generici. Invece di usare s3:* le azioni, dovresti usare l'azione. s3express:CreateSession Per informazioni sui bucket di directory, consulta Directory buckets nella Amazon S3 User Guide.

    Di seguito è riportato un esempio di politica di privilegi minimi da utilizzare per un bucket di directory.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3express:CreateSession", "Resource": "arn:aws: s3express:us-west-2:111122223333:bucket/amzn-s3-demo-bucket1--usw2-az1--x-s3" } ] }
  6. Scegli Next (Successivo).

  7. Nella pagina Verifica e crea, assegna un nome alla policy. Questa procedura guidata di esempio utilizza il nome AmazonS3CSIDriverPolicy.

  8. Scegli Create Policy (Crea policy).

Creazione di un ruolo IAM

Il driver CSI Mountpoint for Amazon S3 richiede le autorizzazioni Amazon S3 per interagire con il file system. In questa sezione viene descritto come creare un ruolo IAM per delegare queste autorizzazioni. Per creare questo ruolo, puoi utilizzare uno di questi strumenti:

Nota

La policy IAM AmazonS3CSIDriverPolicy è stata creata nella sezione precedente.

eksctl

Per creare il tuo ruolo IAM del driver CSI Mountpoint for Amazon S3 con eksctl

Per creare il ruolo IAM e l'account del servizio Kubernetes, esegui i seguenti comandi. Questi comandi collegano anche la policy AmazonS3CSIDriverPolicy IAM al ruolo, annotano l'account del servizio Kubernetes (s3-csi-controller-sa) con l'Amazon Resource Name (ARN) del ruolo IAM e aggiungono il nome dell'account del servizio Kubernetes alla policy di fiducia per il ruolo IAM.

CLUSTER_NAME=my-cluster REGION=region-code ROLE_NAME=AmazonEKS_S3_CSI_DriverRole POLICY_ARN=AmazonEKS_S3_CSI_DriverRole_ARN eksctl create iamserviceaccount \ --name s3-csi-driver-sa \ --namespace kube-system \ --cluster $CLUSTER_NAME \ --attach-policy-arn $POLICY_ARN \ --approve \ --role-name $ROLE_NAME \ --region $REGION \ --role-only

AWS Management Console

  1. Aprire la console IAM all'indirizzo https://console.aws.amazon.com/iam/.

  2. Nel pannello di navigazione a sinistra, seleziona Ruoli.

  3. Nella pagina Ruoli, seleziona Crea ruolo.

  4. Nella pagina Select trusted entity (Seleziona entità attendibile), esegui le operazioni seguenti:

    1. Nella sezione Tipo di identità attendibile, scegli Identità Web.

    2. Per Identity provider (Provider di identità), scegli URL del provider OpenID Connect per il cluster (come mostrato nella scheda Overview (Panoramica) in Amazon EKS).

      Se non ne viene visualizzato nessuno, consulta i Prerequisiti. URLs

    3. Per Pubblico, scegli sts.amazonaws.com.

    4. Scegli Next (Successivo).

  5. Nella pagina Add permissions (Aggiungi autorizzazioni), esegui le operazioni seguenti:

    1. Nella casella Filtra politiche, inserisci la politica di CSIDriver AmazonS3.

      Nota

      Questa policy è stata creata nella sezione precedente.

    2. Seleziona la casella di controllo a sinistra del risultato AmazonS3CSIDriverPolicy restituito dalla ricerca.

    3. Scegli Next (Successivo).

  6. Nella pagina Name, review, and create (Assegna un nome, rivedi e crea), esegui le operazioni seguenti:

    1. Per il nome del ruolo, inserisci un nome univoco per il tuo ruolo, ad esempio AmazonEKS_S3_CSI_. DriverRole

    2. In Aggiungi tag (facoltativo), aggiungi metadati al ruolo collegando i tag come coppie chiave-valore. Per ulteriori informazioni sull'utilizzo di tag in IAM, consulta la sezione Applicazione di tag alle risorse IAM nella Guida per l'utente di IAM.

    3. Scegliere Crea ruolo.

  7. Dopo aver creato il ruolo, sceglilo nella console in modo da aprirlo per la modifica.

  8. Scegli la scheda Trust relationships (Relazioni di attendibilità), quindi scegli Edit trust policy (Modifica policy di attendibilità).

  9. Cercare il risultato finale simile al seguente:

    "oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE:aud": "sts.amazonaws.com"

    Inserisci una virgola alla fine della riga precedente, quindi aggiungine una seguente dopo quella riga. Sostituiscilo con la regione in cui si trova il cluster. region-code AWS EXAMPLED539D4633E53DE1B71EXAMPLESostituiscilo con l'ID del provider OIDC del cluster.

    "oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE:sub": "system:serviceaccount:kube-system:s3-csi-driver-sa"
  10. Assicurati che l'Conditionoperatore sia impostato su. "StringEquals"

  11. Scegli Aggiorna policy per concludere.

AWS CLI

  1. Visualizza l'URL del provider OIDC del cluster. Sostituisci my-cluster con il nome del cluster. Se l'output dal comando è None, rivedi i Prerequisiti.

    aws eks describe-cluster --name my-cluster --query "cluster.identity.oidc.issuer" --output text

    Di seguito viene riportato un output di esempio:

    https://oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE
  2. Creare il ruolo IAM, concedendo all'account di servizio Kubernetes l'operazione AssumeRoleWithWebIdentity.

    1. Copiare i contenuti seguenti in un file denominato aws-s3-csi-driver-trust-policy.json. Sostituisci 111122223333 con l'ID del tuo account. Sostituire EXAMPLED539D4633E53DE1B71EXAMPLE e region-code con i valori restituiti nella fase precedente.

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Federated": "arn:aws: iam::111122223333:oidc-provider/oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE" }, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringEquals": { "oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE:sub": "system:serviceaccount:kube-system:s3-csi-driver-sa", "oidc.eks.region-code.amazonaws.com/id/EXAMPLED539D4633E53DE1B71EXAMPLE:aud": "sts.amazonaws.com" } } } ] }
    2. Creare il ruolo. È possibile modificare AmazonEKS_S3_CSI_DriverRole con un nome diverso. In tal caso, assicurati di modificarlo anche nelle fasi successive.

      aws iam create-role \ --role-name AmazonEKS_S3_CSI_DriverRole \ --assume-role-policy-document file://"aws-s3-csi-driver-trust-policy.json"
  3. Collega la policy IAM creata in precedenza al ruolo con il seguente comando.

    aws iam attach-role-policy \ --policy-arn arn:aws: iam::aws:policy/AmazonS3CSIDriverPolicy \ --role-name AmazonEKS_S3_CSI_DriverRole
    Nota

    La policy IAM AmazonS3CSIDriverPolicy è stata creata nella sezione precedente.

  4. Salta questo passaggio se stai installando il driver come componente aggiuntivo Amazon EKS. Per le installazioni autogestite del driver, crea account di servizio Kubernetes annotati con l'ARN del ruolo IAM che hai creato.

    1. Salvare i seguenti contenuti in un file denominato mountpoint-s3-service-account.yaml. Sostituisci 111122223333 con l'ID del tuo account.

      --- apiVersion: v1 kind: ServiceAccount metadata: labels: app.kubernetes.io/name: aws-mountpoint-s3-csi-driver name: mountpoint-s3-csi-controller-sa namespace: kube-system annotations: eks.amazonaws.com/role-arn: arn:aws: iam::111122223333:role/AmazonEKS_S3_CSI_DriverRole
    2. Creare l'account del servizio Kubernetes nel cluster. L'account del servizio Kubernetes (mountpoint-s3-csi-controller-sa) è annotato con il nome del ruolo IAM che hai creato. AmazonEKS_S3_CSI_DriverRole

      kubectl apply -f mountpoint-s3-service-account.yaml
      Nota

      Quando implementi il plugin tramite questa procedura, il plugin crea ed è configurato per l'utilizzo di un account di servizio denominato s3-csi-driver-sa.

Installa il driver CSI Mountpoint per Amazon S3

Puoi installare il driver CSI Mountpoint for Amazon S3 tramite il componente aggiuntivo Amazon EKS. Puoi utilizzare i seguenti strumenti per aggiungere il componente aggiuntivo al tuo cluster:

In alternativa, puoi installare il driver CSI Mountpoint for Amazon S3 come installazione autogestita. Per istruzioni su come eseguire un'installazione autogestita, consulta Installazione su GitHub.

A partire dav1.8.0, puoi configurare i taint da tollerare per i Pod del driver CSI. Per fare ciò, specificate un set personalizzato di macchie con node.tolerations cui tollerare o tollerate tutte le macchie. node.tolerateAllTaints Per ulteriori informazioni, consulta Taints and Tolerations nella documentazione di Kubernetes.

eksctl

Per aggiungere il componente aggiuntivo Amazon S3 CSI utilizzando eksctl

Esegui il comando seguente. Sostituisci my-cluster con il nome del cluster, 111122223333 con il tuo ID account e AmazonEKS_S3_CSI_DriverRole con il nome del ruolo IAM creato in precedenza.

eksctl create addon --name aws-mountpoint-s3-csi-driver --cluster my-cluster \ --service-account-role-arn arn:aws: iam::111122223333:role/AmazonEKS_S3_CSI_DriverRole --force

Se si rimuove l'opzione --force e tutte le impostazioni del componente aggiuntivo Amazon EKS sono in conflitto con le impostazioni esistenti, l'aggiornamento del componente aggiuntivo Amazon EKS non avrà successo. Verrà quindi visualizzato un messaggio di errore con la procedura utile a risolvere il conflitto. Prima di specificare questa opzione, assicurati che il componente aggiuntivo Amazon EKS non gestisca le impostazioni che devi gestire, poiché tali impostazioni vengono sovrascritte con questa opzione. Per ulteriori informazioni su altre opzioni per questa impostazione, consulta Componenti aggiuntivi nella documentazione di eksctl. Per ulteriori informazioni sulla gestione dei campi di Amazon EKS Kubernetes, consulta. Determina i campi che puoi personalizzare per i componenti aggiuntivi di Amazon EKS

Puoi personalizzare eksctl tramite file di configurazione. Per ulteriori informazioni, consulta Lavorare con i valori di configurazione nella eksctl documentazione. L'esempio seguente mostra come tollerare tutte le macchie.

# config.yaml ... addons: - name: aws-mountpoint-s3-csi-driver serviceAccountRoleARN: arn:aws: iam::111122223333:role/AmazonEKS_S3_CSI_DriverRole configurationValues: |- node: tolerateAllTaints: true

AWS Management Console

  1. Aprire la Console Amazon EKS.

  2. Nel pannello di navigazione a sinistra, seleziona Cluster.

  3. Scegli il nome del cluster per cui desideri configurare il componente aggiuntivo Mountpoint for Amazon S3 CSI.

  4. Seleziona la scheda Componenti aggiuntivi.

  5. Scegli Ottieni altri componenti aggiuntivi.

  6. Nella pagina Seleziona componenti aggiuntivi, procedi come segue:

    1. Nella sezione Amazon EKS-Addons, seleziona la casella di controllo Mountpoint for Amazon S3 CSI Driver.

    2. Scegli Next (Successivo).

  7. Nella pagina Configura le impostazioni dei componenti aggiuntivi selezionati, procedi come segue:

    1. Seleziona la versione che desideri utilizzare.

    2. Per Select IAM role, seleziona il nome di un ruolo IAM a cui hai collegato la policy IAM del driver CSI Mountpoint for Amazon S3.

    3. (Facoltativo) Aggiorna il metodo di risoluzione dei conflitti dopo aver ampliato le impostazioni di configurazione opzionali. Se selezioni Override, una o più impostazioni del componente aggiuntivo esistente possono essere sovrascritte con le impostazioni del componente aggiuntivo Amazon EKS. Se non abiliti questa opzione e c'è un conflitto con le impostazioni esistenti, l'operazione fallisce. e viene visualizzato un messaggio di errore per aiutarti a risolvere il conflitto. Prima di selezionare questa opzione, assicurati che il componente aggiuntivo Amazon EKS non gestisca le impostazioni che devi gestire automaticamente.

    4. (Facoltativo) Configura le tolleranze nel campo Valori di configurazione dopo aver ampliato le Impostazioni di configurazione opzionali.

    5. Scegli Next (Successivo).

  8. Nella pagina Rivedi e aggiungi, scegli Crea. Una volta completata l'installazione, viene visualizzato il componente aggiuntivo.

AWS CLI

Per aggiungere il componente aggiuntivo Mountpoint for Amazon S3 CSI utilizzando la CLI AWS

Esegui il comando seguente. Sostituire my-cluster con il nome del cluster, 111122223333 con il proprio ID account e AmazonEKS_S3_CSI_DriverRole con il nome del ruolo creato in precedenza.

aws eks create-addon --cluster-name my-cluster --addon-name aws-mountpoint-s3-csi-driver \ --service-account-role-arn arn:aws: iam::111122223333:role/AmazonEKS_S3_CSI_DriverRole

È possibile personalizzare il comando con il flag. --configuration-values L'esempio alternativo seguente mostra come tollerare tutte le macchie.

aws eks create-addon --cluster-name my-cluster --addon-name aws-mountpoint-s3-csi-driver \ --service-account-role-arn arn:aws: iam::111122223333:role/AmazonEKS_S3_CSI_DriverRole \ --configuration-values '{"node":{"tolerateAllTaints":true}}'

Configurazione di Mountpoint per Amazon S3

Nella maggior parte dei casi, puoi configurare Mountpoint per Amazon S3 solo con un nome di bucket. Per istruzioni sulla configurazione di Mountpoint per Amazon S3, consulta Configurazione di Mountpoint per Amazon S3 su. GitHub

Implementazione di un'applicazione di esempio

Puoi implementare il provisioning statico al driver su un bucket Amazon S3 esistente. Per ulteriori informazioni, consulta Provisioning statico attivo. GitHub

Rimuovi il driver CSI Mountpoint per Amazon S3

Sono possibili due opzioni per rimuovere un componente aggiuntivo Amazon EKS.

  • Mantenere il software aggiuntivo sul cluster – Questa opzione rimuove la gestione di Amazon EKS su qualsiasi impostazione. Inoltre, rimuove la possibilità per Amazon EKS di notificare gli aggiornamenti e aggiornare automaticamente il componente aggiuntivo Amazon EKS dopo l'avvio di un aggiornamento. Tuttavia, mantiene il software aggiuntivo sul cluster. Questa opzione rende il componente aggiuntivo come autogestito anziché come un componente aggiuntivo Amazon EKS. Con questa opzione, non ci sono tempi di inattività per il componente aggiuntivo. I comandi in questa procedura utilizzano questa opzione.

  • Rimuovere completamente il software aggiuntivo dal cluster – Consigliamo di rimuovere il componente aggiuntivo Amazon EKS dal cluster solo se non ci sono risorse nel cluster che dipendono dallo stesso. Per eseguire questa operazione, elimina --preserve dal comando utilizzato in questa procedura.

Se al componente aggiuntivo è associato un account IAM, l'account IAM non viene rimosso.

Puoi utilizzare i seguenti strumenti per rimuovere il componente aggiuntivo Amazon S3 CSI:

eksctl

Per rimuovere il componente aggiuntivo Amazon S3 CSI utilizzando eksctl

Sostituire my-cluster con il nome del cluster ed eseguire il comando seguente.

eksctl delete addon --cluster my-cluster --name aws-mountpoint-s3-csi-driver --preserve

AWS Management Console

  1. Aprire la Console Amazon EKS.

  2. Nel pannello di navigazione a sinistra, seleziona Cluster.

  3. Scegli il nome del cluster per cui desideri rimuovere il componente aggiuntivo CSI per Amazon EBS.

  4. Seleziona la scheda Componenti aggiuntivi.

  5. Scegli Mountpoint per il driver CSI di Amazon S3.

  6. Scegli Rimuovi.

  7. Nella finestra di dialogo di conferma Rimuovi: aws-mountpoint-s 3-csi driver, procedi come segue:

    1. Se desideri che Amazon EKS interrompa la gestione delle impostazioni per il componente aggiuntivo, seleziona Mantieni sul cluster. Effettuare questa operazione se si desidera conservare il software aggiuntivo sul cluster. In questo modo sarà possibile gestire autonomamente tutte le impostazioni del componente aggiuntivo.

    2. Specificare aws-mountpoint-s3-csi-driver.

    3. Selezionare Rimuovi.

AWS CLI

Per rimuovere il componente aggiuntivo Amazon S3 CSI utilizzando la CLI AWS

Sostituire my-cluster con il nome del cluster ed eseguire il comando seguente.

aws eks delete-addon --cluster-name my-cluster --addon-name aws-mountpoint-s3-csi-driver --preserve
PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.