Guida introduttiva a IPAM utilizzando la CLI AWS - Amazon Virtual Private Cloud

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à.

Guida introduttiva a IPAM utilizzando la CLI AWS

Questo tutorial ti guida attraverso il processo di configurazione e utilizzo di Amazon VPC IP Address Manager (IPAM) con la AWS CLI utilizzando un unico account. AWS Alla fine di questo tutorial, avrai creato un IPAM, creato una gerarchia di pool di indirizzi IP e assegnato un CIDR a un VPC.

Prerequisiti

Prima di iniziare questo tutorial, assicurati di avere:

  • Un AWS account con le autorizzazioni per creare e gestire risorse IPAM.

  • La AWS CLI è stata installata e configurata con le credenziali appropriate. Per informazioni sull'installazione della AWS CLI, consulta Installazione o aggiornamento della versione più recente della AWS CLI. Per informazioni sulla configurazione della AWS CLI, consulta Nozioni di base sulla configurazione.

  • Conoscenza di base dell'indirizzamento IP e della notazione CIDR.

  • Conoscenza di base dei concetti di Amazon VPC.

  • Circa 30 minuti per completare il tutorial.

Crea un IPAM

Il primo passo è creare un IPAM con regioni operative. Un IPAM ti aiuta a pianificare, tracciare e monitorare gli indirizzi IP per i tuoi AWS carichi di lavoro.

Crea un IPAM con regioni operative in us-east-1 e us-west-2:

aws ec2 create-ipam \ --description "My IPAM" \ --operating-regions RegionName=us-east-1 RegionName=us-west-2

Questo comando crea un IPAM e gli consente di gestire gli indirizzi IP nelle regioni specificate. Le regioni operative sono le AWS regioni in cui l'IPAM è autorizzato a gestire l'indirizzo IP. CIDRs

Verifica che il tuo IPAM sia stato creato:

aws ec2 describe-ipams

Prendi nota dell'ID IPAM dall'output, poiché ti servirà per i passaggi successivi.

Attendi che l'IPAM sia completamente creato e disponibile (circa 20 secondi):

sleep 20

Ottieni l'ID dell'ambito IPAM

Quando crei un IPAM, crea AWS automaticamente un ambito privato e uno pubblico. Per questo tutorial, useremo l'ambito privato.

Recupera i dettagli IPAM ed estrai l'ID dell'ambito privato:

aws ec2 describe-ipams --ipam-id ipam-0abcd1234

ipam-0abcd1234Sostituiscilo con il tuo ID IPAM effettivo.

Dall'output, identifica e annota l'ID dell'ambito privato dal PrivateDefaultScopeId campo. L'aspetto sarà simile a ipam-scope-0abcd1234.

Crea un pool di primo livello IPv4

Ora, creiamo un pool di primo livello nell'ambito privato. Questo pool fungerà da genitore per tutti gli altri pool della nostra gerarchia.

Crea un pool di primo livello IPv4 :

aws ec2 create-ipam-pool \ --ipam-scope-id ipam-scope-0abcd1234 \ --address-family ipv4 \ --description "Top-level pool"

ipam-scope-0abcd1234Sostituiscilo con il tuo ID effettivo dell'ambito privato.

Attendi che il pool sia completamente creato e disponibile:

aws ec2 describe-ipam-pools --ipam-pool-ids ipam-pool-0abcd1234 --query 'IpamPools[0].State' --output text

ipam-pool-0abcd1234Sostituiscilo con l'effettivo ID del pool di primo livello. Lo stato dovrebbe essere create-complete prima di procedere.

Una volta che il pool è disponibile, esegui il provisioning di un blocco CIDR:

aws ec2 provision-ipam-pool-cidr \ --ipam-pool-id ipam-pool-0abcd1234 \ --cidr 10.0.0.0/8

Attendi che il CIDR sia completamente fornito:

aws ec2 get-ipam-pool-cidrs --ipam-pool-id ipam-pool-0abcd1234 --query "IpamPoolCidrs[?Cidr=='10.0.0.0/8'].State" --output text

Lo stato dovrebbe essere provisioned prima di procedere.

Crea un pool regionale IPv4

Quindi, crea un pool regionale all'interno del pool di primo livello. Questo pool sarà specifico per una particolare AWS regione.

