

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Productos basados en AMI en AWS Marketplace
<a name="buyer-server-products"></a>

Una Amazon Machine Image (AMI) es una imagen de un servidor que incluye un sistema operativo y a menudo software adicional que se ejecuta en AWS.

El software que aparece en la lista solo AWS Marketplace está disponible para ejecutarse en Amazon Elastic Compute Cloud (Amazon EC2). No está disponible para su descarga. 

 Esta AWS Marketplace opción está activada para buscar AMIs (con sugerencias de búsqueda), ver las reseñas de productos enviadas por otros clientes, suscribirse AMIs, lanzar y gestionar las suscripciones. Se ha verificado la calidad de todos los AWS Marketplace productos y se han preconfigurado para poder lanzarlos con un solo clic en la infraestructura de Amazon Web Services (AWS). 

 Todas las ofertas de productos de AMI y software como servicio (SaaS) proceden de vendedores de confianza. Los productos de AMI se ejecutan dentro del Cuenta de AWS de un cliente. De este modo, se tiene más control sobre la configuración del software y los servidores que ejecutan el software, pero también se tienen más responsabilidades en relación con la configuración y el mantenimiento del servidor. 

El AWS Marketplace catálogo contiene una selección selecta de software comercial y de código abierto de vendedores conocidos. Muchos productos se AWS Marketplace pueden comprar por horas. 

 El catálogo de AMI es un recurso de la comunidad en el que individuos y equipos de desarrollo pueden publicar e intercambiar software o proyectos en desarrollo, sin tener que pasar por un análisis exhaustivo. Las publicaciones en el catálogo de AMI de la comunidad pueden proceder o no de vendedores reconocidos y, por lo general, no se han sometido a investigaciones adicionales. 

 Un AWS Marketplace producto contiene una AMI para cada uno de los productos Región de AWS en los que esté disponible. AMIs Son idénticas excepto en lo que respecta a su ubicación. Además, cuando los vendedores actualicen su producto con los últimos parches y actualizaciones, pueden añadir otro conjunto AMIs al producto. 

 Algunos AWS Marketplace productos pueden lanzar varias instancias de una AMI porque se implementan como un clúster mediante AWS CloudFormation plantillas. Este clúster de instancias, junto con los servicios de AWS infraestructura adicionales configurados por la CloudFormation plantilla, actúan como una implementación de un solo producto. 

## AWS CloudFormation plantilla
<a name="what-is-aws-cloudformation"></a>

 AWS CloudFormation es un servicio que le ayuda a modelar y configurar sus AWS recursos para que pueda dedicar menos tiempo a gestionarlos y más tiempo a centrarse en las aplicaciones que se ejecutan en ellos AWS. Una CloudFormation plantilla describe los distintos AWS recursos que necesita, como las instancias de Amazon Elastic Compute Cloud (Amazon EC2) o las instancias de bases de datos de Amazon Relational Database Service (Amazon RDS). CloudFormation se encarga de aprovisionar y configurar esos recursos por usted. Para obtener más información, consulte [Cómo empezar con CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/GettingStarted.html). 

### Uso de AWS CloudFormation plantillas
<a name="using-CF-templates"></a>

Los vendedores de software pueden ofrecer CloudFormation plantillas para definir una topología de implementación preferida que consta de varias instancias de AMI y otros AWS recursos. Si hay una CloudFormation plantilla disponible para un producto, aparecerá como opción de implementación en la página de listado del producto. 

Puede usar una AMI para implementar una única EC2 instancia de Amazon. Puede usar una CloudFormation plantilla para implementar varias instancias de una AMI que actúen como un clúster, junto con AWS recursos como Amazon RDS y el servicio Amazon Simple Storage Service, como una única solución. 

### Productos de AMI habilitados para la medición
<a name="buyer-ami-metering-enabled-products"></a>

