Setelah mengonfigurasi file .proto
dan file konfigurasi gRPC API, Anda men-deploynya agar Cloud Endpoints memiliki informasi yang diperlukan untuk mengelola API Anda. Untuk
men-deploy konfigurasi Endpoint, Anda menggunakan perintah gcloud
endpoints services deploy
. Perintah ini menggunakan Infrastruktur Layanan, platform layanan dasar Google, yang digunakan oleh Endpoint dan layanan lainnya untuk membuat dan mengelola API dan layanan. Halaman ini menjelaskan cara men-deploy file konfigurasi ke Endpoints.
Prasyarat
Sebagai titik awal, halaman ini mengasumsikan bahwa Anda telah:
Membuat project Google Cloud tempat Anda memiliki peran Editor atau Pemilik. Setelah deployment awal, Anda dapat memberikan peran Service Config Editor yang lebih ketat. Lihat Memberikan dan membatalkan akses ke API untuk mengetahui informasi selengkapnya.
Endpoint yang Dikonfigurasi, yang mencakup:
Jika 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 tersebut.
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
- Make sure you are in the directory where the
api_descriptor.pb
andapi_config.yaml
files are located. - Confirm that the default project that the
gcloud
command-line tool is currently using is the Google Cloud project that you want to deploy the Endpoints configuration to. Validate the project ID returned from the following command to make sure that the service doesn't get created in the wrong project.gcloud config list project
If you need to change the default project, run the following command:
gcloud config set project YOUR_PROJECT_ID
- Deploy the
proto descriptor
file and the configuration file by using the Google Cloud CLI:gcloud endpoints services deploy api_descriptor.pb api_config.yaml
As it is creating and configuring the service, Service Management outputs information to the terminal. When the deployment completes, a message similar to the following is displayed:
Service Configuration [CONFIG_ID] uploaded for service [bookstore.endpoints.example-project.cloud.goog]
CONFIG_ID is the unique Endpoints service configuration ID created by the deployment. For example:
Service Configuration [2017-02-13r0] uploaded for service [bookstore.endpoints.example-project.cloud.goog]
In the previous example,
2017-02-13r0
is the service configuration ID andbookstore.endpoints.example-project.cloud.goog
is the service name. The service configuration ID consists of a date stamp followed by a revision number. If you deploy the Endpoints configuration again on the same day, the revision number is incremented in the service configuration ID.
Jika konfigurasi layanan Anda berada dalam beberapa file YAML, Anda dapat meneruskan semuanya
ke perintah deploy
. Misalnya, Toko Buku memiliki konfigurasi dasarnya
di api_config.yaml
, tetapi Anda dapat mengaktifkan transcoding 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 ditentukan terakhir akan menggantikan nilai lainnya. Anda dapat mengetahui lebih lanjut cara Endpoints menangani penggabungan beberapa file YAML di Mengonfigurasi layanan gRPC.
Jika Anda mendapatkan pesan error, lihat Memecahkan masalah deployment konfigurasi Endpoint untuk mengetahui informasi tentang pemecahan masalah error.
Men-deploy ulang
Setiap kali Anda mengubah sesuatu dalam file YAML konfigurasi layanan atau .proto
, deploy file lagi sehingga Extensible Service Proxy (ESP) memiliki konfigurasi layanan API Anda versi terbaru. Jika sebelumnya Anda telah 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