Crea un IPv4 pool regionale:

aws ec2 create-ipam-pool \ --ipam-scope-id ipam-scope-0abcd1234 \ --source-ipam-pool-id ipam-pool-0abcd1234 \ --locale us-east-1 \ --address-family ipv4 \ --description "Regional pool in us-east-1"

Sostituiscilo ipam-scope-0abcd1234 con l'ID dell'ambito privato effettivo e ipam-pool-0abcd1234 con l'ID del pool di primo livello.

Attendi che il pool regionale sia completamente creato e disponibile:

aws ec2 describe-ipam-pools --ipam-pool-ids ipam-pool-1abcd1234 --query 'IpamPools[0].State' --output text

Sostituiscilo ipam-pool-1abcd1234 con l'ID effettivo del pool regionale. Lo stato dovrebbe esserlo create-complete prima di procedere.

Una volta che il pool è disponibile, esegui il provisioning di un blocco CIDR:

aws ec2 provision-ipam-pool-cidr \ --ipam-pool-id ipam-pool-1abcd1234 \ --cidr 10.0.0.0/16

Attendi che il CIDR sia completamente fornito:

aws ec2 get-ipam-pool-cidrs --ipam-pool-id ipam-pool-1abcd1234 --query "IpamPoolCidrs[?Cidr=='10.0.0.0/16'].State" --output text

Lo stato dovrebbe essere provisioned prima di procedere.

Crea un pool di sviluppo IPv4

Ora, crea un pool di sviluppo all'interno del pool regionale. Questo pool verrà utilizzato per ambienti di sviluppo.

Crea un IPv4 pool di sviluppo:

aws ec2 create-ipam-pool \ --ipam-scope-id ipam-scope-0abcd1234 \ --source-ipam-pool-id ipam-pool-1abcd1234 \ --locale us-east-1 \ --address-family ipv4 \ --description "Development pool"

Sostituiscilo ipam-scope-0abcd1234 con l'ID dell'ambito privato effettivo e ipam-pool-1abcd1234 con l'ID del pool regionale.

Nota: è importante includere il --locale parametro in modo che corrisponda alle impostazioni locali del pool principale.

Attendi che il pool di sviluppo sia completamente creato e disponibile:

aws ec2 describe-ipam-pools --ipam-pool-ids ipam-pool-2abcd1234 --query 'IpamPools[0].State' --output text

ipam-pool-2abcd1234Sostituiscilo con l'ID effettivo del pool di sviluppo. Lo stato dovrebbe essere create-complete prima di procedere.

Una volta che il pool è disponibile, esegui il provisioning di un blocco CIDR:

aws ec2 provision-ipam-pool-cidr \ --ipam-pool-id ipam-pool-2abcd1234 \ --cidr 10.0.0.0/24

Attendi che il CIDR sia completamente fornito:

aws ec2 get-ipam-pool-cidrs --ipam-pool-id ipam-pool-2abcd1234 --query "IpamPoolCidrs[?Cidr=='10.0.0.0/24'].State" --output text

Lo stato dovrebbe essere provisioned prima di procedere.

Creare un VPC utilizzando un pool IPAM CIDR

Infine, crea un VPC che utilizzi un CIDR dal tuo pool IPAM. Questo dimostra come l'IPAM può essere utilizzato per allocare lo spazio degli indirizzi IP alle risorse. AWS

Crea un VPC utilizzando un pool IPAM CIDR:

aws ec2 create-vpc \ --ipv4-ipam-pool-id ipam-pool-2abcd1234 \ --ipv4-netmask-length 26 \ --tag-specifications 'ResourceType=vpc,Tags=[{Key=Name,Value=IPAM-VPC}]'

ipam-pool-2abcd1234Sostituiscilo con l'ID effettivo del pool di sviluppo.

Il --ipv4-netmask-length 26 parametro specifica che si desidera che un blocco CIDR /26 (64 indirizzi IP) venga allocato dal pool. Questa lunghezza della netmask viene scelta per garantire che sia inferiore al blocco CIDR del pool (/24).

Verifica che il tuo VPC sia stato creato:

aws ec2 describe-vpcs --filters "Name=tag:Name,Values=IPAM-VPC"

