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 redisWindows
Windows에서는 Redis 공식 배포판이 없지만, Microsoft의 Redis port 또는 **WSL(Windows Subsystem for Linux)**을 사용하여 Redis를 실행할 수 있습니다. WSL을 사용하면 리눅스 환경에서 Redis를 실행할 수 있습니다.
wsl sudo apt install redis-serverDocker
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-serverredis-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 yesTLS 지원
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의 통신을 암호화하여 보안을 강화할 수 있습니다.