Configurando a medição horária com o AWS Marketplace Metering Service - AWS Marketplace

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Configurando a medição horária com o AWS Marketplace Metering Service

Se o produto de contêiner usar a definição de preço por tarefa ou pod por hora em vez de dimensões personalizadas de definição de preço por medição, você não precisará definir dimensões de medição personalizadas. Você pode usar o AWS Marketplace Metering Service para medir por hora com produtos em contêineres. AWS Marketplace As seções a seguir mostram como configurar a medição horária com o AWS Marketplace Metering Service.

A RegisterUsage API operação mede o uso do software por tarefa do Amazon Elastic Container Service (AmazonECS) ou por pod do Amazon Elastic Kubernetes Service (EKSAmazon), por hora, com o uso proporcional ao segundo. Pelo menos 1 minuto de uso se aplica a tarefas ou pods que tenham curta duração. A medição contínua para uso do software é feita automaticamente pelo AWS Marketplace Metering Control Plane. Seu software não precisa realizar nenhuma ação específica de medição, exceto chamar RegisterUsage uma vez para que a medição do uso do software comece.

RegisterUsage deve ser chamado imediatamente no momento de execução de um contêiner. Se você não registrar o contêiner nas primeiras 6 horas após o lançamento do contêiner, o AWS Marketplace Metering Service não fornecerá nenhuma garantia de medição dos meses anteriores. No entanto, a medição continuará durante o mês atual até que o contêiner termine.

O AWS Marketplace Metering Control Plane continua cobrando dos clientes pela execução de ECS tarefas e EKS pods da Amazon, independentemente do estado da assinatura do cliente. Isso elimina a necessidade de o software realizar verificações de direitos após a execução inicial bem-sucedida da tarefa ou do pod.

Pré-requisitos de medição por hora

Antes de publicar o produto, você deve fazer o seguinte:

  1. Crie um novo produto de contêiner no Portal de gerenciamento do AWS Marketplace e anote o código do produto.

    Para obter mais informações, consulte Visão geral: Crie um produto em contêiner.

  2. Use uma função AWS Identity and Access Management (IAM) para a tarefa ou o pod que executa seu aplicativo com as IAM permissões necessárias para chamarRegisterUsage. A política IAM gerenciada AWSMarketplaceMeteringRegisterUsage tem essas permissões.

  3. (Opcional) Se você quiser ver o registro, recomendamos que você habilite o AWS CloudTrail login na definição de tarefa ou pod.

  4. Faça uma chamada de teste para a RegisterUsage API operação com um registro de todas as dimensões de preço que você definir.

Formulário de carregamento do produto para medição por hora

Ao preencher o formulário de carregamento do produto para medição por hora, preencha os campos a seguir para o produto, além dos outros campos obrigatórios e opcionais que definem o produto:

  • Preço por hora: o preço do produto, por hora.

  • Taxa de longo prazo da dimensão: o preço total do software em relação a um contrato de longo prazo quando os compradores pagam antecipadamente.

  • Duração de longo prazo (dias): a duração, em dias, do contrato de longo prazo.

Testar a integração e o modo de visualização do RegisterUsage

Use a RegisterUsage API operação para testar sua integração antes de enviar sua imagem AWS Marketplace para publicação.

O modo de visualização funciona de forma idêntica ao modo de produção, exceto que o modo de visualização não verifica a autorização para usar o produto. Para ligar RegisterUsage no modo de pré-visualização, ligue a RegisterUsage partir da imagem do contêiner executando seu produto na Amazon ECS ou na AmazonEKS. Use o Conta da AWS que você está usando para listar o produto AWS Marketplace. Sua integração de medição deve configurá-la dinamicamente Região da AWS, em vez de codificá-la. No entanto, ao testar, inicie pelo menos uma ECS tarefa da Amazon ou um EKS pod da Amazon contendo seu contêiner pago na região Leste dos EUA (Norte da Virgínia). Ao fazer isso, a equipe de AWS Marketplace operações pode verificar seu trabalho com os registros dessa região.

nota

Se seu produto é compatível com a Amazon ECS e a AmazonEKS, você só precisa lançá-lo na Amazon EKS para que possamos validar sua integração.

Não é possível testar totalmente a integração até o produto ser publicado com todos os metadados e informações de definição de preço necessários. Se solicitado, a equipe de operações do AWS Marketplace catálogo pode verificar o recebimento de seus registros de medição no modo de visualização.

Tratar erros no RegisterUsage

Se a imagem do contêiner se integrar ao AWS Marketplace Metering Service e receber uma exceção que não seja ThrottlingException na inicialização do contêiner, você deverá encerrar o contêiner para evitar o uso não autorizado.

Exceções diferentes ThrottlingException são lançadas somente na chamada inicial para a RegisterUsage API operação. As chamadas subsequentes da mesma ECS tarefa da Amazon ou do mesmo EKS pod da Amazon não são realizadas, CustomerNotSubscribedException mesmo que o cliente cancele a assinatura enquanto a tarefa ou o pod ainda estão em execução. Esses clientes ainda são cobrados pela execução de contêineres depois de cancelarem a assinatura e seu uso for rastreado.

A tabela a seguir descreve os erros que a RegisterUsage API operação pode gerar. Cada linguagem de AWS SDK programação tem um conjunto de diretrizes de tratamento de erros que você pode consultar para obter informações adicionais.

Erro Descrição
InternalServiceErrorException RegisterUsage não está disponível.
CustomerNotEntitledException O cliente não tem uma assinatura válida para o produto.
InvalidProductCodeException O valor ProductCode passado como parte da solicitação não existe.
InvalidPublicKeyException O valor PublicKeyVersion passado como parte da solicitação não existe.
PlatformNotSupportedException AWS Marketplace não suporta o uso de medição da plataforma subjacente. Somente a AmazonECS, a Amazon EKS e a AWS Fargate são suportadas.
ThrottlingException As chamadas para RegisterUsage são limitadas.
InvalidRegionException RegisterUsagedeve ser chamado da mesma forma em Região da AWS que a ECS tarefa da Amazon ou o EKS pod da Amazon foi lançado. Isso evita que um contêiner escolha uma região (por exemplo, withRegion(“us-east-1”)) ao chamar RegisterUsage.