목록으로

레디스 서버 이전

약 2분 읽기Development#EC2#Development#Redis댓글로 이동

EC2에 레디스 서버 설치하기

main
date
Jan 22, 2026
slug
redis-server-migration
author
status
Public
tags
EC2
Development
Redis
summary
EC2에 레디스 서버 설치하기
type
Post
thumbnail
category
Development
updatedAt
May 5, 2026 02:08 PM
이전 깃랩 서버에 이어서 레디스 서버 이전 작업을 진행하였다.
기존 레디스 서버의 경우 PHP Session 목적으로만 사용되고 있어서 데이터 자체는 옮길게 없다..
그래서 그냥 신규 EC2에 레디스 서버만 설치해주면 될 듯 하다. (사용중인 버전 6.0.9)
 
sudo apt update sudo apt install -y build-essential tcl
 

Redis 6.0.9 설치

 
cd /usr/local/src sudo wget http://download.redis.io/releases/redis-6.0.9.tar.gz sudo tar xzf redis-6.0.9.tar.gz cd redis-6.0.9
 

컴파일 & 설치

 
sudo make sudo make install
 

설치 확인

 
redis-server --version # Redis server v=6.0.9 sha=00000000:0 malloc=jemalloc-5.1.0 bits=64 build=3a27e624fc96119e
 

Redis 환경 설정 파일 생성

redis-server 패키지를 받은게 아니기 때문에 /etc 경로에 설정 파일이 없을 것이다.
압축 푼 파일에서 초기 설정 파일을 해당 경로에 복사해줬다.
 
sudo mkdir -p /etc/redis sudo cp redis-6.0.9/redis.conf /etc/redis/redis.conf sudo vi /etc/redis/redis.conf
 
설정은 최대한 기존 서버 기준이랑 동일하게 가져가되 실행 방식만 변경해주었다.
redis.conf 에서 데몬 모드 끄고 systemd로 관리되도록 변경
 
# 허용 IP 추가 ## 로컬, EC2 IP bind 127.0.0.1 EC2_PRIVATE_IP # 데몬 off daemonize no # default yes # 관리 대상 변경 supervised systemd # default auto # 로그 파일 저장 위치 변경 logfile /var/log/redis/redis.log # default "" # WORKING DIR 변경 dir /var/lib/redis # default ./ # 메모리 변경 -> 해당 옵션의 경우 기존 서버에 설정되어있는 값으로 맞췄다 maxmemory 60gb # 메모리 관리 방식 변경 ## 메모리가 꽉 찼을 경우 오래된 데이터 기준으로 삭제 maxmemory-policy allkeys-lru # !!중요 패스워드 설정 ## 레디스 서버에 접속하기 위한 패스워드를 설정한다. requirepass <REDIS_PASSWORD>
 

시스템 프로세스 실행

서버가 중지 됐다가 재시작 됐을 때 레디스 서버는 자동으로 재시작 되어야한다.
 
sudo vi /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 -a <REDIS_PASSWORD> shutdown Restart=always User=redis Group=redis LimitNOFILE=100000 WorkingDirectory=/var/lib/redis [Install] WantedBy=multi-user.target
 

Redis 사용자 체크

id redis # 사용자 생성 sudo useradd --system --no-create-home redis # 위 설정 파일에서 사용한 경로 디렉토리 생성 및 권한 적용 sudo mkdir -p /var/log/redis sudo chown redis:redis /var/log/redis sudo mkdir -p /var/lib/redis sudo chown redis:redis /var/lib/redis
 

시스템 시작

sudo systemctl daemon-reload sudo systemctl enable redis sudo systemctl start redis # 체크 sudo systemctl status redis ### 정상 동작 시 Active: active (running) Main PID: xxxx (redis-server)
 
에러 발생 시 재시작해야할 경우
sudo systemctl daemon-reload sudo systemctl reset-failed redis sudo systemctl restart redis
 
PING 확인
redis-cli -a <REDIS_PASSWORD> ping > PONG
 
클라이언트 연결 체크
 
notion image
—
 
마지막으로 체크해야할 부분은 현재 서버 스펙이 유효하냐 이다.
아마 기존 서버 스펙을 토대로 EC2 환경과 최대한 비슷하게 셋업하였는데 캐시 서버에서 이 정도의 사양을 쓸 이유가 있나 의문이 든다.
내가 놓친 부분이 있을지 모르니 좀 더 서칭해보고 한 단계 스펙을 낮출 생각이다.