Skip to main content

Cài Đặt Redis

1. Cài Đặt Redis

1.1 Cài Đặt Redis từ APT trên Ubuntu

# Cập nhật package list
sudo apt update

# Cài đặt Redis
sudo apt install redis-server

# Cấu hình Redis để chạy với systemd
sudo nano /etc/redis/redis.conf

# Tìm và sửa dòng supervised từ no thành systemd
supervised systemd

# Khởi động lại Redis
sudo systemctl restart redis.service

1.2 Cài Đặt Redis Phiên Bản Cũ (4.0.9)

# Cập nhật package list
sudo apt update

# Cài đặt các dependencies
sudo apt install -y build-essential tcl pkg-config

# Tải source code Redis 4.0.9
wget http://download.redis.io/releases/redis-4.0.9.tar.gz
tar xzf redis-4.0.9.tar.gz
cd redis-4.0.9

# Biên dịch Redis
make
make test
sudo make install

# Tạo thư mục cấu hình
sudo mkdir /etc/redis
sudo cp redis.conf /etc/redis/

Tạo systemd service:

sudo nano /etc/systemd/system/redis.service

Thêm nội dung sau vào file redis.service:

[Unit]
Description=Redis In-Memory Data Store
After=network.target

[Service]
User=redis
Group=redis
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
ExecStop=/usr/local/bin/redis-cli shutdown
Restart=always

[Install]
WantedBy=multi-user.target

Thiết lập user và thư mục:

# Tạo user redis
sudo adduser --system --group --no-create-home redis

# Tạo thư mục data
sudo mkdir /var/lib/redis
sudo chown redis:redis /var/lib/redis
sudo chmod 770 /var/lib/redis

# Khởi động Redis
sudo systemctl start redis
sudo systemctl enable redis

# Kiểm tra version
redis-server --version
# Kết quả mong muốn: Redis server v=4.0.9 sha=00000000:0 malloc=jemalloc-3.6.0 bits=64 build=9435c3c2879311f3
Lưu ý quan trọng
  • Phiên bản 4.0.9 là phiên bản cũ, có thể có các lỗ hổng bảo mật
  • Chỉ sử dụng phiên bản này nếu có yêu cầu tương thích đặc biệt
  • Nên cân nhắc sử dụng phiên bản mới hơn cho môi trường production

2. Kiểm Tra Cài Đặt

# Kiểm tra status service
sudo systemctl status redis

# Kết nối vào Redis CLI
redis-cli
127.0.0.1:6379> ping
PONG

# Kiểm tra version
redis-cli info server | grep redis_version
redis_version:4.0.9

3. Cấu Hình Cơ Bản

# Backup file cấu hình
sudo cp /etc/redis/redis.conf /etc/redis/redis.conf.bak

# Chỉnh sửa file cấu hình
sudo nano /etc/redis/redis.conf

Các thông số quan trọng cần cấu hình:

# Network
bind 127.0.0.1
port 6379
protected-mode yes

# Memory
maxmemory 2gb
maxmemory-policy allkeys-lru

# Persistence
save 900 1
save 300 10
save 60 10000

# Security
requirepass your_strong_password
Cảnh báo bảo mật

Luôn đặt mật khẩu mạnh cho Redis khi triển khai production. Tham khảo thêm tại Bảo Mật Redis

4. Tối Ưu Hiệu Suất

4.1 Cấu Hình Hệ Thống

# Tăng giới hạn file descriptors
sudo nano /etc/sysctl.conf

Thêm các dòng sau:

net.core.somaxconn = 65535
vm.overcommit_memory = 1

4.2 Tối Ưu Redis

Trong redis.conf:

# Performance tuning
maxclients 10000
timeout 300
tcp-keepalive 300
databases 16

# Memory management
maxmemory-samples 5
activerehashing yes

5. Xử Lý Sự Cố

5.1 Các Lỗi Thường Gặp

LỗiNguyên NhânGiải Pháp
Cannot connectRedis không chạyKiểm tra status service
Permission deniedSai mật khẩuXác nhận lại requirepass
Memory errorHết RAMKiểm tra maxmemory setting

5.2 Kiểm Tra Logs

# Xem logs Redis
sudo tail -f /var/log/redis/redis-server.log

6. Monitoring

6.1 Các Lệnh Giám Sát

# Thông tin về memory
redis-cli info memory

# Thông tin về clients
redis-cli info clients

# Các thống kê
redis-cli info stats

6.2 Công Cụ Monitoring

  • Redis Commander
  • RedisInsight
  • Prometheus với Redis Exporter

7. Các Distro Khác

7.1 RHEL-based (CentOS, RHEL, Fedora)

# Thêm EPEL repository
sudo yum install epel-release

# Cài đặt Redis
sudo yum install redis

# Khởi động Redis
sudo systemctl start redis
sudo systemctl enable redis
Lưu ý về các distro
  1. Debian-based (Debian, Ubuntu, Kali Linux):

    • Sử dụng APT package manager
    • File cấu hình tại /etc/redis/redis.conf
  2. RHEL-based (CentOS, RHEL, Fedora):

    • Sử dụng YUM/DNF package manager
    • File cấu hình tại /etc/redis.conf

Tài Liệu Tham Khảo