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 Endpoints, Anda menggunakan perintah gcloud endpoints services deploy. Perintah ini menggunakan Service Infrastructure, platform layanan dasar Google, yang digunakan oleh Endpoints dan layanan lainnya untuk membuat dan mengelola API serta layanan. Halaman ini menjelaskan cara men-deploy dokumen OpenAPI ke Endpoints.

Prasyarat

Sebagai titik awal, halaman ini mengasumsikan bahwa Anda telah:

  • Membuat projectGoogle Cloud di mana 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.

  • Endpoint yang Dikonfigurasi.

  • Jika Anda 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.

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 berupa format YAML atau format JSON. Jika dalam format JSON, sebaiknya Anda memverifikasi sintaksisnya sebelum men-deploy file. Untuk memastikan bahwa openapi.json Anda 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 mencetak file JSON dengan rapi:

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 rapi.

Memvalidasi dokumen OpenAPI

Tidak semua konstruksi OpenAPI saat ini didukung oleh Cloud Endpoints. Sebelum men-deploy, Anda dapat memvalidasi dokumen OpenAPI.

Untuk memvalidasi dokumen OpenAPI Anda:

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

  2. Konfirmasi Google Cloud project 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 agar 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 Google Cloud project ID 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 mendeskripsikan 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 Anda. Jika Anda menentukan flag --validate-only, layanan tetap dibuat, tetapi konfigurasi tidak di-deploy. Tidak ada cara untuk memvalidasi dokumen OpenAPI Anda 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

Saat Anda siap men-deploy API, Anda menjalankan Google Cloud CLI, yang menggunakan Service Management 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 Google Cloud project ID 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 mendeskripsikan API Anda:

    gcloud endpoints services deploy [YOUR_OPENAPI_DOCUMENT]
    

Saat pertama kali Anda menjalankan perintah sebelumnya, Service Management akan membuat layanan Endpoints baru di project default dengan nama yang cocok dengan teks yang Anda tentukan di kolom host dalam dokumen OpenAPI Anda dan mengupload konfigurasi layanan Anda.

Saat membuat dan mengonfigurasi layanan, Service Management 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]

Dalam 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 Pemecahan Masalah Konfigurasi dan Deployment Endpoint.

Men-deploy ulang

Setiap kali Anda mengubah sesuatu dalam dokumen OpenAPI, pastikan untuk men-deploy-nya lagi agar Endpoints memiliki konfigurasi layanan API versi terbaru. 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 yang di-deploy terbaru. 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