Mengintegrasikan layanan Google Cloud dengan Cloud Foundry di SAP Business Technology Platform (SAP BTP)

Petunjuk ini menunjukkan cara mengintegrasikan layanan Google Cloud ke dalam lingkungan Cloud Foundry di SAP Business Technology Platform (SAP BTP) menggunakan Open Service Broker untuk Google Cloud (Google Cloud Service Broker).

Google Cloud Service Broker menyederhanakan pengiriman layanan Google Cloud ke aplikasi yang berjalan di lingkungan Cloud Foundry pada SAP BTP. Dengan membuat resource Google Cloud dan mengelola izin yang sesuai, Google Cloud Service Broker memudahkan penggunaan layanan Google Cloud dari dalam lingkungan aplikasi SAP BTP.

Diagram berikut adalah tampilan tingkat tinggi dari langkah-langkah penyiapan dengan beberapa contoh layanan Google Cloud.

Mengakses layanan Google Cloud dari Cloud Foundry di SAP BTP

Komponen solusi inti

Komponen berikut diperlukan untuk penyiapan Google Cloud Service Broker di SAP BTP untuk Cloud Foundry.

Layanan Kasus penggunaan
Perantara Layanan Terbuka untuk Google Cloud Integrasi layanan Google Cloud ke lingkungan Cloud Foundry SAP BTP
Cloud SQL untuk MySQL Database untuk penyimpanan back-end untuk Google Cloud Service Broker
Akun BTP SAP Menyediakan lingkungan Cloud Foundry SAP BTP di region Google Cloud yang dipilih
Project Google Cloud Menyediakan layanan Google Cloud
CLI Cloud Foundry Antarmuka command line untuk mengonfigurasi Cloud Foundry

Biaya

Cloud SQL, yang direkomendasikan untuk digunakan bersama Google Cloud Service Broker, adalah komponen Google Cloud yang dapat ditagih.

Penggunaan layanan Google Cloud melalui API-nya masing-masing mungkin juga dapat ditagih.

Gunakan Kalkulator Harga untuk membuat perkiraan biaya berdasarkan penggunaan yang Anda proyeksikan.

Prasyarat

Sebelum dapat menyiapkan lingkungan Cloud Foundry di SAP BTP, Anda harus menyiapkan lingkungan pengembangan lokal terlebih dahulu dan membuat project di Google Cloud.

Menyiapkan lingkungan pengembangan

  1. Instal Antarmuka Command Line (CLI) Cloud Foundry di workstation pengembangan sesuai dokumentasi Portal SAP.

Menyiapkan project Google Cloud

Jika belum memiliki project Google Cloud dengan penagihan yang diaktifkan, Anda harus membuatnya.

  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. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

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

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

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

Menyiapkan lingkungan Google Cloud

Anda perlu mengaktifkan Google Cloud API tertentu, akun layanan Google Cloud, dan database untuk Google Cloud Service Broker.

Mengaktifkan Google Cloud API yang diperlukan

Aktifkan API berikut di API Manager > Library.

  1. Aktifkan Cloud Resource Manager API.
  2. Aktifkan Identity and Access Management API.
  3. Aktifkan Cloud SQL Admin API.
  4. Aktifkan API untuk layanan Google Cloud lain yang didukung yang Anda perlukan.

Membuat akun layanan root

  1. Di Konsol Google Cloud, buka halaman Service accounts.

    Buka halaman Service Accounts

  2. Pilih project Google Cloud Anda.

  3. Klik Create Service Account.

  4. Masukkan nama di kolom Service account name.

  5. Klik Create and Continue.

  6. Di daftar Select role, klik Project > Owner, yang memberikan izin yang diperlukan oleh Google Cloud Service Broker untuk bekerja dengan layanan Google Cloud.

  7. Klik Continue.

  8. Berikan akses ke akun layanan kepada pengguna lain sebagaimana mestinya.

  9. Klik Done.

  10. Pada halaman Service accounts di Google Cloud Console, klik alamat email akun layanan yang baru saja Anda buat.

  11. Di bawah nama akun layanan, klik tab Keys.

  12. Klik menu drop-down Add Key, lalu pilih Create new key.

  13. Pastikan jenis kunci JSON telah ditentukan.

  14. Klik Create. File kunci JSON akan otomatis didownload ke workstation Anda.

  15. Pindahkan file kunci JSON ke lokasi yang aman.

