Anda saat ini dipekerjakan oleh perusahaan IT yang menggunakan Google Cloud sebagai penyedia layanan cloud utamanya. Sebagai pakar SQL Database, Anda ditugaskan untuk meriset dan mengadopsi layanan SQL yang ditawarkan oleh Google Cloud.
Beberapa permasalahan utama Anda adalah:
Deployment
Keamanan
Integrasi aplikasi
Metode konektivitas
Karena Anda pernah menggunakan Amazon Web Services (AWS) di pekerjaan sebelumnya, Anda tahu cara menyiapkan instance Relational Database Service (RDS) untuk mendukung operasi Anda. Instance AWS RDS menyediakan kapasitas yang hemat biaya dan dapat diubah ukurannya, sekaligus mengelola tugas administrasi database yang memakan waktu.
Di AWS, cara Anda terhubung ke instance database bergantung pada lingkungan. Berikut beberapa contohnya:
Terhubung ke instance DB di VPC yang sama: Menyiapkan aturan grup keamanan virtual private cloud (VPC) untuk membatasi akses ke instance database (DB).
Terhubung ke instance DB di VPC yang berbeda: Menyiapkan koneksi peering antara VPC tempat instance database berada dan VPC tempat klien berada.
Terhubung ke instance DB melalui internet publik: Jika Anda sebelumnya telah mengonfigurasi VPC dan subnet untuk mendukung jenis koneksi ini, gateway internet dan aturan grup keamanan akan diperlukan.
Terhubung ke instance DB melalui koneksi pribadi: Untuk membuat koneksi pribadi antara VPC Anda dan endpoint AWS RDS, Anda membuat Endpoint VPC Antarmuka dengan AWS PrivateLink. Dengan demikian, Anda dapat terhubung ke instance AWS RDS tanpa gateway internet, gateway penafsiran alamat jaringan (NAT), atau bahkan IP publik.
Sekarang Anda akan mempelajari cara menggunakan fitur-fitur Cloud SQL untuk membangun dan menghubungkan database yang memperhitungkan keamanan ke aplikasi.
Ringkasan
Di lab ini, Anda akan mengonfigurasi server Cloud SQL dan mempelajari cara menghubungkan aplikasi ke server Cloud SQL via proxy melalui koneksi eksternal. Anda juga akan mengonfigurasi koneksi melalui link IP Pribadi yang menawarkan manfaat dalam hal performa dan keamanan. Aplikasi yang kami pilih untuk didemonstrasikan di lab ini adalah Wordpress. Namun, informasi dan praktik terbaik berlaku di aplikasi apa pun yang memerlukan Server SQL.
Di akhir lab ini, akan ada 2 instance aktif dari frontend Wordpress yang terhubung lewat 2 jenis koneksi berbeda ke backend instance SQL-nya masing-masing, sebagaimana yang ditunjukkan dalam diagram ini:
Tujuan
Di lab ini, Anda akan mempelajari cara melakukan tugas berikut:
Membuat database Cloud SQL
Mengonfigurasi virtual machine untuk menjalankan proxy
Membuat koneksi antara aplikasi dan Cloud SQL
Menghubungkan aplikasi ke Cloud SQL menggunakan alamat IP Pribadi
Penyiapan
Untuk setiap lab, Anda akan memperoleh project Google Cloud baru serta serangkaian resource selama jangka waktu tertentu, tanpa biaya.
Login ke Qwiklabs menggunakan jendela samaran.
Perhatikan waktu akses lab (misalnya, 1:15:00), dan pastikan Anda dapat menyelesaikannya dalam waktu tersebut.
Tidak ada fitur jeda. Bila perlu, Anda dapat memulai ulang lab, tetapi Anda harus memulai dari awal.
Jika sudah siap, klik Start lab.
Catat kredensial lab (Nama pengguna dan Sandi) Anda. Anda akan menggunakannya untuk login ke Google Cloud Console.
Klik Open Google Console.
Klik Use another account, lalu salin/tempel kredensial lab ini ke perintah yang muncul.
Jika menggunakan kredensial lain, Anda akan menerima pesan error atau dikenai biaya.
Setujui ketentuan dan lewati halaman resource pemulihan.
Tugas 1. Membuat database Cloud SQL
Dalam tugas ini, Anda akan mengonfigurasi server SQL berdasarkan praktik terbaik Google Cloud dan membuat koneksi IP Pribadi.
Pada Navigation menu (), klik SQL.
Klik Create instance.
Klik Choose MySQL.
Tentukan nilai berikut dan tetap gunakan nilai default untuk setelan lainnya:
Properti
Nilai
Instance ID
wordpress-db
Root password
ketikkan sandi
Region
Zone
Any
Database Version
MySQL 5.7
Catatan:
Catat sandi root; sandi ini nantinya akan digunakan untuk langkah berikutnya dan disebut sebagai [ROOT_PASSWORD].
Luaskan Show configuration options.
Perluas bagian Machine type.
Tentukan jumlah yang pas untuk vCPU dan memori. Untuk memilih Machine Type, klik menu dropdown, lalu telusuri opsi Anda.
Catatan: Beberapa poin yang perlu dipertimbangkan:
Mesin dengan inti bersama cocok untuk pembuatan prototipe dan tidak terlindung oleh SLA Cloud.
Batas throughput jaringan setiap vCPU untuk performa puncak adalah 250 MB/dtk. Setiap inti tambahan mampu meningkatkan batas jaringan, secara teori batasnya bisa mencapai 2.000 MB/dtk.
Dalam kaitannya dengan workload yang membutuhkan performa tingkat tinggi, seperti pemrosesan transaksi online (OLTP), panduan umum berfungsi untuk memastikan bahwa instance Anda punya cukup memori guna memuat seluruh set pekerjaan dan mengakomodasi jumlah koneksi yang aktif.
Untuk lab ini, pilih standard dari menu dropdown, lalu pilih 1 vCPU, 3.75 GB.
Selanjutnya, perluas bagian Storage lalu pilih Storage type dan Storage capacity.
Catatan: Beberapa poin yang perlu dipertimbangkan:
SSD (solid-state drive) adalah pilihan terbaik untuk sebagian besar kasus penggunaan. HDD (hard-disk drive) menawarkan performa yang lebih rendah, tetapi Anda bisa menghemat biaya penyimpanan secara signifikan. Oleh sebab itu, HDD mungkin bisa dijadikan pilihan untuk menyimpan data yang jarang diakses dan tidak memerlukan latensi yang sangat rendah.
Kapasitas penyimpanan dengan throughput-nya memiliki hubungan langsung.
Klik setiap opsi kapasitas untuk melihat pengaruhnya terhadap throughput. Reset opsi ke 10 GB.
Catatan:
Jika kapasitas penyimpanan disetel terlalu rendah dan peningkatan penyimpanan otomatis tidak diaktifkan, instance Anda berisiko kehilangan SLA-nya.
Luaskan bagian Connections.
Pilih Private IP.
Pada menu dropdown Network, pilih default.
Klik tombol Set up Connection yang muncul.
Di panel sebelah kanan, klik Enable API, klik Use an automatically allocated IP range, klik Continue, lalu klik Create Connection.
Klik Create Instance di bagian bawah halaman untuk membuat instance database.
Catatan:
Anda mungkin perlu menunggu sampai perubahan IP Pribadi tuntas diterapkan sebelum tombol Create bisa diklik.
Klik Check my progress untuk memverifikasi tujuan.
Membuat instance Cloud SQL
Tugas 2. Mengonfigurasi proxy pada virtual machine
Apabila aplikasi Anda berada di luar jaringan dan region yang terhubung dengan VPC yang sama dengan instance Cloud SQL Anda, gunakan proxy untuk mengamankan koneksi eksternalnya.
Untuk mengonfigurasi proxy, Anda memerlukan nama koneksi instance Cloud SQL.
Catatan:
Lab ini dilengkapi dengan 2 virtual machine yang sebelumnya sudah dikonfigurasi dengan Wordpress berikut dependensinya. Anda dapat melihat skrip startup dan akses akun layanan dengan mengklik nama virtual machine. Perhatikan bahwa kami menggunakan prinsip hak istimewa terendah dan hanya mengizinkan akses SQL untuk VM tersebut. Tersedia pula tag jaringan dan firewall yang sudah dikonfigurasi untuk mengizinkan port 80 dari host mana pun.
Pada Navigation menu (), klik Compute Engine.
Klik SSH di sebelah wordpress-proxy.
Download Proxy Cloud SQL dan setel agar proxy tersebut dapat dijalankan:
Untuk memulai proxy, Anda memerlukan nama koneksi dari instance Cloud SQL. Biarkan jendela SSH Anda tetap terbuka, lalu kembali ke Konsol Cloud.
Pada Navigation menu (), klik SQL.
Klik instance wordpress-db dan tunggu sampai tanda centang berwarna hijau muncul di sebelah namanya. Tanda centang ini menunjukkan bahwa instance tersebut sudah bisa dioperasikan (proses ini mungkin memerlukan waktu beberapa menit).
Catat Instance connection name (nama koneksi instance); nantinya, nama ini akan digunakan untuk menggantikan [SQL_CONNECTION_NAME].
Di samping itu, agar aplikasi dapat dijalankan, Anda perlu membuat tabel. Klik Databases.
Klik Create database, ketik wordpress, yaitu nama yang diharapkan oleh aplikasi, lalu klik Create.
Kembalilah ke jendela SSH, lalu simpan nama koneksi di variabel lingkungan. Ini akan mengganti [SQL_CONNECTION_NAME] dengan nama unik yang Anda salin di langkah sebelumnya:
export SQL_CONNECTION=[SQL_CONNECTION_NAME]
Untuk memverifikasi apakah variabel lingkungan sudah disetel atau belum, jalankan:
echo $SQL_CONNECTION
Nama koneksi akan muncul.
Untuk mengaktifkan koneksi proxy ke database Cloud SQL Anda dan mengirim proses ke latar belakang, jalankan perintah berikut:
Listening on 127.0.0.1:3306 for [SQL_CONNECTION_NAME]
Ready for new connections
Tekan ENTER.
Catatan:
Proxy akan memantau 127.0.0.1:3306 (localhost) dan proxy yang secara aman terhubung ke Cloud SQL Anda melalui tunnel aman menggunakan alamat IP eksternal mesin.
Klik Check my progress untuk memverifikasi tujuan.
Membuat database dan mengonfigurasi proxy pada Virtual Machine
Tugas 3. Menghubungkan aplikasi ke instance Cloud SQL
Dalam tugas ini, Anda akan menghubungkan aplikasi contoh ke instance Cloud SQL.
Konfigurasikan aplikasi Wordpress. Untuk mencari alamat IP eksternal virtual machine Anda, buat kueri metadatanya:
Buka alamat IP eksternal wordpress-proxy di browser Anda dan konfigurasikan aplikasi Wordpress.
Klik Let's Go.
Tentukan hal-hal berikut untuk mengganti [ROOT_PASSWORD] dengan sandi yang telah Anda konfigurasi sebelum mesin dibuat, dan pastikan setelan lainnya tetap dalam keadaan default:
Properti
Nilai
Username
root
Password
[ROOT_PASSWORD]
Database Host
127.0.0.1
Catatan:
Anda menggunakan 127.0.0.1, localhost sebagai IP Database karena proxy yang Anda jalankan memantau alamat ini dan mengalihkan traffic-nya ke server SQL dengan aman.
Klik Submit.
Setelah koneksi berhasil dibuat, klik Run the installation untuk membuat instance Wordpress berikut database-nya di Cloud SQL Anda. Proses ini mungkin memerlukan beberapa saat.
Isi informasi situs demo Anda dengan informasi acak, lalu klik Install Wordpress. Anda tidak perlu mengingat-ingat atau menggunakan informasi tersebut.
Catatan:
Penginstalan Wordpress mungkin memerlukan waktu hingga 3 menit karena semua data Wordpress harus disebar ke Server SQL Anda.
Setelah jendela 'Success!' muncul, hapus teks di sebelah kanan alamat IP di kolom URL browser web Anda, lalu tekan ENTER.
Blog Wordpress aktif pun muncul.
Tugas 4. Menghubungkan ke Cloud SQL via IP internal
Jika dapat menghosting aplikasi di region dan jaringan yang terhubung VPC yang sama dengan Cloud SQL, Anda bisa mendapatkan konfigurasi yang lebih aman dan andal menggunakan IP Pribadi.
Melalui IP Pribadi, Anda dapat meningkatkan performa dengan mengurangi latensi dan meminimalkan permukaan serangan instance Cloud SQL sebab Anda dapat berkomunikasi dengannya secara eksklusif lewat IP internal.
Di Konsol Cloud, pada Navigation menu (), klik SQL.
Klik wordpress-db.
Catat alamat IP Pribadi server Cloud SQL; nantinya, alamat ini akan menggantikan [SQL_PRIVATE_IP].
Pada Navigation menu, klik Compute Engine.
Catatan:
Perhatikan bahwa wordpress-private-ip terletak di us-central1, tempat Cloud SQL Anda berada. Dengan begitu, Anda dapat memperoleh koneksi yang lebih aman.
Salin alamat IP eksternal wordpress-private-ip, tempel ke jendela browser, lalu tekan ENTER.
Klik Let's Go.
Tentukan nilai berikut dan tetap gunakan nilai default untuk setelan lainnya:
Properti
Nilai
Username
root
Password
ketikkan [ROOT_PASSWORD] yang telah dikonfigurasi saat instance Cloud SQL dibuat
Database Host
[SQL_PRIVATE_IP]
Klik Submit.
Catatan:
Perhatikan bahwa kini Anda sedang membuat koneksi langsung ke IP Pribadi, bukan mengonfigurasi proxy. Koneksi tersebut bersifat pribadi, artinya tidak akan keluar ke internet. Dengan begitu, Anda bisa memperoleh performa serta keamanan yang lebih baik.
Klik Run the installation.
Jika jendela 'Already Installed!' muncul, artinya aplikasi Anda sudah terhubung ke server Cloud SQL lewat IP pribadi.
Pada kolom URL di browser web Anda, hapus teks di sebelah kanan alamat IP, lalu tekan ENTER.
Blog Wordpress aktif pun muncul.
Tugas 5. Ulasan
Di lab ini, Anda telah membuat database Cloud SQL dan mengonfigurasinya untuk menggunakan baik koneksi eksternal melalui proxy yang aman maupun alamat IP Pribadi, yang lebih aman dan andal. Ingat, Anda hanya dapat menghubungkan via IP Pribadi seandainya aplikasi dan server Cloud SQL berada di region yang sama dan merupakan bagian dari jaringan VPC yang sama. Jika aplikasi dihosting di region, VPC, atau bahkan project lain, gunakan proxy untuk mengamankan koneksinya melalui koneksi eksternal.
Setelah Anda memiliki pemahaman yang lebih mendalam tentang cara membuat dan mengonfigurasi database di Cloud SQL, mari kita lihat beberapa persamaan dan perbedaan antara AWS RDS dan Google Cloud SQL.
Kesamaan:
Google Cloud SQL dan AWS RDS merupakan layanan terkelola, dan keduanya melakukan tugas berikut ini untuk Anda:
Update instance
Penginstalan dan patching software database
Membuat cadangan
Failover
Di Google Cloud SQL dan AWS RDS, instance database Anda didukung oleh virtual machine sehingga Anda dapat memilih jenis instance, ukuran, dan kapasitas penyimpanan yang sesuai dengan kebutuhan spesifik Anda.
Dengan kedua layanan ini, Anda dapat membuat koneksi aman ke instance database Anda melalui tunnel aman tanpa memerlukan jaringan resmi atau SSL. Untuk membuat koneksi aman ini, Anda menggunakan AWS PrivateLink di AWS, sedangkan di Google Cloud Anda menggunakan Proxy Auth Cloud SQL.
Kedua layanan ini mendukung mesin MySQL, PostgreSQL, dan SQL Server.
Perbedaan:
Selain engine server yang telah disebutkan dalam kesamaan yang ada, AWS RDS juga mendukung engine server Oracle dan MariaDB.
Kedua layanan ini dapat Anda gunakan untuk membuat koneksi pribadi antara instance DB dan resource Anda yang lain tanpa mengekspos traffic ke internet publik atau membuat koneksi NAT. Namun, cara Anda mengaktifkan fitur ini berbeda di antara kedua layanan ini:
Di AWS RDS, Anda membuat endpoint VPC AWS Private Link dan menyiapkannya sebagai target untuk instance DB Anda.
Di Google Cloud SQL, Anda mengaktifkan fitur IP Pribadi di opsi konfigurasi instance DB Anda.
Mengakhiri lab Anda
Setelah Anda menyelesaikan lab, klik Akhiri Lab. Google Cloud Skills Boost menghapus resource yang telah Anda gunakan dan membersihkan akun.
Anda akan diberi kesempatan untuk menilai pengalaman menggunakan lab. Pilih jumlah bintang yang sesuai, ketik komentar, lalu klik Submit.
Makna jumlah bintang:
1 bintang = Sangat tidak puas
2 bintang = Tidak puas
3 bintang = Netral
4 bintang = Puas
5 bintang = Sangat puas
Anda dapat menutup kotak dialog jika tidak ingin memberikan masukan.
Untuk masukan, saran, atau koreksi, gunakan tab Support.
Hak cipta 2020 Google LLC Semua hak dilindungi undang-undang. Google dan logo Google adalah merek dagang dari Google LLC. Semua nama perusahaan dan produk lain mungkin adalah merek dagang masing-masing perusahaan yang bersangkutan.
Lab membuat project dan resource Google Cloud untuk jangka waktu tertentu
Lab memiliki batas waktu dan tidak memiliki fitur jeda. Jika lab diakhiri, Anda harus memulainya lagi dari awal.
Di kiri atas layar, klik Start lab untuk memulai
Gunakan penjelajahan rahasia
Salin Nama Pengguna dan Sandi yang diberikan untuk lab tersebut
Klik Open console dalam mode pribadi
Login ke Konsol
Login menggunakan kredensial lab Anda. Menggunakan kredensial lain mungkin menyebabkan error atau dikenai biaya.
Setujui persyaratan, dan lewati halaman resource pemulihan
Jangan klik End lab kecuali jika Anda sudah menyelesaikan lab atau ingin mengulanginya, karena tindakan ini akan menghapus pekerjaan Anda dan menghapus project
Konten ini tidak tersedia untuk saat ini
Kami akan memberi tahu Anda melalui email saat konten tersedia
Bagus!
Kami akan menghubungi Anda melalui email saat konten tersedia
Satu lab dalam satu waktu
Konfirmasi untuk mengakhiri semua lab yang ada dan memulai lab ini
Gunakan penjelajahan rahasia untuk menjalankan lab
Gunakan jendela Samaran atau browser pribadi untuk menjalankan lab ini. Langkah ini akan mencegah konflik antara akun pribadi Anda dan akun Siswa yang dapat menyebabkan tagihan ekstra pada akun pribadi Anda.
Di lab ini, Anda akan membuat instance Cloud SQL dan instance VM klien. Setelah itu, Anda akan mengonfigurasi akses terenkripsi menggunakan sertifikat SSL.