Galera Cluster là một giải pháp mở rộng cho MySQL, cho phép triển khai cơ sở dữ liệu với khả năng đồng bộ hóa đa chiều, cung cấp tính sẵn sàng cao và cải thiện hiệu suất. Bài viết này sẽ hướng dẫn bạn cách sử dụng Galera Cluster để triển khai MySQL đồng bộ một cách chi tiết.
1. Giới Thiệu Về Galera Cluster
Galera Cluster là một giải pháp cung cấp khả năng sao chép đồng bộ cho MySQL, cho phép nhiều nút (nodes) hoạt động cùng nhau như một cơ sở dữ liệu duy nhất. Nó hỗ trợ chế độ sao chép đa chiều, nghĩa là mọi thay đổi trên một nút sẽ được đồng bộ hóa với tất cả các nút khác trong cluster.
2. Các Yêu Cầu Trước Khi Cài Đặt
Trước khi bắt đầu cài đặt Galera Cluster, hãy đảm bảo rằng bạn đã đáp ứng các yêu cầu sau:
- Cài đặt MySQL hoặc MariaDB (Galera hoạt động với cả hai).
- Mỗi nút cần phải có địa chỉ IP tĩnh.
- Các cổng cần thiết mở (3306 cho MySQL, 4567 cho Galera, 9200 cho SST).
3. Cài Đặt Galera Cluster
Bước 1: Cài Đặt MySQL/MariaDB
Trước tiên, bạn cần cài đặt MySQL hoặc MariaDB trên mỗi nút. Sử dụng lệnh sau để cài đặt:
# Đối với MySQL
sudo apt-get update
sudo apt-get install mysql-server
# Đối với MariaDB
sudo apt-get update
sudo apt-get install mariadb-server
Bước 2: Cài Đặt Galera
Cài đặt Galera trên mỗi nút:
sudo apt-get install galera
Bước 3: Cấu Hình Galera
Bạn cần chỉnh sửa tệp cấu hình MySQL để thêm thông tin cho Galera Cluster. Mở tệp cấu hình MySQL (thường là /etc/mysql/my.cnf
hoặc /etc/mysql/mysql.conf.d/mysqld.cnf
) và thêm các dòng sau:
[mysqld]
# Galera Configuration
wsrep_on=ON
wsrep_provider=/usr/lib/galera/libgalera_smm.so
wsrep_cluster_name="my_galera_cluster"
wsrep_node_address="IP_NODE" # Địa chỉ IP của nút này
wsrep_node_name="node_name" # Tên nút, có thể là tên máy chủ hoặc bất kỳ tên nào bạn muốn
wsrep_sst_method=rsync
Lưu ý rằng bạn cần thay thế IP_NODE
và node_name
bằng thông tin thực tế của nút.
Bước 4: Khởi Động Cluster
Ở Nút Đầu Tiên
Trên nút đầu tiên, bạn cần khởi động Galera Cluster bằng lệnh sau:
sudo systemctl start mysql
Ở Nút Khác
Trên các nút còn lại, khởi động Galera Cluster bằng lệnh sau:
sudo systemctl start mysql
4. Kiểm Tra Trạng Thái Cluster
Sau khi khởi động, bạn có thể kiểm tra trạng thái của Galera Cluster bằng cách sử dụng lệnh sau trong MySQL:
SHOW STATUS LIKE 'wsrep%';
Kết quả sẽ cho bạn biết trạng thái hiện tại của cluster, bao gồm số lượng nút, trạng thái đồng bộ hóa, và các thông tin liên quan khác.
5. Thực Hiện Các Thao Tác
Bây giờ bạn có thể thực hiện các thao tác trên MySQL như thường lệ. Mọi thay đổi sẽ tự động được đồng bộ hóa giữa các nút trong cluster.
Kết Luận
Galera Cluster là một giải pháp mạnh mẽ để triển khai MySQL với khả năng đồng bộ hóa và sẵn sàng cao. Với các bước cài đặt và cấu hình đơn giản, bạn có thể dễ dàng thiết lập một môi trường MySQL đồng bộ với Galera Cluster. Hãy chắc chắn kiểm tra trạng thái của cluster thường xuyên và thực hiện các biện pháp bảo trì cần thiết để đảm bảo hoạt động hiệu quả của hệ thống.