AWS/Project

EC2에서 redis-cli를 통해 ElastiCache 접속

jih0ssang 2024. 10. 30. 21:25

ElastiCache 클러스터 Redis OSS (Opensource Service) 생성하였다.

 

EC2  <-------> ElastiCache

 

EC2에 redis-cli를 설치하여 ElastiCache로 접속 테스트를 진행하도록 하겠다.

사전 준비 사항 : EC2, ElastiCache 클러스터 생성, 서로 간 보안그룹(SG) 6379 포트 오픈

Redis-cli 설치

참고 문서:https://docs.aws.amazon.com/ko_kr/AmazonElastiCache/latest/dg/nodes-connecting.html

 

# gcc 설치
$ sudo yum install -y gcc make

# redis-cli 설치 및 압축 해제 후 소스코드 컴파일
$ wget http://download.redis.io/redis-stable.tar.gz && tar xvzf redis-stable.tar.gz && cd redis-stable
$ make distclean
$ make

# ElastiCache 접속          [redis 기본 엔드포인트 주소]
$ src/redis-cli -c -h mycachecluster.eaogs8.0001.usw2.cache.amazonaws.com -p 6379

 

보통은 src/redis-cli -c -h mycachecluster.eaogs8.0001.usw2.cache.amazonaws.com -p 6379  명령어 수행하면 정상적으로 ElastiCache에 접속된다.

하지만 나는 전송 중 암호화를 활성화하여, 위의 명령어로는 접속이 불가능하다.

 

로컬에서 redis-server 구동이 필요한 경우,
$ src/redis-server /home/ssm-user/redis-stable/redis.conf
명령어를 활용하여 6379 포트로 redis-server 프로세스 구동시킨다.

 

valkey-cli를 사용하여 전송 중 암호화하여 ElastiCache에 연결

참고 문서: https://docs.aws.amazon.com/ko_kr/AmazonElastiCache/latest/dg/connect-tls.html

전송 중 암호화를 활성화하면  접속 시 ssl 인증이 필요하다.

$ sudo yum -y install openssl-devel gcc
$ wget https://github.com/valkey-io/valkey/archive/refs/tags/7.2.6.tar.gz
$ tar xvzf 7.2.6.tar.gz
$ cd valkey-7.2.6
$ make distclean
$ make valkey-cli BUILD_TLS=yes
$ sudo install -m 755 src/valkey-cli /usr/local/bin/

 

valkey-cli -h Primary or Configuration Endpoint --tls -a 'your-password' -p 6379

 


$ valkey-cli -h [Redis 기본 엔드포인트 주소].amazonaws.com --tls  -p 6379

위의 명령어를 통해 정상적으로 접속할 수 있다.