Setelah mengonfigurasi Cloud Endpoints dalam dokumen
OpenAPI, Anda men-deploy-nya sehingga
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 dokumen OpenAPI ke Endpoint.
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 kepada pengguna, grup, atau akun layanan. Lihat Memberikan dan mencabut akses ke API untuk mengetahui informasi selengkapnya.
Jika menggunakan nama domain kustom (seperti
my-api.example.com
), Anda harus memverifikasi nama domain sebelum dapat men-deploy dokumen OpenAPI.
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
Memvalidasi sintaksis openapi.json
File dokumen OpenAPI dapat dalam format YAML atau format JSON. Jika dalam format JSON, sebaiknya Anda memverifikasi sintaksis sebelum men-deploy file. Untuk
memeriksa apakah openapi.json
adalah file JSON yang diformat dengan baik, Anda dapat membukanya di
editor teks yang memvalidasi JSON seperti vim
, menggunakan layanan lint JSON
online, atau menggunakan Python, misalnya:
python -m json.tool openapi.json
Untuk meningkatkan keterbacaan, Anda dapat mencetak file JSON dengan format yang lebih baik:
python -m json.tool input.json > output.json
Ganti input.json
dengan jalur ke file openapi.json
Anda. output.json
adalah
file JSON yang dicetak dengan rapi.
Memvalidasi dokumen OpenAPI
Tidak semua konstruksi OpenAPI saat ini didukung oleh Cloud Endpoints. Sebelum deployment, Anda dapat memvalidasi dokumen OpenAPI.
Untuk memvalidasi dokumen OpenAPI:
Ubah direktori ke lokasi yang berisi dokumen OpenAPI Anda.
Konfirmasi project Google Cloud tempat Anda ingin membuat layanan. Jika Anda menggunakan nama domain kustom (seperti,
myapi.example.com
), pastikan untuk memvalidasi project ID yang ditampilkan dari perintah berikut sehingga layanan tidak dibuat di project yang salah.gcloud config list project
Jika Anda perlu mengubah project default, jalankan perintah berikut dan ganti
[YOUR_PROJECT_ID]
dengan project ID Google Cloud tempat Anda ingin membuat layanan:gcloud config set project [YOUR_PROJECT_ID]
Jalankan perintah berikut, dan ganti
[YOUR_OPENAPI_DOCUMENT]
dengan nama dokumen OpenAPI yang menjelaskan API Anda:gcloud endpoints services deploy [YOUR_OPENAPI_DOCUMENT] --validate-only
Perintah gcloud
kemudian memanggil
Service Management API untuk
membuat layanan terkelola dengan nama yang Anda tentukan di kolom host
dalam dokumen OpenAPI. Saat Anda menentukan flag --validate-only
, layanan
masih dibuat, tetapi konfigurasi tidak di-deploy. Tidak ada cara untuk memvalidasi dokumen OpenAPI tanpa membuat layanan. Meskipun Anda dapat
menghapus layanan,
Pengelolaan Layanan mencegah Anda membuat layanan dengan nama
yang sama selama jangka waktu sekitar 30 hari.
Men-deploy dokumen OpenAPI
Jika sudah siap men-deploy API, jalankan Google Cloud CLI, yang menggunakan Pengelolaan Layanan untuk mengupload konfigurasi API dan membuat (atau memperbarui) layanan terkelola.
Untuk men-deploy dokumen OpenAPI:
Ubah direktori ke lokasi yang berisi dokumen OpenAPI Anda.
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 dan ganti
[YOUR_PROJECT_ID]
dengan project ID Google Cloud tempat Anda ingin membuat layanan:gcloud config set project [YOUR_PROJECT_ID]
Jalankan perintah berikut, dan ganti
[YOUR_OPENAPI_DOCUMENT]
dengan nama dokumen OpenAPI yang menjelaskan API Anda:gcloud endpoints services deploy [YOUR_OPENAPI_DOCUMENT]
Saat pertama kali Anda menjalankan perintah sebelumnya, Pengelolaan Layanan akan membuat layanan Endpoints baru di project default dengan nama yang cocok dengan teks yang Anda tentukan di kolom host
dalam dokumen OpenAPI dan mengupload konfigurasi layanan Anda.
Saat membuat dan mengonfigurasi layanan, Manajemen Layanan akan menampilkan informasi ke terminal. Setelah berhasil diselesaikan, Anda akan melihat baris seperti berikut yang menampilkan ID konfigurasi layanan dan nama layanan:
Service Configuration [2017-02-13r0] uploaded for service [echo-api.endpoints.example-project-12345.cloud.goog]
Pada contoh sebelumnya, 2017-02-13r0
adalah ID konfigurasi
layanan dan echo-api.endpoints.example-project-12345.cloud.goog
adalah nama
layanan.
Setelah deployment berhasil, Anda dapat melihat API di halaman Endpoints > Services di Konsol Google Cloud.
Jika Anda menerima pesan error, lihat Memecahkan masalah deployment konfigurasi Endpoint.
Men-deploy ulang
Setiap kali Anda mengubah sesuatu dalam dokumen OpenAPI, pastikan untuk men-deploy-nya
lagi sehingga Endpoints memiliki versi terbaru
konfigurasi layanan API Anda. Anda tidak perlu men-deploy ulang atau memulai ulang ESP jika sebelumnya men-deploy ESP dengan opsi rollout
disetel ke managed
.
Opsi ini 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 selanjutnya
- Memulai penggunaan Cloud Endpoints Portal
- Men-deploy backend API
- Men-deploy di Kubernetes
- Menjalankan ESP secara lokal atau di platform lain
- Mendapatkan nama layanan dan ID konfigurasi