Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengkonfigurasi pengukuran khusus untuk produk kontainer dengan AWS Marketplace Metering Service
AWS Marketplace produk kontainer dapat memiliki pengukuran khusus hingga 24 dimensi harga yang berbeda per produk. Setiap dimensi dapat memiliki harga kontrak jangka panjang yang terkait dengannya. Untuk mengaktifkan pengukuran khusus, integrasikan produk container Anda dengan AWS Marketplace Metering Service. Anda dapat menentukan unit harga Anda sendiri dan pengukuran kustom untuk penggunaan tersebut AWS untuk penagihan menggunakan operasi MeterUsage
API. Bagian berikut menunjukkan cara mengonfigurasi pengukuran khusus untuk produk kontainer Anda.
Dimensi harga didefinisikan di dua lokasi, sekali saat membuat produk Anda di Portal Manajemen AWS Marketplace (portal penjual) dan sekali di perangkat lunak Anda untuk melakukan MeterUsage
operasi. Metode dua faktor ini memastikan bahwa penawaran berikutnya bekerja sebagaimana dimaksud sebelum dibuat tersedia untuk umum.
Untuk mengatur pengukuran khusus, Anda harus memilih kategori penggunaan, tipe unit, dan dimensi harga:
-
Kategori penggunaan— Kategori penggunaan membantu pembeli memahami produk Anda dan cara menggunakannya.
-
Tipe unit— Tipe unit mendefinisikan satuan ukuran untuk penagihan. Misalnya, bandwidth diukur dalam GBps atau MBps, jumlah host, atau data yang diukur dalam MB, GB, atau TB.
-
Dimensi harga — Dimensi harga mewakili fitur atau layanan yang Anda tetapkan harga per unit (misalnya, pengguna, pemindaian, vCPUs, atau agen yang digunakan). Dimensi harga bersifat publik. Namun, Anda masih dapat menentukan penawaran pribadi dan Bring Your Own License (BYOL) untuk produk publik. Jangan mengirim harga dalam catatan pengukuran. Anda mengukur jumlah unit, dan kami menggunakannya bersama dengan harga yang Anda tentukan saat membuat produk Anda untuk menghitung tagihan pembeli.
Jika harga produk Anda tidak sesuai dengan kategori atau tipe unit yang telah ditentukan sebelumnya, Anda dapat memilih kategori Unit generik. Kemudian, gunakan deskripsi dimensi untuk menggambarkan apa unitnya.
Opsional, Anda dapat mendistribusikan penggunaan ke alokasi oleh properti yang Anda melacak. Alokasi direpresentasikan sebagai tag kepada pembeli. Tag ini memungkinkan pembeli untuk melihat biaya mereka dibagi menjadi penggunaan berdasarkan nilai tag. Sebagai contoh, jika Anda mengisi oleh pengguna, dan pengguna memiliki properti “Departemen”, Anda dapat membuat alokasi penggunaan dengan tag yang memiliki kunci “Departemen”, dan satu alokasi per nilai. Ini tidak mengubah harga, dimensi, atau total penggunaan yang Anda laporkan, tetapi memungkinkan pelanggan Anda untuk melihat biaya mereka berdasarkan kategori yang sesuai dengan produk Anda.
Kami menyarankan Anda mengirim catatan pengukuran setiap jam. Namun, Anda dapat menggabungkan penggunaan selama periode harian atau bulanan juga. Jika Anda mengalami pemadaman, Anda dapat menggabungkan penggunaan perangkat lunak pembeli dan mengirimkannya dalam pengukuran jam berikutnya. Anda tidak dapat mengirim lebih dari satu catatan per jam.
Untuk informasi selengkapnya tentang mengintegrasikan AWS Marketplace Metering Service API untuk produk kontainer dengan harga pengukuran khusus, lihat lab Integrasikan dengan pengukuran khusus
penting
Percobaan gratis dan hak prabayar dilacak pada tingkat per jam. Akibatnya, mengirim catatan ini secara terpisah dapat menyebabkan pembeli menjadi kelebihan biaya.
Topik
Prasyarat pengukuran
Sebelum menerbitkan produk, Anda harus melakukan hal berikut:
-
Buat produk kontainer baru di Portal Manajemen AWS Marketplace, dan catat kode produknya.
-
Gunakan peran AWS Identity and Access Management (IAM) untuk tugas atau pod yang menjalankan aplikasi Anda dengan izin IAM yang diperlukan untuk memanggil.
MeterUsage
Kebijakan terkelolaAWSMarketplaceMeteringRegisterUsage
meliputi izin-izin ini. Untuk informasi selengkapnya tentang kebijakan, lihat AWSMarketplaceMeteringFullAccessdi Referensi Kebijakan AWS Terkelola. -
(Opsional) Kami menyarankan Anda mengaktifkan AWS CloudTrail logging dalam tugas atau definisi pod jika Anda ingin melihat logging.
-
Lakukan panggilan uji ke operasi
MeterUsage
API dengan catatan untuk semua dimensi harga yang Anda tetapkan.
MeterUsage
Integrasi pengujian
Gunakan MeterUsage
operasi untuk menguji integrasi Anda sebelum mengirimkan gambar Anda AWS Marketplace untuk dipublikasikan.
Panggilan MeterUsage
dari gambar kontainer dengan menjalankan produk Anda di Amazon Elastic Container Service (Amazon ECS) Service (Amazon ECS) atau Amazon Elastic Kubernetes Service (Amazon EKS Akun AWS ) dengan yang Anda gunakan untuk membuat daftar produk. AWS Marketplace Integrasi pengukuran Anda harus secara dinamis mengatur Wilayah AWS, bukan hard coding itu. Namun, saat menguji, luncurkan setidaknya satu tugas Amazon ECS atau pod Amazon EKS yang berisi kontainer berbayar Anda di Wilayah AS Timur (Virginia Utara) sehingga tim AWS Marketplace operasi dapat memverifikasi pekerjaan Anda dengan log di Wilayah tersebut.
catatan
-
Jika produk Anda mendukung Amazon ECS dan Amazon EKS, Anda hanya perlu meluncurkan di Amazon EKS bagi kami untuk memvalidasi integrasi Anda.
-
Uji setiap dimensi sebelum meluncurkan produk Anda ke publik dan setelah menambahkan dimensi baru. Jika Anda tidak mengirim catatan pengukuran untuk setiap dimensi yang terkait dengan produk kontainer, itu akan mengakibatkan kesalahan dengan permintaan yang gagal.
Anda tidak dapat sepenuhnya menguji integrasi sampai produk Anda dipublikasikan dengan semua metadata dan informasi harga yang diperlukan. Jika diminta, tim operasi AWS Marketplace katalog dapat memverifikasi penerimaan catatan pengukuran Anda.
Penanganan kesalahan untuk MeterUsage
Jika citra kontainer Anda terintegrasi denganMeterUsage
operasi dan menerima pengecualian selainThrottlingException
pada startup kontainer, Anda harus mengakhiri kontainer untuk mencegah penggunaan yang tidak sah.
Pengecualian selainThrottlingException
dilemparkan hanya pada panggilan awal untukMeterUsage
. Panggilan berikutnya dari tugas Amazon ECS yang sama atau Amazon EKS pod tidak membuangCustomerNotSubscribedException
bahkan jika pelanggan berhenti berlangganan sementara tugas atau pod masih berjalan. Pelanggan ini masih dikenakan biaya untuk menjalankan kontainer setelah mereka berhenti berlangganan dan penggunaannya dilacak.
Lihat MeterUsagedi Referensi AWS Marketplace Metering Service API untuk deskripsi rinci tentang kesalahan umum untukMeterUsage
. Setiap bahasa pemrograman AWS SDK memiliki seperangkat pedoman penanganan kesalahan yang dapat Anda rujuk untuk informasi tambahan.
Penandaan terukur vendor (Opsional)
Penandaan yang diukur vendor membantu Vendor Perangkat Lunak Independen (ISVs) memberi pembeli wawasan yang lebih terperinci tentang penggunaan perangkat lunak mereka dan dapat membantu mereka melakukan alokasi biaya.
Ada banyak cara untuk menandai penggunaan perangkat lunak pembeli. Salah satu caranya adalah dengan terlebih dahulu bertanya kepada pembeli Anda apa yang ingin mereka lihat dalam alokasi biaya mereka. Kemudian Anda dapat membagi penggunaan di seluruh properti yang Anda lacak untuk akun pembeli. Contoh properti termasukAccountId
,, Business Unit
Cost Centers
, dan metadata relevan lainnya untuk produk Anda. Properti ini diekspos ke pembeli sebagai tag. Dengan menggunakan tag, pembeli dapat melihat biayanya dibagi menjadi penggunaan berdasarkan nilai tag di Konsol AWS Penagihan (https://console.aws.amazon.com/costmanagement/
Dalam kasus penggunaan umum, pembeli berlangganan produk Anda dengan satu Akun AWS. Pembeli juga memiliki banyak pengguna yang terkait dengan langganan produk yang sama. Anda dapat membuat alokasi penggunaan dengan tag yang memiliki kunciAccountId
, dan kemudian mengalokasikan penggunaan untuk setiap pengguna. Dalam hal ini, pembeli dapat mengaktifkan AccountId
tag di konsol Billing and Cost Management mereka dan menganalisis penggunaan pengguna individu.
Pengalaman penjual
Penjual dapat menggabungkan catatan pengukuran untuk sumber daya dengan kumpulan tag yang sama alih-alih menggabungkan penggunaan untuk semua sumber daya. Misalnya, penjual dapat membuat catatan pengukuran yang mencakup ember yang berbeda dari. UsageAllocations
Setiap bucket mewakili UsageQuantity
satu set tag, seperti AccountId
danBusinessUnit
.
Dalam diagram berikut, Resource 1 memiliki satu set AccountId
dan BusinessUnit
tag yang unik, dan muncul di Rekaman Pengukuran sebagai entri tunggal.
Resource 2 dan Resource 3 keduanya memiliki AccountId
tag yang sama2222
,, dan BusinessUnit
tag yang sama,Operations
. Akibatnya, mereka digabungkan menjadi satu UsageAllocations
entri dalam Rekaman Pengukuran.

Penjual juga dapat menggabungkan sumber daya tanpa tag menjadi satu UsageAllocation
dengan jumlah penggunaan yang dialokasikan dan mengirimkannya sebagai salah satu entri di. UsageAllocations
Batasan meliputi:
-
Jumlah tag — 5
-
Ukuran
UsageAllocations
(kardinalitas) — 2.500
Validasi meliputi:
-
Karakter diperbolehkan untuk kunci tag dan nilai — a-zA-Z 0-9+ -= . _:\ /@
-
Tag maksimum di seluruh
UsageAllocation
daftar - 5 -
Dua tidak
UsageAllocations
dapat memiliki tag yang sama (yaitu, kombinasi yang sama dari kunci tag dan nilai). Jika itu masalahnya, mereka harus menggunakan hal yang samaUsageAllocation
. -
Jumlah
AllocatedUsageQuantity
UsageAllocation
harus sama denganUsageQuantity
, yang merupakan penggunaan agregat.
Pengalaman pembeli
Tabel berikut menunjukkan contoh pengalaman pembeli setelah pembeli mengaktifkan tag AccountId
dan BusinessUnit
vendor.
Dalam contoh ini, pembeli dapat melihat penggunaan yang dialokasikan dalam Laporan Penggunaan Biaya mereka. Tag yang diukur vendor menggunakan awalan. “aws:marketplace:isv”
Pembeli dapat mengaktifkannya di Billing and Cost Management, di bawah Tag Alokasi Biaya AWS, tag alokasi biaya yang dihasilkan.
Baris pertama dan terakhir dari Laporan Penggunaan Biaya relevan dengan apa yang dikirim Penjual ke Layanan Pengukuran (seperti yang ditunjukkan dalam Pengalaman penjual contoh).
ProductCode | Pembeli | UsageDimension | UsageQuantity | aws:marketplace:isv:AccountId |
aws:marketplace:isv:BusinessUnit |
---|---|---|---|---|---|
xyz | 111122223333 | Jaringan: per (GB) diperiksa | 70 | 2222 | Operasi |
xyz | 111122223333 | Jaringan: per (GB) diperiksa | 30 | 3333 | Keuangan |
xyz | 111122223333 | Jaringan: per (GB) diperiksa | 20 | 4444 | IA |
xyz | 111122223333 | Jaringan: per (GB) diperiksa | 20 | 5555 | Pemasaran |
xyz | 111122223333 | Jaringan: per (GB) diperiksa | 30 | 1111 | Pemasaran |
Untuk contoh kode, lihat MeterUsagecontoh kode dengan penandaan alokasi penggunaan (Opsional).
Contoh kode
Contoh kode berikut disediakan untuk membantu Anda mengintegrasikan produk kontainer Anda dengan yang AWS Marketplace APIs diperlukan untuk menerbitkan dan memelihara produk Anda.
MeterUsage
contoh kode dengan penandaan alokasi penggunaan (Opsional)
Contoh kode berikut relevan untuk produk kontainer dengan model harga konsumsi. Contoh Python mengirimkan catatan pengukuran dengan tag alokasi penggunaan yang sesuai untuk membebankan biaya AWS Marketplace kepada pelanggan Anda. pay-as-you-go
# NOTE: Your application will need to aggregate usage for the # customer for the hour and set the quantity as seen below. # AWS Marketplace can only accept records for up to an hour in the past. # # productCode is supplied after the AWS Marketplace Ops team has # published the product to limited # Import AWS Python SDK import boto3 import time usageRecord = [ { "AllocatedUsageQuantity": 2, "Tags": [ { "Key": "BusinessUnit", "Value": "IT" }, { "Key": "AccountId", "Value": "123456789" }, ] }, { "AllocatedUsageQuantity": 1, "Tags": [ { "Key": "BusinessUnit", "Value": "Finance" }, { "Key": "AccountId", "Value": "987654321" }, ] } ] marketplaceClient = boto3.client("meteringmarketplace") response = marketplaceClient.meter_usage( ProductCode="testProduct", Timestamp=int(time.time()), UsageDimension="Dimension1", UsageQuantity=3, DryRun=False, UsageAllocations=usageRecord )
Untuk informasi selengkapnyaMeterUsage
, lihat MeterUsagedi Referensi AWS Marketplace Metering Service API.
Contoh tanggapan
{ "MeteringRecordId": "string" }