Algunos productos que aparecen en la lista se AWS Marketplace facturan en función del uso medido por la aplicación de software. Entre los ejemplos de dimensiones de uso medido se incluyen el uso de datos, el uso o el Host/Agent uso del ancho de banda. Estos productos requieren una configuración adicional para su correcto funcionamiento. Una instancia IAMrole con permiso para medir el uso debe estar asociada a su instancia de AWS Marketplace Amazon Elastic Compute Cloud (Amazon EC2) en el momento del lanzamiento. Para obtener más información sobre IAMroles Amazon EC2, consulte [Funciones de IAM para Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html). 

### Políticas de versión del producto de AMI
<a name="ami-product-version-policies"></a>

AWS Marketplace automatiza la experiencia de administración de versiones para AWS los clientes y vendedores que utilizan S-AMI, AMI con CloudFormation plantilla y productos de contenedores. Con el archivado automático de versiones, se archiva automáticamente cualquier versión del producto que un vendedor haya restringido durante más de dos años. Las versiones archivadas ya no están disponibles para lanzarlas AWS Marketplace para los nuevos clientes; sin embargo, los usuarios existentes pueden seguir utilizando la versión archivada a través de plantillas de lanzamiento y grupos de Amazon EC2 Auto Scaling especificando el ID de la AMI. Se eliminará cualquier versión archivada que no se haya utilizado para lanzar una nueva instancia en los últimos 13 meses. Una vez que se elimina una versión archivada, deja de estar disponible para su lanzamiento para los usuarios nuevos o existentes.

# Suscripciones de AMI en AWS Marketplace
<a name="buyer-ami-subscriptions"></a>

En AWS Marketplace, algunos productos de software basados en Imagen de máquina de Amazon (AMI) ofrecen un modelo de precios de suscripción anual. Con este modelo de precios, usted realiza un pago inicial único y no paga ninguna tarifa de uso por hora durante los próximos 12 meses. Puede aplicar una suscripción anual a un producto de software de AWS Marketplace a una instancia de Amazon Elastic Compute Cloud (Amazon EC2). 

**nota**  
En el caso de las AMI por hora con precios anuales, la suscripción anual cubre solo los tipos de instancias que especifique al realizar la compra. Por ejemplo, `t3.medium`. Al lanzar cualquier otro tipo de instancia, se aplicará la tarifa por hora para ese tipo de instancia en función de la suscripción activa.

También puede seguir lanzando y ejecutando productos de software de AWS Marketplace con los precios por hora. Los cargos por el uso de Amazon EC2 y otros servicios de AWS son independientes y adicionales a lo que se paga por adquirir productos de software de AWS Marketplace.

Si cambia el tipo de instancia de Amazon EC2 por un uso por hora, su infraestructura de Amazon EC2 se facturará de acuerdo con el plan de ahorro que haya firmado. Sin embargo, el precio de la licencia de AMI de AWS Marketplace cambiará automáticamente al precio por hora.

Si un producto por hora de AMI no admite precios anuales, el comprador no podrá adquirir una suscripción anual. Si un producto por hora de AMI admite precios anuales, el comprador puede ir a la página del producto en AWS Marketplace y comprar contratos anuales. Cada contrato anual permite al comprador ejecutar una instancia sin que se le cobre la tarifa por hora. Los contratos varían según el tipo de instancia.

## Modificaciones de acuerdos anuales
<a name="annual-agreement-amendments"></a>

Con las modificaciones del plan anual (anual) por hora, puede modificar el plan directamente desde el AWS Marketplace Management Portal. Puede utilizar modificaciones cuando necesite cambiar la AMI para que se ejecute en un tipo de instancia de Amazon Elastic Compute Cloud (Amazon EC2) con más vCPU o pasar a una generación más moderna de arquitectura de CPU. Con las modificaciones, puede realizar los siguientes cambios en su plan anual actual:
+ Cambiar entre familias de tipos de instancias de Amazon EC2
+ Cambiar entre tamaños de tipos de instancias de Amazon EC2
+ Agregar un nuevo tipo de instancia
+ Aumentar la cantidad de un tipo de instancia existente en el acuerdo

