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ỗi | Nguyên Nhân | Giải Pháp |
---|---|---|
Cannot connect | Redis không chạy | Kiểm tra status service |
Permission denied | Sai mật khẩu | Xác nhận lại requirepass |
Memory error | Hết RAM | Kiể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