Lingkungan air-gapped Google Distributed Cloud (GDC) memerlukan akun penagihan untuk melacak biaya project dan organisasi. Jika Anda tidak menautkan akun penagihan ke organisasi atau project, Anda akan kehilangan data biaya yang terkait dengan resource.
Untuk menagih penggunaan layanan kepada pelanggan, semua akun penagihan dalam organisasi menggunakan satu lembar harga.
Sebelum memulai
Minta Admin IAM Organisasi Anda untuk memberi Anda peran yang diperlukan berikut. Peran ini terikat ke namespace project untuk penagihan tingkat project, atau namespace platform untuk penagihan tingkat organisasi:
Administrator Akun Penagihan Organisasi: membuat, mengelola, dan mengikat resource
BillingAccount
. Minta admin IAM Organisasi Anda untuk memberi Anda peranorganization-billing-account-admin
.Pengguna Akun Penagihan Organisasi: membaca, mencantumkan, dan mengikat resource
BillingAccount
. Minta admin IAM Organisasi Anda untuk memberi Anda peranorganization-billing-account-user
.Pengelola Akun Penagihan Organisasi: membaca, mencantumkan, membuat, dan memperbarui resource
BillingAccountBinding
. Minta admin IAM Organisasi Anda untuk memberi Anda peranorganization-billing-manager
.
Dapatkan file kubeconfig
Untuk menjalankan perintah terhadap server Management API, pastikan Anda memiliki resource berikut:
Login dan buat file kubeconfig untuk server Management API jika Anda belum memilikinya.
Gunakan jalur ke file kubeconfig server Management API untuk menggantikan
MANAGEMENT_API_SERVER_KUBECONFIG
dalam petunjuk ini.
Buat akun penagihan baru
Akun penagihan diidentifikasi secara unik oleh name
dan namespace
-nya. Untuk membuat akun penagihan, gunakan resource kustom untuk membuat name
dan namespace
:
Buat file YAML, lalu tambahkan resource kustom
BillingAccount
dan konten berikut:apiVersion: billing.gdc.goog/v1 kind: BillingAccount metadata: namespace: platform name: BIL_ACCOUNT_NAME spec: displayName: BIL_DISPLAY_NAME paymentSystemConfig: cloudBillingConfig: accountID: "012345-6789AB-CDEF01"
Ganti variabel berikut:
- BIL_ACCOUNT_NAME: nama akun penagihan.
Contoh,
test-billing-account
. - BIL_DISPLAY_NAME: nama tampilan akun penagihan.
Contoh,
"Test Billing Account"
.
- BIL_ACCOUNT_NAME: nama akun penagihan.
Contoh,
Verifikasi jenis konfigurasi pembayaran Anda. Akun penagihan Distributed Cloud harus memiliki salah satu konfigurasi pembayaran berikut:
cloudBillingConfig
: konfigurasi pembayaran default. Konfigurasi ini menyimpan ID akun Penagihan Cloud.customConfig
: konfigurasi kustom bagi partner untuk menyimpan konfigurasi pembayaran mereka guna menagih organisasi.customConfig
mendukung kamus string key-value, dengan kunci wajibpayment-config-type
.
Contoh berikut menunjukkan cuplikan file YAML
BillingAccount
untuk berbagai konfigurasi pembayaran:cloudBillingConfig
spec: paymentSystemConfig: cloudBillingConfig: accountID: CLOUD_BILLING_ACCOUNT_ID
Ganti
CLOUD_BILLING_ACCOUNT_ID
dengan Google Cloud ID akun penagihan Anda.customConfig
spec: paymentSystemConfig: customConfig: "payment-config-type": PAYMENT_CONFIG_TYPE
Ganti
PAYMENT_CONFIG_TYPE
dengan jenis konfigurasi pembayaran yang Anda pilih untuk konfigurasi penagihan kustom.Jika Anda tidak memiliki informasi untuk konfigurasi
customConfig
organisasi Anda, masukkan detail berikut:spec: paymentSystemConfig: customConfig: "payment-config-type": "N/A"
File YAML berikut menampilkan resource
BillingAccount
lengkap dengan konfigurasicloudBillingConfig
:apiVersion: billing.gdc.goog/v1 kind: BillingAccount metadata: namespace: platform name: test-billing-account spec: displayName: "Test Billing Account" paymentSystemConfig: cloudBillingConfig: accountID: "012345-6789AB-CDEF01"
Simpan file YAML. Jalankan
kubectl
CLI untuk menerapkan resource di server Management API untuk organisasi atau project tertentu yang ingin Anda tagih:kubectl --kubeconfig MANAGEMENT_API_SERVER_KUBECONFIG apply -f billingaccount.yaml
Ganti
MANAGEMENT_API_SERVER_KUBECONFIG
dengan file kubeconfig server Management API.
Menautkan organisasi atau project ke akun penagihan
Bagian ini memberikan serangkaian langkah untuk menautkan organisasi atau project ke
BillingAccount
.
Tautkan project
Untuk menautkan project ke BillingAccount
, lakukan hal berikut:
Tambahkan konten berikut ke file:
billingaccountbinding.yaml
:- Di bagian
billingAccountRef
, isi kolomname
dengan konten dari kolomname
diBillingAccount
yang ingin Anda tautkan. - Di bagian
metadata
, isi kolomnamespace
dengan konten dari kolom yang identik di resourceBillingAccount
.
Dalam contoh ini, namespace project adalah PROJECT_NAME:
apiVersion: billing.gdc.goog/v1 kind: BillingAccountBinding metadata: name: billing namespace: PROJECT_NAME spec: billingAccountRef: name: BIL_ACCOUNT_NAME namespace: platform
Ganti
PROJECT_NAME
dengan nama project yang terikat ke akun penagihan.- Di bagian
Jalankan perintah
kubectl
berikut untuk menerapkan filebillingaccountbinding.yaml
:kubectl --kubeconfig MANAGEMENT_API_SERVER_KUBECONFIG apply -f billingaccountbinding.yaml
Menautkan organisasi
Untuk menautkan organisasi ke BillingAccount
, lakukan langkah-langkah berikut:
Tambahkan konten berikut ke file YAML
billingaccountbinding.yaml
:- Di bagian
billingAccountRef
, isi kolomname
dengan konten dari kolomname
diBillingAccount
yang ingin Anda tautkan. - Di bagian
metadata
, isi kolomnamespace
dengan konten dari kolom yang identik di resourceBillingAccount
. Dalam contoh ini, namespace organisasi adalahplatform
:
apiVersion: billing.gdc.goog/v1 kind: BillingAccountBinding metadata: name: billing namespace: platform spec: billingAccountRef: name: BIL_ACCOUNT_NAME namespace: platform
- Di bagian
Jalankan perintah
kubectl
berikut untuk menerapkan filebillingaccountbinding.yaml
:kubectl --kubeconfig MANAGEMENT_API_SERVER_KUBECONFIG apply -f billingaccountbinding.yaml
Membatalkan tautan akun penagihan dari organisasi atau project
Di Distributed Cloud, Anda tidak dapat menghapus akun penagihan. Jika Anda memerlukan
perubahan pada konfigurasi penagihan, Anda harus membatalkan tautan organisasi atau project
dari akun penagihan yang ada dengan mengubah BillingAccountBinding
. Beberapa skenario untuk kasus penggunaan ini mencakup contoh berikut:
- Aturan akuntansi dalam perusahaan Anda meminta agar Anda membagi biaya yang terkait dengan workload tingkat developer dan produksi ke dalam akun terpisah.
- Anda membuat akun penagihan untuk menagih kontrak pelanggan selama jangka waktu satu tahun. Saat kontrak berakhir, Anda harus menagih untuk sisa periode yang melebihi satu tahun.
Untuk membatalkan tautan akun penagihan dari organisasi atau project, lakukan hal berikut:
Buat
BillingAccount
baru untuk ditautkan ke project. Akun ini akan menggantikan akun lama.Temukan file YAML resource
BillingAccountBinding
di project atau namespaceplatform
, lalu ubah kolom berikut:- Di bagian
billingAccountRef
, isi kolomname
dengan namaBillingAccount
baru.
- Di bagian
Contoh berikut menunjukkan file YAML BillingAccountBinding
dengan akun
expired-billing-account
yang ditautkan ke project project-one
:
apiVersion: billing.gdc.goog/v1
kind: BillingAccountBinding
metadata:
# The name of a BillingAccountBinding will typically always be `billing`.
name: billing
# This is the project.
namespace: project-one
spec:
billingAccountRef:
# This is an example of a BillingAccount that has expired.
name: expired-billing-account
namespace: platform
Contoh berikut menunjukkan file YAML BillingAccountBinding
dari contoh sebelumnya yang diubah untuk menautkan akun baru bernama new billing account
:
apiVersion: billing.gdc.goog/v1
kind: BillingAccountBinding
metadata:
name: billing
# This is the project.
namespace: project-one
spec:
billingAccountRef:
# This is the example of the new BillingAccount.
name: new-billing-account
namespace: platform