Hướng dẫn cài redis trên centos 7 theo 3 cách khác nhau

Redis là một ứng dụng tuyệt vời khi được sử dụng làm cache. Nếu bạn chưa biết redis là gì thì có thể đọc bài viết này.

Hướng dẫn chi tiết cài redis trên centos 7

Để cài đặt redis trên centos 7 có nhiều cách: Cài từ Packet manager của Centos qua yum, Cài từ Mã nguồn redis, Cài redis qua docker image. Mỗi cách đều có ưu và nhược điểm riêng.

Cài redis trên centos 7 thông qua yum

Đây là cách đơn giản và nhanh nhất so với các cách khác. Trên centos, Redis được phân phối trên khá nhiều Repository. Ta sẽ cài redis qua Epel Repository.

Bước 1: Update server & Cài Epel repository

  • Update server:
  • Cài epel-release:
Bấm Y và enter để cài!

cài epel repository trên centos 7
Ảnh: cài epel repository trên centos 7 bằng lệnh yum

Bước 2: Cài redis bằng yum

Trước khi cài, có thể kiểm tra thông tin gói redis:

Kiểm tra gói cài redis trên centos 7 bằng yum info
Ảnh: Lệnh yum info redis kiểm tra thông tin gói cài đặt trên centos 7 trước khi cài vào server

Sau khi kiểm tra thông tin ta thấy gói cài đặt mặc định sẽ cài Redis version 3.2.12 từ Reposiotry Epel/X86_64 (do mình đang dùng centos 7 bản 64bit) và một số thông tin cơ bản về redis bằng tiếng Anh. Bạn có thể đọc hiểu kỹ hơn trong bài cơ bản về redis mà mình đã viết. Tiếp theo ta sẽ cài redis vào server centos 7 đang dùng bằng lệnh sau:

Bằng cách thêm -y vào trong lệnh yum, ta không cần xác nhận cài đặt nữa.

yum install redis centos 7

yum install redis on centos 7 command

Vậy là ta đã cài xong redis trên centos 7 bằng lệnh yum. Để chạy redis ta dùng lệnh sau:

Kiểm tra trạng thái của redis:

Cho phép redis chạy khi khởi động server:

start redis on centos 7Vậy là redis đã hoạt động và lắng nghe trên port mặc định 6379. Ta kiểm tra xem có kết nối được redis trên port 6379 không bằng cách dùng redis-cli

Sau khi kết nối, kiểm tra thông tin redis server bằng command:info

Yeah, vậy là redis đã được cài đặt thành công và hoạt động như muốn.

Trên đây mình sử dụng lệnh cơ bản nhất của redis là info để xem thông tin redis server. Bạn có thể tham khảo toàn bộ các lệnh của redis trên redis-cli tại đây.

Cách cài redis trên centos 7 bằng mã nguồn trực tiếp

Đây là cách cài redis trực tiếp từ mã nguồn. Trên trang chủ redis.io hướng dẫn sử dụng cách này. Cách này phức tạp hơn so với cách cài qua yum một chút vì đôi khi phải cài thêm một số gói build tools. Tuy nhiên cách này lại có thể áp dụng trên mọi hệ điều hành linux, thậm chí có thể build trên windows!

Các bước thực hiện như sau:

Bước 1: Tải gói cài đặt redis về server:

Tất cả các vesion redis bạn có thể tải tại đây: http://download.redis.io/releases/?C=S;O=A

Để đồng nhất với phiên bản trong phần cách cài qua yum nên mình tiếp tục dùng bản 3.2.12

file redis 3.2.12 source code

Bước 2: Tiến hành build redis bằng lệnh make:

  • Cài đặt gcc, make, tcl nếu chưa cài:
  • Build các thành phần của redis trước:
  • Build Redis:
  • Test bản build xem ok chưa:
build-redis-make-test-success

  • Cài đặt bản redis vừa build vào server:
Note: Khi chạy make mà lỗi thì kiểm tra lại bước cài build tools. Đồng thơi build trước các thư viện cho redis trong folder deps. Làm theo đúng trình tự thì sẽ ok.

  • Cài init script:
install init script for redis on centos 7

Script đã start luôn server. Bây giờ kiểm tra trạng thái redis đang chạy:

 

Note: Mình sử dụng các thông số mặc định khi chạy script cài redis nên tên service và đường dẫn có khác so với cài qua yum. Nếu bạn muốn sử dụng giống như cài qua yum thì khi chạy scrip install-server.sh bạn sửa các thông số theo giống như redis cài qua yum. Từng bước đều có dấu nhắc để bạn sửa các giá trị mặc định nên mình không mô tả chi tiết nữa.

Bây giờ bạn đã hoàn tất quá trình cài redis trên centos 7 qua source code. Các bước kiểm tra kết nối và thông tin server hoàn toàn như bước cài redis bằng lệnh yum.

Cách cài redis trên centos 7 bằng docker.

Hiện nay docker được sử dụng rất nhiều để cài các ứng dụng trên linux cũng như windows. Để tìm hiểu sâu hơn về docker, bạn có thể tham khảo bài viết docker là gì? trong chuyên mục learing center trên blog này. Trong nội dung này mình chỉ giới thiệu lệnh cài để các bạn làm theo từng bước có thể chạy được. Bắt đầu nhé

