Redisは、オープンソースのメモリ内Key-Valueデータストアです。データベース、キャッシュ、メッセージブローカーとして使用でき、文字列、ハッシュ、リスト、セットなどのさまざまなデータ構造をサポートします。 Redisは、Redis Sentinelを介して高可用性を提供し、Redisクラスターを使用して複数のRedisノード間で自動パーティション分割を行います。
このチュートリアルでは、Ubuntu20.04にRedisをインストールして構成する方法について説明します。
Ubuntu 20.04へのRedisのインストール#
UbuntuへのRedisのインストールは簡単なプロセスです。
Redisバージョン5.0.xは、デフォルトのUbuntu20.04リポジトリに含まれています。これをインストールするには、rootまたはsudo権限を持つユーザーとして次のコマンドを実行します。
sudo apt update
sudo apt install redis-server
インストールが完了すると、Redisサービスが自動的に開始されます。サービスのステータスを確認するには、次のコマンドを入力します。
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 Sat 2020-06-06 20:03:08 UTC; 10s ago
...
サーバーでIPv6が無効になっていると、Redisサービスの開始に失敗します。 それでおしまい。 Ubuntu20.04サーバーにRedisをインストールして実行しています。
デフォルトでは、Redisサーバーはリモート接続を受け入れません。 127.0.0.1
からのみRedisに接続できます (localhost)-Redisが実行されているマシン。
データベースに接続しているクライアントも同じホストで実行されている単一サーバー設定を使用している場合は、リモートアクセスを有効にしないでください。
リモート接続を受け入れるようにRedisを構成するには、テキストエディターでRedis構成ファイルを開きます。
sudo nano /etc/redis/redis.conf
bind 127.0.0.1 ::1
で始まる行を見つけます コメントしてください。
# bind 0.0.0.0 ::1
サーバーにプライベートIPがあり、行にコメントを付けるのではなく、プライベートネットワークからのみRedisに到達できるようにする場合は、127.0.0.1
の後のプライベートIPアドレス 。 ファイルを保存し、Redisサービスを再起動して、変更を有効にします。
sudo systemctl restart redis-server
次のコマンドを使用して、redisがポート6379
のすべてのインターフェイスでリッスンしていることを確認します :
ss -an | grep 6379
以下のようなものが表示されます。 0.0.0.0
マシン上のすべてのIPv4アドレスを意味します。
tcp LISTEN 0 511 0.0.0.0:6379 0.0.0.0:*
tcp LISTEN 0 511 [::]:6379 [::]:*
次に、TCPポート6379
でトラフィックを有効にするようにファイアウォールを構成する必要があります 。
通常、特定のIPアドレスまたはIP範囲からのみRedisサーバーへのアクセスを許可する必要があります。たとえば、192.168.121.0/24
からの接続のみを許可するには サブネットの場合、次のコマンドを実行します:
sudo ufw allow proto tcp from 192.168.121.0/24 to any port 6379
信頼できるIP範囲からの接続のみを受け入れるようにファイアウォールが構成されていることを確認してください。 この時点で、リモートロケーションからTCPポート6379でRedisに接続できるはずです。
すべてが正しく設定されていることを確認するには、redis-cli
を使用してリモートマシンからRedisサーバーにpingを実行してみてください。 ユーティリティ:
redis-cli -h <REDIS_IP_ADDRESS> ping
コマンドはPONG
の応答を返す必要があります :
PONG