Tutorial: creare un pool IPAM and utilizzando il AWS CLI - 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à.

Tutorial: creare un pool IPAM and utilizzando il AWS CLI

Segui i passaggi di questo tutorial per AWS CLI creareIPAM, creare pool di indirizzi IP e allocare un VPC con un CIDR da un IPAM pool.

Di seguito è riportata una gerarchia esemplificativa della struttura del pool che verrà creata seguendo i passaggi di questa sezione:

  • IPAMoperanti nella AWS Regione 1, AWS nella Regione 2

    • Ambito privato

      • Pool di livello superiore

        • Pool regionale nella AWS Regione 2

          • Pool di sviluppo

            • Allocazione per un VPC

Nota

In questa sezione, creerai unIPAM. Per impostazione predefinita, puoi crearne solo unoIPAM. Per ulteriori informazioni, consulta Quote per il IPAM. Se hai già delegato un IPAM account e ne hai creato unoIPAM, puoi saltare i passaggi 1 e 2.

Fase 1: Attivalo IPAM nella tua organizzazione

Questa fase è facoltativa. Completa questo passaggio per abilitare IPAM e configurare il delegato IPAM utilizzando il AWS CLI. Per ulteriori informazioni sul ruolo dell'IPAMaccount, vedereIntegrazione IPAM con gli account di un' AWS organizzazione.

Questa richiesta deve essere effettuata da un account di gestione di AWS Organizations. Quando esegui il comando seguente, assicurati di utilizzare un ruolo con una IAM politica che consenta le seguenti azioni:

  • ec2:EnableIpamOrganizationAdminAccount

  • organizations:EnableAwsServiceAccess

  • organizations:RegisterDelegatedAdministrator

  • iam:CreateServiceLinkedRole

aws ec2 enable-ipam-organization-admin-account --region us-east-1 --delegated-admin-account-id 11111111111

Si dovrebbe visualizzare il seguente output, che indica che l'abilitazione ha avuto successo.

{ "Success": true }

Fase 2: Creare un IPAM

Segui i passaggi di questa sezione per creare IPAM e visualizzare informazioni aggiuntive sugli ambiti creati. Lo utilizzerai IPAM quando creerai pool e fornirai intervalli di indirizzi IP per tali pool nei passaggi successivi.

Nota

L'opzione Regioni operative determina per quali AWS regioni possono essere utilizzati i IPAM pool. Per ulteriori informazioni sulle Regioni operative, consulta Crea un IPAM.

