【linux】redisのインストールと導入
9087 ワード
リファレンス
linuxでのRedisのインストールと配置linuxでのRedisのインストールと配置linuxでのredisのインストール、Redisインストールの起動と停止Redisインストールとセルフ起動構成service redis does not support chkconfigの解決方法
詳細
linux環境でのredisのインストールと導入について説明します
インストールredis
ダウンロード
まず公式サイトでRedis圧縮パッケージ、URL redis downloadをダウンロードし、4.0.6をダウンロードすればいい.
解凍
圧縮パッケージをlinuxサーバにコピーし、解凍操作を実行します.
makeコンパイル
解凍後のディレクトリに入り、makeを実行してコンパイルします.
コンパイルが完了すると、解凍ファイルredis-4.0.6には対応するsrc、confなどのフォルダが表示されます.これはwindowsの下で解凍をインストールするファイルと同じで、ほとんどのインストールパッケージには対応するクラスファイル、プロファイル、コマンドファイルがあります.
redis-server:名前の通り、redisサービスredis-cli:redis clientは、redisサービスに接続するためのredisクライアントを提供し、redis-sentinel:redisインスタンスの監視管理、通知、インスタンス失効バックアップサービスredis-benchmark:redisの性能テストツールredis-check-aof:AOF方式の持続化を行う.予期せぬ事態が発生した場合にredis-check-rdbを迅速に修復するために使用:RDB方式の持続化であれば、予期せぬ事態が発生した場合に迅速に修復するために使用される
make installインストール
コンパイルが完了したら、srcフォルダに入り、
これでインストールが完了します.
配置redis
フロント起動
srcフォルダの下のredis-serverを直接介してredis-4.0.6フォルダ実行
バックグラウンド起動構成
バックグラウンドでredisサービスを起動するredisを変更するように構成する.confプロファイルa.デフォルトポート6379、必要に応じてb.daemonizeをyesに変更(後でモード起動)
バックグラウンド起動
redis-4.0.6フォルダ実行
ヒントは次のとおりです.
これで、デプロイが完了しました.
単純テストredis
これは、redisサービスが正常に動作していることを示し、redisサービスが起動していない場合、redis-cliを実行すると
自己起動の設定
しかし、以上のように構成すると、システムを再起動するとredisサービスは自己起動しない.redis-serverがシステム起動時に自動的に実行できるようにするには、redisサービスをデーモンとして実行する必要があり、/redis-4.0.6/ディレクトリに戻ってredisを見つける.confのファイルです.このファイルはredisサービスの実行時にロードされる構成です.
ここでdaemonizeのデフォルト値がfalse pidfileのデフォルト値がpidfile/var/run/redis_6379.pid
最初の表現はdaemon化するかどうか、明らかにdaemonize yesに変更します.2つ目は、サービスがデーモン・プロセスで実行されると、redisはデフォルトでpidを/var/run/redis_に書き込むことを示します.6379.pidファイルは、サービス実行中にファイルが存在し、サービスが停止すると自動的に削除されるため、redisが実行されているかどうかを判断するために使用できます.
保存して終了します.(redisの導入時に変更されました)
基本的な構成では、redisには、起動、停止、再起動を管理するスクリプトも必要です.redisソースコードには、/usr/redis/utils/redis_に位置する初期化スクリプトが用意されています.init_script.
スクリプトには、ポート、serverパス、cliパス、pidfileパス、confパスが指定されています.
インストール時にmake installが実行された場合、make installはserverとcliを/usr/local/binの下にコピーするため、ここのスクリプトはそれほど変更する必要はありません.
またここのconfの経路を見ると、redisディレクトリの下のredisが必要です.confファイルを/etc/redis/6379にコピーする.conf
次にredis_init_scriptスクリプトを/etc/initにコピーします.d/redisd
/etc/init.dの下のスクリプトは、システム起動が自動的に起動できるサービスですが、システム起動時の構成が1つ欠けています.
サービスredisdがchkconfigをサポートしていないというエラーが表示されます.
サービスredis does not support chkconfigの解決策を参照してください.これはredis_init_scriptの先頭に小さな変更を追加します.
ここで2345,9010はそれぞれどういう意味かについては、上記の記事のリンクを参照してください.
保存が完了したら/etc/initに再コピーします.d/redisd後、chkconfigを再実行すると完了します.
すべてが完了したら、サービスが正常に設定されているかどうかを確認するには、次のコマンドを実行します.
に等しい
最後にシステムを再起動しましょう.システムに入ってからredis-cliを直接実行してredisサービスが自動的に実行されたかどうかを確認します.
linuxでのRedisのインストールと配置linuxでのRedisのインストールと配置linuxでのredisのインストール、Redisインストールの起動と停止Redisインストールとセルフ起動構成service redis does not support chkconfigの解決方法
詳細
linux環境でのredisのインストールと導入について説明します
インストールredis
ダウンロード
まず公式サイトでRedis圧縮パッケージ、URL redis downloadをダウンロードし、4.0.6をダウンロードすればいい.
解凍
圧縮パッケージをlinuxサーバにコピーし、解凍操作を実行します.
tar zxvf redis-4.0.6.tar.gz
makeコンパイル
解凍後のディレクトリに入り、makeを実行してコンパイルします.
cd /redis-4.0.6
make
コンパイルが完了すると、解凍ファイルredis-4.0.6には対応するsrc、confなどのフォルダが表示されます.これはwindowsの下で解凍をインストールするファイルと同じで、ほとんどのインストールパッケージには対応するクラスファイル、プロファイル、コマンドファイルがあります.
redis-server:名前の通り、redisサービスredis-cli:redis clientは、redisサービスに接続するためのredisクライアントを提供し、redis-sentinel:redisインスタンスの監視管理、通知、インスタンス失効バックアップサービスredis-benchmark:redisの性能テストツールredis-check-aof:AOF方式の持続化を行う.予期せぬ事態が発生した場合にredis-check-rdbを迅速に修復するために使用:RDB方式の持続化であれば、予期せぬ事態が発生した場合に迅速に修復するために使用される
make installインストール
コンパイルが完了したら、srcフォルダに入り、
make install
を実行してredisインストールを行います.これでインストールが完了します.
配置redis
フロント起動
srcフォルダの下のredis-serverを直接介してredis-4.0.6フォルダ実行
./src/redis-server ./redis.conf
にアクセスできるようになりましたが、このとき実行されるredisサービスは、フロントで直接実行されます.すなわち、セッションウィンドウが閉じた後、redisサービスも閉じます.バックグラウンド起動構成
バックグラウンドでredisサービスを起動するredisを変更するように構成する.confプロファイルa.デフォルトポート6379、必要に応じてb.daemonizeをyesに変更(後でモード起動)
vi /usr/local/redis/bin/redis.conf
port 6379
daemonize yes
:wq!!
バックグラウンド起動
redis-4.0.6フォルダ実行
./src/redis-server ./redis.conf
へヒントは次のとおりです.
4627:C 19 Dec 17:32:04.413 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
4627:C 19 Dec 17:32:04.413 # Redis version=4.0.6, bits=64, commit=00000000, modified=0, pid=4627, just started
4627:C 19 Dec 17:32:04.413 # Configuration loaded
これで、デプロイが完了しました.
単純テストredis
$ redis-cli
redis> PING
PONG
redis> set foo bar
OK
redis> get foo
"bar"
これは、redisサービスが正常に動作していることを示し、redisサービスが起動していない場合、redis-cliを実行すると
Could not connect to Redis at 127.0.0.1:6379: Connection refused
のエラーが表示されます.自己起動の設定
しかし、以上のように構成すると、システムを再起動するとredisサービスは自己起動しない.redis-serverがシステム起動時に自動的に実行できるようにするには、redisサービスをデーモンとして実行する必要があり、/redis-4.0.6/ディレクトリに戻ってredisを見つける.confのファイルです.このファイルはredisサービスの実行時にロードされる構成です.
ここでdaemonizeのデフォルト値がfalse pidfileのデフォルト値がpidfile/var/run/redis_6379.pid
最初の表現はdaemon化するかどうか、明らかにdaemonize yesに変更します.2つ目は、サービスがデーモン・プロセスで実行されると、redisはデフォルトでpidを/var/run/redis_に書き込むことを示します.6379.pidファイルは、サービス実行中にファイルが存在し、サービスが停止すると自動的に削除されるため、redisが実行されているかどうかを判断するために使用できます.
保存して終了します.(redisの導入時に変更されました)
基本的な構成では、redisには、起動、停止、再起動を管理するスクリプトも必要です.redisソースコードには、/usr/redis/utils/redis_に位置する初期化スクリプトが用意されています.init_script.
REDISPORT=6379
EXEC=/usr/local/bin/redis-server
CLIEXEC=/usr/local/bin/redis-cli
PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/etc/redis/${REDISPORT}.conf"
case "$1" in
start)
if [ -f $PIDFILE ]
then
echo "$PIDFILE exists, process is already running or crashed"
else
echo "Starting Redis server..."
$EXEC $CONF
fi
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE does not exist, process is not running"
else
PID=$(cat $PIDFILE)
echo "Stopping ..."
$CLIEXEC -p $REDISPORT shutdown
while [ -x /proc/${PID} ]
do
echo "Waiting for Redis to shutdown ..."
sleep 1
done
echo "Redis stopped"
fi
;;
*)
echo "Please use start or stop as first argument"
;;
esac
スクリプトには、ポート、serverパス、cliパス、pidfileパス、confパスが指定されています.
EXEC=/usr/local/bin/redis-server
CLIEXEC=/usr/local/bin/redis-cli
PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/etc/redis/${REDISPORT}.conf"
インストール時にmake installが実行された場合、make installはserverとcliを/usr/local/binの下にコピーするため、ここのスクリプトはそれほど変更する必要はありません.
またここのconfの経路を見ると、redisディレクトリの下のredisが必要です.confファイルを/etc/redis/6379にコピーする.conf
# cd /etc
# mkdir redis
# cp /usr/redis/redis.conf /etc/redis/6379.conf
次にredis_init_scriptスクリプトを/etc/initにコピーします.d/redisd
cp /usr/redis/utils/redis_init_script /etc/init.d/redisd
/etc/init.dの下のスクリプトは、システム起動が自動的に起動できるサービスですが、システム起動時の構成が1つ欠けています.
# chkconfig redisd on
サービスredisdがchkconfigをサポートしていないというエラーが表示されます.
サービスredis does not support chkconfigの解決策を参照してください.これはredis_init_scriptの先頭に小さな変更を追加します.
#!/bin/sh
# chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
ここで2345,9010はそれぞれどういう意味かについては、上記の記事のリンクを参照してください.
保存が完了したら/etc/initに再コピーします.d/redisd後、chkconfigを再実行すると完了します.
すべてが完了したら、サービスが正常に設定されているかどうかを確認するには、次のコマンドを実行します.
# service redisd start
# service redisd stop
に等しい
# /etc/init.d/redisd start
# /etc/init.d/redisd stop
最後にシステムを再起動しましょう.システムに入ってからredis-cliを直接実行してredisサービスが自動的に実行されたかどうかを確認します.