Menyiapkan database cadangan

Google Cloud Service Broker memerlukan database MySQL untuk menyimpan status resource yang disediakan. Instance Cloud SQL Generasi Kedua untuk MySQL, yang menyediakan database Edisi Komunitas MySQL yang terkelola sepenuhnya dengan pencadangan otomatis, ketersediaan tinggi, dan pemeliharaan otomatis, direkomendasikan. Namun, Anda dapat menggunakan database apa pun yang kompatibel dengan protokol MySQL.

Langkah-langkah berikut ini akan membuat database menggunakan instance Cloud SQL Generasi Kedua di Google Cloud, tetapi dapat diterapkan untuk setiap database yang kompatibel dengan protokol MySQL.

Membuat instance Cloud SQL untuk MySQL

Agar dapat membuat database, Anda perlu membuat instance Cloud SQL untuk MySQL di Google Cloud.

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

    BUKA halaman Cloud SQL Instance

  2. Klik Create instance.

    1. Pilih MySQL lalu klik Next.
    2. Klik Choose Second Generation.
    3. Tentukan ID Instance.
    4. Tentukan Sandi root.
    5. Di kolom Region, pilih region tempat lingkungan Cloud Foundry Anda akan berada.
    6. Klik Create.

Membuat database

  1. Setelah instance Cloud SQL melakukan booting, buka Cloud Shell.

    BUKA Cloud Shell

  2. Menghubungkan ke instance Cloud SQL.

    gcloud sql connect your-cloud-sql-instance --user=root
    

    Dengan your-cloud-sql-instance adalah nama instance Cloud SQL yang Anda buat di Google Cloud.

  3. Buat database dengan nama servicebroker.

    CREATE DATABASE servicebroker;
    
  4. Tentukan nama pengguna dan sandi untuk Google Cloud Service Broker. =

    CREATE USER 'SB_DB_UserName'@'%' IDENTIFIED BY 'SB_DB_Password';
    

    Dengan keterangan:

    • SB_DB_UserName adalah nama pengguna yang mewakili Google Cloud Service Broker sebagai pengguna database.
    • SB_DB_Password adalah sandi yang mengidentifikasi Google Cloud Service Broker ke database.
  5. Tetapkan hak istimewa akses untuk Google Cloud Service Broker.

    GRANT ALL PRIVILEGES ON servicebroker.* TO 'SB_DB_UserName'@'%' WITH GRANT OPTION;
    
  6. Siapkan SSL dan dapatkan sertifikat SSL.

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

      BUKA halaman Cloud SQL Instance

    2. Klik nama instance Cloud SQL Anda.

    3. Di halaman Instance details, klik tab Connections.

    4. Di bagian SSL pada SSL connections, klik Allow only SSL Connections. Update mungkin memerlukan waktu beberapa detik.

    5. Di bagian SSL, di bagian Configure SSL client certificates, klik Create a client certificate.

    6. Masukkan nama, lalu klik Create.

    7. Download ketiga file sertifikat dan simpan ke lokasi yang aman.

  7. Di bagian Connectivity pada tab Connections di halaman Instance details:

    1. Pastikan kotak Public IP telah dipilih.
    2. Di bagian Authorized networks, klik Add network.
    3. Di kolom Network, masukkan 0.0.0.0/0.
    4. Klik Done.
  8. Klik Save untuk menyimpan perubahan otorisasi.

Mendapatkan akun uji coba SAP BTP untuk Cloud Foundry di infrastruktur Google Cloud

  1. Daftar untuk mendapatkan akun uji coba SAP BTP. Anda memerlukan akun SAP yang aktif untuk mendapatkan akun uji coba SAP BTP.
  2. Login ke SAP BTP Cockpit.
  3. Di SAP BTP Cockpit, pilih Home di bagian atas layar.
  4. Pada panel navigasi di sisi kiri layar, klik Regions.
  5. Di bagian Cloud Foundry Environment, pilih region yang menggunakan infrastruktur Google Cloud, seperti US-Central (IA). Tindakan ini akan membuat organisasi dan ruang dalam lingkungan Cloud Foundation SAP BTP.

