ubuntu18.04 redisインストール構成

4336 ワード

概要:
Redisは、柔軟性、パフォーマンス、幅広い言語サポートで知られるメモリ内のキー値ストレージです.通常、データベース、キャッシュ、メッセージ・エージェントとして使用され、さまざまなデータ構造をサポートします.
このチュートリアルでは、Ubuntu 18.04でソースコードでRedisをインストールおよび構成する方法を説明します.
STEP 1:依存項目のインストール
ソースコードをダウンロードする前に、構築依存性を満たす必要があります.
$ sudo apt update
$ sudo apt install build-essential tcl

STEP 2:Redisのダウンロード、コンパイル、インストール
依存項目をインストールすると、ソースコードをダウンロードできます.curlでRedisの最も安定したバージョンをダウンロードします.最新バージョンは常に安定したダウンロードリンクで入手できます
$ curl -O http://download.redis.io/redis-stable.tar.gz

 
解凍:
$ tar zxvf  redis-stable.tar.gz

 
解凍後のredisフォルダコンパイルインストールに入るには、次の操作を行います.
$ cd redis-stable
$ make
$ make test
$ sudo make install

STEP 3:Redisの構成
インストールが完了したら、構成を開始します.etcディレクトリに新しいフォルダを作成し、ソースコードの例redisプロファイルを新しいフォルダにコピーします.
sudo mkdir /etc/redis
sudo cp  redis-stable/redis.conf   /etc/redis        //      

プロファイルの編集
sudo vim /etc/redis/redis.conf

                                                                                                  redis.conf
.....................................................
# If you run Redis from upstart or systemd, Redis can interact with your # supervision tree. Options: #   supervised no      - no supervision interaction #   supervised upstart - signal upstart by putting Redis into SIGSTOP mode #   supervised systemd - signal systemd by writing READY=1 to $NOTIFY_SOCKET #   supervised auto    - detect upstart or systemd method based on #                        UPSTART_JOB or NOTIFY_SOCKET environment variables # Note: these supervision methods only signal "process is ready."#       They do not enable continuous liveness pings back to your supervisor. supervised systemd
.........................................................
......................................................... # The working directory. # # The DB will be written inside this directory, with the filename specified # above using the 'dbfilename' configuration directive. # # The Append Only File will also be created inside this directory. # # Note that you must specify a directory here, not a file name. dir/var/lib/redis
............................................................
supervisedはsystemdに設定され、ubuntuのsystemd initシステムを使用してredisサービスを管理するように設定されます.
dirコマンドは、永続的なデータをダンプするディレクトリを作成します.書き込み権限があり、一般ユーザーが表示できないディレクトリを作成する必要があります.次はこのディレクトリを作成します
STEP 4:redisのsystemdサービスの作成
redisサービスファイルの作成と構成
$ sudo vim /etc/systemd/system/redis.service

 
[Unit] Description=Redis In-Memory Data Store After=network.target
[Service] User=redis Group=redis ExecStart=/usr/local/bin/redis-server/etc/redis/redis.conf ExecStop=/usr/local/bin/redis-cli shutdown Restart=always
[Install] WantedBy=multi-user.target
サービスは、サービス動作を指定します.セキュリティ上の考慮では、rootユーザーでこのサービスを実行するべきではありません.専用のユーザーとグループを設定できます.サービスを開始するには、redis-serverの実行可能ファイルを呼び出し、プロファイルを指すだけです.redisのshutdownコマンドを停止します.redisができるだけ早く障害から回復できるように、restartはalwaysに設定する必要があります.
STEP 5:ユーザー、グループ、ディレクトリの作成
専用のユーザーグループを作成し、redisを起動します.
//      
$ sudo adduser --system --group --no-create-home redis
$ sudo mkdir /var/lib/redis
//     
$ sudo chown redis:redis /var/lib/redis
//      
$ sudo chmod 770 /var/lib/redis

STEP 6:redisの起動とテスト
システムdサービスの起動
$ sudo systemctl start redis

サービスにエラーがないかどうかを確認
$ sudo systemctl status redis

出力は次のようになります.
● redis.service - Redis In-Memory Data Store    Loaded: loaded (/etc/systemd/system/redis.service; enabled; vendor preset: enabled)    Active: active (running) since Tue 2018-12-18 17:33:13 CST; 2h 40min ago   Process: 13224 ExecStop=/usr/local/bin/redis-cli shutdown (code=exited, status=0/SUCCESS)  Main PID: 13254 (redis-server)     Tasks: 4 (limit: 2130)    CGroup:/system.slice/redis.service            └─13254/usr/local/bin/redis-server *:6379
...........................
クライアントコマンドを実行してredisに接続し、pingを入力するとPONGを返します
$ redis-cli


127.0.0.1:6379> ping
PONG

これで、インストールが完了しました.redisの起動時にredisを起動するように設定するには、次のコマンドを入力します.
$ sudo systemctl enable redis