Cualquier nuevo tipo de instancias de Amazon EC2 que agregue o a los que cambie en el acuerdo se equiparán a la fecha de finalización actual del plan, de modo que todos los tipos de instancias del acuerdo se renuevan al mismo tiempo.

Puede realizar un cambio siempre que el costo prorrateado del cambio sea superior a cero. El costo prorrateado de las instancias de Amazon EC2 recién añadidas se basa en el costo anual del tipo de instancia ajustado durante el periodo restante del acuerdo. Al cambiar de tipos de instancia, el costo prorrateado del tipo de instancia de Amazon EC2 eliminado se deduce del costo prorrateado del tipo de instancia de Amazon EC2 recién agregado.

**nota**  
Se admiten modificaciones en todos los acuerdos realizados a partir de ofertas públicas y acuerdos de ofertas privadas sin planes de cuotas.

### Ejemplos de modificaciones de acuerdos anuales
<a name="amendment-scenarios"></a>

Tenga en cuenta los siguientes ejemplos relacionados con las modificaciones de acuerdos anuales. En los siguientes ejemplos, el cliente firmó un contrato el 1 de enero de 2024 para dos unidades de tipos de instancias m5.large (4000 USD al año). Al vendedor se le pagan 8000 USD, menos las tarifas de publicación.

**Example 1: cambio a un tipo de instancia de igual valor**  
A mediados de año, el cliente quiere cambiar una unidad del tipo de instancia m5.large a una unidad del tipo de instancia r5.large. El costo prorrateado del cambio se calcula deduciendo el costo prorrateado de la instancia eliminada (seis meses de m5.large, 2000 USD) del costo prorrateado de la instancia agregada (seis meses de r5.large, 2000 USD). El costo neto es de 0 USD, por lo que la modificación puede efectuarse.



**Example 2: cambio a un tipo de instancia de mayor precio**  
A mediados de año, el cliente quiere cambiar una unidad del tipo de instancia m5.large a una unidad del tipo de instancia m5.2xlarge. El costo prorrateado del cambio se calcula deduciendo el costo prorrateado de la instancia eliminada (seis meses de m5.large, 2000 USD) del costo prorrateado de la instancia agregada (seis meses de m5.2xlarge, 3000 USD). El costo neto es de 1000 USD, por lo que la modificación puede efectuarse.



**Example 3: cambio a una sola unidad de un tipo de instancia de menor precio**  
A mediados de año, el cliente quiere cambiar una unidad del tipo de instancia m5.large a una unidad del tipo de instancia c5.large. El costo prorrateado del cambio se calcula deduciendo el costo prorrateado de la instancia eliminada (seis meses de m5.large, 2000 USD) del costo prorrateado de la instancia agregada (seis meses de c5.large, 1500 USD). El costo neto es de -500 USD (menos de 0 USD), por lo que la modificación no puede efectuarse.



**Example 4: cambio a varias unidades de un tipo de instancia de menor precio**  
A mediados de año, el cliente quiere cambiar una unidad del tipo de instancia m5.large a dos unidades del tipo de instancia c5.large. El costo prorrateado del cambio se calcula deduciendo el costo prorrateado de la instancia eliminada (seis meses de m5.large, 2000 USD) del costo prorrateado de las instancias agregadas (seis meses de dos c5.large, 3000 USD). El costo neto es de 1000 USD, por lo que la modificación puede efectuarse.



**Example 5: adición de un nuevo tipo de instancia**  
A mediados de año, el cliente quiere agregar al acuerdo una unidad adicional del tipo de instancia m5.large. El costo prorrateado de este cambio se calcula como el costo prorrateado de la instancia agregada (seis meses de m5.large, 2000 USD). El costo neto es de 2000 USD, por lo que la modificación puede efectuarse.



