Menghubungkan ke Cloud SQL untuk MySQL dari fungsi Cloud Run

Pelajari cara men-deploy aplikasi contoh di fungsi Cloud Run yang terhubung ke instance MySQL menggunakan konsol Google Cloud dan aplikasi klien.

Dengan asumsi bahwa Anda menyelesaikan semua langkah secara tepat waktu, biaya resource yang dibuat dalam panduan memulai ini biasanya kurang dari satu dolar (USD).

Sebelum memulai

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.

    Buka pemilih project

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.

    Buka pemilih project

  5. Make sure that billing is enabled for your Google Cloud project.

  6. Aktifkan Cloud API yang diperlukan untuk menjalankan aplikasi contoh Cloud SQL di fungsi Cloud Run.

    Konsol

    Klik Aktifkan API untuk mengaktifkan API yang diperlukan untuk panduan memulai ini.

    Aktifkan API

    Tindakan ini memungkinkan API berikut:

    • Cloud Run Functions API
    • Cloud SQL Admin API
    • Cloud Run Admin API
    • Cloud Build API
    • Artifact Registry API
    • API Eventarc
    • Compute Engine API
    • Service Networking API
    • Cloud Logging API

    gcloud

    Klik tombol berikut untuk membuka Cloud Shell, yang menyediakan akses command line ke resource Google Cloud langsung dari browser. Cloud Shell dapat digunakan untuk menjalankan perintah gcloud yang disajikan di seluruh panduan memulai ini.

    Buka Cloud Shell

    Jalankan perintah gcloud berikut menggunakan Cloud Shell:

    gcloud services enable cloudfunctions.googleapis.com sqladmin.googleapis.com run.googleapis.com cloudbuild.googleapis.com artifactregistry.googleapis.com eventarc.googleapis.com compute.googleapis.com servicenetworking.googleapis.com pubsub.googleapis.com logging.googleapis.com

    Perintah ini mengaktifkan API berikut:

    • Cloud Run Functions API
    • Cloud SQL Admin API
    • Cloud Run API
    • Cloud Build API
    • Artifact Registry API
    • API Eventarc
    • Compute Engine API
    • Service Networking API
    • Cloud Logging API
  7. Tambahkan peran IAM Cloud Run functions Invoker ke pengguna Anda.

    Menambahkan peran

Menyiapkan Cloud SQL

Membuat instance Cloud SQL

Buat database

Konsol

  1. Di konsol Google Cloud, buka halaman Instance Cloud SQL.

    Buka Instance Cloud SQL

  2. Pilih quickstart-instance.
  3. Dari menu navigasi SQL, pilih Databases.
  4. Klik Buat database.
    1. Di kolom Nama database di kotak dialog Buat database, masukkan quickstart-db. Biarkan nilai untuk himpunan karakter dan kolasi.
    2. Klik Buat.

gcloud

Jalankan perintah gcloud sql databases create untuk membuat database.

gcloud sql databases create quickstart-db --instance=quickstart-instance

Membuat pengguna

Konsol

  1. Di konsol Google Cloud, buka halaman Instance Cloud SQL.

    Buka Instance Cloud SQL

  2. Untuk membuka halaman Ringkasan instance, klik nama instance.
  3. Dari menu navigasi SQL, pilih Pengguna.
  4. Klik Tambahkan akun pengguna.
    • Di halaman Tambahkan akun pengguna untuk quickstart-instance, tambahkan informasi berikut:
      • Di kolom Nama Pengguna, masukkan quickstart-user.
      • Di kolom Sandi, tentukan sandi untuk pengguna database Anda. Catat hal ini untuk digunakan di langkah selanjutnya dalam panduan memulai ini.
  5. Klik Tambahkan.

gcloud

Sebelum menjalankan perintah berikut, buat pengganti berikut:

  1. DB_PASS dengan sandi untuk pengguna database Anda. Catat hal ini untuk digunakan di langkah selanjutnya dalam panduan memulai ini.

Jalankan perintah gcloud sql users create untuk membuat pengguna.

gcloud sql users create quickstart-user \
--instance=quickstart-instance \
--password=DB_PASS

Batas panjang nama pengguna untuk Cloud SQL dan MySQL lokal; 32 karakter untuk MySQL 8.0 dan yang lebih baru, 16 karakter untuk versi sebelumnya.

Mengonfigurasi akun layanan fungsi Cloud Run

Konfigurasikan akun layanan yang digunakan oleh fungsi Cloud Run agar memiliki peran Klien Cloud SQL dengan izin untuk terhubung ke Cloud SQL.

Konsol

  1. Di konsol Google Cloud, buka halaman IAM.

    Buka IAM

  2. Untuk akun layanan bernama akun layanan default Compute Engine, klik ikon pensil.
  3. Klik ADD ANOTHER ROLE.
  4. Tambahkan Peran bernama Cloud SQL Client.
  5. Klik Simpan.

