Men-deploy API ke gateway
Halaman ini menjelaskan cara men-deploy API ke API Gateway.
Prasyarat
Sebelum dapat men-deploy API ke API Gateway, pastikan Anda melakukan hal berikut:
Siapkan lingkungan pengembangan Anda seperti yang dijelaskan dalam Mengonfigurasi lingkungan pengembangan Anda.
Buat API, jika menggunakan Google Cloud CLI.
Catatan: Jika menggunakan Google Cloud konsol, langkah ini akan selesai saat men-deploy API, seperti yang dijelaskan di bawah.Buat spesifikasi OpenAPI yang menentukan API Anda.
Buat konfigurasi API dari definisi API Anda.
Persyaratan ID gateway
Banyak perintah gcloud CLI yang ditampilkan di bawah mengharuskan Anda menentukan ID gateway, dalam bentuk: GATEWAY_ID. API Gateway menerapkan persyaratan berikut untuk ID gateway:
- Harus memiliki panjang maksimum 49 karakter.
- Hanya boleh berisi huruf kecil, angka, atau tanda hubung.
- Tidak boleh diawali dengan tanda hubung.
- Tidak boleh berisi garis bawah.
Menentukan endpoint konfigurasi API yang di-deploy
Saat Anda men-deploy konfigurasi API ke gateway, API Gateway akan membuat URL unik untuk gateway di domain gateway.dev. Klien API Anda kemudian menggunakan URL dalam bentuk di bawah untuk mengakses konfigurasi API yang di-deploy:
https://GATEWAY_ID-HASH.REGION_CODE.gateway.dev
dengan GATEWAY_ID adalah nama gateway, HASH adalah kode hash unik yang dibuat saat Anda men-deploy API, dan REGION_CODE adalah kode untuk lokasi Cloud tempat Anda men-deploy gateway.
Contoh:
https://my-gateway-a12bcd345e67f89g0h.uc.gateway.dev
Men-deploy API ke gateway
Untuk men-deploy API ke gateway:
Google Cloud Konsol
Di Google Cloud konsol, buka halaman API Gateway.
- Klik Buat Gateway
Halaman Buat Gateway akan ditampilkan.
- Di Pilih API, pilih Buat API baru di kolom Pilih API.
- Di kolom Nama Tampilan, masukkan nama tampilan API.
- Di kolom ID API, masukkan ID API. Lihat persyaratan ID API untuk panduan penamaan API.
- (Opsional) Tambahkan label untuk API Anda.
- Di bagian Konfigurasi API, pilih Buat konfigurasi API baru di kolom Pilih Konfigurasi
- Di kolom Upload Spesifikasi API, upload file
.yamlatau.json. Lihat format file OpenAPI 2.0 dan OpenAPI 3.x untuk definisi API. - Di kolom Nama Tampilan, masukkan nama tampilan konfigurasi API.
- Di daftar Pilih Akun Layanan, pilih akun layanan yang diperlukan. Akun layanan ini akan digunakan oleh API Gateway sebagai identitasnya.
- (Opsional) Tambahkan label untuk konfigurasi API Anda.
- Di bagian Detail gateway, masukkan nama tampilan untuk gateway Anda.
- Di kolom Lokasi, pilih Google Cloud region tempat Anda ingin men-deploy gateway.
- (Opsional) Tambahkan label untuk API Gateway Anda.
- Klik Buat gateway.
API yang baru dibuat akan terlihat di halaman beranda API Gateway.
Google Cloud CLI
Validasi project ID yang ditampilkan dari perintah berikut untuk memastikan gateway tidak dibuat di project yang salah.
gcloud config list project
Jika Anda perlu mengubah project default, jalankan perintah berikut dan ganti PROJECT_ID dengan Google Cloud project ID tempat Anda ingin membuat layanan::
gcloud config set project PROJECT_ID
Lihat bantuan untuk perintah
gateway create:gcloud api-gateway gateways create --help
Jalankan perintah berikut untuk men-deploy konfigurasi API ke gateway:
gcloud api-gateway gateways create GATEWAY_ID \ --api=API_ID --api-config=CONFIG_ID \ --location=GCP_REGION
dengan:
- GATEWAY_ID menentukan ID gateway baru. Jika gateway belum ada, perintah ini akan membuatnya.
- API_ID menentukan ID API Gateway API yang terkait dengan gateway ini.
- CONFIG_ID menentukan ID konfigurasi API yang di-deploy ke gateway. Anda harus menentukan konfigurasi API saat membuat gateway.
- GCP_REGION menentukan lokasi Cloud untuk gateway yang di-deploy.
Saat membuat gateway, gcloud CLI akan menampilkan informasi ke terminal.
Setelah berhasil diselesaikan, Anda dapat menggunakan perintah berikut untuk melihat detail tentang gateway:
gcloud api-gateway gateways describe GATEWAY_ID \ --location=GCP_REGION
Perintah ini akan menampilkan hal berikut:
apiConfig: projects/PROJECT_ID/locations/global/apis/API_ID/configs/CONFIG_ID createTime: '2020-02-05T13:44:12.997862831Z' defaultHostname: my-gateway-a12bcd345e67f89g0h.uc.gateway.dev displayName: GATEWAY_ID name: projects/PROJECT_ID/locations/GCP_REGION/gateways/GATEWAY_ID serviceAccount: email: gateway-111111@222222-tp.iam.gserviceaccount.com state: ACTIVE updateTime: '2020-02-05T13:45:00.844705087Z'
Perhatikan nilai properti
defaultHostname. Ini adalah bagian nama host dari URL gateway. Untuk mengakses konfigurasi API yang di-deploy ke gateway ini, Anda menggunakan URL dalam bentuk:https://my-gateway-a12bcd345e67f89g0h.uc.gateway.dev
gcloud CLI menggunakan banyak opsi, termasuk yang dijelaskan dalam Referensi gcloud. Selain itu, untuk API Gateway, Anda dapat menetapkan opsi berikut saat membuat gateway:
--async: Segera kembalikan kontrol ke terminal, tanpa menunggu operasi selesai.--display-name=NAME: Menentukan nama tampilan gateway, yang berarti nama yang ditampilkan di UI. Jangan gunakan spasi dalam nama. Gunakan tanda hubung dan garis bawah. Nilai defaultnya adalah GATEWAY_ID.--labels=KEY1=VALUE1,KEY2=VALUE2,...: Menentukan label yang terkait dengan gateway.
Membuat daftar gateway
Bagian ini menjelaskan cara melihat daftar semua API Gateway yang di-deploy di project Anda Google Cloud .
Google Cloud Konsol
Di Google Cloud konsol, buka halaman API Gateway > Gateways.
Google Cloud CLI
Untuk mencantumkan gateway untuk project tertentu:
gcloud api-gateway gateways list
Perintah ini akan menampilkan output dalam bentuk:
GATEWAY_ID LOCATION DISPLAY_NAME STATE CREATE_TIME UPDATE_TIME my-gateway us-central1 my-gateway ACTIVE 2021-01-07T00:04:19 2022-05-21T00:33:46
Untuk mencantumkan gateway untuk project dan region tertentu:
gcloud api-gateway gateways list --location=GCP_REGION
Gunakan ekspresi filter untuk mencantumkan gateway yang terkait dengan API tertentu:
gcloud api-gateway gateways list \ --filter="apiConfig:projects/PROJECT_ID/locations/global/apis/API_ID/*" \
Atau gunakan filter ini untuk mencantumkan gateway untuk konfigurasi API tertentu:
gcloud api-gateway gateways list \ --filter="apiConfig:projects/PROJECT_ID/locations/global/apis/API_ID/configs/CONFIG_ID" \ --project=PROJECT_ID
Gunakan region, dan ID gateway untuk mendapatkan informasi mendetail tentang gateway, termasuk identitas konfigurasi API yang di-deploy ke gateway:
gcloud api-gateway gateways describe GATEWAY_ID \ --location=GCP_REGION
Memperbarui gateway
Perbarui gateway untuk:
- Men-deploy konfigurasi API yang berbeda ke gateway
- Memperbarui nama tampilan
Memperbarui label
Google Cloud Konsol
Lihat langkah-langkah berikut untuk memperbarui detail API Gateway:
Di Google Cloud konsol, buka halaman API Gateway.
- Klik API yang diperlukan.
- Klik tab Gateways.
- Klik Gateway yang diperlukan.
- Klik edit Edit.
- Edit Nama Tampilan atau Label.
- Pilih Konfigurasi API yang diperlukan, atau klik Buat konfigurasi API baru dan buat konfigurasi seperti yang ditunjukkan di sini.
- Klik Perbarui.
- Klik untuk kembali ke halaman daftar Gateway.
- Di halaman daftar Gateway, Anda dapat melihat Gateway yang diperbarui.
Google Cloud CLI
Gunakan perintah gcloud CLI berikut untuk memperbarui gateway yang ada, dengan UPDATE_OPTIONS diganti dengan flag dan nilai opsi gateway yang ingin Anda perbarui:
gcloud api-gateway gateways update GATEWAY_ID \ UPDATE_OPTIONS --api=API_ID --location=GCP_REGION
Misalnya, untuk memperbarui konfigurasi API yang di-deploy ke gateway:
gcloud api-gateway gateways update GATEWAY_ID \ --api-config=NEW_CONFIG_ID --api=API_ID --location=GCP_REGION
dengan NEW_CONFIG_ID menentukan konfigurasi API baru yang akan di-deploy ke gateway.
Untuk mengetahui daftar lengkap flag dan argumen update yang tersedia, lihat referensi gcloud api-gateway gateways update atau gunakan perintah berikut untuk melihat semua opsi update:
gcloud api-gateway gateways update --help
Menghapus gateway
Bagian ini menjelaskan cara menghapus API Gateway yang ada. Ikuti langkah-langkah ini untuk menghapus gateway dan konfigurasi terkaitnya secara permanen dari project Anda Google Cloud .
Google Cloud Konsol
-
Di Google Cloud konsol, buka halaman API Gateway > Gateways.
- Klik Lainnya , lalu klik Hapus untuk menghapus API Gateway yang dipilih.
Google Cloud CLI
Gunakan perintah gcloud CLI berikut untuk menghapus gateway yang ada:
gcloud api-gateway gateways delete GATEWAY_ID \ --location=GCP_REGION