ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [AWS] Amazon Linux2 Redis 설치
    기타 2022. 3. 15. 18:37
    반응형

    이 글은 혼자 학습한 내용을 바탕으로 작성되었습니다.

    틀리거나 잘못된 정보가 있을 수 있습니다.

    댓글로 알려주시면 수정하도록 하겠습니다.


    1. Redis 설치

    이번 시간에는 AWS의 EC2 인스턴스(Amazon Linux2)에 Redis를 설치하는 과정을 설명하고자 합니다.

     

    가장 먼저 아래 명령어로 yum을 update 시켜 줍니다. (최신 패키지로 업데이트를 위해서)

    sudo yum update

     

    아래 그림처럼 Complete!가 출력되면 Update가 완료된 것 입니다. (위 내용과 다른 내용이 출력되고 Complete가 출력될 수 있습니다.)

     

    이제 Redis 설치를 위해 사용할 gcc make를 설치하여야 합니다.

     

    아래 명령어로 yum을 통해 gcc make를 설치합니다.

    sudo yum install gcc make

     

    아래 그림처럼 Complete!가 출력되면 Install이 완료된 것 입니다. (위 내용과 다른 내용이 출력되고 Complete가 출력될 수 있습니다.)

     

    이제 Redis의 설치 파일을 다운로드 받도록 하겠습니다.

     

    다운로드 전 Redis를 별도의 디렉토리에서 관리하려면 디렉토리를 생성하고 해당 디렉토리에 다운로드 받으면 됩니다.

    mkdir Redis
    
    cd Redis

     

    아래 명령어로 Redis 설치 파일을 다운로드 받습니다.

    sudo wget http://download.redis.io/redis-stable.tar.gz

     

    다운로드 후 디렉토리 내용을 확인 하는 명령어 ll을 이용하면 redis-stable.tar.gz파일이 다운로드되어 있는 것을 확인할 수 있습니다.

     

    다운로드한 파일을 현재 압축되어 있는 파일이므로 아래 명령어를 통해 압축을 풀어줍니다.

    sudo tar zxvf redis-stable.tar.gz

     

    아래 이미지 처럼 압축을 푼 결과들이 출력됩니다.

     

    압축 해제가 완료되면 ll명령어를 통해 해당 디렉토리 내용을 확인하면 redis-stable이라는 디렉토리가 생성된 것을 확인할 수 있습니다.

     

    아래 명령어로 압축이 해제된 디렉토리로 이동합니다.

    cd redis-stable

     

    아래 명령어로 Makfile을 실행시켜 컴파일을 진행 합니다.

    sudo make

     

    아래 이미지 처럼 기록들이 출력되고 make가 완료됩니다.

     

    src 폴더에 있는 redis-server 파일과 redis-cli파일을 /usr/local/bin/ 디렉토리로 복사합니다.

    sudo cp src/redis-server src/redis-cli /usr/local/bin/

     

    config 파일을 /etc/redis로 복사합니다.

    sudo mkdir /etc/redis
    
    sudo cp redis.conf /etc/redis

     

     

    아래 명령어를 통해 방금 복사한 config 파일의 설정들을 변경합니다. (에디터의 경우 익숙한 에디터를 이용하여 설정을 변경하면 됩니다. vi, nano 등)

    sudo vi /etc/redis/redis.conf

    bind 속성은 사용자가 bind 하고자하는 IP로 변경합니다.

     

    daemonize속성을 no에서 yes로 변경합니다. (Redis를 백그라운드에서 실행하기 위해 변경)

     

    Redis Log 파일을 저장할 위치를 설정합니다. (daemonize를 yes로 설정하였으므로 로그 기록 파일이 필요합니다. 만약 설정하지 않으면 로그 기록이 기록되지 않습니다.)

     

    마지막으로 Working Directory를 설정합니다.

     

    아래 명령어로 Redis를 실행시키면 실행되는 것을 확인할 수 있습니다.

    redis-server

     

    아래 이미지 처럼 Redis version 정보와 Port PID 정보들이 출력되고 실행 됩니다.

     

    그런대 Redis를 실행하니 다른 작업을 수행할 수가 없습니다.

     

    만약 다른 작업을 위해 CTRL + C를 이용하여 Exit하면 Redis 서버가 종료됩니다.

     

    그래서 Redis를 백그라운드에서 실행가능 하도록 하는 작업이 필요합니다.

     

    2. Redis 백그라운드 실행

    백그라운드 실행을 위해 아래 명령어로 redis-server를 실행하여봅니다.

    sudo service redis-server start

    아래 이미지 처럼 redis-server.service Unit을 찾을 수 없어 실행이 불가능 할 것입니다.

     

    이제 백그라운드 실행을 위한 작업을 수행하겠습니다.

     

    아래 명령어를 통해 saxenap분이 작성한 shell script 파일을 다운로드 합니다.

    sudo wget https://raw.githubusercontent.com/saxenap/install-redis-amazon-linux-centos/master/redis-server

     

    https url을 브라우저에 입력하면 해당 shell script 파일을 확인할 수 있습니다.

    또는 saxenap분의 github에 들어가셔도 확인이 가능합니다.

     

    다운로드가 완료되면 디렉토리에 redis-server라는 파일이 다운로드 됩니다.

    아래 명령어로 다운받은 redis-server 파일을 /etc/init.d 디렉토리로 이동합니다.

    sudo mv redis-server /etc/init.d

     

    그리고 아래 명령어로 해당 파일에 대한 권한을 설정합니다.

    sudo chmod 755 /etc/init.d/redis-server

     

    아래 명령어로 다운받은 redis-server Script 파일의 redis 변수값을 확인 합니다.

    sudo vi /etc/init.d/redis-server

     

    그럼 아래 이미지처럼 설정된 것을 확인할 수 있습니다.

    이 위치의 redis-server 파일을 설치 초기에 cp 명령어를 통해 다운받은 redis-server을 복사한 위치와 동일하여야 합니다.

     

    확인이 완료되었다면 아래 명령어로 Auto-Enable을 설정합니다.

    sudo chkconfig --add redis-server
    
    sudo chkconfig --level 345 redis-server on

     

    이것으로 모든 설정이 완료되었습니다.

     

    이제 백그라운드 설정 전 수행하였던 명령어를 수행하도록 하겠습니다.

    sudo service redis-server start

     

    그럼 아래 이미지 처럼 실행이 될 것입니다.

     

    여기서 CTRL + C를 통해 빠져나와 아래 명령어로 redis가 정상 실행되고 있는지 확인 합니다.

    ps -ef | grep redis

     

    명령어를 수행하면 아래 이미지 처럼 정상 작동중인 것을 확인할 수 있습니다.

     

    확인의 다른 방법 cli를 이용한 방법이 있습니다. 아래 명령어를 수행하면 PONG을 출력하면 정상 작동이 되는 것 입니다.

    redis-cli ping

     

    아래 이미지 처럼 명령어 실행 결과 PONG이 출력됩니다.

    반응형

    댓글

Designed by Tistory.