Pernahkah anda berfikir bagaimana System Database yang dimiliki oleh Facebook atau Twitter yang mempunyai banyak pengguna di seluruh dunia ? Tentunya tidak cukup 1 Database saja untuk menyimpan milyaran data pengguna di seluruh dunia, pasti membutuhkan ruang yang cukup untuk menampungnya. Hal ini sebagai gambaran saja agar kita tahu .
Pada kesempatan kali ini saya akan menulis sedikit coretan mengenai instalasi dan konfigurasi XtraDB Cluster di Ubuntu 14.04
1) Masukkan GPG Key Percona Server
1
| sudo apt-key adv --keyserver keys.gnupg.net --recv-keys 1C4CBDCDCD2EFD2A |
2) Buka /etc/apt/sources.list menggunakan perintah nano atau lainnya, dan tambahkan baris ini di paling bawah.
1
2
| deb http: //repo .percona.com /apt precise main deb-src http: //repo .percona.com /apt precise main |
3) Lakukan update pad server dengan print
1
| sudo apt-get update |
4) Memasang Percona XtraDB Cluster 5.6
1
| sudo apt-get install percona-xtradb-cluster-56 |
5) Membuat 'sstuser' pada MySQL database. pertama anda harus masuk ke dalam mysql terlebih dahulu, biasanya perintahnya : mysql -u user -p lalu baru masukkan 3 perintah dibawah ini secara berurutan.
1
2
3
| mysql> CREATE USER ’sstuser’@’localhost’ IDENTIFIED BY ’sstpassword’; mysql> GRANT RELOAD, LOCK TABLES, REPLICATION CLIENT ON *.* TO ’sstuser’@’localhost’; mysql> FLUSH PRIVILEGES; |
6) Buat konfigurasii /etc/mysql/my.cnf di semuaa server yang akan dijadikan cluster . disini saya akan mengasumsikan menggunakan 2 server yang dijadikan cluster .Ubah 10.0.0.1,10.0.0.2 menjadi IP Adress yang akan dijadikan clustering.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
| [mysqld] # Path to Galera library wsrep_provider= /usr/lib/galera3/libgalera_smm .so # Cluster connection URL wsrep_cluster_address=gcomm: // 10.0.0.1,10.0.0.2 # In order for Galera to work correctly binlog format should be ROW binlog_format=ROW # MyISAM storage engine has only experimental support default_storage_engine=InnoDB # This changes how |InnoDB| autoincrement locks are managed and is a requirement for Galera innodb_autoinc_lock_mode=2 # Authentication information for SST. Use the username/password you created in the previous step. wsrep_sst_auth= "sstuser:sstpassword" # Data directory datadir= /var/lib/mysql # Temp directory tmpdir= /tmp # MySQL User user=mysql # Node #1 address wsrep_node_address=10.0.0.1 # SST method wsrep_sst_method=xtrabackup-v2 # Cluster name wsrep_cluster_name=lawu_cluster |
7) Restart MySQL pada server pertama (10.0.0.1)
1
| sudo service mysql restart-bootstrap |
8) Sekarang anda mask ke mysql dan pastikan anda melihat wresp_local_state, wresp_local_state_comment, wresp_cluster_size, wresp_cluster_status, wresp_connected and wresp_ready pada MySQL server 1 (10.0.0.1)
mysql> show status like 'wsrep%' ; +------------------------------+-------------------------------------+ | Variable_name | Value +------------------------------+-------------------------------------+ | wsrep_local_state_uuid | 8e4863b3-3c48-11e4-8c63-2be5c89c6340 | wsrep_local_state | 1 | wsrep_local_state_comment | Synced | wsrep_cluster_size | 1 | wsrep_cluster_status | Primary | wsrep_connected | ON | wsrep_ready | ON +------------------------------+-------------------------------------+ |
Jika sama berarti bootstrapped anda sudah berhasil.
8) Restart MySQL pada server yang kedua
1
| sudo service mysql restart |
9) Sekarang anda masuk ke mysql dan pastikan anda melihat wresp_local_state, wresp_local_state_comment, wresp_cluster_size, wresp_cluster_status, wresp_connected and wresp_ready pada MySQL server 2 (10.0.0.2)
mysql> show status like 'wsrep%' ; +------------------------------+-------------------------------------+ | Variable_name | Value +------------------------------+-------------------------------------+ | wsrep_local_state_uuid | 8e4863b3-3c48-11e4-8c63-2be5c89c6340 | wsrep_local_state | 1 | wsrep_local_state_comment | Synced | wsrep_cluster_size | 3 | wsrep_cluster_status | Primary | wsrep_connected | ON | wsrep_ready | ON +------------------------------+-------------------------------------+ |
Jika sama berarti anda sudah berhasil
10) Sekarang coba anda buatt database di salah sat server dan Kemudiann cek pada kedua server tersebut dengan masuk ke mysql masing2 , secara otomatis jika anda membuat database kan masuk ke dalam semua server cluster.
Sekian dari saya , akan saya lanjutkan di postingan berikutnya.. semoga bermanfaat
Clustering Database Dengan Percona XtraDB Cluster di Ubuntu 14.04
4/
5
Oleh
Jordan Andrean