백앤드(Back-End)/Redis

[Redis] Redis 백그라운드 실행(Daemon & Systemd 실행)

RyanSin 2021. 8. 29. 23:54
반응형

- 개요

안녕하세요. 이번 시간에는 Redis를 Background 실행하는 방법에 대해 알아보겠습니다.

 

혹시 설치를 아직 못 하셨던 분이나 설치하는 방법을 모르시는 분들은 아래 링크를 통해 설치하고 오시는 걸 추천드리겠습니다.

 

[Redis] Redis Ubuntu 설치 및 실행

 

[Redis] Redis Ubuntu 설치 및 실행

- 개요 안녕하세요. 이번 시간에는 Ubuntu에서 Redis를 설치하는 방법에 대해 알아보겠습니다. - 설치 설치 방법은 두 가지 방식이 있습니다. apt 패키지를 통해 설치하는 방법과 소스코드 다운로드

any-ting.tistory.com

- 설정

1.  Daemon 설정

백그라운드에서 실하는 방법은 redis.conf 파일을 수정하는 방법입니다.

 

기본적으로 메모리 설정, 로그 파일 설정, IP 설정 등 모든 설정은 redis.conf 파일에서 합니다.

 

redis.conf 파일을 열어보겠습니다. 다운로드한 위치에 redis.conf 파일 있습니다.

 

 

vi 명령어로 파일을 수정해 보겠습니다.

 

파일 권한자가 root 라면 sudo 명령어를 사용해야 파일을 수정할 수 있습니다.

vi redis.conf

 

파일을 오픈한 뒤 /(slash 슬래시)를 사용해서 daemonize 설정을 찾는다.

 

기본 값이 no로 설정되어 있기 때문에 Redis는 foreground로 실행됩니다.

 

이제 yes로 수정해서 background로 실행되게 하겠습니다.

 

  i 명령어를 통해 파일을 수정 상태로 변경 후 yes로 변경합니다.

 

그 후 파일을 저장해줍니다. :wq (write, quit)

 

Redis 서버를 실행해보겠습니다.

 

src/redis-server ./redis.conf 

 

프로세스가 잘 작동하는지 확인해보겠습니다.

 

netstat -ntlp | grep 6379

 

아래와 같이 redis가 잘 동작하는 걸 알 수 있습니다.

 

하지만 이렇게 설정하면, 시스템 자체가 종료되고 재실행될 때 Redis는 실행되지 않습니다.

 

컴퓨터 서버를 종료하고 다시 실행한 후 Redis 서버가 잘 동작하는지 확인해보겠습니다.

 

Redis 서버가 실행되지 않는 걸 알 수 있습니다.

 

시스템에 등록하지 않았기 때문입니다.

 

sudo systemctl start redis

 

 위 명령어를 통해 확인하면 찾을 수 없다는 걸 알 수 있습니다.

 

2. System 설정

기본적으로 시스템을 실행하는 파일은 /etc/systemd/system/ 경로에 있습니다.

 

시스템 파일을 하나 만들어서 작성해보겠습니다.

 

sudo vi /etc/systemd/system/redis.service

redis.service 파일 안에 아래 내용을 작성합니다.

[Unit]
Description=Redis In-Memory Data Store 
After=network.target

[Service]
User=ubuntu
Group=ubuntu
ExecStart=/home/ubuntu/ryan/redis-6.2.5/src/redis-server /home/ubuntu/ryan/redis-6.2.5/redis.conf
ExecStop=/home/ubuntu/ryan/redis-6.2.5/src/redis-cli shutdown
Restart=always

[Install]
WantedBy=multi-user.target

 작성 후 redis를 실행해보겠습니다.

 

* 주의 사항 *

User, Group 설정을 나의 유저 계정으로 설정합니다.

 

작성을 다 했다면 시스템에 등록을 하겠습니다.

 

sudo systemctl enable redis.service //시스템에 등록
sudo systemctl daemon-reload // 파일 수정 시 리로드
sudo systemctl start redis.service // Redis 서버 실행 

 

위 명령어를 순차적으로 실행합니다.

 

이제 Redis 서버가 잘 동작하는지 확인해 보겠습니다. 

 

netstat -ntlp | grep 6379

 

잘 동작한다면 서버를 재부팅 후 체크해보시는 걸 추천 드리겠습니다. :) (저는 잘 동작합니다)

 

재부팅 후 Redis 서버 실행 확인

 

이번 시간에는 Redis를 forground 상태가 아닌 background 상태에서 실행하는 방법에 대해 알아봤습니다.

'백앤드(Back-End) > Redis' 카테고리의 다른 글

[Redis] 자료구조 개념 및 사용법  (0) 2021.09.06
[Redis] Redis Ubuntu 설치 및 실행  (0) 2021.08.29