Post

[Redis] Redis 설정 옵션 정리

Redis의 주요 설정 옵션들을 공식 구성 파일(redis.conf) 기준으로 정리한 개발자용 가이드

[Redis] Redis 설정 옵션 정리

Redis 설정 옵션 완전 정리

Redis는 빠르고 가벼운 인메모리 데이터 저장소로 널리 사용됩니다.
이 문서는 Redis 공식 설정 파일(redis.conf)에서 자주 사용하는 옵션들을 중심으로 정리한 내용입니다.


🧰 설치 및 기본 서버 준비

아래는 기본적인 설치 및 방화벽 포트 설정 예시입니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!/bin/bash

# 패키지 업데이트 및 Redis 설치
dnf -y update && dnf -y upgrade && dnf -y install firewalld redis yum-utils net-tools wget curl

# 방화벽 서비스 활성화 및 포트 오픈
systemctl start firewalld
systemctl enable firewalld
firewall-cmd --permanent --add-port=6379/tcp
firewall-cmd --permanent --add-service=redis
firewall-cmd --reload

# Redis 설정 적용 & 활성화
echo "bind 0.0.0.0" > /etc/redis.conf
systemctl start redis
systemctl enable redis

# Redis 상태 확인
systemctl status redis
netstat -lntp | grep 6379

위 예시는 Firewalld 환경에서 Redis 포트(6379)을 열고 서비스로 등록하는 방법입니다.


🧾 redis.conf 구성 구조

Redis 설정 파일(/etc/redis.conf)은 대부분의 옵션이 다음 형식으로 되어 있습니다.

1
keyword arg1 arg2 ... argN

예를 들어:

1
requirepass "hello world"

이와 같이 keyword + 값 형태로 옵션을 정의합니다.


📌 일반 옵션 (General)

옵션설명
requirepassRedis에 접속시 필요한 비밀번호 설정
daemonizeRedis를 데몬으로 실행할지 여부
supervisedsystemd / upstart와 같은 서비스 관리 방식 지정
loglevel로그 레벨 (debug, verbose, notice, warning)
logfile로그 출력 파일 지정
syslog-enabledSyslog 사용 여부

기본 값은 대부분 운영자 환경에 맞게 구성되어 있지 않으므로 상황에 따라 조정할 수 있습니다.


🧠 메모리 관련 옵션

Redis는 메모리 관리가 중요합니다. 대표적인 메모리 옵션은 다음과 같습니다:

옵션설명
maxmemoryRedis 인스턴스가 사용할 최대 메모리
maxmemory-policy메모리 초과 시 처리 방식 (noeviction, allkeys-lru, 등)

예:

1
maxmemory-policy noeviction

는 메모리 한도를 넘어가면 에러를 반환합니다.


🗄️ 스냅샷 & 데이터 저장

Redis는 RDB 스냅샷 방식을 지원합니다.

옵션설명
dbfilename덤프 파일 이름
dir덤프 저장 디렉터리
save자동 백업 주기 설정

스냅샷은 Redis가 실행 중인 데이터를 지정 주기마다 디스크에 저장합니다.


📡 네트워크 설정

Redis 서버가 외부에서 접근 가능하게 설정하려면 다음 옵션들을 주의해야 합니다.

옵션설명
bindRedis가 수신할 IP 지정
protected-mode보호 모드 활성화 여부
port수신 포트 지정
tcp-keepaliveTCP keep-alive 설정

예:

1
2
3
bind 192.168.0.150 10.0.0.5
port 6379
protected-mode yes

Redis를 외부에서 안전하게 노출하기 위해서는 bind와 protected-mode 옵션을 함께 설정하는 것이 좋습니다.


🔐 복제 & 보안 옵션

옵션설명
replicaofRedis replication(복제) 설정
masterauth복제 시 마스터 인증 비밀번호

Replica 서버가 Master와 연결을 유지하고 복제하기 위해 필요한 옵션입니다.


📊 CLI 연결 예시

Redis CLI를 통해 접속할 때는 다음 명령을 사용할 수 있습니다.

1
redis-cli -h [접속IP] -p [포트] -a [비밀번호]

예:

1
redis-cli -h 192.168.0.150 -p 6379 -a "yourpass"

기본적인 키/값 조작도 아래와 같이 수행할 수 있습니다.

1
2
3
4
redis-cli set mykey "hello"
redis-cli get mykey
redis-cli del mykey
redis-cli flushall

📌 핵심 정리

Redis 설정은 크게 다음 영역으로 나눌 수 있습니다.

  1. 🔧 서비스 설치 및 방화벽 설정
  2. 🛠 일반 옵션 (로그, 비밀번호)
  3. 🧠 메모리 & eviction 정책
  4. 💾 스냅샷 & 디스크 저장
  5. 🌐 네트워크 접속 정책
  6. 🔐 복제 & 보안
  7. 📡 CLI로 직접 실습

This post is licensed under CC BY 4.0 by the author.