카테고리 없음
ec2에 redis 설치(amazon linux)
코딩연습중
2025. 5. 22. 16:36
1. 시스템 패키지 업데이트
sudo yum update -y
Amazon Linux 2023 또는 ECS 최적화 AMI 기반의 인스턴스에서는 amazon-linux-extras 명령어로 Redis를 설치할 수 없다
소스에서 Redis를 직접 빌드해서 설치
✅ Amazon Linux 2023에서 Redis 설치 방법 (소스 빌드)
1. 빌드 도구 설치
sudo yum groupinstall "Development Tools" -y
sudo yum install gcc jemalloc-devel tcl -y
2. Redis 소스 다운로드 및 빌드
cd /tmp
curl -O http://download.redis.io/releases/redis-6.2.13.tar.gz
tar xzf redis-6.2.13.tar.gz
cd redis-6.2.13
make
sudo make install
3. Redis 실행 테스트
src/redis-server
✅ 백그라운드로 실행하고 싶다면
1. 설정 복사
mkdir -p ~/redis
cp redis.conf ~/redis
cd ~/redis
2. 설정 수정
vi redis.conf
- daemonize no → daemonize yes
- bind 127.0.0.1 → bind 0.0.0.0 (외부 접근 허용 시)
- protected-mode yes → no (보안 그룹으로 IP 통제할 경우)
3. 실행
src/redis-server redis.conf
필요하면 systemd 등록이나 부팅 시 자동 실행 설정도 도와줄게.
일단 위 단계부터 해봐!
응! 지금 상태를 보면:
✅ 1. Redis는 정상적으로 안 떠 있는 상태야.
nohup src/redis-server > redis.log 2>&1 & → Exit 127은 실행 실패 의미야.
즉, redis-server 실행 자체가 안 된 거야. 보통은 src/redis-server가 존재하지 않거나 권한 문제일 때 나옴.
✅ 2. ps aux | grep redis 결과에도 실제 Redis 프로세스는 없어.
grep redis만 보이고, redis-server는 없음.
또 netstat도 root 권한 필요하다고 하고, 포트 열려 있는 것도 없음.
📌 그래서 지금은 "Redis 안 떠 있음 + 로그 확인 필요"
🔧 해결 순서
- Redis가 있는지 다시 확인
ls ~/redis-6.2.13/src/redis-server
- 다시 실행 (로그도 저장)
cd ~/redis-6.2.13
nohup src/redis-server > ~/redis.log 2>&1 &
- 정상 실행 확인
ps aux | grep redis
sudo netstat -tulnp | grep 6379
- 로그 확인
tail -n 30 ~/redis.log
🔒 그리고 추가로 답변:
- bind, protected-mode 안 써도 localhost에서만 접근하는 구조라면 괜찮아.
단, MSA 다른 컨테이너에서 접근하려면 bind 0.0.0.0이 필요함. - daemonize yes는 redis.conf로 실행할 때만 인식돼.
직접 CLI에서 실행할 땐 nohup이 그 역할을 대신함.
✅ 그래서 정리하면:
- config 없이도 가능
- 지금은 실행 실패했으니 다시 실행하고 확인 필요
- nohup이면 터미널 꺼도 유지됨
- 접근 범위 설정은 MSA 구조에 따라 bind 설정 고려
필요하면 내가 재확인 스크립트도 만들어줄게!
이렇게 하면 터미널 꺼도 redis 서버 켜진 채로 유지됨