Ubuntuサーバー構築入門

  • Ubuntu 20
  • Ubuntu 18
  • Ubuntu 16

Redisサーバーの起動・停止・再起動・状態確認

Redisサーバーの起動・停止・再起動・状態確認について解説します。

Redisの状態確認

Redisの状態確認は、systemctlコマンドの「status」を使って行います。

sudo systemctl status redis-server
起動している場合

起動している場合は、以下のように表示されます。

● redis-server.service - Advanced key-value store
   Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2020-06-16 10:12:56 JST; 3h 57min ago
     Docs: http://redis.io/documentation,
           man:redis-server(1)
 Main PID: 108380 (redis-server)
    Tasks: 4 (limit: 9479)
   CGroup: /system.slice/redis-server.service
           mq108380 /usr/bin/redis-server 127.0.0.1:6379
停止している場合

停止している場合は、以下のように表示されます。

● redis-server.service - Advanced key-value store
   Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled)
   Active: inactive (dead) since Tue 2020-06-16 14:11:18 JST; 2s ago
     Docs: http://redis.io/documentation,
           man:redis-server(1)
  Process: 27892 ExecStop=/bin/kill -s TERM $MAINPID (code=exited, status=0/SUCCESS)
 Main PID: 108380 (code=exited, status=0/SUCCESS)

Redisの起動

Redisの起動は、systemctlコマンドの「start」を使って行います。sudoコマンドを使って、root権限で実行します。

sudo systemctl start redis-server

起動が成功しても、成功したというメッセージは返ってきません。状態確認を行ってください。

Redisの停止

Redisの停止は、systemctlコマンドの「stop」を使って行います。sudoコマンドを使って、root権限で実行します。

sudo systemctl stop redis-server

停止が成功しても、成功したというメッセージは何も返ってきません。状態確認を行ってください。

Redisの再起動

Redisの再起動は、systemctlコマンドの「restart」を使って行います。sudoコマンドを使って、root権限で実行します。

sudo systemctl restart redis-server

restartは単に、stopコマンドを実行して、startコマンドを実行します。

Redisの起動・停止のログを見るには

Redisなどのサーバーは、systemdというプログラムによって集中的に管理されています。

systemdのログにRedisの起動・停止ログが出力されています。

systemdのログを見るにはjournalctlコマンドを使ます。grepコマンドで「apache」を絞り込みます。大文字・小文字を区別しない「-i」オプションを使うと「Redis」「apache」の両方が拾えます。sudoで実行しないとredis-serverのログが見れないので注意してください。

sudo journalctl | grep -i redis-server

ログの最後の部分だけ見たい場合はtailコマンドを組み合わせましょう。

sudo journalctl | grep -i redis-server | tail -20;

ログのサンプルです。

Jun 16 10:12:54 shinshina-production-app-00000001 sudo[108203]:    myapp : TTY=pts/1 ; PWD=/home/myapp ; USER=root ; COMMAND=/usr/bin/apt install -y redis-server
Jun 16 10:12:56 shinshina-production-app-00000001 systemd[1]: redis-server.service: Can't open PID file /var/run/redis/redis-server.pid (yet?) after start: No such file or directory
Jun 16 10:14:14 shinshina-production-app-00000001 sudo[109441]:    myapp : TTY=pts/1 ; PWD=/home/myapp ; USER=root ; COMMAND=/usr/bin/apt install -y redis-server
Jun 16 14:09:55 shinshina-production-app-00000001 sudo[27719]:    myapp : TTY=pts/0 ; PWD=/home/myapp ; USER=root ; COMMAND=/bin/systemctl status redis-server
Jun 16 14:10:26 shinshina-production-app-00000001 sudo[27768]:    myapp : TTY=pts/0 ; PWD=/home/myapp ; USER=root ; COMMAND=/bin/systemctl status redis-server
Jun 16 14:11:18 shinshina-production-app-00000001 sudo[27889]:    myapp : TTY=pts/0 ; PWD=/home/myapp ; USER=root ; COMMAND=/bin/systemctl stop redis-server
Jun 16 14:11:21 shinshina-production-app-00000001 sudo[27909]:    myapp : TTY=pts/0 ; PWD=/home/myapp ; USER=root ; COMMAND=/bin/systemctl status redis-server
Jun 16 14:11:34 shinshina-production-app-00000001 sudo[27920]:    myapp : TTY=pts/0 ; PWD=/home/myapp ; USER=root ; COMMAND=/bin/systemctl start redis-server
Jun 16 14:11:34 shinshina-production-app-00000001 systemd[1]: redis-server.service: Can't open PID file /var/run/redis/redis-server.pid (yet?) after start: No such file or directory

Redisのsystemdの設定ファイルを見るには

Redisのsystemdの設定ファイルは「systemctl status redis-server」で見れます。

設定ファイルをcatコマンドで見てみましょう。

cat /lib/systemd/system/redis-server.service