Panduan memulai: Sebelum Anda memulai

Panduan memulai ini akan memandu Anda memahami serangkaian tindakan yang harus diselesaikan agar Anda dapat men-deploy Speech-to-Text On-Prem API. Untuk informasi selengkapnya tentang parameter API yang dapat dikonfigurasi yang terekspos selama penginstalan dan penyiapan, lihat halaman Konfigurasi API.

  1. Membeli paket.
  2. Menetapkan peran Identity Access Management (IAM) yang diperlukan ke akun layanan.
  3. Menginstal alat yang diperlukan.
  4. Membuat cluster Kubernetes.
  5. Memprakonfigurasi API dari command line (opsional, hanya untuk penginstalan CLI).
  6. Menginstal Istio untuk load balancing gRPC (opsional).

Menyiapkan penagihan

Di halaman solusi Google Cloud Platform, klik PURCHASE PLAN. Tindakan ini harus dilakukan oleh Billing Account Administrator. Anda dapat memverifikasinya dengan membuka menu navigasi sebelah kiri Google Cloud Platform Console: Billing -> Account Management, lalu memeriksa Role/Principal di sebelah kanan. Tindakan ini hanya perlu dilakukan satu kali.

Peran IAM yang diperlukan

  1. Cari menu drop-down project Google Cloud Platform di dasbor Anda:

  2. Di jendela yang muncul, Anda dapat memilih project Google Cloud Platform yang sudah ada atau membuat project baru. Setelah memilih project yang ingin dikaitkan dengan Speech-to-Text On-Prem, klik ikon tiga garis di pojok kiri atas, pilih IAM & Admin --> IAM untuk melihat daftar akun layanan yang dikaitkan dengan project tersebut.

  3. Tetapkan peran berikut ke akun layanan yang berada dalam project Google Cloud Platform yang akan digunakan selama penginstalan. Peran dapat ditetapkan ke satu akun layanan atau beberapa akun terpisah, asalkan semua akun berada di project yang sama. Untuk mengedit izin akun layanan, klik ikon pensil di sebelah kanan nama akun layanan. Anda juga dapat membuat akun layanan baru dengan mengklik tombol +ADD di bagian atas halaman IAM pada Google Cloud Platform Console.

    Peran IAM yang diperlukan:

    • Project Viewer
    • Billing Account Administrator (diperlukan untuk membeli paket, tidak diperlukan untuk deployment)
    • Kubernetes Engine Admin (jika melakukan deployment ke GKE)
    • Kubernetes Engine Cluster Admin (jika melakukan deployment ke Anthos)

Alat yang diperlukan

  1. Instal Google Cloud CLI.
  2. Instal kubectl.

Membuat cluster Kubernetes

Pastikan Anda menjalankan cluster GKE atau Anthos. Cluster Kubernetes tersedia di Google Cloud Platform. Jika sudah memiliki cluster, Anda dapat memilih salah satunya dari daftar yang muncul dengan mencentang kotak di ujung kiri nama cluster tersebut:

Jika belum memiliki cluster, Anda akan diminta untuk membuatnya. Pastikan parameter cluster cocok dengan rekomendasi dalam daftar di bawah (parameter default tidak memadai). Catat Name dan Location cluster, serta nama project Google Cloud Platform tempat cluster di-deploy.

Rekomendasi dasar untuk penyiapan cluster:

  • Saluran Rilis: Reguler.
  • Ukuran node pool harus sama atau lebih besar daripada $REPLICAS.
  • Jenis Mesin Node: e2-standard-4 (4 vCPU, Memori 16 GB) atau lebih tinggi.
  • Aktifkan penskalaan otomatis
  • Aktifkan Istio jika Anda memerlukan load balancing gRpc (Opsional).
  • Aktifkan Kubernetes Engine Monitoring jika Anda ingin mengekspor metrik ke Stackdriver (opsional).

Menginstal Istio untuk load balancing gRPC (Opsional)

Untuk menskalakan Speech-to-Text On-Prem, kami mengandalkan load balancer L7 yang kompatibel dengan gRPC. Meskipun ada beberapa opsi yang tersedia, kami menyediakan contoh konfigurasi Istio di sini. Perhatikan bahwa strategi load balancing L3 layanan Kubernetes default tidaklah cukup. Anda dapat mengikuti panduan resmi Google Cloud atau halaman resmi Istio untuk menginstal Istio. Jika Anda juga ingin mengekspor metrik, ikuti langkah 1 dan 2 (di bagian Mengonfigurasi cluster Kubernetes Anda, di bawah), lalu jalankan perintah berikut:

    kubectl get deployment/istio-pilot -n istio-system \
    && kubectl set env deployment/istio-pilot -n istio-system PILOT_HTTP10=1 \
    || kubectl set env deployment/istiod -n istio-system PILOT_HTTP10=1

Flag PILOT_HTTP10=1 memungkinkan permintaan HTTP 1.0 dibuat oleh aplikasi. Hal ini sangat penting agar aplikasi dapat melakukan autentikasi dengan Stackdriver (menggunakan server metadata Google Cloud Platform) untuk memublikasikan telemetri.

Memprakonfigurasi API dari command line (Opsional)

Jika Anda ingin melakukan penginstalan berbasis CLI, ikuti petunjuk di bagian ini.

Mengonfigurasi lingkungan Anda

  1. Instal Docker.
  2. Instal alat mpdev.

Mengonfigurasi cluster Kubernetes Anda

  1. Tetapkan variabel lingkungan PROJECT dan NAMESPACE. PROJECT adalah ID project dari project Google Cloud Platform tempat cluster Anda di-deploy. NAMESPACE adalah nama namespace baru yang akan Anda buat pada Langkah 3 di bawah. You can memasukkan nilai apa pun untuk NAMESPACE, tetapi "speech" adalah default yang aman.

    export PROJECT=<my-project-id>
    export CLUSTER_NAME=<name of the cluster>
    export LOCATION=<location of the cluster>
    export NAMESPACE=<new name for NAMESPACE>
    
  2. Ambil kredensial cluster Anda:

    gcloud container clusters get-credentials $CLUSTER_NAME
    --project $PROJECT --zone $LOCATION
    
  3. Buat namespace tempat aplikasi akan di-deploy dan tetapkan ke nama NAMESPACE yang Anda buat pada langkah 1, di atas:

    kubectl create namespace ${NAMESPACE:?}
    
  4. Instal CRD Aplikasi, yang diperlukan untuk menggunakan aplikasi marketplace Google Cloud Platform:

    kubectl apply -f "https://raw.githubusercontent.com/GoogleCloudPlatform/marketplace-k8s-app-tools/master/crd/app-crd.yaml"
    
  5. Buat rahasia pelaporan. Nilai ini digunakan oleh aplikasi untuk melaporkan kembali penggunaan ke Google, dan digunakan untuk penagihan mendatang. Di halaman solusi, pada tab "Deploy via command line", hanya ikuti petunjuk 1 & 2 untuk membuat & men-deploy rahasia pelaporan lisensi.

Langkah selanjutnya

Pelajari cara deploy Speech-to-Text On-Prem API.