CentOS および Debian ベースのシステムに Redis サーバーをインストールする方法
Redis は、オープンソースの高性能かつ柔軟なメモリ内データ構造ストア (キー/値形式) であり、データベース、キャッシュ、メッセージ ブローカーとして使用されます。これはANSI Cで書かれており、外部依存関係なく、Linux (導入を推奨) を含む、すべてではないにしてもほとんどの Unix 系オペレーティング システムで動作します。
機能が豊富で、複数のプログラミング言語と、文字列、ハッシュ、リスト、セット、範囲クエリを含むソートされたセット、ビットマップなどのデータ構造をサポートしています。
Redis の機能:
- ほんの数例を挙げると、C、Bash、Python、PHP、Node.js、Perl、Ruby を含むほとんどのプログラミング言語をサポートします。
- 固有のレプリケーション、Lua スクリプト、LRU エビクション、トランザクション、およびさまざまなレベルのディスク上の永続性を備えています。
- Redis Sentinel による高可用性と Redis Cluster による自動パーティショニングを提供します。
- アトミック操作の実行をサポートします。
- メモリ内のデータセットと連携して、優れたパフォーマンスを実現します。
- セットアップが簡単なマスター/スレーブの非同期レプリケーションをサポートします。
- 自動フェイルオーバーをサポートします。
- 一定期間、または各コマンドをログに追加して、データセットをディスクに頻繁に保存できます。
- オプションで永続性を無効にすることができます。
- パブリッシュ/サブスクライブメッセージングをサポートします。
- また、MULTI、EXEC、DISCARD、WATCH トランザクションなどもサポートします。
要件:
- 最小限のインストールによる CentOS 7 サーバーおよび RHEL 7 サーバー
- 最小限のインストールを備えた Ubuntu サーバーまたは Debian サーバー
- GCC コンパイラと libc
このチュートリアルでは、Linux にソースから Redis サーバーをインストールする方法 (推奨される方法) について説明します。 Redis を構成、管理、保護する方法についても説明します。 Redis はすべてのデータをメモリから提供するため、このガイドでは高メモリ VPS サーバーを使用することを強くお勧めします。
ステップ 1: Redis サーバーをソースからインストールする
1. まず、必要なビルドの依存関係をインストールします。
--------------- On CentOS / RHEL / Fedora ---------------
yum groupinstall "Development Tools"
dnf groupinstall "Development Tools"
--------------- On Debian / Ubuntu ---------------
sudo apt install build-essential
2. 次に、wget コマンドを使用して、常に最新の安定した Redis を指す特別な URL を使用して、最新の安定した Redis バージョンをダウンロードしてコンパイルします。
wget -c http://download.redis.io/redis-stable.tar.gz
tar -xvzf redis-stable.tar.gz
cd redis-stable
make
make test
sudo make install
3. Redis のコンパイル後、Redis ディストリビューション内の src
ディレクトリに、Redis の一部である次のさまざまな実行可能ファイルが追加されます。
- redis-server – redis サーバー。
- redis-sentinel – redis Sentinel 実行可能ファイル (モニタリングとフェイルオーバー)。
- redis-cli – Redis と対話するための CLI ユーティリティ。
- redis-benchmark – Redis のパフォーマンスをチェックするために使用されます。
- redis-check-aof と redis-check-dump – まれにデータ ファイルが破損した場合に役立ちます。
ステップ 2: Linux で Redis サーバーを構成する
4. 次に、init システム (このチュートリアルでは systemd) によって管理される開発環境用に Redis を構成する必要があります。 。まず、Redis 構成ファイルとデータを保存するために必要なディレクトリを作成します。
sudo mkdir /etc/redis
sudo mkdir -p /var/redis/
4. 次に、提供されたテンプレート Redis 構成ファイルを、上で作成したディレクトリにコピーします。
sudo cp redis.conf /etc/redis/
5. 次に、構成ファイルを開き、次のようにいくつかの設定を更新します。
sudo vi /etc/redis/redis.conf
6. 次に、次のオプションを検索し、ローカル環境のニーズに応じてデフォルト値を変更 (または使用) します。
port 6379 #default port is already 6379.
daemonize yes #run as a daemon
supervised systemd #signal systemd
pidfile /var/run/redis.pid #specify pid file
loglevel notice #server verbosity level
logfile /var/log/redis.log #log file name
dir /var/redis/ #redis directory
ステップ 3: Redis Systemd ユニット ファイルを作成する
7. 次のコマンドを実行して、デーモンを制御するために Redis の systemd ユニット ファイルを作成する必要があります。
sudo vi /etc/systemd/system/redis.service
そして、以下の設定を追加します。
[Unit]
Description=Redis In-Memory Data Store
After=network.target
[Service]
User=root
Group=root
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
ExecStop=/usr/local/bin/redis-cli shutdown
Restart=always
Type=forking
[Install]
WantedBy=multi-user.target
ファイルを保存して閉じます。
ステップ 4: Linux で Redis サーバーを管理およびテストする
8. 必要な構成をすべて実行したら、Redis サーバーを起動できます。現時点では、システム起動時の自動起動を有効にします。次に、次のようにステータスを表示します。
sudo systemctl start redis
sudo systemctl enable redis
sudo systemctl status redis
9. 次に、Redis セットアップ全体が正常に動作しているかどうかをテストします。 Redis サーバーと対話するには、redis-cli コマンドを使用します。サーバーに接続した後、いくつかのコマンドを実行してみてください。
redis-cli
Test connection to server using ping command:
127.0.0.1:6379> ping
Use the echo command to echo a given string:
127.0.0.1:6379> echo "Tecmint is testing Redis"
You can also set a key value using the set command like this:
127.0.0.1:6379> set mykey "Tecmint is testing Redis"
Now view the value of mykey:
127.0.0.1:6379> get mykey
10. 次に、exit
コマンドを使用して接続を閉じ、redis サーバーを再起動します。その後、以下に示すように、mykey がまだサーバーに保存されているかどうかを確認します。
127.0.0.1:6379> exit
sudo systemctl restart redis
redis-cli
127.0.0.1:6379> get mykey
11. キーを削除するには、次のように delete コマンドを使用します。
127.0.0.1:6379> del mykey
127.0.0.1:6379> get mykey
ステップ 5: Linux での Redis サーバーの保護
12. このセクションは、インターネットなどの外部ネットワークに接続された Redis サーバーを使用するユーザーを対象としています。
重要: セキュリティなしで redis をインターネットに公開すると、悪用が非常に簡単になります。したがって、次のように Redis サーバーを保護します。
- ファイアウォールで保護されたシステムの Redis ポートへの接続をブロックする
- バインド ディレクティブをループバック インターフェイスに設定します: 127.0.0.1
- クライアントが AUTH コマンドを使用して認証する必要があるように、requirepass オプションを設定します。
- Redis サーバーと Redis クライアント間のトラフィックを暗号化するために SSL トンネリングを設定します。
使用法の詳細については、以下のコマンドを実行してください。
redis-cli -h
Redis ホームページ: https://redis.io/ から、その他のサーバー コマンドを検索し、アプリケーション内で Redis を使用する方法を学ぶことができます。
このチュートリアルでは、Linux で Redis をインストール、構成、管理し、セキュリティで保護する方法を説明しました。ご意見がございましたら、以下のコメント フォームをご利用ください。