Verifica l'allocazione del pool IPAM

Verifica che il CIDR sia stato allocato dal tuo pool IPAM:

aws ec2 get-ipam-pool-allocations \ --ipam-pool-id ipam-pool-2abcd1234

ipam-pool-2abcd1234Sostituiscilo con l'ID effettivo del pool di sviluppo.

Questo comando mostra tutte le allocazioni dal pool IPAM specificato, incluso il VPC appena creato.

Risoluzione dei problemi

Ecco alcuni problemi comuni che potresti riscontrare quando lavori con IPAM:

  • Errori di autorizzazione: assicurati che il tuo utente o ruolo IAM disponga delle autorizzazioni necessarie per creare e gestire le risorse IPAM. Potresti aver bisogno delle ec2:CreateIpam autorizzazioni e di altre autorizzazioni correlate. ec2:CreateIpamPool

  • Limite di risorse superato: per impostazione predefinita, puoi creare un solo IPAM per account. Se hai già un IPAM, dovrai eliminarlo prima di crearne uno nuovo o utilizzare quello esistente.

  • Errori di allocazione CIDR: durante il provisioning CIDRs ai pool, assicurati che il CIDR che stai cercando di fornire non si sovrapponga alle allocazioni esistenti in altri pool.

  • Timeout delle richieste API: se riscontri errori "RequestExpired", ciò potrebbe essere dovuto a problemi di latenza di rete o di sincronizzazione dell'ora. Prova di nuovo il comando.

  • Errori di stato errati: se ricevi errori IncorrectState "", è possibile che tu stia tentando di eseguire un'operazione su una risorsa che non si trova nello stato corretto. Attendi che la risorsa sia completamente creata o fornita prima di procedere.

  • Errori relativi alle dimensioni dell'allocazione: se ricevi errori "InvalidParameterValue" sulla dimensione dell'allocazione, assicurati che la lunghezza della maschera di rete richiesta sia appropriata per la dimensione del pool. Ad esempio, non è possibile allocare un CIDR /25 da un pool /24.

  • Violazioni delle dipendenze: durante la pulizia delle risorse, è possibile che si verifichino errori "». DependencyViolation Questo perché le risorse dipendono l'una dall'altra. Assicurati di eliminare le risorse nell'ordine inverso rispetto alla creazione e al deprovisioning CIDRs prima di eliminare i pool.

Pulizia delle risorse

Quando hai finito con questo tutorial, dovresti ripulire le risorse che hai creato per evitare di incorrere in costi inutili.

  1. Eliminare il VPC

    aws ec2 delete-vpc --vpc-id vpc-0abcd1234
  2. Estraete il CIDR dal pool di sviluppo:

    aws ec2 deprovision-ipam-pool-cidr --ipam-pool-id ipam-pool-2abcd1234 --cidr 10.0.0.0/24
  3. Elimina il pool di sviluppo:

    aws ec2 delete-ipam-pool --ipam-pool-id ipam-pool-2abcd1234
  4. Estraete il CIDR dal pool regionale:

    aws ec2 deprovision-ipam-pool-cidr --ipam-pool-id ipam-pool-1abcd1234 --cidr 10.0.0.0/16
  5. Eliminare il pool regionale:

    aws ec2 delete-ipam-pool --ipam-pool-id ipam-pool-1abcd1234
  6. Estraete il CIDR dal pool di primo livello:

    aws ec2 deprovision-ipam-pool-cidr --ipam-pool-id ipam-pool-0abcd1234 --cidr 10.0.0.0/8
  7. Elimina il pool di primo livello:

    aws ec2 delete-ipam-pool --ipam-pool-id ipam-pool-0abcd1234
  8. Eliminare l'IPAM:

    aws ec2 delete-ipam --ipam-id ipam-0abcd1234

Sostituisci tutto IDs con la tua risorsa IDs effettiva.

Nota

Potrebbe essere necessario attendere tra queste operazioni per consentire l'eliminazione completa delle risorse prima di procedere al passaggio successivo. Se riscontri violazioni delle dipendenze, attendi qualche secondo e riprova.

Passaggi successivi

Ora che hai imparato a creare e utilizzare IPAM con la AWS CLI, potresti voler esplorare funzionalità più avanzate: