Etiquetado de asignación de costes en productos de AMI - AWS Marketplace

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.

Etiquetado de asignación de costes en productos de AMI

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 Etiquetado de asignación de costos.

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

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

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 AWS 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

Para obtener más información, consulte los temas siguientes: