Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Tính khả dụng cao với ngân sách hạn hẹp - Triển khai Cụm MySQL Galera tối thiểu hai nút

Chúng tôi thường xuyên nhận được câu hỏi về cách thiết lập một cụm Galera chỉ với 2 nút.

Tài liệu chỉ rõ rằng bạn nên có ít nhất 3 nút Galera để tránh phân vùng mạng. Nhưng có một số lý do hợp lệ để xem xét triển khai 2 nút, ví dụ:nếu bạn muốn đạt được tính khả dụng cao của cơ sở dữ liệu nhưng có ngân sách hạn chế để chi tiêu cho nút cơ sở dữ liệu thứ ba. Hoặc có lẽ bạn đang chạy Galera trong môi trường phát triển / hộp cát và thích thiết lập tối thiểu.

Galera triển khai một thuật toán dựa trên túc số để chọn một thành phần chính mà qua đó nó thực thi tính nhất quán. Thành phần chính cần phải có đa số phiếu bầu, vì vậy trong hệ thống 2 nút, sẽ không có đa số dẫn đến chia rẽ bộ não. May mắn thay, có thể thêm một garbd (Galera Arbitrator Daemon), là một daemon không trạng thái nhẹ có thể hoạt động như một nút lẻ. Lỗi của trọng tài không ảnh hưởng đến hoạt động của cụm và một phiên bản mới có thể được gắn lại vào cụm bất kỳ lúc nào. Có thể có một số trọng tài viên trong cụm.

ClusterControl có hỗ trợ triển khai garbd trên các máy chủ không phải cơ sở dữ liệu.

Thông thường một cụm Galera cần ít nhất ba máy chủ để hoạt động đầy đủ, tuy nhiên, tại thời điểm triển khai, hai nút sẽ đủ để tạo một thành phần chính. Đây là các bước:

  1. Triển khai một cụm Galera gồm hai nút,
  2. Sau khi cụm đã được ClusterControl triển khai, hãy thêm garbd trên nút ClusterControl.

Bạn sẽ kết thúc với thiết lập bên dưới:

Triển khai Cụm Galera

Chuyển đến phần ClusterControl Deploy để triển khai cụm.

Sau khi chọn công nghệ mà chúng tôi muốn triển khai, chúng tôi phải chỉ định Người dùng, Khóa hoặc Mật khẩu và cổng để kết nối bằng SSH với máy chủ của chúng tôi. Chúng tôi cũng cần tên cho cụm mới của mình và nếu chúng tôi muốn ClusterControl cài đặt phần mềm và cấu hình tương ứng cho chúng tôi.

Sau khi thiết lập thông tin truy cập SSH, chúng ta phải chọn nhà cung cấp / phiên bản và chúng ta phải xác định mật khẩu quản trị cơ sở dữ liệu, datadir và cổng. Chúng tôi cũng có thể chỉ định kho lưu trữ nào sẽ sử dụng.

Mặc dù ClusterControl cảnh báo bạn rằng một cụm Galera cần một số lượng nút lẻ, chỉ thêm hai nút vào cụm.

Việc triển khai một cụm Galera sẽ kích hoạt một công việc ClusterControl có thể được theo dõi tại trang Việc làm.

Cài đặt Garbd

Sau khi triển khai xong, hãy cài đặt garbd trên máy chủ ClusterControl. Chúng tôi có tùy chọn để triển khai garbd từ ClusterControl, nhưng tùy chọn này sẽ không hoạt động nếu chúng tôi muốn triển khai nó trong cùng một máy chủ ClusterControl. Điều này là để tránh một số vấn đề liên quan đến các phiên bản cơ sở dữ liệu và gói phụ thuộc.

Vì vậy, chúng ta phải cài đặt nó theo cách thủ công, sau đó nhập garbd vào ClusterControl.

Hãy xem hướng dẫn cài đặt Percona Garbd trên CentOS 7.

Tạo tệp kho lưu trữ Percona:

$ vi /etc/yum.repos.d/percona.repo
[percona-release-$basearch]
name = Percona-Release YUM repository - $basearch
baseurl = http://repo.percona.com/release/$releasever/RPMS/$basearch
enabled = 1
gpgcheck = 0
[percona-release-noarch]
name = Percona-Release YUM repository - noarch
baseurl = http://repo.percona.com/release/$releasever/RPMS/noarch
enabled = 1
gpgcheck = 0
[percona-release-source]
name = Percona-Release YUM repository - Source packages
baseurl = http://repo.percona.com/release/$releasever/SRPMS
enabled = 0
gpgcheck = 0

Sau đó, cài đặt gói Percona XtraDB Cluster garbd:

$ yum install Percona-XtraDB-Cluster-garbd-57

Bây giờ, chúng ta cần cấu hình garbd. Đối với điều này, chúng tôi cần chỉnh sửa tệp / etc / sysconfig / garb:

$ vi /etc/sysconfig/garb
# Copyright (C) 2012 Codership Oy
# This config file is to be sourced by garb service script.
# A comma-separated list of node addresses (address[:port]) in the cluster
GALERA_NODES="192.168.100.192:4567,192.168.100.193:4567"
# Galera cluster name, should be the same as on the rest of the nodes.
GALERA_GROUP="Galera1"
# Optional Galera internal options string (e.g. SSL settings)
# see http://galeracluster.com/documentation-webpages/galeraparameters.html
# GALERA_OPTIONS=""
# Log file for garbd. Optional, by default logs to syslog
# Deprecated for CentOS7, use journalctl to query the log for garbd
# LOG_FILE=""

Thay đổi thông số GALERA_NODES và GALERA_GROUP theo cấu hình nút Galera. Chúng tôi cũng cần xóa dòng # XÓA NÀY SAU KHI CẤU HÌNH trước khi bắt đầu dịch vụ.

Và bây giờ, chúng tôi có thể bắt đầu dịch vụ trang phục:

$ service garb start
Redirecting to /bin/systemctl start garb.service

Bây giờ, chúng ta có thể nhập garbd mới vào ClusterControl.

Đi tới ClusterControl -> Chọn Cluster -> Thêm Load Balancer.

Sau đó, chọn phần Garbd và Nhập Garbd.

Ở đây chúng ta chỉ cần chỉ định tên máy chủ hoặc Địa chỉ IP và cổng của Garbd mới.

Việc nhập garbd sẽ kích hoạt một công việc ClusterControl có thể được theo dõi tại trang Việc làm. Sau khi hoàn thành, bạn có thể xác minh garbd đang chạy bằng biểu tượng dấu tích màu xanh lá cây ở thanh trên cùng:

Thế là xong!

Cụm Galera hai nút tối thiểu của chúng tôi hiện đã sẵn sàng!


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Gọi một tập lệnh PHP từ trình kích hoạt MySQL

  2. Làm cách nào để kiểm tra xem một giá trị có phải là số nguyên trong MySQL hay không?

  3. Cách xác định phiên bản MySQL

  4. Bảo mật cơ sở dữ liệu 101:Bảo mật trong cơ sở dữ liệu nguồn mở

  5. Chọn giá trị phổ biến nhất từ ​​một trường trong MySQL