Setelah mengonfigurasi file .proto dan file konfigurasi gRPC API, Anda men-deploy-nya sehingga Cloud Endpoints memiliki informasi yang diperlukan untuk mengelola API Anda. Untuk men-deploy konfigurasi Endpoints, Anda menggunakan perintah gcloud
endpoints services deploy. Perintah ini menggunakan
Service Infrastructure, platform layanan dasar Google, yang digunakan oleh Endpoints dan layanan lainnya untuk membuat dan mengelola API serta layanan. Halaman ini menjelaskan cara men-deploy file konfigurasi ke Endpoints.
Prasyarat
Sebagai titik awal, halaman ini mengasumsikan bahwa Anda telah:
Membuat Google Cloud project tempat Anda memiliki peran Editor atau Pemilik. Setelah deployment awal, Anda dapat memberikan peran Service Config Editor yang lebih ketat. Lihat Memberikan dan mencabut akses ke API untuk mengetahui informasi selengkapnya.
Endpoint yang Dikonfigurasi, yang mencakup:
Jika Anda menggunakan nama domain kustom (seperti,
example.com), Anda harus memverifikasi nama domain sebelum dapat men-deploy file konfigurasi gRPC.
Menyiapkan Google Cloud CLI untuk deployment
Anda menggunakan alat command line gcloud untuk men-deploy konfigurasi. Lihat
Referensi gcloud untuk mengetahui informasi selengkapnya tentang perintah.
Untuk mempersiapkan deployment:
- Menginstal dan melakukan inisialisasi gcloud CLI.
- Update gcloud CLI:
gcloud components update
- Pastikan gcloud CLI diberi otorisasi untuk mengakses data dan layanan Anda:
gcloud auth login
Tab browser baru akan terbuka dan Anda akan diminta untuk memilih akun.
- Tetapkan project default. Ganti
[YOUR-PROJECT-ID]dengan project ID GCP Andagcloud config set project [YOUR-PROJECT-ID]
- Jika Anda akan men-deploy backend API ke Kubernetes atau Kubernetes Engine, jalankan perintah berikut untuk mendapatkan kredensial pengguna baru yang akan digunakan untuk Kredensial Default Aplikasi. Kredensial pengguna diperlukan untuk memberikan otorisasi
kubectl. Tab browser baru akan terbuka dan Anda akan diminta untuk memilih akun.gcloud auth application-default login
Men-deploy file konfigurasi
- Pastikan Anda berada di direktori tempat file
api_descriptor.pbdanapi_config.yamlberada. - Pastikan project default yang saat ini digunakan oleh alat command line
gcloudadalah project Google Cloud yang ingin Anda gunakan untuk men-deploy konfigurasi Endpoints. Validasi project ID yang ditampilkan dari perintah berikut untuk memastikan bahwa layanan tidak dibuat di project yang salah.gcloud config list project
Jika Anda perlu mengubah project default, jalankan perintah berikut:
gcloud config set project YOUR_PROJECT_ID
- Deploy file
proto descriptordan file konfigurasi menggunakan Google Cloud CLI:gcloud endpoints services deploy api_descriptor.pb api_config.yaml
Saat membuat dan mengonfigurasi layanan, Service Management akan menampilkan informasi ke terminal. Setelah deployment selesai, pesan yang mirip dengan berikut akan ditampilkan:
Service Configuration [CONFIG_ID] uploaded for service [bookstore.endpoints.example-project.cloud.goog]
CONFIG_ID adalah ID konfigurasi layanan Endpoints unik yang dibuat oleh deployment. Contoh:
Service Configuration [2017-02-13r0] uploaded for service [bookstore.endpoints.example-project.cloud.goog]
Dalam contoh sebelumnya,
2017-02-13r0adalah ID konfigurasi layanan danbookstore.endpoints.example-project.cloud.googadalah nama layanan. ID konfigurasi layanan terdiri dari stempel tanggal yang diikuti dengan nomor revisi. Jika Anda men-deploy konfigurasi Endpoints lagi pada hari yang sama, nomor revisi akan bertambah dalam ID konfigurasi layanan.
Jika konfigurasi layanan Anda ada di beberapa file YAML, Anda dapat meneruskannya semua
ke perintah deploy. Misalnya, Bookstore memiliki konfigurasi dasarnya
di api_config.yaml, tetapi Anda dapat mengaktifkan transkode HTTP untuk layanan dengan
juga men-deploy api_config_http.yaml, yang memiliki konfigurasi tambahan untuk
fitur ini:
gcloud endpoints services deploy api_descriptor.pb api_config.yaml api_config_http.yaml
Perhatikan bahwa jika ada nilai yang bertentangan dalam file YAML, nilai dalam file yang terakhir ditentukan akan menggantikan nilai lainnya. Anda dapat mengetahui lebih lanjut cara Endpoints menangani penggabungan beberapa file YAML di Mengonfigurasi layanan gRPC.
Jika Anda menerima pesan error, lihat Memecahkan masalah deployment konfigurasi Endpoints untuk mengetahui informasi tentang cara memecahkan masalah error tersebut.
Men-deploy ulang
Setiap kali Anda mengubah sesuatu dalam file YAML konfigurasi layanan atau .proto, deploy ulang file agar Extensible Service Proxy (ESP) memiliki konfigurasi layanan API Anda versi terbaru. Jika sebelumnya Anda men-deploy ESP dengan opsi rollout disetel ke
managed,
Anda tidak perlu memulai ulang atau men-deploy ulang ESP. Opsi rollout=managed
mengonfigurasi ESP untuk menggunakan konfigurasi layanan terbaru yang di-deploy. Saat Anda
menentukan opsi ini, hingga 5 menit setelah Anda men-deploy konfigurasi layanan baru, ESP akan mendeteksi perubahan dan otomatis mulai menggunakannya. Sebaiknya tentukan opsi ini, bukan ID konfigurasi tertentu yang akan digunakan ESP.
Setelah deployment konfigurasi Endpoints awal, Anda dapat memberikan peran kepada pengguna, akun layanan, atau grup yang memungkinkan mereka men-deploy ulang konfigurasi Endpoints. Lihat Memberikan dan mencabut akses ke API untuk mengetahui informasi selengkapnya.
Langkah berikutnya
- Men-deploy backend API
- Menjalankan ESP secara Lokal atau di platform lain
- Mendapatkan nama layanan dan ID konfigurasi