Menginstal dan mengonfigurasi Google Cloud Service Broker untuk Cloud Foundry

Men-deploy Google Cloud Service Broker untuk Cloud Foundry

Di terminal pada workstation pengembangan:

  1. Instal Google Cloud Service Broker for Cloud Foundry versi terbaru dari GitHub.

    curl -s https://api.github.com/repos/GoogleCloudPlatform/gcp-service-broker/releases/latest \
    |grep 'tag_name' \
    |cut -d\" -f4 \
    |xargs -I {} curl -sOL "https://github.com/GoogleCloudPlatform/gcp-service-broker/archive/"{}'.tar.gz'
    
  2. Ekstrak file Google Cloud Service Broker.

    tar zxvf *.tar.gz
    
  3. Beralih direktori.

    cd gcp-service-broker*
    
  4. Login ke lingkungan SAP BTP Cloud Foundry.

    cf login
    
  5. Masukkan endpoint API.

    https://api.techkey.hana.ondemand.com
    

    Dengan techkey adalah kunci teknis yang ditentukan SAP yang mengidentifikasi region endpoint API. Misalnya, kunci teknis untuk region US Central yang mencakup infrastruktur Google Cloud adalah cf.us30. Untuk mengetahui daftar semua region untuk lingkungan Cloud Foundry SAP BTP, lihat Portal Bantuan SAP.

  6. Masukkan nama pengguna dan sandi untuk akun SAP BTP Anda.

  7. Men-deploy aplikasi Google Cloud Service Broker ke lingkungan Cloud Foundry.

    cf push APP_NAME --no-start
    

    Dengan APP_NAME adalah nama unik yang Anda pilih untuk aplikasi Google Cloud Service Broker. Misalnya, gcp-service-broker-001 atau mycompany-gcp-svc-broker-app.

    Anda melihat informasi yang mirip dengan contoh berikut setelah Cloud Foundry men-deploy aplikasi Google Cloud Service Broker:

    name:              gcp-service-broker-example-app
    requested state:   stopped
    routes:            gcp-service-broker-example-app.cfapps.us30.hana.ondemand.com
    last uploaded:
    stack:
    buildpacks:
    type:           web
    instances:      0/1
    memory usage:   1024M
         state   since                  cpu    memory   disk     details
    #0   down    2018-12-19T23:49:13Z   0.0%   0 of 0   0 of 0
    

Mengonfigurasi aplikasi Google Cloud Service Broker untuk Cloud Foundry

  1. Login ke SAP BTP Cockpit.
  2. Di SAP BTP Cockpit, buka Trial Home > Regions > Your Google Cloud region > Your global account > Your subaccount > Spaces > Your space.
  3. Klik nama aplikasi Google Cloud Service Broker yang Anda deploy di bagian sebelumnya.
  4. Pada menu di sebelah kiri, klik User-provided variables.
  5. Gunakan tombol Add variable untuk menentukan variabel Broker Layanan Google Cloud berikut sebagai key-value pair:

    Kunci Nilai
    CA_CERT
    Konten file sertifikat server, server-ca.pem, yang Anda download saat menyiapkan SSL di Menyiapkan database pencadangan.
    CLIENT_CERT
    Konten file sertifikat klien, client-cert.pem, yang Anda download saat menyiapkan SSL di Menyiapkan database pencadangan.
    CLIENT_KEY
    Konten file kunci klien, client-key.pem, yang Anda download saat menyiapkan SSL di Menyiapkan database pencadangan.
    DB_HOST
    Alamat IP publik instance Cloud SQL Anda, seperti yang ditunjukkan di bagian Menghubungkan ke instance ini di halaman Detail instance untuk instance Cloud SQL Anda di Konsol Google Cloud.
    DB_PASSWORD
    Sandi yang Anda tetapkan untuk Google Cloud Service Broker guna mengakses database yang Anda konfigurasi di bagian Menyiapkan database pencadangan.
    DB_USERNAME
    Nama pengguna yang Anda tetapkan untuk Google Cloud Service Broker saat membuat database. Untuk database Cloud SQL, Anda dapat melihat nama pengguna di bagian MySQL user accounts pada tab Usersdari halaman Instance details untuk instance Cloud SQL Anda di Konsol Google Cloud.
    ROOT_SERVICE_ACCOUNT_JSON
    Konten file kunci JSON yang Anda download saat membuat akun layanan root.
    SECURITY_USER_NAME
    Nama pengguna yang Anda tetapkan untuk digunakan oleh perantara layanan saat mengautentikasi permintaan broker. Tentukan nama pengguna yang sama ini nanti dalam perintah cf create-service-broker saat membuat layanan broker.
    SECURITY_USER_PASSWORD
    Sandi yang Anda tetapkan untuk digunakan oleh perantara layanan saat mengautentikasi permintaan broker. Tentukan sandi yang sama ini nanti dalam perintah cf create-service-broker saat membuat layanan broker.
    Variabel lingkungan opsional Untuk daftar variabel opsional yang dapat Anda gunakan untuk menyesuaikan Google Cloud Service Broker, lihat Penyesuaian Penginstalan.