Bước 1: Cài docker trên centos 7

Cài docker trên centos 7 có vài cách, nhanh nhất là dùng lệnh này: curl -fsSL https://get.docker.com/ | sh  Nếu bạn muốn xem chi tiết các bước cài (qua yum) thì có thể xem bài viết khác cùng chuyên mục nhé.

  • Cài docker trên centos:
Quá trình cài đặt docker thành công:

cài docker trên centos 7 để cài redis th ành công

  • Chạy docker & Cho docker chạy khi khởi động:
  • Kiểm tra docker bằng lệnh docker info: (Output khá dài nên mình không post)
  • Test docker chạy ok chưa: docker run hello-world

Bước 2: Tải redis image tren docker hub và chạy: (vesion 3.2.12)

Trạng thái redis 3.2.12 khi chạy qua docker
Ảnh: Kiểm tra redis container chạy trên centos 7 (bấm vào ảnh để phóng to)

Note: Cách này có thể chạy nhiểu phiên bản redis trên cùng 1 server một cách đơn giản. Chú ý port cho từng phiên bản chạy phải khác nhau :). Toàn bộ phiên bản redis docker có thể xem tại : https://hub.docker.com/_/redis/

Đến dây bạn tiếp tục kiểm tra kết nối tới redis bằng redis-clie như trên phần đầu tiên nhé! => click vào đây để nhảy tới mục đó.

Vậy là bạn đã nắm được cách cài redis trên centos 7 rồi nhé. Tuy nhiên tới đây bạn mới chỉ chạy được redis trên localhost thôi (mặc định của redis). Nếu muốn kết nối tới server redis này từ một máy khác bạn phải sửa lại cấu hình redis để redis lắng nghe trên IP public(Nếu dùng VPS) hoặc dải IP mạng nội bộ của server. Tham khảo bước cuối cùng này nhé: Cấu hình để redis kết nối tới redis server từ server khác.

Cách Cấu hình để redis kết nối tới redis server từ server khác.

Bước 1: Sửa file cấu hình redis.

Tùy theo cách cài đặt redis mà vị trí file cấu hình cũng khác nhau. Nếu bạn theo cách đầu tiên thì hãy làm theo cách sau:

  • Mở và sửa file /etc/redis.conf
Tìm dòng bind 127.0.0.1 và sửa lại thành địa chỉ IP của server
Nếu server có nhiều IP thì bạn liệt kê những IP nào muốn cho redis chay. Hoặc nếu bind tất cả thì chọn:

Note: cách này khá nguy hiểm nếu bạn cấu hình firewall không tốt thì ai cũng có thể truy cập vào redis server của bạn và phá hoại.

Sau khi khi save file cấu hình lại thì bạn khởi động lại redis server bằng lệnh:

  • Kiểm tra lại redis đang listen trên IP nào:

Kết quả thế này :

netstat view redis status

Bước 2: Mở firewall để cho kết nối tới redis server từ server khác

Hầu như server linux nào cũng cài đặt sẵn một firewall nhằm bảo mật server. Trên centos 7 sử dụng firewalld service. Muốn cho kết nối tới redis server từ server khác ta phải mở port redis đang sử dụng. Mặc đinh redis chạy trên port 6379.

Lệnh sau sẽ mở port 6379 trên tất cả các card mạng và IP:

Note: Cách này không nên dùng trên VPS vì mở port trên IP public cho redis khá nguy hiểm, dễ bị ăn cắp thông tin vì ai có được IP của VPS đều có thể kết nối tới redis server. Ta chỉ nên mở firewall cho 1 card hoặc 1 dải IP nhất định được tin tưởng.

Muốn như vậy ta dùng rich-rules:

Lệnh trên sẽ mở cho tất cả cá IP trong dải 192.168.30.0/24 truy cập vào server. Bạn có thể sửa lệnh để mở cho dải ip khác hoặc chỉ 1 IP riêng biệt.

Để kiểm tra truy cập từ server khác vào redis bạn có thể dùng redis-cli -h [IP redis server] hoặc đơn giản là dung telnet:

TỔNG KẾT

Bài viết tuy khá dài nhưng cần thiết vì các lệnh trên linux thường cần những kiến thức khác nhau để hiểu được. Nếu bạn đọc bài viết tới đây, toiyeuit.com xin chúc mừng bạn đã cài thạo redis trên centos 7, thậm chí linux khác bạn cũng “xử ngon” rồi đó.

Một lần nữa, Blog Quản trị hệ thống cảm ơn bạn đã theo dõi bài viết. Chúc các bạn thành công. Mọi đóng góp xin gửi về [email protected] hoặc để lại comment bên dưới bài viết.

Chía sẻ bài viết
  •   
  •   
  •   
  •  
  •  

Related posts

About sysadmin

Check Also

Cách sử dụng tmux trên Linux (và tại sao nó lại tốt hơn màn hình)

Linux tmux lệnh là một bộ ghép kênh đầu cuối, như screen. Những người ủng …