Men-deploy konfigurasi Endpoint

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:

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:

  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 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:

  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 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]
    
  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
    

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:

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

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