Memulai aplikasi Google Cloud Service Broker untuk Cloud Foundry

  1. Klik Overview di menu sebelah kiri.
  2. Untuk memulai aplikasi broker, klik Start. Saat aplikasi aktif dan berjalan, indikator Started dan Running berwarna hijau akan muncul pada halaman Overview, seperti yang ditampilkan dalam gambar berikut.

    Indikator dimulai berwarna hijau menunjukkan bahwa Google Cloud Service Broker dimulai

    Indikator BERJALAN berwarna hijau menunjukkan bahwa Google Cloud Service Broker sedang berjalan

  3. Jika aplikasi Google Cloud Service Broker tidak dapat dimulai atau menampilkan Error atau Crashed, periksa log aplikasi dari workstation pengembangan dan sesuaikan variabel atau konfigurasi yang sesuai.

    cf logs APP_NAME --recent
    

Mendaftarkan Google Cloud Service Broker untuk Cloud Foundry

Di workstation pengembangan:

  1. Terhubung ke lingkungan SAP BTP Cloud Foundry.

    cf login
    
  2. Membuat daftar aplikasi yang di-deploy.

    cf apps
    

    Anda akan melihat output yang mirip dengan contoh berikut:

    name              requested state   instances   memory   disk   urls
    broker-test-app   started           1/1         1G       1G     broker-test-app.cfapps.us30.hana.ondemand.com
    
  3. Daftarkan layanan broker.

    cf create-service-broker BROKER_SERVICE_NAME SECURITY_USER_NAME
    SECURITY_USER_PASSWORD https://BROKER_APPLICATION_ROUTE --space-scoped
    

    Dengan keterangan:

  4. Verifikasi pendaftaran layanan pialang.

    cf service-brokers
    

    Anda akan melihat output yang mirip dengan contoh berikut ini:

    name                  url
    broker-service-name   https://broker-service-name.cfapps.us30.hana.ondemand.com
    
  5. Pastikan bahwa layanan Google Cloud kini tersedia di SAP BTP Service Marketplace.

    cf marketplace
    

    Contoh berikut, yang diedit agar mudah dibaca dan sesuai dengan halaman, menampilkan dua layanan dari listingan layanan Google Cloud di marketplace.

    service          plans                      description
    ...
    google-bigquery  default                    A fast, economical and fully managed data warehouse for large-scale data analytics.
    google-bigtable  three-node-production-hdd  A high performance NoSQL database service for large analytical and operational workloads.
    

    Untuk daftar layanan Google Cloud yang tersedia, lihat Open Service Broker untuk Google Cloud.

Langkah berikutnya

Buat instance layanan Google Cloud dan ikat ke aplikasi BTP SAP Anda.

Untuk mengetahui informasi selengkapnya tentang cara membuat dan mengikat layanan Google Cloud, lihat: