Cài đặt và triển khai cụm Redis trên Windows

Redis chính thức không hỗ trợ Windows, nhưng có thể sử dụng phiên bản do cộng đồng phát triển để thiết lập môi trường thử nghiệm.

1. Tải và cài đặt Redis cho Windows

Phiên bản Redis cho Windows có thể được tải từ kho lưu trữ GitHub: https://github.com/MSOpenTech/redis/releases

Sau khi giải nén, di chuyển thư mục vào vị trí mong muốn, ví dụ: D:\Redis.

Mở Command Prompt, điều hướng đến thư mục Redis và khởi động server bằng lệnh:

redis-server redis.windows.conf

Trong cửa sổ CMD khác, kết nối client bằng:

redis-cli.exe -h 127.0.0.1 -p 6379

2. Cài đặt môi trường Ruby

Công cụ quản lý cụm Redis (redis-trib.rb) viết bằng Ruby, do đó cần cài Ruby trước.

Tải trình cài đặt tại: https://rubyinstaller.org/downloads/ (chọn phiên bản phù hợp, ví dụ: rubyinstaller-3.1.0-x64.exe).

Khi cài, đảm bảo tích chọn các tùy chọn sau:

  • Add Ruby executables to your PATH
  • Associate .rb and .rbw files with this Ruby installation

Sau khi cài, kiểm tra biến môi trường PATH đã chứa đường dẫn tới thư mục bin của Ruby.

3. Thiết lập cụm Redis gồm 6 node

Một cụm Redis hoạt động ổn định cần tối thiểu 3 node master. Để thử nghiệm đầy đủ tính năng failover, nên dùng 6 node: 3 master + 3 replica.

Bước 1: Tạo thư mục cho từng node

Tạo 6 thư mục con trong thư mục Redis gốc, đặt tên theo cổng: 9000, 9001, ..., 9005.

Sao chép các file redis-server.exeredis.windows.conf vào từng thư mục này.

Bước 2: Cấu hình từng node

Chỉnh sửa file redis.windows.conf trong mỗi thư mục với nội dung sau (thay đổi cổng tương ứng):

port 9000
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 15000
appendonly yes

Bước 3: Khởi động các node

Vào từng thư mục và chạy lệnh:

redis-server.exe redis.windows.conf

Có thể tạo file batch (.bat) để khởi động nhanh, ví dụ cho node 9000:

@echo off
title Redis-9000
redis-server.exe redis.windows.conf

4. Cài đặt gem Redis cho Ruby

Đảm bảo đã cài RubyGems. Nếu chưa, tải từ https://rubygems.org/pages/download, giải nén và chạy:

ruby setup.rb

Sau đó cài driver Redis:

gem install redis

5. Thiết lập cụm bằng redis-trib.rb

Tải script redis-trib.rb từ: https://raw.githubusercontent.com/redis/redis/6.2/src/redis-trib.rb

Lưu file vào thư mục Redis gốc.

Chạy lệnh tạo cụm (mỗi master có 1 replica):

ruby redis-trib.rb create --replicas 1 ^
127.0.0.1:9000 127.0.0.1:9001 127.0.0.1:9002 ^
127.0.0.1:9003 127.0.0.1:9004 127.0.0.1:9005

Script sẽ phân phối 16384 hash slot đều cho 3 master node.

6. Kiểm tra cụm Redis

Kết nối vào cụm bằng chế độ cluster-aware:

redis-cli.exe -c -p 9000

Thử lưu giá trị:

SET user:name "Alice"

Hệ thống sẽ tự động xác định node chứa key dựa trên thuật toán: CRC16(key) % 16384

Ví dụ, key "name" có thể được lưu ở node 9001 nếu kết quả băm rơi vào dải slot mà node này quản lý.

Phân bổ slot mặc định cho 3 node master:

  • Node 9000: slot 0 – 5460
  • Node 9001: slot 5461 – 10922
  • Node 9002: slot 10923 – 16383

Thẻ: Redis Windows clustering ruby redis-trib

Đăng vào ngày 23 tháng 5 lúc 16:53