MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Menyebarkan Database Cloud dengan ClusterControl 1.6

ClusterControl 1.6 hadir dengan integrasi yang lebih erat dengan AWS, Azure, dan Google Cloud, sehingga sekarang dimungkinkan untuk meluncurkan instans baru dan menerapkan MySQL, MariaDB, MongoDB, dan PostgreSQL langsung dari antarmuka pengguna ClusterControl. Di blog ini, kami akan menunjukkan cara menerapkan cluster di Amazon Web Services.

Perhatikan bahwa fitur baru ini memerlukan dua modul yang disebut clustercontrol-cloud dan clustercontrol-clud . Yang pertama adalah daemon pembantu yang memperluas kemampuan komunikasi cloud CMON, sedangkan yang kedua adalah klien pengelola file untuk mengunggah dan mengunduh file di instans cloud. Kedua paket tersebut merupakan dependensi dari paket UI clustercontrol, yang akan diinstal secara otomatis jika tidak ada. Lihat halaman dokumentasi Komponen untuk detailnya.

Kredensial Cloud

ClusterControl memungkinkan Anda untuk menyimpan dan mengelola kredensial cloud Anda di bawah Integrasi (menu samping) -> Penyedia Cloud:

Platform cloud yang didukung dalam rilis ini adalah Amazon Web Services, Google Cloud Platform, dan Microsoft Azure. Di halaman ini, Anda dapat menambahkan kredensial cloud baru, mengelola yang sudah ada, dan juga terhubung ke platform cloud Anda untuk mengelola sumber daya.

Kredensial yang telah disiapkan di sini dapat digunakan untuk:

  • Kelola sumber daya awan
  • Menyebarkan database di awan
  • Unggah cadangan ke penyimpanan cloud

Berikut adalah apa yang akan Anda lihat jika Anda mengklik tombol "Kelola AWS":

Anda dapat melakukan tugas manajemen sederhana pada instans cloud Anda. Anda juga dapat memeriksa pengaturan VPC di bawah tab "AWS VPC", seperti yang ditunjukkan pada tangkapan layar berikut:

Fitur di atas berguna sebagai referensi, terutama saat menyiapkan instance cloud Anda sebelum Anda memulai penerapan database.

Penerapan Basis Data di Cloud

Di versi ClusterControl sebelumnya, penerapan basis data di cloud akan diperlakukan serupa dengan penerapan di host standar, di mana Anda harus membuat instance cloud sebelumnya dan kemudian memberikan detail instance dan kredensial di wizard "Deploy Database Cluster". Prosedur penerapan tidak menyadari adanya fungsionalitas dan fleksibilitas tambahan di lingkungan cloud, seperti IP dinamis dan alokasi nama host, alamat IP publik NAT-ed, elastisitas penyimpanan, konfigurasi jaringan cloud pribadi virtual, dan sebagainya.

Dengan versi 1.6, Anda hanya perlu menyediakan kredensial cloud, yang dapat dikelola melalui antarmuka "Penyedia Cloud" dan mengikuti wizard penerapan "Deploy in the Cloud". Dari ClusterControl UI, klik Deploy dan Anda akan disajikan dengan opsi berikut:

Saat ini, penyedia cloud yang didukung adalah tiga pemain besar - Amazon Web Service (AWS), Google Cloud, dan Microsoft Azure. Kami akan mengintegrasikan lebih banyak penyedia di rilis mendatang.

Di halaman pertama, Anda akan disajikan dengan opsi Detail Cluster:

Di bagian ini, Anda harus memilih tipe cluster yang didukung, MySQL Galera Cluster, MongoDB Replica Set atau PostgreSQL Streaming Replication. Langkah selanjutnya adalah memilih vendor yang didukung untuk tipe cluster yang dipilih. Saat ini, vendor dan versi berikut didukung:

  • Cluster MySQL Galera - Percona XtraDB Cluster 5.7, MariaDB 10.2
  • Cluster MongoDB - MongoDB 3.4 oleh MongoDB, Inc dan Server Percona untuk MongoDB 3.4 oleh Percona (hanya set replika).
  • Kluster PostgreSQL - PostgreSQL 10.0 (hanya replikasi streaming).

Pada langkah selanjutnya, Anda akan disajikan dialog berikut:

Di sini Anda dapat mengonfigurasi jenis cluster yang dipilih. Pilih jumlah node. Nama Cluster akan digunakan sebagai tag instans, sehingga Anda dapat dengan mudah mengenali penerapan ini di dasbor penyedia cloud Anda. Tidak ada ruang yang diperbolehkan dalam nama cluster. My.cnf Template adalah file konfigurasi template yang akan digunakan ClusterControl untuk menyebarkan cluster. Itu harus berada di bawah /usr/share/cmon/templates pada host ClusterControl. Bidang lainnya cukup jelas.

Dialog berikutnya adalah memilih kredensial cloud:

Anda dapat memilih kredensial cloud yang ada atau membuat kredensial baru dengan mengklik tombol "Tambah Kredensial Baru". Langkah selanjutnya adalah memilih konfigurasi mesin virtual:

Sebagian besar pengaturan dalam langkah ini diisi secara dinamis dari penyedia cloud dengan kredensial yang dipilih. Anda dapat mengonfigurasi sistem operasi, ukuran instans, setelan VPC, jenis dan ukuran penyimpanan, dan juga menentukan lokasi kunci SSH pada host ClusterControl. Anda juga dapat membiarkan ClusterControl menghasilkan kunci baru khusus untuk instance ini. Saat mengklik tombol "Tambah Baru" di sebelah Virtual Private Cloud, Anda akan disajikan formulir untuk membuat VPC baru:

VPC adalah infrastruktur jaringan logis yang Anda miliki dalam platform cloud Anda. Anda dapat mengonfigurasi VPC dengan memodifikasi rentang alamat IP-nya, membuat subnet, mengonfigurasi tabel rute, gateway jaringan, dan setelan keamanan. Sebaiknya gunakan infrastruktur database Anda di jaringan ini untuk isolasi, keamanan, dan kontrol perutean.

Saat membuat VPC baru, tentukan nama VPC dan blok alamat IPv4 dengan subnet. Kemudian, pilih apakah IPv6 harus menjadi bagian dari jaringan dan opsi sewa. Anda kemudian dapat menggunakan jaringan virtual ini untuk infrastruktur database Anda.

Langkah terakhir adalah ringkasan penerapan:

Pada tahap ini, Anda harus memilih subnet mana di bawah jaringan virtual terpilih yang Anda inginkan untuk menjalankan database. Perhatikan bahwa subnet yang dipilih HARUS memiliki alamat IPv4 publik yang ditetapkan secara otomatis. Anda juga dapat membuat subnet baru di bawah VPC ini dengan mengklik tombol "Tambah Subnet Baru". Verifikasi apakah semuanya sudah benar dan tekan tombol "Deploy Cluster" untuk memulai penerapan.

Anda kemudian dapat memantau kemajuan dengan mengklik Aktivitas -> Pekerjaan -> Buat Cluster -> Detail Pekerjaan Lengkap:

Tergantung pada koneksinya, diperlukan waktu 10 hingga 20 menit untuk menyelesaikannya. Setelah selesai, Anda akan melihat cluster database baru yang terdaftar di bawah dashboard ClusterControl. Untuk kluster replikasi streaming PostgreSQL, Anda mungkin perlu mengetahui alamat IP master dan slave setelah penerapan selesai. Cukup buka tab Nodes dan Anda akan melihat alamat IP publik dan pribadi pada daftar node di sebelah kiri:

Cluster database Anda sekarang diterapkan dan berjalan di AWS.

Saat ini, penskalaan bekerja mirip dengan host standar, di mana Anda perlu membuat instance cloud secara manual sebelumnya dan menentukan host di bawah ClusterControl -> pilih cluster -> Add Node.

Di bawah tenda, proses penerapan melakukan hal berikut:

  1. Buat instance cloud
  2. Mengonfigurasi grup dan jaringan keamanan
  3. Verifikasi konektivitas SSH dari ClusterControl ke semua instance yang dibuat
  4. Menyebarkan database di setiap instance
  5. Mengonfigurasi tautan pengelompokan atau replikasi
  6. Daftarkan penerapan ke ClusterControl

Perhatikan bahwa fitur ini masih dalam versi beta. Namun demikian, Anda dapat menggunakan fitur ini untuk mempercepat lingkungan pengembangan dan pengujian dengan mengontrol dan mengelola cluster database di penyedia cloud yang berbeda dari satu antarmuka pengguna.

Cadangan Basis Data di Cloud

Fitur ini telah ada sejak ClusterControl 1.5.0, dan sekarang kami menambahkan dukungan untuk Azure Cloud Storage. Ini berarti Anda sekarang dapat mengunggah dan mengunduh cadangan yang dibuat di ketiga penyedia cloud utama (AWS, GCP, dan Azure). Proses pengunggahan terjadi tepat setelah cadangan berhasil dibuat (jika Anda mengaktifkan "Unggah Cadangan ke Cloud") atau Anda dapat mengklik tombol ikon awan dari daftar cadangan secara manual:

Anda kemudian dapat mengunduh dan memulihkan cadangan dari cloud, jika Anda kehilangan penyimpanan cadangan lokal, atau jika Anda perlu mengurangi penggunaan ruang disk lokal untuk cadangan Anda.

Batasan Saat Ini

Ada beberapa batasan yang diketahui untuk fitur penerapan cloud, seperti yang dinyatakan di bawah ini:

  • Saat ini tidak ada 'akuntansi' untuk instans cloud. Anda harus menghapus instance cloud secara manual jika menghapus cluster database.
  • Anda tidak dapat menambahkan atau menghapus node secara otomatis dengan instance cloud.
  • Anda tidak dapat menerapkan penyeimbang beban secara otomatis dengan instance cloud.

Kami telah menguji fitur ini secara ekstensif di banyak lingkungan dan pengaturan, tetapi selalu ada kasus sudut yang mungkin kami lewatkan. Untuk informasi lebih lanjut, silakan lihat log perubahan.

Selamat mengelompokkan di awan!


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Agregasi Mongodb $group, batasi panjang array

  2. Langkah-langkah untuk Menginstal MongoDB di Amazon Linux

  3. Bagaimana cara streaming Hasil Kueri MongoDB dengan nodejs?

  4. Hitung rata-rata bidang dalam dokumen/array yang disematkan

  5. Objek MongoDB Berseri sebagai JSON