gcloud

  1. Jalankan perintah gcloud berikut untuk mendapatkan daftar akun layanan project Anda:
    gcloud iam service-accounts list
  2. Salin EMAIL akun layanan Compute Engine.
  3. Jalankan perintah berikut untuk menambahkan peran Klien Cloud SQL ke akun layanan Compute Engine:
    gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \
      --member="serviceAccount:SERVICE_ACCOUNT_EMAIL" \
      --role="roles/cloudsql.client"

Membuat fungsi

  1. Di konsol Google Cloud, buka halaman Cloud Run functions.

    Buka fungsi Cloud Run

  2. Klik Create function.
  3. Untuk Lingkungan, pilih generasi ke 2.
  4. Di kolom Nama fungsi, masukkan quickstart-function.
  5. Di region Autentikasi, pilih Izinkan pemanggilan yang tidak diautentikasi.
  6. Klik Next.
  7. Dari menu Runtime, pilih salah satu bahasa berikut ini:
  8. Bahasa Nomor versi
    Go 1,20
    Java 17
    Node.js 18
    Python 3,10
  9. Pada menu Kode sumber, pastikan Editor inline dipilih. Pada langkah ini, Anda akan menggunakan fungsi default yang telah disediakan di editor.

Men-deploy cloud function

  1. Di bagian bawah halaman fungsi Cloud Run, klik Deploy. Konsol Google Cloud akan mengalihkan Anda ke halaman detail fungsi.
  2. Setelah deployment fungsi selesai, klik link URL untuk melihat browser web yang menampilkan pesan Hello, World!.

Men-deploy aplikasi contoh Cloud SQL sebagai fungsi

Anda mengonfigurasi dan men-deploy aplikasi contoh Cloud SQL sebagai fungsi di fungsi Cloud Run. Pertama, Anda menggunakan Cloud Shell untuk mengonfigurasi dan mem-build aplikasi contoh. Kemudian, Anda akan menggunakan fungsi Cloud Run untuk men-deploy aplikasi contoh tersebut.

Ada dua cara untuk mengonfigurasi, mem-build, dan men-deploy aplikasi, bergantung pada apakah Anda membuat instance Cloud SQL untuk MySQL dengan IP Publik atau IP Pribadi.

Mengonfigurasi aplikasi contoh Cloud SQL

Men-deploy aplikasi contoh

Langkah-langkah untuk men-deploy contoh ke fungsi Cloud Run bergantung pada jenis alamat IP yang Anda tetapkan ke instance Cloud SQL.

Pembersihan

Agar tidak menimbulkan biaya pada akun Google Cloud Anda untuk resource yang digunakan pada halaman ini, ikuti langkah-langkah berikut.

  1. Di konsol Google Cloud, buka halaman Instance Cloud SQL.

    Buka Instance Cloud SQL

  2. Pilih instance quickstart-instance untuk membuka halaman Detail instance.
  3. Pada panel ikon di bagian atas halaman, klik Hapus.
  4. Di kotak dialog Hapus instance, ketik quickstart-instance, lalu klik Hapus untuk menghapus instance.
  5. Di konsol Google Cloud, buka halaman Cloud Run functions.

    Buka fungsi Cloud Run

  6. Pilih kotak centang di samping nama layanan quickstart-function.
  7. Klik Hapus di bagian atas halaman fungsi Cloud Run.

Langkah-langkah pembersihan opsional

Jika tidak menggunakan peran klien Cloud SQL yang ditetapkan ke akun layanan Compute Engine, Anda dapat menghapusnya.

  1. Di Konsol Google Cloud, buka halaman IAM.

    Buka IAM

  2. Klik ikon edit (yang terlihat seperti pensil) untuk akun IAM yang bernama akun layanan default Compute Engine default.
  3. Hapus peran Klien Cloud SQL client.
  4. Klik Simpan.

Jika tidak menggunakan API yang diaktifkan sebagai bagian dari panduan memulai ini, Anda dapat menonaktifkannya.

  • API yang diaktifkan dalam panduan memulai ini:
    • Compute Engine API
    • Cloud SQL Admin API
    • Cloud Run API
    • Container Registry API
    • Cloud Build API
  1. Di konsol Google Cloud, buka halaman APIs.

    Buka API

  2. Pilih API yang ingin Anda nonaktifkan, lalu klik tombol Nonaktifkan API.

Langkah berikutnya

Berdasarkan kebutuhan, Anda dapat mempelajari lebih lanjut cara membuat instance Cloud SQL.

Anda juga dapat mempelajari cara membuat pengguna MySQL dan database untuk instance Cloud SQL Anda.

Untuk informasi selengkapnya tentang harga, lihat harga Cloud SQL untuk MySQL.

Pelajari lebih lanjut:

  • Mengonfigurasi instance Cloud SQL Anda dengan alamat IP publik.
  • Mengonfigurasi instance Cloud SQL Anda dengan alamat IP pribadi.

Selain itu, Anda dapat mempelajari cara menghubungkan ke instance Cloud SQL dari aplikasi Google Cloud lainnya: