- Môi trường: =====
CentOS 6.7, redis-6.2.6
- Mô hình cụm: =====
5 master + 20 slave + 5 backup (tức là: 1 master - 4 slave - 1 backup)
⭐3. Kiểm tra môi trường máy chủ và cài đặt
Kiểm tra xem máy chủ đã cài đặt
gccchưa
rpm -q gcc
Nếu chưa cài đặt, thực hiện cài đặt
gcc
yum install -y gcc
- Tải xuống Redis =========
Truy cập trang web chính thức của Redis tại địa chỉ https://redis.io/download
redis-6.2.6.tar.gz
-
Upload file
redis-6.2.6.tar.gzlên thư mục/tooltrên máy chủ (có thể chọn thư mục khác) ============================================= -
Giải nén
redis-6.2.6.tar.gz========================
tar -zxvf redis-6.2.6.tar.gz
- Cài đặt ====
cd /tool/redis-6.2.6
make
make PREFIX=/usr/local/redis install
- Tạo thư mục cho cụm =========
mkdir -p /tool/redis/redis-cluster/8001 /tool/redis/redis-cluster/8002 /tool/redis/redis-cluster/8003 /tool/redis/redis-cluster/8004 /tool/redis/redis-cluster/8005
- Sao chép cấu hình mặc định sang 8001 ==============
cp /tool/redis-6.2.6/redis.conf /tool/redis/redis-cluster/8001
- Cấu hình tham số =========
port 8001
daemonize yes
pidfile "/var/run/redis_8001.pid"
# Thư mục lưu trữ dữ liệu, cần chỉ định khác nhau để tránh mất dữ liệu
dir /tool/redis/redis-cluster/8001/
# Bật chế độ cụm
cluster-enabled yes
# Tệp cấu hình cụm, tên 800x nên khớp với cổng
cluster-config-file nodes-8001.conf
# Thời gian chờ mất kết nối
cluster-node-timeout 5000
# Hủy bỏ ràng buộc IP
#bind 127.0.0.1
# Tắt chế độ bảo vệ
protected-mode no
# Bật ghi AOF
appendonly yes
# Thêm cấu hình sau để thiết lập mật khẩu (nếu cần):
# Thiết lập mật khẩu truy cập Redis
requirepass matkhau_redis
# Thiết lập mật khẩu giữa các nút cụm
masterauth matkhau_redis
- Sao chép cấu hình 8001 sang 8002 (8003, 8004, 8005 tương tự) ======================================
cp /tool/redis/redis-cluster/8001/redis.conf /tool/redis/redis-cluster/8002
- Sửa đổi cấu hình 8002 (8003, 8004, 8005 tương tự) =================================
cd /tool/redis/redis-cluster/8002/
vim redis.conf
:%s/8001/8002/g
- Khởi động dịch vụ Redis ============
/tool/redis-6.2.6/src/redis-server /tool/redis/redis-cluster/8001/redis.conf
/tool/redis-6.2.6/src/redis-server /tool/redis/redis-cluster/8002/redis.conf
/tool/redis-6.2.6/src/redis-server /tool/redis/redis-cluster/8003/redis.conf
/tool/redis-6.2.6/src/redis-server /tool/redis/redis-cluster/8004/redis.conf
/tool/redis-6.2.6/src/redis-server /tool/redis/redis-cluster/8005/redis.conf
Có thể khởi động nhiều tiến trình Redis
-
Các máy chủ khác thực hiện tương tự các bước trên ===========================
-
Khởi tạo cụm: ==========
Có hai cách để cấu hình cụm:
15-1. Phân bổ master-slave tự động (đơn giản hơn):
/tool/redis-6.2.6/src/redis-cli -a matkhau_redis --cluster create --cluster-replicas 5 **.**.**.33:8001 **.**.**.33:8002 **.**.**.33:8003 **.**.**.33:8004 **.**.**.33:8005 **.**.**.34:8001 **.**.**.34:8002 **.**.**.34:8003 **.**.**.34:8004 **.**.**.34:8005 **.**.**.36:8001 **.**.**.36:8002 **.**.**.36:8003 **.**.**.36:8004 **.**.**.36:8005 **.**.**.37:8001 **.**.**.37:8002 **.**.**.37:8003 **.**.**.37:8004 **.**.**.37:8005 **.**.**.38:8001 **.**.**.38:8002 **.**.**.38:8003 **.**.**.38:8004 **.**.**.38:8005 **.**.**.39:8001 **.**.**.39:8002 **.**.**.39:8003 **.**.**.39:8004 **.**.**.39:8005
-a : mật khẩu --cluster-replicas 1: mỗi master có 1 slave; --cluster-replicas 2: mỗi master có 2 slave
Cách này phân bổ master-slave tự động Không tận dụng tối đa tính năng cao sẵn sàng của nhiều máy chủ
15-2. Phân bổ master-slave thủ công
Tạo 5 nút master
/tool/redis-6.2.6/src/redis-cli -a matkhau_redis --cluster create **.**.**.33:8001 **.**.**.34:8001 **.**.**.36:8001 **.**.**.37:8001 **.**.**.38:8001 --cluster-replicas 0
Thêm từng nút slave vào master cụ thể
/tool/redis-6.2.6/src/redis-cli -a matkhau_redis --cluster add-node **.**.**.33:8002 **.**.**.33:8001 --cluster-slave --cluster-master-id 0f22951a5acfab105eba1a8c52296fa5b256cbb4
add-node: nút slave --cluster-master-id: ID master tương ứng
- Kiểm tra cụm =======
Kết nối cụm
/tool/redis-6.2.6/src/redis-cli -a matkhau_redis -c -h **.**.**.33 -p 8001
Xem thông tin cụm
cluster info
cluster_slots_ok: vị trí slot cluster_size: số lượng
Xem thông tin nút cụm
cluster nodes
master là nút chính slave là nút phụ thuộc, kèm theo ID master
- Tắt cụm =======
Tắt tất cả tiến trình Redis trên các máy chủ
- Sử dụng shutdown
/tool/redis-6.2.6/src/redis-cli -a matkhau_redis -c -h **.**.**.33 -p 8001 shutdown
- Tắt trực tiếp tiến trình
ps -ef | grep redis
pkill -9 redis
- Cấu hình lại cụm =========
Sau khi tắt cụm, xóa các tệp trong thư mục (trừ redis.conf) Khởi động lại theo quy trình cụm
- Kiểm tra cụm =======
Tạm dừng tiến trình các nút cụ thể Hoặc khởi động lại máy chủ Sử dụng lệnh cluster nodes để kiểm tra sự chuyển đổi tự động
- Kiểm tra hiệu năng cụm =========
/tool/redis-6.2.6/src/redis-benchmark -a matkhau_redis -h **.**.**.33 -p 8001 -c 100 -n 100000 --cluster -q
Kết thúc