Per creare un IPAM file utilizzando AWS CLI
  1. Eseguite il comando seguente per creare l'IPAMistanza.

    aws ec2 create-ipam --description my-ipam --region us-east-1 --operating-regions RegionName=us-west-2

    Quando create unIPAM, AWS esegue automaticamente le seguenti operazioni:

    • Restituisce un ID di risorsa unico a livello globale (IpamId) perIPAM.

    • Crea un ambito pubblico di default (PublicDefaultScopeId) e un ambito privato di default (PrivateDefaultScopeId).

    { "Ipam": { "OwnerId": "123456789012", "IpamId": "ipam-0de83dba6694560a9", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-0de83dba6694560a9", "PublicDefaultScopeId": "ipam-scope-02a24107598e982c5", "PrivateDefaultScopeId": "ipam-scope-065e7dfe880df679c", "ScopeCount": 2, "Description": "my-ipam", "OperatingRegions": [ { "RegionName": "us-west-2" }, { "RegionName": "us-east-1" } ], "Tags": [] } }
  2. Esegui questo comando per visualizzare ulteriori informazioni relative agli ambiti. L'ambito pubblico è destinato agli indirizzi IP a cui si accede tramite Internet pubblico. L'ambito privato è destinato agli indirizzi IP a cui non si accede tramite Internet pubblico.

    aws ec2 describe-ipam-scopes --region us-east-1

    Nell'output vengono visualizzati gli ambiti disponibili. Verrà utilizzato l'ID dell'ambito privato nel passaggio successivo.

    { "IpamScopes": [ { "OwnerId": "123456789012", "IpamScopeId": "ipam-scope-02a24107598e982c5", "IpamScopeArn": "arn:aws:ec2::123456789012:ipam-scope/ipam-scope-02a24107598e982c5", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-0de83dba6694560a9", "IpamScopeType": "public", "IsDefault": true, "PoolCount": 0 }, { "OwnerId": "123456789012", "IpamScopeId": "ipam-scope-065e7dfe880df679c", "IpamScopeArn": "arn:aws:ec2::123456789012:ipam-scope/ipam-scope-065e7dfe880df679c", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-0de83dba6694560a9", "IpamScopeType": "private", "IsDefault": true, "PoolCount": 0 } ] }

Fase 3: Creare un pool di IPv4 indirizzi

Segui i passaggi di questa sezione per creare un pool di IPv4 indirizzi.

Importante

Su questo pool di livello superiore non utilizzerai l'opzione --locale. In seguito, imposterai la località sul pool regionale. La lingua è la AWS regione in cui desideri che un pool sia disponibile per CIDR le allocazioni. Come risultato della mancata configurazione della località sul pool di livello superiore, la località verrà impostata di default su None. Se un pool ha una versione locale diNone, il pool non sarà disponibile per VPC le risorse di nessuna AWS regione. L'allocazione dello spazio degli indirizzi IP nel pool per riservare spazio può essere effettuata solo manualmente.

Per creare un pool di IPv4 indirizzi per tutte le AWS risorse, utilizza il AWS CLI
  1. Esegui il comando seguente per creare un pool di IPv4 indirizzi. Usa l'ID dell'ambito privato di quello IPAM che hai creato nel passaggio precedente.

    aws ec2 create-ipam-pool --ipam-scope-id ipam-scope-065e7dfe880df679c --description "top-level-pool" --address-family ipv4

    Nell'output, sarà visualizzabile uno stato create-in-progress per il pool.

    { "IpamPool": { "OwnerId": "123456789012", "IpamPoolId": "ipam-pool-0008f25d7187a08d9", "IpamPoolArn": "arn:aws:ec2::123456789012:ipam-pool/ipam-pool-0008f25d7187a08d9", "IpamScopeArn": "arn:aws:ec2::123456789012:ipam-scope/ipam-scope-065e7dfe880df679c", "IpamScopeType": "private", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-0de83dba6694560a9", "Locale": "None", "PoolDepth": 1, "State": "create-in-progress", "Description": "top-level-pool", "AutoImport": false, "AddressFamily": "ipv4", "Tags": [] } }
  2. Esegui il seguente comando fino a quando non viene visualizzato uno stato create-complete nell'output.

    aws ec2 describe-ipam-pools

    Il seguente output esemplificativo mostra lo stato corretto.

    { "IpamPools": [ { "OwnerId": "123456789012", "IpamPoolId": "ipam-pool-0008f25d7187a08d9", "IpamPoolArn": "arn:aws:ec2::123456789012:ipam-pool/ipam-pool-0008f25d7187a08d9", "IpamScopeArn": "arn:aws:ec2::123456789012:ipam-scope/ipam-scope-065e7dfe880df679c", "IpamScopeType": "private", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-0de83dba6694560a9", "Locale": "None", "PoolDepth": 1, "State": "create-complete", "Description": "top-level-pool", "AutoImport": false, "AddressFamily": "ipv4" } ] }

Fase 4: CIDR Fornire a al pool di livello superiore

Segui i passaggi descritti in questa sezione per eseguire il provisioning CIDR di un pool di livello superiore, quindi verifica che sia stato eseguito il CIDR provisioning. Per ulteriori informazioni, consulta Fornitura CIDRs a un pool.

Per effettuare il provisioning di un CIDR blocco nel pool utilizzando il AWS CLI
  1. Esegui il comando seguente per effettuare il provisioning diCIDR.

    aws ec2 provision-ipam-pool-cidr --region us-east-1 --ipam-pool-id ipam-pool-0008f25d7187a08d9 --cidr 10.0.0.0/8

    Nell'output, è possibile verificare lo stato del provisioning.

    { "IpamPoolCidr": { "Cidr": "10.0.0.0/8", "State": "pending-provision" } }
  2. Esegui il seguente comando fino a quando non viene visualizzato uno stato provisioned nell'output.

    aws ec2 get-ipam-pool-cidrs --region us-east-1 --ipam-pool-id ipam-pool-0008f25d7187a08d9

    Il seguente output esemplificativo mostra lo stato corretto.

    { "IpamPoolCidrs": [ { "Cidr": "10.0.0.0/8", "State": "provisioned" } ] }

Fase 5. Crea un pool regionale con CIDR sourced from the pool di primo livello

Quando si crea un IPAM pool, per impostazione predefinita, il pool appartiene alla AWS regione IPAM del. Quando si crea unVPC, il pool da cui VPC si estrae deve trovarsi nella stessa regione delVPC. È possibile utilizzare l'--localeopzione quando si crea un pool per rendere il pool disponibile per i servizi in una regione diversa dalla regione diIPAM. Attenersi ai passaggi riportati in questa sezione per creare un pool Regionale in un'altra località.

Per creare un pool con un CIDR file proveniente dal pool precedente utilizzando il AWS CLI
  1. Eseguite il comando seguente per creare il pool e inserire uno spazio con una disponibilità nota CIDR del pool precedente.

    aws ec2 create-ipam-pool --description "regional--pool" --region us-east-1 --ipam-scope-id ipam-scope-065e7dfe880df679c --source-ipam-pool-id ipam-pool-0008f25d7187a08d9 --locale us-west-2 --address-family ipv4

    Nell'output, sarà visualizzabile l'ID del pool creato. Sarà necessario questo ID nel passaggio successivo.

    { "IpamPool": { "OwnerId": "123456789012", "IpamPoolId": "ipam-pool-0da89c821626f1e4b", "SourceIpamPoolId": "ipam-pool-0008f25d7187a08d9", "IpamPoolArn": "arn:aws:ec2::123456789012:ipam-pool/ipam-pool-0da89c821626f1e4b", "IpamScopeArn": "arn:aws:ec2::123456789012:ipam-scope/ipam-scope-065e7dfe880df679c", "IpamScopeType": "private", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-0de83dba6694560a9", "Locale": "us-west-2", "PoolDepth": 2, "State": "create-in-progress", "Description": "regional--pool", "AutoImport": false, "AddressFamily": "ipv4", "Tags": [] } }
  2. Esegui il seguente comando fino a quando non viene visualizzato uno stato create-complete nell'output.

    aws ec2 describe-ipam-pools

    Nell'output, vedi i pool che hai nel tuoIPAM. In questo tutorial è stato creato un pool di livello superiore e un pool Regionale, in modo da vederli entrambi.

    { "IpamPools": [ { "OwnerId": "123456789012", "IpamPoolId": "ipam-pool-0008f25d7187a08d9", "IpamPoolArn": "arn:aws:ec2::123456789012:ipam-pool/ipam-pool-0008f25d7187a08d9", "IpamScopeArn": "arn:aws:ec2::123456789012:ipam-scope/ipam-scope-065e7dfe880df679c", "IpamScopeType": "private", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-0de83dba6694560a9", "Locale": "None", "PoolDepth": 1, "State": "create-complete", "Description": "top-level-pool", "AutoImport": false, "AddressFamily": "ipv4" }, { "OwnerId": "123456789012", "IpamPoolId": "ipam-pool-0da89c821626f1e4b", "SourceIpamPoolId": "ipam-pool-0008f25d7187a08d9", "IpamPoolArn": "arn:aws:ec2::123456789012:ipam-pool/ipam-pool-0da89c821626f1e4b", "IpamScopeArn": "arn:aws:ec2::123456789012:ipam-scope/ipam-scope-065e7dfe880df679c", "IpamScopeType": "private", "IpamArn": "arn:aws:ec2::123456789012:ipam/ipam-0de83dba6694560a9", "Locale": "us-west-2", "PoolDepth": 2, "State": "create-complete", "Description": "regional--pool", "AutoImport": false, "AddressFamily": "ipv4" } ] }

Fase 6: Fornitura CIDR a al pool regionale

Segui i passaggi di questa sezione per assegnare un CIDR blocco al pool e verificare che il provisioning sia stato eseguito correttamente.

Per assegnare un CIDR blocco al pool regionale utilizzando il AWS CLI
  1. Esegui il comando seguente per effettuare il provisioning diCIDR.

    aws ec2 provision-ipam-pool-cidr --region us-east-1 --ipam-pool-id ipam-pool-0da89c821626f1e4b --cidr 10.0.0.0/16

    Nell'output, sarà visualizzabile lo stato del pool.

    { "IpamPoolCidr": { "Cidr": "10.0.0.0/16", "State": "pending-provision" } }
  2. Esegui il seguente comando fino a quando non viene visualizzato uno stato di provisioned nell'output.

    aws ec2 get-ipam-pool-cidrs --region us-east-1 --ipam-pool-id ipam-pool-0da89c821626f1e4b

    Il seguente output esemplificativo mostra lo stato corretto.

    { "IpamPoolCidrs": [ { "Cidr": "10.0.0.0/16", "State": "provisioned" } ] }
  3. Esegui il seguente comando per effettuare una query sul pool di livello superiore per visualizzare le assegnazioni. Il pool Regionale è considerato un'assegnazione all'interno del pool di livello superiore.

    aws ec2 get-ipam-pool-allocations --region us-east-1 --ipam-pool-id ipam-pool-0008f25d7187a08d9

    Nell'output viene visualizzato il pool Regionale come assegnazione nel pool di livello superiore.

    { "IpamPoolAllocations": [ { "Cidr": "10.0.0.0/16", "IpamPoolAllocationId": "ipam-pool-alloc-fbd525f6c2bf4e77a75690fc2d93479a", "ResourceId": "ipam-pool-0da89c821626f1e4b", "ResourceType": "ipam-pool", "ResourceOwner": "123456789012" } ] }

Fase 7. Crea una RAM condivisione per abilitare le assegnazioni IP tra account

Questa fase è facoltativa. È possibile completare questo passaggio solo se Integrazione IPAM con gli account di un' AWS organizzazione è stato completato.

Quando si crea una AWS RAM condivisione di IPAM pool, abilita l'assegnazione degli IP tra gli account. RAMla condivisione è disponibile solo nella tua AWS regione d'origine. Tieni presente che crei questa condivisione nella stessa regione dellaIPAM, non nella regione locale del pool. Tutte le operazioni amministrative sulle IPAM risorse vengono eseguite tramite la regione di origine della tuaIPAM. L'esempio in questo tutorial crea una singola condivisione per un singolo pool, ma è possibile aggiungere più pool a una singola condivisione. Per ulteriori informazioni, inclusa una spiegazione delle opzioni da inserire, consulta Condividi un IPAM pool utilizzando AWS RAM.

Esegui i seguenti comandi per creare una condivisione di risorse.

aws ram create-resource-share --region us-east-1 --name pool_share --resource-arns arn:aws:ec2::123456789012:ipam-pool/ipam-pool-0dec9695bca83e606 --principals 123456

L'output indica che il pool è stato creato.

{ "resourceShare": { "resourceShareArn": "arn:aws:ram:us-west-2:123456789012:resource-share/3ab63985-99d9-1cd2-7d24-75e93EXAMPLE", "name": "pool_share", "owningAccountId": "123456789012", "allowExternalPrincipals": false, "status": "ACTIVE", "creationTime": 1565295733.282, "lastUpdatedTime": 1565295733.282 } }

Fase 8. Crea un VPC

Esegui il seguente comando per creare un CIDR blocco VPC e assegnare un blocco al pool appena creatoIPAM. VPC

aws ec2 create-vpc --region us-east-1 --ipv4-ipam-pool-id ipam-pool-04111dca0d960186e --cidr-block 10.0.0.0/24

L'output mostra che VPC è stato creato.

{ "Vpc": { "CidrBlock": "10.0.0.0/24", "DhcpOptionsId": "dopt-19edf471", "State": "pending", "VpcId": "vpc-0983f3c454f3d8be5", "OwnerId": "123456789012", "InstanceTenancy": "default", "Ipv6CidrBlockAssociationSet": [], "CidrBlockAssociationSet": [ { "AssociationId": "vpc-cidr-assoc-00b24cc1c2EXAMPLE", "CidrBlock": "10.0.0.0/24", "CidrBlockState": { "State": "associated" } } ], "IsDefault": false } }

Fase 9. Rimozione

Segui i passaggi in questa sezione per eliminare le IPAM risorse che hai creato in questo tutorial.

  1. Elimina ilVPC.

    aws ec2 delete-vpc --vpc-id vpc-0983f3c454f3d8be5
  2. Eliminare la RAM condivisione del IPAM pool.

    aws ram delete-resource-share --resource-share-arn arn:aws:ram:us-west-2:123456789012:resource-share/3ab63985-99d9-1cd2-7d24-75e93EXAMPLE
  3. Pool di deprovisioning CIDR dal pool regionale.

    aws ec2 deprovision-ipam-pool-cidr --ipam-pool-id ipam-pool-0da89c821626f1e4b --region us-east-1
  4. Pool di deprovisioning CIDR dal pool di livello superiore.

    aws ec2 deprovision-ipam-pool-cidr --ipam-pool-id ipam-pool-0008f25d7187a08d9 --region us-east-1
  5. Eliminare il IPAM

    aws ec2 delete-ipam --region us-east-1