**Example 6: eliminación de un tipo de instancia**  
A mediados de año, el cliente quiere eliminar una unidad del tipo de instancia m5.large. El costo prorrateado de este cambio se calcula como el costo prorrateado de la instancia eliminada (seis meses de m5.large, 2000 USD). El costo neto es de -2000 USD (menos de 0 USD), por lo que la modificación no puede efectuarse.

# Productos AMI con precios por contrato en AWS Marketplace
<a name="buyer-ami-contracts"></a>

Algunos vendedores ofrecen productos de software públicos basados en imágenes de máquina de Amazon (AMI) con un modelo de precios por contrato. En ese modelo, usted acepta realizar un pago único por adelantado por cantidades específicas de licencias para acceder al producto de software durante el período que elija. Se le factura, por adelantado, a través de su Cuenta de AWS. Por ejemplo, puede comprar 10 licencias de acceso de usuario y 5 licencias administrativas durante un año. Puede optar por renovar automáticamente las licencias.

Además, algunas empresas ofrecen productos de software privados basados en AMI con un modelo de precios por contrato. Por lo general, una oferta privada tiene una duración fija que no se puede cambiar.

Puede comprar un contrato de producto de software basado en AMI en la página de detalles del producto en AWS Marketplace. Si esta opción está disponible, aparece **AMI con precio contractual** como **Método de entrega** en la página de detalles del producto. Al realizar la compra, se le redirigirá al sitio web del producto para que realice la instalación y configuración de la cuenta. A continuación, los cargos por uso aparecerán en tu informe de Cuenta de AWS facturación habitual.

# Suscripción a un producto de AMI con precio contractual
<a name="sub-public-AMI-contract"></a>

Los vendedores ofrecen contratos públicos o privados de productos de software basados en imágenes de máquina de Amazon (AMI). Acepta realizar un pago único por adelantado por cantidades específicas de licencias para acceder al producto de software.

Si el contrato es una oferta pública, puede elegir la duración del contrato y si desea renovar automáticamente las licencias.

Por lo general, las ofertas privadas tienen una duración fija que no se puede cambiar.

**Suscribirse a una oferta pública de productos basados en AMI con un modelo de precios por contrato**

1. Inicie sesión en AWS Marketplace y busque un producto de software basado en contenedores con un modelo de precios por contrato.

1. En la página **Adquisiciones**, consulte la **Información sobre precios**.

   Puede ver las **Unidades** y la tarifa para cada duración (en meses).

1. Elija **Continuar para suscribirse** para comenzar la suscripción. 

   Para guardar este producto sin necesidad de suscribirse, seleccione **Guardar en la lista**.

1. Cree un acuerdo revisando la información sobre precios y configurando las condiciones del producto de software. 

   1. Elija la duración del contrato: **1 mes**, **12 meses**, **24 meses** o **36 meses**. 

   1. En **Configuración de renovación**, elija si desea renovar automáticamente el contrato.

   1. En **Opciones de contrato**, seleccione una cantidad para cada unidad.

   El precio total del contrato se muestra en **Información sobre precios**.

1. Una vez que haya realizado todas las selecciones, elija **Crear contrato**.

El **Precio total del contrato** se carga a su Cuenta de AWS. Se genera una licencia en AWS License Manager.

**nota**  
La suscripción puede tardar hasta 10 minutos en procesarse y generar una licencia en su cuenta de AWS License Manager para el producto de software.

**Suscribirse a una oferta privada de producto basado en AMI con un modelo de precios por contrato**

1. Inicie sesión en AWS Marketplace con su cuenta de comprador.

1. Consulte la oferta privada. 

1. En la página **Adquisición**, consulte la **Información sobre precios**.

    Puede ver las **Unidades** y la tarifa para cada duración (en meses). 

1. Elija **Continuar con la suscripción** para comenzar la suscripción. 

1. Cree un acuerdo revisando la información sobre precios y configurando las condiciones del producto de software. 

   La duración del contrato ya la ha establecido el vendedor y no se puede modificar. 

