Tutorial: cree un IPAM y grupos utilizando el AWS CLI
Siga los pasos de este tutorial para crear un IPAM con AWS CLI, crear grupos de direcciones IP y asignar una VPC con un CIDR desde un grupo de IPAM.
A continuación, se muestra un ejemplo de jerarquía de la estructura de grupos que creará al seguir los pasos de esta sección:
-
IPAM que opera en la región de AWS 1 y la región de AWS 2
-
Alcance privado
-
Grupo de nivel superior
-
Grupo regional en la región 2 de AWS
-
Grupo de desarrollo
-
Asignación para una VPC
-
-
-
-
-
nota
En esta sección, creará un IPAM. De forma predeterminada, solo puede crear un IPAM. Para obtener más información, consulte Cuotas de IPAM. Si ya ha delegado una cuenta de IPAM y ha creado un IPAM, puede omitir los pasos 1 y 2.
Contenido
- Paso 1: Habilitar IPAM en su organización
- Paso 2: Crear un IPAM
- Paso 3: Crear un grupo de direcciones IPv4
- Paso 4: Aprovisionar un CIDR en el grupo de nivel superior
- Paso 5. Crear un grupo regional con el CIDR procedente del grupo de nivel superior
- Paso 6: Aprovisionar un CIDR al grupo regional
- Paso 7. Crear un recurso compartido de RAM para habilitar las asignaciones de IP en todas las cuentas
- Paso 8. Creación de una VPC
- Paso 9. Limpieza
Paso 1: Habilitar IPAM en su organización
Este paso es opcional. Complete este paso para habilitar IPAM en su organización y configurar el IPAM delegado mediante AWS CLI. Para obtener más información sobre el rol de la cuenta de IPAM, consulte Integración de IPAM con cuentas en una organización de AWS.
Se debe realizar esta solicitud desde una cuenta de administración de AWS Organizations. Cuando ejecute el siguiente comando, asegúrese de que se encuentra utilizando un rol con una política de IAM que permita las siguientes acciones:
ec2:EnableIpamOrganizationAdminAccount
organizations:EnableAwsServiceAccess
organizations:RegisterDelegatedAdministrator
iam:CreateServiceLinkedRole
aws ec2 enable-ipam-organization-admin-account --region
us-east-1
--delegated-admin-account-id11111111111
Debe ver el siguiente resultado, lo que indica que la habilitación se ha realizado correctamente.
{
"Success": true
}
Paso 2: Crear un IPAM
Siga los pasos de esta sección para crear un IPAM y conocer más información sobre los alcances que se crean. Utilizará este IPAM cuando cree grupos y aprovisione rangos de direcciones IP para esos grupos en pasos posteriores.
nota
La opción de regiones operativas determina para qué regiones de AWS se pueden utilizar los grupos de IPAM. Para obtener más información sobre las regiones operativas, consulte Creación de un IPAM.
Para crear un IPAM mediante la AWS CLI
-
Ejecute el siguiente comando para crear la instancia de IPAM.
aws ec2 create-ipam --description
my-ipam
--regionus-east-1
--operating-regionsRegionName=us-west-2
Al crear un IPAM, AWS realiza lo siguiente de forma automática:
Devuelve un ID de recurso único a nivel global (
IpamId
) para el IPAM.Crea un alcance público predeterminado (
PublicDefaultScopeId
) y un alcance privado predeterminado (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": [] } }
-
Ejecute el siguiente comando para conocer más información relacionada con los alcances. El alcance público se ha destinado a direcciones IP a las que se accederá a través de Internet pública. El alcance privado se ha destinado a direcciones IP a las que no se accederá a través de Internet pública.
aws ec2 describe-ipam-scopes --region
us-east-1
En la salida, verá los alcances que se encuentran disponibles. Utilizará el ID de alcance privado en el siguiente paso.
{ "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 } ] }
Paso 3: Crear un grupo de direcciones IPv4
Siga los pasos de esta sección para crear un grupo de direcciones IPv4.
importante
No usará la opción --locale
en este grupo de nivel superior. Establecerá la opción de configuración regional más adelante en el grupo regional. La configuración regional es la región de AWS en la que desea que un grupo esté disponible para asignaciones de CIDR. Como resultado de no determinar la configuración regional en el grupo de nivel superior, la configuración regional se establecerá de forma predeterminada en None
. Si un grupo tiene None
como configuración regional, no estará disponible para los recursos de VPC en ninguna región de AWS. Solo puede asignar de manera manual el espacio de direcciones IP en el grupo para reservar espacio.
Para crear un grupo de direcciones IPv4 para todos los recursos de AWS con la AWS CLI
-
Ejecute el siguiente comando para crear un grupo de direcciones IPv4. Utilice el ID de alcance privado del IPAM que creó en el paso anterior.
aws ec2 create-ipam-pool --ipam-scope-id
ipam-scope-065e7dfe880df679c
--description"top-level-pool"
--address-familyipv4
En la salida, verá un estado
create-in-progress
para el grupo.{ "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": [] } }
-
Ejecute el siguiente comando hasta que vea el estado
create-complete
en la salida.aws ec2 describe-ipam-pools
En la siguiente salida de ejemplo se muestra el estado correcto.
{ "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" } ] }
Paso 4: Aprovisionar un CIDR en el grupo de nivel superior
Siga los pasos de esta sección para aprovisionar un CIDR en el grupo de nivel superior y, a continuación, verificar que se aprovisiona el CIDR. Para obtener más información, consulte Aprovisionamiento de CIDR en un grupo.
Para aprovisionar un bloque de CIDR en el grupo mediante la AWS CLI
-
Ejecute el siguiente comando para aprovisionar el CIDR.
aws ec2 provision-ipam-pool-cidr --region
us-east-1
--ipam-pool-idipam-pool-0008f25d7187a08d9
--cidr10.0.0.0/8
En la salida, puede verificar el estado del aprovisionamiento.
{ "IpamPoolCidr": { "Cidr": "10.0.0.0/8", "State": "pending-provision" } }
-
Ejecute el siguiente comando hasta que vea el estado
provisioned
en la salida.aws ec2 get-ipam-pool-cidrs --region
us-east-1
--ipam-pool-idipam-pool-0008f25d7187a08d9
En la siguiente salida de ejemplo se muestra el estado correcto.
{ "IpamPoolCidrs": [ { "Cidr": "10.0.0.0/8", "State": "provisioned" } ] }
Paso 5. Crear un grupo regional con el CIDR procedente del grupo de nivel superior
Cuando crea un grupo de IPAM, el grupo pertenece a la región de AWS del IPAM de forma predeterminada. Al crear una VPC, el grupo del que extrae la VPC debe encontrarse en la misma región que la VPC. Puede utilizar la opción --locale
cuando cree un grupo a fin de que el grupo se encuentre disponible para los servicios de una región distinta de la región del IPAM. Siga los pasos de esta sección para crear un grupo regional en otra configuración regional.
Para crear un grupo con un CIDR procedente del grupo anterior mediante la AWS CLI
-
Ejecute el siguiente comando para crear el grupo e introducir espacio con un CIDR disponible conocido del grupo anterior.
aws ec2 create-ipam-pool --description
"regional--pool"
--regionus-east-1
--ipam-scope-idipam-scope-065e7dfe880df679c
--source-ipam-pool-idipam-pool-0008f25d7187a08d9
--localeus-west-2
--address-familyipv4
En la salida, verá el ID del grupo que creó. Necesitará este ID en el siguiente paso.
{ "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": [] } }
-
Ejecute el siguiente comando hasta que vea el estado
create-complete
en la salida.aws ec2 describe-ipam-pools
En la salida, verá los grupos que tiene en el IPAM. En este tutorial, hemos creado un grupo de nivel superior y un grupo regional, así que verá ambos.
{ "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" } ] }
Paso 6: Aprovisionar un CIDR al grupo regional
Siga los pasos de esta sección para asignar un bloque de CIDR al grupo y validar que se ha aprovisionado correctamente.
Para asignar un bloque de CIDR al grupo regional mediante la AWS CLI
-
Ejecute el siguiente comando para aprovisionar el CIDR.
aws ec2 provision-ipam-pool-cidr --region
us-east-1
--ipam-pool-idipam-pool-0da89c821626f1e4b
--cidr10.0.0.0/16
En la salida, verá el estado del grupo.
{ "IpamPoolCidr": { "Cidr": "10.0.0.0/16", "State": "pending-provision" } }
-
Ejecute el siguiente comando hasta que vea el estado
provisioned
en la salida.aws ec2 get-ipam-pool-cidrs --region
us-east-1
--ipam-pool-idipam-pool-0da89c821626f1e4b
En la siguiente salida de ejemplo se muestra el estado correcto.
{ "IpamPoolCidrs": [ { "Cidr": "10.0.0.0/16", "State": "provisioned" } ] }
-
Ejecute el siguiente comando para consultar el grupo de nivel superior a fin de ver las asignaciones. El grupo regional se considera una asignación dentro del grupo de nivel superior.
aws ec2 get-ipam-pool-allocations --region
us-east-1
--ipam-pool-idipam-pool-0008f25d7187a08d9
En la salida, verá el grupo regional como una asignación en el grupo de nivel superior.
{ "IpamPoolAllocations": [ { "Cidr": "10.0.0.0/16", "IpamPoolAllocationId": "ipam-pool-alloc-fbd525f6c2bf4e77a75690fc2d93479a", "ResourceId": "ipam-pool-0da89c821626f1e4b", "ResourceType": "ipam-pool", "ResourceOwner": "123456789012" } ] }
Paso 7. Crear un recurso compartido de RAM para habilitar las asignaciones de IP en todas las cuentas
Este paso es opcional. Solo puede completar este paso si ha completado Integración de IPAM con cuentas en una organización de AWS.
Al crear un recurso compartido de AWS RAM de un grupo de IPAM, permite asignaciones de IP en todas las cuentas. El uso compartido de RAM solo se encuentra disponible en la región de AWS de origen. Tenga en cuenta que crea este recurso compartido en la misma región que el IPAM, no en la región local del grupo. Todas las operaciones administrativas de los recursos de IPAM se realizan a través de la región de origen del IPAM. En el ejemplo de este tutorial, se crea un único recurso compartido para un solo grupo, pero puede agregar varios grupos a un solo recurso compartido. Para obtener más información, incluida una explicación de las opciones que debe ingresar, consulte Compartir un grupo de IPAM mediante AWS RAM.
Ejecute los siguientes comandos para crear un recurso compartido:
aws ram create-resource-share --region
us-east-1
--namepool_share
--resource-arnsarn:aws:ec2::123456789012:ipam-pool/ipam-pool-0dec9695bca83e606
--principals123456
La salida muestra que se ha creado el grupo.
{
"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
}
}
Paso 8. Creación de una VPC
Ejecute el siguiente comando para crear una VPC y asignar un bloque de CIDR a la VPC desde el grupo de IPAM que se creó recientemente.
aws ec2 create-vpc --region
us-east-1
--ipv4-ipam-pool-idipam-pool-04111dca0d960186e
--cidr-block10.0.0.0/24
La salida muestra que se ha creado la VPC.
{
"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
}
}
Paso 9. Limpieza
Siga los pasos de esta sección para eliminar los recursos de IPAM que ha creado en este tutorial.
-
Elimine la VPC.
aws ec2 delete-vpc --vpc-id
vpc-0983f3c454f3d8be5
-
Elimine el recurso compartido de RAM del grupo de IPAM.
aws ram delete-resource-share --resource-share-arn
arn:aws:ram:us-west-2:123456789012:resource-share/3ab63985-99d9-1cd2-7d24-75e93EXAMPLE
-
Desaprovisione el CIDR de grupo del grupo regional.
aws ec2 deprovision-ipam-pool-cidr --ipam-pool-id
ipam-pool-0da89c821626f1e4b
--regionus-east-1
-
Desaprovisione el CIDR de grupo del grupo de nivel superior.
aws ec2 deprovision-ipam-pool-cidr --ipam-pool-id
ipam-pool-0008f25d7187a08d9
--regionus-east-1
-
Eliminar el IPAM
aws ec2 delete-ipam --region
us-east-1