SW/리눅스

CentOS 7 : Redis 설치, 구성 방법, 예제, 명령어

얇은생각 2021. 3. 20. 07:30
반응형

Redis는 오픈 소스 인 메모리 데이터 구조 저장소입니다. 데이터베이스, 캐시 및 메시지 브로커로 사용할 수 있으며 문자열, 해시, 목록, 세트 등과 같은 다양한 데이터 구조를 지원합니다. Redis는 모니터링, 알림 자동 페일오버를 포함하여 Redis Sentinel을 통해 고가용성을 제공합니다. 또한 Redis Cluster를 사용하여 여러 Redis 노드에 걸쳐 자동 파티셔닝을 제공합니다. 

CentOS 7에 Redis를 설치하고 구성하는 방법을 설명합니다. 

 

 

CentOS 7 : Redis 설치, 구성 방법, 예제, 명령어

 

 

전제조건

튜토리얼로 시작하기 전에 sudo 권한을 가진 사용자로 로그인했는지 확인합니다.

 

 

 

CentOS 7에 Redis 설치

Redis 패키지는 기본 CentOS 리포지토리에 포함되지 않습니다.입니다.

Remi 저장소에서 Redis 버전 5.0.2를 설치합니다.

설치가 매우 간단합니다. 아래 단계를 따르십시오. 

먼저 SSH 터미널에서 다음 명령을 실행하여 Remi 저장소를 사용하도록 설정합니다.

sudo yum install epel-release yum-utils
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum-config-manager --enable remi

 

 

다음을 입력하여 Redis 패키지를 설치합니다.

sudo yum install redis

 

 

설치가 완료되면 Redis 서비스를 시작하고 부팅 시 다음을 사용하여 자동으로 시작할 수 있도록 합니다.

sudo systemctl start redis
sudo systemctl enable redis

# Created symlink from /etc/systemd/system/multi-user.target.wants/redis.service to /usr/lib/systemd/system/redis.service.

 

 

서비스 상태를 확인하려면 다음 명령을 입력합니다.

 다음과 같은 것을 볼 수 있습니다.

sudo systemctl status redis

# You should see something like the following:
# 
# ● redis.service - Redis persistent key-value database
# Loaded: loaded (/usr/lib/systemd/system/redis.service; enabled; vendor preset: disabled)
# Drop-In: /etc/systemd/system/redis.service.d
#         └─limit.conf
# Active: active (running) since Sat 2018-11-24 15:21:55 PST; 40s ago
# Main PID: 2157 (redis-server)
# CGroup: /system.slice/redis.service
#         └─2157 /usr/bin/redis-server 127.0.0.1:6379

 

 

서버에서 IPv6을 사용하지 않도록 설정한 경우 Redis 서비스가 시작되지 않습니다.

이 시점에서 Redis가 설치되어 CentOS 7 서버에 실행되고 있습니다.

 

 

 

Redis 원격 액세스 구성

기본적으로 Redis는 원격 연결을 허용하지 않습니다. Redis가 실행 중인 시스템인 127.0.0.1(로컬 호스트)에서만 Redis 서버에 연결할 수 있습니다.

원격 호스트에서 Redis 서버에 연결하려는 경우에만 다음 단계를 수행하십시오. 응용프로그램과 Redis가 동일한 시스템에서 실행되는 단일 서버 설정을 사용하는 경우 원격 액세스를 사용 가능으로 설정하지 않아야 합니다. 

Redis가 원격 연결을 허용하도록 구성하려면 텍스트 편집기에서 Redis 구성 파일을 엽니다.

바인딩 127.0.0.1로 시작하는 줄을 찾고 127.0.0.1 뒤에 서버 개인 IP 주소를 추가합니다.

# /etc/redis.conf

# IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES
# JUST COMMENT THE FOLLOWING LINE.
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
bind 127.0.0.1 192.168.121.233

 

 

 

192.168.121.233을 IP 주소로 대체해야 합니다. 파일을 저장하고 편집기를 닫습니다. 

변경 내용을 적용하려면 Redis 서비스를 다시 시작하십시오.

sudo systemctl restart redis

 

 

다음 ss 명령을 사용하여 Redis 서버가 포트 6379의 개인 인터페이스에서 수신 중인지 확인합니다.

다음과 같은 것을 볼 수 있습니다.

ss -an | grep 6379

# tcp    LISTEN     0      128    192.168.121.233:6379            *:*
# tcp    LISTEN     0      128    127.0.0.1:6379                  *:*

 

 

그런 다음 TCP 포트 6379에서 원격 시스템의 트래픽을 사용하도록 설정하는 방화벽 규칙을 추가해야 합니다. 

방화벽 D를 사용하여 방화벽을 관리하고 192.168.121.0/24 서브넷에서 액세스를 허용한다고 가정하면 다음 명령을 실행합니다.

sudo firewall-cmd --new-zone=redis --permanent
sudo firewall-cmd --zone=redis --add-port=6379/tcp --permanent
sudo firewall-cmd --zone=redis --add-source=192.168.121.0/24 --permanent
sudo firewall-cmd --reload

 

 

위의 명령은 redis라는 새 영역을 만들고 포트 6379를 열고 개인 네트워크에서 액세스할 수 있도록 합니다.

이 때 Redis 서버는 TCP 포트 6379의 원격 연결을 허용합니다.

방화벽이 신뢰할 수 있는 IP 범위에서만 연결을 허용하도록 구성되어 있는지 확인합니다.

모든 것이 제대로 설정되었는지 확인하려면 Redis 서버에 명령줄 인터페이스를 제공하는 Redis-cli 유틸리티를 사용하여 원격 시스템에서 Redis 서버를 ping해 보십시오.

명령은 PONG의 응답을 반환해야 합니다. 

redis-cli -h <REDIS_IP_ADDRESS> ping

 

반응형