폐쇄망 Redhat 에서 Redis 설치

이 글은 Redhat OS 환경 상에서 패키지 관리자를 사용하지 않고 Redis 를 설치하는 과정을 남긴 포스팅 입니다.



Redis 다운로드 및 내부망 이관

저는 인터넷망에 접근 가능한 로컬 PC 에서 구글링 통해 아래 Redis 공식 홈페이지에서 제공하는 다운로드 링크에 접근하였고 설치할 OS와 호환되는 Redis 5.0.9 을 다운 받았습니다.


http://download.redis.io/releases


제 로컬 PC에서 다운받은 파일명은 redis-5.0.9.tar.gz 입니다.


image_20240709_001.png


이제 이 파일을 인터넷망에서 폐쇄망으로 옮길 수 있는 사내 정실 절차를 밟아 폐쇄망으로 접근 가능한 로컬 PC 로 이관해 준 뒤 다시 설치가 필요한 서버에 SFTP 어플리케이션 또는 SCP 명령어로 전송 합니다.

마지막으로 다운받은 파일의 압축을 해제해 주면 아래와 같이 redis-5.0.9 디렉토리가 새로 생성 됩니다.


$ tar -xvf path/to/redis-5.0.9.tar.gz
$ ls
redis-5.0.9  redis-5.0.9.tar.gz



Redis 설치 ( configure & make & install )

이제 다운로드 후 내부망으로 이관한 Redis 를 빌드하고 설치해 보도록 하겠습니다.

먼저 make 명령어를 사용하여 Redis 를 빌드합니다.

$ cd path/to/redis-5.0.9
$ make
( make 진행중... )

빌드가 완료되면 make install 통해 설치를 진행합니다.

이때 configure 명령어를 사용하여 빌드 옵션을 설정합니다.

저는 /websvc/build_temp 경로에 Redis 를 설치할 것이기 때문에 —PREFIX ${설치경로} 옵션을 사용하여 설치 경로를 지정하겠습니다.

이를 통해 시스템 전역에 영향을 미치지 않고 특정 디렉토리에 소프트웨어를 설치할 수 있습니다.



Note: 아래와 같은 방법은 항상 적용되진 않습니다. 프로젝트에 따라 어떠한 경우에는 make 단계 전 ./configure --add-module=/path/to/... --prefix=/path/to/install) 와 같은 방식으로 설치 경로를 지정 합니다. 이는 빌드하고자 하는 프로젝트의 빌드 시스템마다 다릅니다.



$ make -PREFIX=/websvc/redis-5.0.9 install
( make install 진행중... )


이제 PREFIX 로 지정한 프로젝트 설치경로로 이동해보면 설치가 완료된 파일이 확인됩니다.


$ cd /websvc/redis-5.0.9/bin
$ ls
redis-benchmark  redis-check-aof  redis-check-rdb  redis-cli  redis-sentinel  redis-server


최종적으로 prefix 옵션으로 지정한 경로의 bin 폴더에 Redis 의 홈폴더가 구성되었음을 확인할 수 있습니다.



Redis 의 실행

이제 설치된 Redis 를 별도의 설정과정없이 그대로 실행 보겠습니다.

참고로 Redis 의 기본 포트는 6379 이므로 기존 서비스 중 6379 포트를 사용하는 서비스가 없어야 합니다.


$ ./redis-server
( redis 실행 진행중... )


image_20240709_002.png


위와같이 정상적으로 레디스가 standalone mode 로 실행이 완료된 것을 확인할 수 있습니다. (위 스크린샷을 자세히 보면 각종 경고 메세지가 보입니다. 이는 제 테스트 환경 이슈이니 무시하셔도 됩니다.)

현재 실행한 Redis는 redis.confdaemonize 옵션을 설정하지 않았으므로 damonize 옵션이 꺼져있는 상태 입니다.

때문에 Redis 는 백그라운드에서 실행되지 않고 현재 터미널 세션에 종속됩니다.

따라서 터미널 창을 닫거나 세션을 종료하면 쉘이 종료되면 아래와 같이 Redis 도 종료 됩니다.


image_20240709_003.png





맺음말

지금까지 폐쇄망 Redhat 에서 Redis 설치 및 실행까지 진행해보았습니다.

하지만 실제 운영환경에 도입하기 위해선 장애복구부터 메모리 등 많은 점을 고려하여야 합니다.

이대로 Redis 를 운영환경에 적용하기엔 커스텀하여야 할 필수 설정들이 너무나도 많습니다.

이후 이어지는 Redis 관련 포스팅에서는 redis.conf 상에 커스텀 가능한 제가 사용한 주요 설정을 소개하겠습니다.