Men-deploy konfigurasi Endpoint

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:

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:

  1. Menginstal dan melakukan inisialisasi gcloud CLI.
  2. Update gcloud CLI:
    gcloud components update
  3. 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.

  4. Tetapkan project default. Ganti [YOUR-PROJECT-ID] dengan project ID GCP Anda
    gcloud config set project [YOUR-PROJECT-ID]
  5. 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.
    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 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:

  1. Ubah direktori ke lokasi yang berisi dokumen OpenAPI Anda.

  2. 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]
    
  3. 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:

  1. Ubah direktori ke lokasi yang berisi dokumen OpenAPI Anda.

  2. 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]
    
  3. 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