1. En **Opciones de contrato**, seleccione una cantidad para cada unidad.

1. Consulte el precio total del contrato en **Información sobre precios**.

   También puede ver la oferta pública seleccionando **Ver oferta** en **Otras ofertas disponibles**.

1. Una vez que haya realizado todas las selecciones, elija **Crear contrato**.

**nota**  
La suscripción puede tardar hasta 10 minutos en procesarse y generar una licencia en su cuenta de AWS License Manager para el producto de software.

# Acceso a software basado en AMI
<a name="access-ami-software"></a>

Al adquirir un producto de software basado en imagen de máquina de Amazon (AMI) con precios por contrato, se le redirigirá al sitio web del producto para que realice la instalación y la configuración de la cuenta. Los cargos por uso aparecerán entonces en tu informe Cuenta de AWS de facturación habitual.

**Acceder al producto de software basado en AMI**

1. En la AWS Marketplace consola, vaya a **Ver suscripción** y consulte la licencia del producto de software. 

1. En la página **Adquisición**:

   1. Seleccione **Administrar licencia** para ver, conceder el acceso y realizar un seguimiento del uso de sus derechos. AWS License Manager

   1. Elija **Continuar con la configuración**. 

1. En la página **Lanzar**, revise la configuración y elija cómo desea iniciar el software en **Elegir acción**.

1. En **Elija un tipo de instancia**, elija una instancia de Amazon Elastic Compute Cloud (Amazon EC2) y, a continuación, elija **Next: Configure Instance Details**.

1. En la página **Configurar detalles de la instancia**, para el **rol de IAM,** elige un rol existente AWS Identity and Access Management (IAM) de entre tus. Cuenta de AWS

   Si no dispone de un rol de IAM, seleccione el enlace **Crear nuevo rol de IAM manualmente** y siga las instrucciones.
