Redis 설치 및 환경 설정
2.1 Redis 설치 방법 (Linux, macOS, Windows, Docker)
Redis는 다양한 플랫폼에서 쉽게 설치할 수 있습니다. 아래에서는 각 환경별로 Redis를 설치하는 방법을 설명합니다.
Linux
- 패키지 관리자를 이용한 설치
대부분의 리눅스 배포판에서 Redis는 기본 패키지 관리자를 통해 설치할 수 있습니다. 예를 들어, Ubuntu에서는 아래 명령어로 설치할 수 있습니다:sudo apt update sudo apt install redis-server
- 소스 코드 컴파일
최신 버전의 Redis를 설치하려면 소스 코드로 설치할 수 있습니다:wget http://download.redis.io/redis-stable.tar.gz tar xzf redis-stable.tar.gz cd redis-stable make sudo make install
macOS
macOS에서는 Homebrew를 사용하여 쉽게 설치할 수 있습니다:
brew install redis
Windows
Windows에서는 Redis 공식 배포판이 없지만, Microsoft의 Redis port 또는 **WSL(Windows Subsystem for Linux)**을 사용하여 Redis를 실행할 수 있습니다. WSL을 사용하면 리눅스 환경에서 Redis를 실행할 수 있습니다.
wsl sudo apt install redis-server
Docker
Docker를 사용하여 Redis를 설치하는 방법:
docker run --name redis -p 6379:6379 -d redis
위 명령어는 Redis Docker 컨테이너를 실행하고, 6379 포트를 외부와 연결합니다.
2.2 Redis 구성 파일 (redis.conf
) 핵심 옵션 설명
Redis는 redis.conf
파일을 통해 다양한 설정을 구성할 수 있습니다. 주요 옵션들을 살펴보겠습니다.
주요 설정 항목
-
bind
Redis 서버가 연결을 허용할 IP 주소를 지정합니다. 기본적으로는127.0.0.1
로 설정되어 있어 로컬 연결만 가능합니다.bind 127.0.0.1
-
port
Redis가 사용할 포트를 설정합니다. 기본 포트는 6379입니다.port 6379
-
requirepass
Redis에 접속할 때 비밀번호를 요구하도록 설정합니다.requirepass yourpassword
-
maxmemory
Redis가 사용할 최대 메모리 크기를 설정합니다. 이를 설정하면, 메모리가 부족할 때 Redis가 자동으로 데이터를 삭제합니다.maxmemory 256mb
-
appendonly
AOF(Append Only File) 방식으로 데이터를 저장할지 설정합니다.yes
로 설정하면, 모든 쓰기 작업이 AOF 파일에 기록됩니다.appendonly yes
2.3 Redis 실행 및 기본 명령어 (redis-cli
)
Redis는 redis-server
명령어로 실행할 수 있습니다. 실행 후, redis-cli
를 사용하여 Redis와 상호작용할 수 있습니다.
Redis 실행
Redis 서버를 시작하려면, 터미널에서 아래 명령어를 입력합니다:
redis-server
redis-cli
기본 명령어
-
서버 상태 확인
redis-cli ping
응답으로
PONG
이 오면 Redis 서버가 정상적으로 실행되고 있다는 의미입니다. -
키-값 저장
redis-cli set mykey "Hello, Redis!"
-
값 조회
redis-cli get mykey
-
키 삭제
redis-cli del mykey
-
서버 정보 조회
redis-cli info
2.4 Systemd를 이용한 Redis 서비스 관리
Redis를 시스템 서비스로 관리하면, 서버 재부팅 시 Redis가 자동으로 실행되도록 할 수 있습니다.
Redis 서비스 등록
-
Redis 서비스 파일을
/etc/systemd/system/redis.service
경로에 생성합니다:[Unit] Description=Redis In-Memory Data Store After=network.target [Service] ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf ExecStop=/usr/local/bin/redis-cli shutdown Restart=always [Install] WantedBy=multi-user.target
-
서비스 등록 후 활성화합니다:
sudo systemctl daemon-reload sudo systemctl enable redis sudo systemctl start redis
-
Redis 서비스 상태 확인:
sudo systemctl status redis
2.5 보안 설정 (비밀번호 설정, 네트워크 보안, TLS 지원)
비밀번호 설정
Redis 서버에 비밀번호를 설정하면, 인증된 사용자만 Redis에 접근할 수 있습니다. redis.conf
파일에서 requirepass
옵션을 사용하여 비밀번호를 설정합니다:
requirepass mysecurepassword
네트워크 보안
Redis는 기본적으로 로컬 네트워크에서만 연결을 허용합니다. 외부에서 접근할 수 없도록 bind
와 protected-mode
설정을 조정할 수 있습니다:
bind 127.0.0.1
protected-mode yes
TLS 지원
Redis 6부터는 **TLS (Transport Layer Security)**를 지원하여, 데이터 암호화를 통해 보안을 강화할 수 있습니다. TLS 설정을 위해 redis.conf
파일에서 관련 옵션을 추가합니다:
tls-port 6379
tls-cert-file /path/to/your/certificate.pem
tls-key-file /path/to/your/private-key.pem
tls-ca-cert-file /path/to/your/ca-certificate.pem
이 설정을 통해 Redis의 통신을 암호화하여 보안을 강화할 수 있습니다.