Setelah mengonfigurasi Cloud Endpoints dalam dokumen OpenAPI, deploy Cloud Endpoints sehingga Endpoint memiliki informasi yang diperlukan untuk mengelola API Anda.
Untuk men-deploy konfigurasi Endpoint, gunakan perintah
gcloud
endpoints services deploy
. Perintah ini menggunakan Infrastruktur Layanan, platform layanan dasar Google, yang digunakan oleh Endpoint dan layanan lainnya untuk membuat serta 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 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
Gunakan alat command line gcloud
untuk men-deploy konfigurasi. Baca
Referensi gcloud untuk mengetahui informasi lebih lanjut 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 mengizinkan
kubectl
.gcloud auth application-default login
Tab browser baru akan terbuka dan Anda akan diminta untuk memilih akun.
Memvalidasi sintaksis openapi.json
File dokumen OpenAPI dapat berupa format YAML atau format JSON. Jika menggunakan format JSON, sebaiknya verifikasi 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 linter JSON online, atau menggunakan Python, misalnya:
python -m json.tool openapi.json
Untuk meningkatkan keterbacaan, Anda dapat melakukan pencetakan file JSON:
python -m json.tool input.json > output.json
Ganti input.json
dengan jalur ke file openapi.json
Anda. output.json
adalah
file JSON yang tampil bagus.
Memvalidasi dokumen OpenAPI Anda
Tidak semua konstruksi OpenAPI saat ini didukung oleh Cloud Endpoints. Sebelum men-deploy, Anda dapat memvalidasi dokumen OpenAPI.
Untuk memvalidasi dokumen OpenAPI Anda:
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 dalam 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 yang ingin Anda gunakan untuk membuat layanan:gcloud config set project [YOUR_PROJECT_ID]
Jalankan perintah berikut, dan ganti
[YOUR_OPENAPI_DOCUMENT]
dengan nama dokumen OpenAPI yang mendeskripsikan API Anda:gcloud endpoints services deploy [YOUR_OPENAPI_DOCUMENT] --validate-only
Kemudian, perintah gcloud
akan memanggil Service Management API untuk membuat layanan terkelola dengan nama yang Anda tentukan di kolom host
dalam dokumen OpenAPI Anda. Saat Anda menentukan tanda --validate-only
, layanan tetap 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 sekitar 30 hari.
Men-deploy dokumen OpenAPI
Setelah siap men-deploy API, Anda dapat menjalankan Google Cloud CLI, yang menggunakan Pengelolaan Layanan untuk mengupload konfigurasi API dan membuat (atau mengupdate) 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 layanan tidak dibuat dalam 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 yang ingin Anda gunakan untuk membuat layanan:gcloud config set project [YOUR_PROJECT_ID]
Jalankan perintah berikut, dan ganti
[YOUR_OPENAPI_DOCUMENT]
dengan nama dokumen OpenAPI yang mendeskripsikan API Anda:gcloud endpoints services deploy [YOUR_OPENAPI_DOCUMENT]
Saat pertama kali menjalankan perintah sebelumnya, Pengelolaan Layanan akan membuat layanan Endpoint baru dalam 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, Pengelolaan Layanan menghasilkan informasi ke terminal. Setelah berhasil, 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 Endpoint > Layanan 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 Endpoint memiliki versi terbaru dari konfigurasi layanan API Anda. Anda tidak perlu men-deploy ulang
atau memulai ulang ESP jika sebelumnya telah men-deploy ESP dengan
opsi rollout
yang ditetapkan ke managed
.
Opsi ini mengonfigurasi ESP agar menggunakan konfigurasi layanan terbaru yang di-deploy. Saat Anda menentukan opsi ini, hingga 5 menit setelah Anda men-deploy konfigurasi layanan baru, ESP mendeteksi perubahan dan otomatis mulai menggunakannya. Sebaiknya
tentukan opsi ini, bukan ID konfigurasi tertentu
yang akan digunakan ESP.
Setelah deployment konfigurasi Endpoint awal, Anda dapat memberi pengguna, akun layanan, atau grup peran yang memungkinkan mereka men-deploy ulang konfigurasi Endpoint. Lihat Memberikan dan mencabut akses ke API untuk informasi selengkapnya.
Langkah selanjutnya
- Mulai menggunakan Portal Cloud Endpoints
- Men-deploy backend API
- Men-deploy di Kubernetes
- Menjalankan ESP secara lokal atau di platform lain
- Mendapatkan nama layanan dan ID konfigurasi