**nota**  
Cuando compra un producto con un precio de contrato, se crea una licencia Cuenta de AWS que su software puede comprobar mediante la API de License Manager. AWS Marketplace Los clientes necesitarán un rol de IAM para lanzar una instancia del producto basado en la AMI.  
Los siguientes permisos de IAM son necesarios en la política de IAM.  

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement":[
         {
            "Sid":"VisualEditorO",
            "Effect":"Allow",
            "Action":[
               "license-manager:CheckoutLicense",
               "license-manager:GetLicense",
               "license-manager:CheckInLicense",
               "license-manager:ExtendLicenseConsumption",
               "license-manager:ListReceivedLicenses"
            ],
            "Resource":"*"
         }
      ]
   }
   ```

1. Una vez configurados los detalles de la instancia, elija **Revisar y lanzar**.

1. En la página **Revisar lanzamiento de instancia**, seleccione un par de claves existente o cree uno nuevo y, a continuación, seleccione **Lanzar instancias**.

   Aparece la ventana de progreso **Iniciando lanzamientos de instancias**.

1. Una vez iniciada la instancia, vaya al EC2 panel de control y, en **Instancias**, compruebe que el **estado de la instancia** es En **ejecución**.

# Visualización de una licencia generada
<a name="view-generated-license"></a>

Tras suscribirse a un producto basado en AMI, se genera una licencia en AWS License Manager. Puede ver los detalles de la licencia, incluidos el **Emisor** (AWS/Marketplace) y los **Derechos** (las unidades a las que la licencia otorga el derecho de uso, acceso o consumo de una aplicación o recurso).

**Visualizar una licencia generada**

1. Inicie sesión en AWS License Manager con su Cuenta de AWS.

1. En **Licencias concedidas**, consulte todas las licencias concedidas.

1. Para buscar licencias, introduzca el SKU, el destinatario o el estado del producto en la barra de **búsqueda**.

1. Elija el **ID de licencia** y consulte los **Detalles de la licencia**. 

# Modificación de un contrato existente
<a name="modify-existing-contract"></a>

Si ya tienen un compromiso inicial para un producto de AMI, AWS Marketplace los compradores pueden modificar algunos aspectos del contrato. Un contrato de AMI recibe soporte mediante ofertas basadas en las condiciones del contrato, en lugar de ofertas de precios de consumo flexibles (FCP) anuales o por hora. Esta función solo está disponible para las aplicaciones que están integradas con AWS License Manager. Los compradores pueden adquirir licencias adicionales con la misma oferta incluida en el contrato actual. Sin embargo, los compradores no pueden reducir el número de derechos adquiridos en el contrato. Los compradores también pueden cancelar la renovación automática de la suscripción si el Vendedor habilita la opción. 

**nota**  
La oferta de un contrato con un plan de pagos en cuotas no se puede modificar. El comprador no podrá cambiar los derechos de un contrato con un plan de pagos por cuotas adquirido. Un derecho es el derecho a usar, acceder o consumir una aplicación o un recurso. Las ofertas de un plan de pagos por cuotas no se pueden cambiar.

**Administre su suscripción**

1. En la AWS Marketplace consola, vaya a **Ver suscripción** y consulte la licencia del producto de software. 

1. En la página **Adquisición**, seleccione **Administrar licencia**.

1. En la lista, seleccione **Visualización de las condiciones**.

1. En la sección **Opciones de contrato**, aumente sus derechos con las flechas. No puede reducir el recuento de derechos existente por debajo de los derechos adquiridos.

1. Los detalles del contrato y el precio total aparecen en la sección **Detalles del precio.**



**Cancelar la renovación automática de la suscripción**

1. En la AWS Marketplace consola, vaya a **Ver suscripción** y consulte la licencia del producto de software. 

1. En la página **Adquisición**, seleccione **Administrar licencia**.

1. En la página de **Suscripción**, busque la sección **Configuración de renovación**.

1. Asegúrese de entender los términos y condiciones de cancelación.

1. Seleccione la casilla de verificación para cancelar la renovación automática.

# Etiquetado de asignación de costes para productos AMI en AWS Marketplace
<a name="cost-allocation-tagging-ami-marketplace"></a>

AWS Marketplace admite el etiquetado de asignación de costes para productos de software basados en Amazon Machine Image (AMI). Las etiquetas de instancia de Amazon Elastic Compute Cloud (Amazon EC2) nuevas y existentes se rellenan automáticamente según el uso de la AMI correspondiente. AWS Marketplace Puede utilizar las etiquetas de asignación de costes activadas para identificar y realizar un seguimiento del uso de la AMI mediante AWS Cost Explorer los informes de AWS costes y uso, AWS los presupuestos u otras herramientas de análisis de gastos en la nube.

El proveedor que proporcionó la AMI también puede registrar otras etiquetas personalizadas en la medición de los productos basados en la AMI, en función de la información específica del producto. Para obtener más información, consulte [Uso de etiquetado de asignación de costos](cost-allocation-tagging.md).

Puede utilizar las etiquetas para organizar los recursos y las etiquetas de asignación de costos para realizar un seguimiento de los costos de AWS en un nivel detallado. Tras activar las etiquetas de asignación de costes, AWS utiliza las etiquetas de asignación de costes para organizar los costes de los recursos en el informe de asignación de costes, a fin de facilitar la categorización y el seguimiento de AWS los costes.

El etiquetado de asignación de costos solo realiza un seguimiento de los costos desde que las etiquetas se activan en la consola de Administración de costos y facturación. Solo Cuenta de AWS los propietarios, los propietarios de las cuentas de AWS Organizations administración y los usuarios con los permisos adecuados pueden acceder a la consola de Billing and Cost Management de una cuenta. Independientemente de si utiliza el etiquetado de asignación de costes, no hay cambios en el importe que se le factura. Independientemente de si usa etiquetas de asignación de costos, esto no afecta a la funcionalidad de los productos de software basados en AMI.

## Seguimiento de etiquetas de asignación de costos para una AMI en varias instancias
<a name="multi-instances-cost-allocation-tagging-marketplace"></a>

Cada instancia de Amazon EC2 lanzada para una suscripción a AWS Marketplace AMI tiene un elemento de línea de uso de AWS Marketplace software correspondiente en el informe de AWS costo y uso. Su AWS Marketplace uso siempre reflejará las etiquetas específicas aplicadas a la instancia de Amazon EC2 correspondiente. Esto le permite distinguir sus costos de AWS Marketplace uso en función de los diferentes valores de etiqueta que se asignaron, a nivel de instancia.

También puede resumir los costos de uso basados en etiquetas para igualar el cargo por uso del software de la AMI que se refleja en su factura con el informe Cost Explorer o con el informe de AWS costos y uso.

## Búsqueda de presupuestos con instancias etiquetadas con asignación de costo
<a name="cost-allocation-tag-script-marketplace"></a>

Si ya tiene presupuestos activos filtrados por etiquetas de asignación de costos en varias instancias de Amazon EC2 en la consola de Administración de costos y facturación, puede ser difícil encontrarlos todos. El siguiente script de Python devuelve una lista de presupuestos que contienen instancias de Amazon EC2 del AWS Marketplace en su actual Región de AWS.

Puede utilizar este script para tener en cuenta los posibles impactos en su presupuesto y de dónde podría rebasarse a partir de este cambio. Tenga en cuenta que el importe facturado no cambia, pero las asignaciones de costos se reflejan con mayor precisión, lo que puede afectar a los presupuestos.

```
#! /usr/bin/python

