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.
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
- 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.
- 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.
-
Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.
-
Make sure that billing is enabled for your Google Cloud project.
-
Di konsol Google Cloud, pada halaman pemilih project, pilih atau buat project Google Cloud.
-
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.
- Aktifkan Cloud Resource Manager API.
- Aktifkan Identity and Access Management API.
- Aktifkan Cloud SQL Admin API.
- Aktifkan API untuk layanan Google Cloud lain yang didukung yang Anda perlukan.
Membuat akun layanan root
Di Konsol Google Cloud, buka halaman Service accounts.
Pilih project Google Cloud Anda.
Klik Create Service Account.
Masukkan nama di kolom Service account name.
Klik Create and Continue.
Di daftar Select role, klik Project > Owner, yang memberikan izin yang diperlukan oleh Google Cloud Service Broker untuk bekerja dengan layanan Google Cloud.
Klik Continue.
Berikan akses ke akun layanan kepada pengguna lain sebagaimana mestinya.
Klik Done.
Pada halaman Service accounts di Google Cloud Console, klik alamat email akun layanan yang baru saja Anda buat.
Di bawah nama akun layanan, klik tab Keys.
Klik menu drop-down Add Key, lalu pilih Create new key.
Pastikan jenis kunci JSON telah ditentukan.
Klik Create. File kunci JSON akan otomatis didownload ke workstation Anda.
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.
Di konsol Google Cloud, buka halaman Cloud SQL Instance.
Klik Create instance.
- Pilih MySQL lalu klik Next.
- Klik Choose Second Generation.
- Tentukan ID Instance.
- Tentukan Sandi root.
- Di kolom Region, pilih region tempat lingkungan Cloud Foundry Anda akan berada.
- Klik Create.
Membuat database
Setelah instance Cloud SQL melakukan booting, buka Cloud Shell.
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.Buat database dengan nama
servicebroker
.CREATE DATABASE servicebroker;
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.
Tetapkan hak istimewa akses untuk Google Cloud Service Broker.
GRANT ALL PRIVILEGES ON servicebroker.* TO 'SB_DB_UserName'@'%' WITH GRANT OPTION;
Siapkan SSL dan dapatkan sertifikat SSL.
Di konsol Google Cloud, buka halaman Cloud SQL Instance.
Klik nama instance Cloud SQL Anda.
Di halaman Instance details, klik tab Connections.
Di bagian SSL pada SSL connections, klik Allow only SSL Connections. Update mungkin memerlukan waktu beberapa detik.
Di bagian SSL, di bagian Configure SSL client certificates, klik Create a client certificate.
Masukkan nama, lalu klik Create.
Download ketiga file sertifikat dan simpan ke lokasi yang aman.
Di bagian Connectivity pada tab Connections di halaman Instance details:
- Pastikan kotak Public IP telah dipilih.
- Di bagian Authorized networks, klik Add network.
- Di kolom Network, masukkan
0.0.0.0/0
. - Klik Done.
Klik Save untuk menyimpan perubahan otorisasi.
Mendapatkan akun uji coba SAP BTP untuk Cloud Foundry di infrastruktur Google Cloud
- Daftar untuk mendapatkan akun uji coba SAP BTP. Anda memerlukan akun SAP yang aktif untuk mendapatkan akun uji coba SAP BTP.
- Login ke SAP BTP Cockpit.
- Di SAP BTP Cockpit, pilih Home di bagian atas layar.
- Pada panel navigasi di sisi kiri layar, klik Regions.
- 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:
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'
Ekstrak file Google Cloud Service Broker.
tar zxvf *.tar.gz
Beralih direktori.
cd gcp-service-broker*
Login ke lingkungan SAP BTP Cloud Foundry.
cf login
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 adalahcf.us30
. Untuk mengetahui daftar semua region untuk lingkungan Cloud Foundry SAP BTP, lihat Portal Bantuan SAP.Masukkan nama pengguna dan sandi untuk akun SAP BTP Anda.
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
ataumycompany-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
- Login ke SAP BTP Cockpit.
- Di SAP BTP Cockpit, buka Trial Home > Regions > Your Google Cloud region > Your global account > Your subaccount > Spaces > Your space.
- Klik nama aplikasi Google Cloud Service Broker yang Anda deploy di bagian sebelumnya.
- Pada menu di sebelah kiri, klik User-provided variables.
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
- Klik Overview di menu sebelah kiri.
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.
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:
Terhubung ke lingkungan SAP BTP Cloud Foundry.
cf login
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
Daftarkan layanan broker.
cf create-service-broker BROKER_SERVICE_NAME SECURITY_USER_NAME SECURITY_USER_PASSWORD https://BROKER_APPLICATION_ROUTE --space-scoped
Dengan keterangan:
BROKER_SERVICE_NAME
adalah nama unik yang Anda pilih untuk layanan broker.SECURITY_USER_NAME
adalah nama pengguna yang ditetapkan untuk mengautentikasi permintaan broker di Mengonfigurasi aplikasi Google Cloud Service Broker untuk Cloud Foundry.SECURITY_USER_PASSWORD
adalah sandi yang ditetapkan untuk mengautentikasi permintaan broker dalam Mengonfigurasi aplikasi Google Cloud Service Broker untuk Cloud Foundry.BROKER_APPLICATION_ROUTE
adalah URL aplikasi broker layanan seperti yang ditampilkan pada langkah sebelumnya. Misalnya:broker-test-app.cfapps.us30.hana.ondemand.com
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
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:
Menggunakan Layanan di Lingkungan Cloud Foundry di Portal Bantuan SAP.
Dokumentasi Google Cloud Service Broker di GitHub.