Ringkasan
Langkah ini menjelaskan cara membuat akun layanan Google Cloud yang diperlukan agar Apigee Hybrid dapat beroperasi, dan menetapkan peran IAM yang sesuai untuk akun tersebut.
Prosedur ini menggunakan dua variabel lingkungan berikut yang ditentukan dalam Langkah 2: Download diagram Helm Apigee. Variabel ini bersifat opsional. Jika Anda tidak menentukannya, ganti jalur direktori yang sesuai untuk setiap variabel dalam contoh kode.
$APIGEE_HELM_CHARTS_HOME
: Direktori tempat Anda mendownload diagram Helm Apigee, yang didefinisikan pada Langkah 2: Download diagram Helm Apigee.$PROJECT_ID
: Project ID Google Cloud Anda, yang didefinisikan di Bagian 1: Penyiapan Project dan Org--Langkah 1: Aktifkan API.
Lingkungan produksi vs. non-produksi
Panduan ini mengacu ke penginstalan Produksi ("Prod") dan Non-produksi ("Non-produksi"). Penginstalan produksi disesuaikan untuk mendapatkan kapasitas penggunaan, penyimpanan, dan skalabilitas yang lebih besar. Instalasi non-produksi menggunakan lebih sedikit resource serta terutama untuk tujuan pembelajaran dan demonstrasi.
Saat membuat dan mengonfigurasi akun layanan untuk Apigee Hybrid, Anda harus mengetahui jenis penginstalan yang ditargetkan.
Untuk penginstalan produksi, sebaiknya buat akun layanan terpisah untuk setiap komponen hybrid Apigee. Misalnya, runtime, mart, metrik, udca, dan sebagainya, masing-masing akan mendapatkan akun layanannya sendiri.
Untuk penginstalan non-produksi, Anda dapat membuat satu akun layanan yang berlaku untuk semua komponen.
Untuk mempelajari lebih lanjut akun layanan yang digunakan oleh Apigee serta peran yang ditetapkan untuknya, lihat Akun layanan dan peran yang digunakan oleh komponen hybrid.
Workload Identity di GKE
Untuk penginstalan Apigee hybrid di GKE, Google Cloud menawarkan opsi yang disebut workload identity untuk mengautentikasi komponen runtime hybrid. Opsi ini tidak menggunakan file sertifikat yang didownload untuk mengautentikasi akun layanan. Sebaliknya, opsi ini mengaitkan akun layanan Google Cloud yang Anda buat pada langkah ini dengan akun layanan Kubernetes di cluster Kubernetes.
Workload Identity hanya tersedia di penginstalan GKE.
Membuat akun layanan
Apigee Hybrid menggunakan akun layanan berikut:
Produksi
Akun layanan | Peran IAM | Diagram Helm Apigee |
---|---|---|
apigee-cassandra |
Storage Object Admin | apigee-datastore |
apigee-logger |
Logs Writer | apigee-telemetry |
apigee-mart |
Apigee Connect Agent | apigee-org |
apigee-metrics |
Monitoring Metric Writer | apigee-telemetry |
apigee-runtime |
Peran tidak diperlukan | apigee-env |
apigee-synchronizer |
Apigee Synchronizer Manager | apigee-env |
apigee-udca |
Apigee Analytics Agent | apigee-org |
apigee-watcher |
Apigee Runtime Agent | apigee-org |
Non-produksi
Akun layanan | Peran IAM | Diagram Helm Apigee |
---|---|---|
apigee-non-prod |
Admin Objek Penyimpanan Penulis Log Agen Apigee Connect Penulis Metrik Pemantauan Pengelola Sinkronisasi Apigee Agen Analisis Apigee Agen Runtime Apigee |
apigee-datastore apigee-telemetry apigee-org apigee-env |
Apigee menyediakan alat,
create-service-account
, dalam direktori apigee-operator/etc/tools
:
$APIGEE_HELM_CHARTS_HOME/ └── apigee-operator/ └── etc/ └── tools/ └── create-service-account
Alat ini membuat akun layanan, menetapkan peran IAM ke setiap akun, dan mendownload file sertifikat dalam format JSON untuk setiap akun.
Karena Helm tidak mendukung file referensi di luar direktori diagram, Anda akan membuat setiap file sertifikat akun layanan dalam direktori diagram untuk komponen hybrid yang sesuai.
Untuk langkah berikutnya, pilih apakah Anda mengonfigurasi penginstalan Produksi atau Non-produksi.
Produksi
- Pastikan variabel lingkungan
PROJECT_ID
ditentukan.echo $PROJECT_ID
create-service-account tool uses the value of the
. Jika tidak ditentukan, tentukan dengan ID Project ID Google Cloud Anda atau tambahkan flagPROJECT_ID
environment variable--project-id my_project_id
ke perintahcreate-service-account
. -
Buat akun layanan dengan perintah berikut, dengan
$APIGEE_HELM_CHARTS_HOME
adalah jalur tempat Anda mendownload diagram Helm Apigee. Anda mungkin akan diminta untuk membuat setiap akun layanan. Berikan respons dengany
.$APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account \ --profile apigee-cassandra \ --env prod \ --dir $APIGEE_HELM_CHARTS_HOME/apigee-datastore
$APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account \ --profile apigee-logger \ --env prod \ --dir $APIGEE_HELM_CHARTS_HOME/apigee-telemetry
$APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account \ --profile apigee-mart \ --env prod \ --dir $APIGEE_HELM_CHARTS_HOME/apigee-org
$APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account \ --profile apigee-metrics \ --env prod \ --dir $APIGEE_HELM_CHARTS_HOME/apigee-telemetry
$APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account \ --profile apigee-runtime \ --env prod \ --dir $APIGEE_HELM_CHARTS_HOME/apigee-env
$APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account \ --profile apigee-synchronizer \ --env prod \ --dir $APIGEE_HELM_CHARTS_HOME/apigee-env
$APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account \ --profile apigee-udca \ --env prod \ --dir $APIGEE_HELM_CHARTS_HOME/apigee-org
$APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account \ --profile apigee-watcher \ --env prod \ --dir $APIGEE_HELM_CHARTS_HOME/apigee-org
- Pastikan file akun layanan telah dibuat di direktori yang benar dengan memeriksa
konten di setiap direktori diagram. Output Anda akan terlihat seperti ini:
ls ./apigee-datastore
Chart.yaml my_project_id-apigee-cassandra.json templates values.yamlls ./apigee-telemetry
Chart.yaml my_project_id-apigee-logger.json my_project_id-apigee-metrics.json templates values.yamlls ./apigee-org
Chart.yaml my_project_id-apigee-udca.json templates my_project_id-apigee-mart.json my_project_id-apigee-watcher.json values.yamlls ./apigee-env
Chart.yaml my_project_id-apigee-runtime.json my_project_id-apigee-synchronizer.json templates values.yaml
Non-produksi
- Pastikan variabel lingkungan
PROJECT_ID
ditentukan.echo $PROJECT_ID
create-service-account tool uses the value of the
. Jika tidak ditentukan, tentukan dengan ID Project ID Google Cloud Anda atau tambahkan flagPROJECT_ID
environment variable--project-id my_project_id
ke perintahcreate-service-account
. -
Buat akun layanan dengan perintah berikut, dengan
$APIGEE_HELM_CHARTS_HOME
adalah jalur tempat Anda mendownload diagram Helm Apigee. Anda mungkin akan diminta untuk membuat setiap akun layanan. Berikan respons dengany
.$APIGEE_HELM_CHARTS_HOME/apigee-operator/etc/tools/create-service-account \ --env non-prod \ --dir $APIGEE_HELM_CHARTS_HOME/apigee-datastore
- Verifikasi nama file akun layanan yang dibuat di direktori
apigee-datastore
:ls $APIGEE_HELM_CHARTS_HOME/apigee-datastore
Chart.yaml my_project_id-apigee-non-prod.json templates values.yaml
- Salin file akun layanan tersebut ke direktori diagram lain yang perlu merujuk ke file tersebut:
cp $APIGEE_HELM_CHARTS_HOME/apigee-datastore/SA_FILE_NAME.json $APIGEE_HELM_CHARTS_HOME/apigee-telemetry/
cp $APIGEE_HELM_CHARTS_HOME/apigee-datastore/SA_FILE_NAME.json $APIGEE_HELM_CHARTS_HOME/apigee-org/
cp $APIGEE_HELM_CHARTS_HOME/apigee-datastore/SA_FILE_NAME.json $APIGEE_HELM_CHARTS_HOME/apigee-env/
Untuk informasi selengkapnya tentang akun layanan dan alat create-service-account
, lihat:
Anda sekarang telah membuat akun layanan dan menetapkan peran yang diperlukan oleh komponen hybrid Apigee. Selanjutnya, buat sertifikat TLS yang diperlukan oleh gateway masuk hybrid.