import boto3

session = boto3.Session()
b3account=boto3.client('sts').get_caller_identity()['Account']
print("using account {} in region {}".format(b3account,session.region_name))


def getBudgetFilters(filtertype):
    ''' 
    Returns budgets nested within the filter values [filter value][budeget name].
    The filtertype is the CostFilter Key such as Region, Service, TagKeyValue.
    '''    
    budget_client = session.client('budgets')
    budgets_paginator = budget_client.get_paginator('describe_budgets')
    budget_result = budgets_paginator.paginate(
        AccountId=b3account
    ).build_full_result()    
    returnval = {}
    if 'Budgets' in budget_result:
        for budget in budget_result['Budgets']:
            for cftype in budget['CostFilters']:
                if filtertype == cftype:                          
                    for cfval in budget['CostFilters'][cftype]:
                        if cfval in returnval:
                            if not budget['BudgetName'] in returnval[cfval]:
                                returnval[cfval].append(budget['BudgetName'])
                        else:
                            returnval[cfval] = [ budget['BudgetName'] ]
    return returnval

def getMarketplaceInstances():
    '''
    Get all the Amazon EC2 instances which originated with AWS Marketplace.        
    '''
    ec2_client = session.client('ec2')
    paginator = ec2_client.get_paginator('describe_instances')
    returnval = paginator.paginate(
        Filters=[{
            'Name': 'product-code.type',
            'Values': ['marketplace']
        }]
    ).build_full_result()
    return returnval


def getInstances():
    mp_instances = getMarketplaceInstances()
    budget_tags = getBudgetFilters("TagKeyValue")
    cost_instance_budgets = []
    for instance in [inst for resrv in mp_instances['Reservations'] for inst in resrv['Instances'] if 'Tags' in inst.keys()]:    
        for tag in instance['Tags']:                
            # combine the tag and value to get the budget filter string
            str_full = "user:{}${}".format(tag['Key'], tag['Value'])
            if str_full in budget_tags:
                for budget in budget_tags[str_full]:
                    if not budget in cost_instance_budgets:
                        cost_instance_budgets.append(budget)    
    print("\r\nBudgets containing tagged Marketplace EC2 instances:")
    print( '\r\n'.join([budgetname for budgetname in cost_instance_budgets]) )


