Dalam beberapa tahun terakhir, penggunaan infrastruktur platform telah bergeser dari komputasi lokal ke komputasi awan. Hal ini didasarkan pada tidak adanya cost capital cost yang harus dikeluarkan oleh perusahaan jika digunakan pada saat mengimplementasikan infrastruktur TI. Komputasi awan memberikan fleksibilitas di setiap lini sumber daya yaitu. pada sumber daya manusia, energi, penghematan waktu.
Komputasi awan memudahkan organisasi untuk melakukan perencanaan TI, pelaksanaan, pemeliharaan platform untuk mendukung kepentingan bisnis.
Tetapi keduanya memiliki kesamaan, kami harus memikirkan BCP (Business Continuity Plan) dan Disaster Recovery Plan (DRP) saat menggunakan cloud. Penyimpanan data menjadi kritis ketika kita berbicara tentang DRP, seberapa cepat kita melakukan pemulihan (Recovery Point Objective) ketika terjadi bencana. Arsitektur multi-cloud memainkan peran besar ketika kita ingin merancang dan mengimplementasikan infrastruktur di lingkungan cloud. Di blog ini, kami meninjau penerapan multi-cloud terkait untuk menyimpan data di MySQL.
Pengaturan Lingkungan di Cloud
Kali ini kami menggunakan Amazon Web Service (AWS), yang banyak digunakan oleh perusahaan, dan Google Cloud Platform (GCP) sebagai penyedia cloud kedua dalam pengaturan database multi-cloud. Membuat instans (istilah yang digunakan dalam komputasi awan untuk Mesin Virtual baru) di AWS sangat mudah.
AWS menggunakan istilah Amazon EC2 (Elastic Compute Cloud) untuk layanan instans komputasi mereka. Anda dapat masuk ke AWS, lalu pilih layanan EC2.
Berikut adalah tampilan instance yang telah di-provisioning dengan EC2.
Untuk alasan keamanan, yang merupakan perhatian terbesar dari layanan cloud, pastikan kami hanya mengaktifkan port yang diperlukan saat menerapkan ClusterControl, seperti port SSH (22), xtrabackup (9999), dan database ( 3306) diamankan tetapi dapat dijangkau di seluruh penyedia cloud. Salah satu cara untuk mengimplementasikan konektivitas tersebut adalah dengan membuat VPN yang akan menghubungkan instans di AWS dengan instans di GCP. Berkat desain seperti itu, kami dapat memperlakukan semua instans sebagai lokal, meskipun mereka berada di penyedia cloud yang berbeda. Kami tidak akan menjelaskan dengan tepat proses pengaturan VPN oleh karena itu harap diingat bahwa penerapan yang kami sajikan tidak cocok untuk produksi dunia nyata. Ini hanya untuk menggambarkan kemungkinan yang datang dengan ClusterControl dan penyiapan multi-cloud.
Setelah menyelesaikan Penyiapan AWS EC2, lanjutkan dengan menyiapkan instans komputasi di GCP, di GCP layanan komputasi disebut Compute Engine.
Dalam contoh ini, kita akan membuat 1 instance di cloud GCP yang akan digunakan sebagai salah satu Budak.
Jika sudah selesai, maka akan ditampilkan di konsol manajemen seperti di bawah ini:
Pastikan Anda mengamankan dan mengaktifkan port SSH port (22), xtrabackup ( 9999) dan basis data (3306).
Setelah men-deploy instance di AWS dan GCP, kita harus melanjutkan penginstalan ClusterControl di salah satu instance di penyedia cloud, tempat master akan berada. Dalam contoh penyiapan ini, kami akan menggunakan salah satu instans AWS sebagai Master.
Menerapkan Replikasi MySQL di Amazon Web Service
Untuk menginstal ClusterControl Anda harus mengikuti petunjuk sederhana yang dapat Anda temukan di situs web Somenines. Setelah ClusterControl aktif dan berjalan di penyedia cloud tempat master kita akan berada (dalam contoh ini kita akan menggunakan AWS untuk node master kita), kita dapat memulai penerapan Replikasi MySQL menggunakan ClusterControl. Berikut adalah langkah-langkah yang perlu Anda ambil untuk menginstal cluster replikasi MySQL:
Buka ClusterControl lalu pilih MySQL Replication, Anda akan melihat tiga form yang harus diisi untuk keperluan instalasi
Pengaturan Umum dan SSH
Masukkan SSH User, Key and Password, SSH Port dan nama cluster
Kemudian pilih 'Lanjutkan'
Menentukan Server MySQL
Pilih vendor, nomor versi, dan kata sandi root MySQL, lalu klik 'Lanjutkan'
Menentukan Topologi
Seperti yang Anda ingat, kami memiliki dua node yang dibuat di AWS. Kita bisa menggunakan keduanya di sini. Satu akan menjadi tuan kita, yang lain harus ditambahkan sebagai budak. Kemudian kita dapat melanjutkan dengan 'Menyebarkan'
Jika Anda mau, dan jika konektivitas lintas-cloud sudah ada, Anda juga dapat menyetel alamat IP Instance GCP di bawah 'Tambahkan slave ke master A' lalu lanjutkan dengan ' Menyebarkan'. Dengan cara ini, ClusterControl akan men-deploy master dan kedua slave secara bersamaan.
Setelah memulai penerapan, Anda dapat memantau kemajuannya di tab Aktivitas. Anda dapat melihat contoh pesan kemajuan di bawah ini. Sekarang saatnya menunggu sampai pekerjaan selesai.
Setelah selesai, Anda dapat melihat Cluster yang baru dibuat bernama “Cloud Replikasi MySQL”.
Jika Anda telah menambahkan node GCP sebagai budak kedua di wizard penerapan, Anda telah menyelesaikan penyiapan Master-Slave antara Instans AWS dan GCP.
Jika tidak, Anda dapat menambahkan slave GCP ke cluster yang sedang berjalan. Harap pastikan bahwa konektivitas sudah terpasang sebelum melanjutkan lebih jauh.
Tambahkan Budak Baru dari Google Cloud Platform
Setelah Replikasi MySQL di AWS dibuat, Anda dapat melanjutkan dengan menambahkan node di GCP sebagai slave baru. Anda dapat melakukannya dengan melakukan langkah-langkah berikut::
- Pada daftar cluster, temukan cluster baru Anda, lalu klik dan pilih ‘Tambahkan Budak Replikasi’
-
- Wizard Add Replication Slave' akan muncul, seperti yang Anda lihat di bawah.
- Lanjutkan dengan memilih IP Instance Master (terletak di AWS) dan memasukkan alamat IP dan Port instance GCP yang ingin Anda gunakan sebagai slave di kotak 'Slave Hostname / IP'. Setelah Anda mengisi semuanya, Anda dapat melanjutkan dengan mengklik 'Tambahkan Budak Replikasi'.
Seperti sebelumnya, Anda dapat memantau kemajuan di tab aktivitas. Sekarang saatnya menunggu sampai pekerjaan selesai.
Setelah penerapan selesai, kita dapat memeriksa cluster di tab topologi.
Anda dapat melihat topologi cluster Master-Slave kami di bawah ini.
Seperti yang Anda lihat, kami memiliki master dan satu budak di AWS dan kami juga memiliki slave di GCP, yang memudahkan database kami untuk bertahan dari gangguan apa pun yang terjadi di salah satu penyedia cloud kami.
Kesimpulan
Untuk ketersediaan layanan database yang tinggi, penerapan multi-cloud mengambil peran yang sangat penting untuk mewujudkannya. ClusterControl dibuat untuk menavigasi proses ini dan memudahkan pengguna untuk mengelola penerapan multi-cloud.
Salah satu hal penting yang perlu diperhatikan saat melakukan Multi-Cloud Deployment adalah aspek keamanan. Seperti yang kami sebutkan sebelumnya, Anda dapat mengatur Situs VPN ke Situs antara dua penyedia cloud sebagai praktik terbaik yang dapat diterapkan. Ada juga opsi lain seperti terowongan SSH.