はじめに
他のRedis構築に関するページは以下をご参考ください。
Redis構築のまとめ
環境
CentOS 6.8
Redis 3.2.5(当時の安定バージョン)
インストール手順
- パッケージインストール
yum,wgetを使用します。
1. CentOSに下記の諸々をインストール
yum install wget gcc tcl vim-enhanced -y
wgetはredis取得のため、gccとtclはmake実行のためです。(vim-enhancedはファイル編集でvim使いたいからインストールしときます。)
2. Redisをダウンロード
$ cd /usr/local
$ wget http://download.redis.io/releases/redis-3.2.5.tar.gz # ここはお好きなバージョンで
$ tar xzf redis-3.2.5.tar.gz
$ cd redis-3.2.5/
$ make # make testをやっておくといいかも
$ make install
make実行時に以下のエラーが出たら
jemalloc/jemalloc.h: No such file or directory
make discleanを実行(参考:http://qiita.com/A-gen/items/345c07d830205a7ea6cb)
3. シンボリックリンクを張る
redis-3.2.5/src/の下にredis-serverとredis-cliのバイナリファイルができるので、/usr/local/binの下にシンボリックリンクを作成する(既存のredis-serverとredis-cliがあれば削除)
$ ln -s /usr/local/redis-3.2.5/src/redis-server /usr/local/bin/redis-server
$ ln -s /usr/local/redis-3.2.5/src/redis-cli /usr/local/bin/redis-cli
4. Redisユーザ及びグループの作成
Redis インスタンスを起動するユーザとグループを作成
ログインが不要な場合はnologin を指定
$ groupadd redis
$ useradd -s /sbin/nologin -M -g redis redis
5. ワークディレクトリの作成
/etc/redis:設定ファイルの格納先
/var/run/redis:データファイルや起動プロセスIDファイルの格納先
/var/log/redis:ログ出力先
$ mkdir /etc/redis /var/run/redis /var/log/redis
$ chmod 755 /etc/redis /var/run/redis /var/log/redis
$ chown redis:redis /etc/redis /var/run/redis /var/log/redis
6. Redis設定ファイルのコピー
$ cp -p /usr/local/redis-3.2.5/redis.conf /etc/redis/6379.conf
7. 設定ファイルを編集
設定ファイル編集は「redis.confの設定内容」を参考にしてください
$pwd
/etc/redis/
# 各サーバの/etc/redis/6379.confに下記の設定を行う
# ポート番号が6379以外の場合は適宜変更して設定
$ vim /etc/redis/6379.conf
---- vim編集(redis.confファイルの設定内容から一部抜粋) ----
daemonize yes
loglevel notice //本番環境等で利用される場合はnoticeが良いかと
logfile "/var/log/redis/6379.log"
pidfile redis_6379.pid
dir /var/run/redis
---------------
参考)http://tweeeety.hateblo.jp/entry/2016/03/14/135551
8. 自動起動スクリプトの設定
ソースからインストールした場合は、自動起動のスクリプトを設定する必要があります。
$ cp -p /usr/local/redis-3.2.5/utils/redis_init_script /etc/init.d/redis
○自動スクリプトファイルを修正
ヘッダの5行目に chkconfig: 345 70 15 を追記します(数字は自動起動の優先度を表します)
プロセスIDファイルの配置場所も変更します
$ vim /etc/init.d/redis
#!/bin/sh
#
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
# chkconfig: 345 70 15
:
CLIEXEC=/usr/local/bin/redis-cli
#CLIEXEC="/usr/local/bin/redis-cli -a hoge" //Redis接続時にパスワード設定したい場合のみ変更
#PIDFILE=/var/run/redis_${REDISPORT}.pid
PIDFILE=/var/run/redis/redis_${REDISPORT}.pid
$ sudo chkconfig redis on
9. 起動させる
$ /etc/init.d/redis start # service redis start
Starting Redis server...
$ ps -ef | grep redis
root 3328 1 0 05:27 ? 00:00:00 /usr/local/bin/redis-server 127.0.0.1:6379
$ redis-cli
127.0.0.1:6379>ping
PONG
起動成功です。