if __name__ == "__main__":
    getInstances()
```

**Ejemplo de salida**

```
Using account 123456789012 in region us-east-2

Budgets containing tagged Marketplace EC2 instances:
EC2 simple
MP-test-2
```

## Temas relacionados
<a name="cost-allocation-tagging-related-topics"></a>

Para obtener más información, consulte los temas siguientes:
+ [Uso de etiquetas de asignación de costos](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html) en la *Guía del usuario de AWS Billing *. 
+ [Activación de las etiquetas de asignación de costos](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/activate-built-in-tags.html) en la *Guía del usuario de AWS Billing *. 
+ [Etiquetado de los recursos de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html) en la Guía del usuario de Amazon EC2.

# Uso de alias de AMI en AWS Marketplace
<a name="buyer-ami-aliases"></a>

Una Imagen de máquina de Amazon (AMI) se identifica con un `AMI ID`. Puede utilizar el `AMI ID` para indicar qué AMI desea utilizar al lanzar un producto. El `AMI ID` tiene el formato `ami-<identifier>`, por ejemplo, ami-123example456. Cada versión de cada producto de Región de AWS tiene un AMI diferente (y diferente `AMI ID`).

Cuando lanzas un producto desde AWS Marketplace, el `AMI ID` se rellena automáticamente. Disponer del `AMI ID` es útil si se desea automatizar el lanzamiento de productos desde el AWS Command Line Interface (AWS CLI) o mediante Amazon Elastic Compute Cloud (Amazon EC2). Puede encontrar el `AMI ID` cuando configura su software en el momento del lanzamiento. Para obtener más información, consulte [Paso 3: configurar el software](tutorial-buying-ami.md#step-3-configure-your-software). 

El `Ami Alias` también se encuentra en la misma ubicación que el `AMI ID`, al configurar el software. El `Ami Alias` es un identificador similar al `AMI ID`, pero es más fácil de usar en la automatización. Un `AMI alias` tiene el formulario `aws/service/marketplace/prod-<identifier>/<version>`, por ejemplo, ` aws/service/marketplace/prod-1234example5678/12.2`. Puede usar este identificador de `Ami Alias` en cualquier región y asignar AWS automáticamente a la región correcta `AMI ID`. 

Si desea utilizar la versión más reciente de un producto, utilice el término **latest** en lugar de la versión `AMI alias` para que AWS elija la versión más reciente del producto, por ejemplo, **aws/service/marketplace/prod-1234example5678/latest**.

**aviso**  
Al usar la **latest** opción, obtendrá la versión más reciente del software. Sin embargo, utilice esta función con precaución. Por ejemplo, si un producto tiene disponibles las versiones 1.x y 2.x, es posible que esté utilizando la 2.x. Sin embargo, la versión más reciente del producto podría ser una corrección de errores para la versión 1.x.

## Ejemplos de uso de alias de AMI
<a name="buyer-ami-alias-examples"></a>

Los alias de AMI son útiles en la automatización. Puede utilizarlos en las plantillas de AWS CLI o en CloudFormation.

En el siguiente ejemplo se muestra cómo lanzar una instancia con el AWS CLI.

```
aws ec2 run-instances
--image-id resolve:ssm:/aws/service/marketplace/prod-<identifier>/version-7.1
--instance-type m5.xlarge
--key-name MyKeyPair
```

El siguiente ejemplo muestra una plantilla de CloudFormation que acepta el alias de AMI como parámetro de entrada para crear una instancia.

```
AWSTemplateFormatVersion: 2010-09-09

Parameters:
    AmiAlias:
        Description: AMI alias
        Type: 'String'
        
Resources:
    MyEC2Instance:
        Type: AWS::EC2::Instance
        Properties:
            ImageId: !Sub "resolve:ssm:${AmiAlias}"
            InstanceType: "g4dn.xlarge"
            Tags:
                -Key: "Created from"
                 Value: !Ref AmiAlias
```