ホームページ  >  記事  >  データベース  >  Redis クラスター構築の実践

Redis クラスター構築の実践

PHPz
PHPzオリジナル
2023-06-20 23:05:141831ブラウズ

Redis は、オープン ソースのメモリ内データ ストレージ システムであり、キャッシュ、メッセージ キュー、Key-Value データベース、その他のシナリオで一般的に使用されます。大規模なアプリケーション シナリオでは、単一の Redis マシンでは需要を満たすことができない場合があり、この場合、システムの可用性とスケーラビリティを向上させるために Redis クラスターを構築する必要があります。この記事では実際にRedisクラスターを構築する手順を紹介します。

  1. 環境の準備

Redis クラスターをセットアップする前に、まず環境を準備する必要があります。この記事では、4 台の CentOS 7.6 仮想マシンを Redis ノードとして使用します。各仮想マシンの構成は次のとおりです。

CPU: 1 コア

メモリ: 2GB

ハードディスク: 20GB

次にインストールする必要があります。 Redis では、ソース コード コンパイル方法を使用してインストールを使用します。 Redis のダウンロード:

wget http://download.redis.io/releases/redis-5.0.8.tar.gz

Redis 解凍:

tar -zxvf redis-5.0.8.tar.gz

Redis ディレクトリに入る:

cd redis-5.0.8

Redis のコンパイル:

make

Redis のインストール:

make install

インストールが完了したら、各マシンで Redis 構成ファイル redis.conf を構成する必要があります。設定ファイルの例を以下に示します:

bind 127.0.0.1
protected-mode no
port 6379
daemonize yes
pidfile /var/run/redis_6379.pid
logfile "/var/log/redis/redis.log"
dir /var/lib/redis/6379

このうち、bind はバインドされた IP アドレスを示し、protected-mode は保護モードを有効にするかどうかを示し、port は Redis が使用するポート番号を示し、daemonize を有効にするかどうかを示します。デーモン プロセスとして開始します。pidfile はプロセス ID ファイル パスを表します。logfile はログ ファイル パスを表します。dir は Redis データ ファイル ストレージ パスを表します。

  1. Redis クラスターの構築

各マシンの Redis 環境を準備した後、それらを Redis クラスターに形成する必要があります。 Redis クラスターはマスター/スレーブ レプリケーション モードを採用しており、各ノードはデータ バックアップ用に対応するノードのスレーブ ノードを持ちます。

以下は Redis クラスターの構築方法の例です:

a) 構成ファイルを作成します

まず、構成ファイル redis-cluster を作成する必要があります。

port 6379
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 15000
daemonize yes
pidfile /var/run/redis_6379.pid
logfile "/var/log/redis/redis.log"
dir /var/lib/redis/6379

このうち、cluster-enabled はクラスターモードをオンにすることを意味し、cluster-config-file はノード情報の保存ファイルを意味します。 timeout はタイムアウトを意味し、その他のパラメータは Redis ドキュメントの設定と同じです。

b) Redis ノードを開始します

次に、次のコマンドを使用して、各 Redis ノードで Redis サービスを開始する必要があります:

redis-server /etc/redis/redis-cluster.conf

c) クラスターを作成します

すべての Redis ノードで、次のコマンドを実行します:

redis-cli --cluster create node1_IP:6379 node2_IP:6379 node3_IP:6379 node4_IP:6379 --cluster-replicas 1

その中で、node1_IP:6379 node2_IP:6379 node3_IP:6379 node4_IP:6379 は、Redis ノードの IP アドレスとポート番号を表します。 -cluster-replicas はそれぞれを表します。 各ノードにはデータ バックアップ用の 1 つのスレーブ ノードがあります。実行が完了すると、Redis クラスターが正常に確立されます。

  1. Redis クラスターのテスト

Redis クラスターの構築後、クラスターが適切に動作していることを確認するためにテストする必要があります。以下はテストプロセスです:

a) Redis クラスターに接続します

次のコマンドを使用して Redis クラスターに接続します:

redis-cli -c -h node1_IP -p 6379

このうち -c はクラスター モードで接続する場合; -h クラスター モードで接続する場合 Redis ノードの IP アドレス; -p は Redis で使用されるポート番号を示します。

b) クラスター情報の表示

次のコマンドを使用してクラスター情報を表示します:

cluster info

c) テスト データの書き込み

次のコマンドを Redis に使用しますクラスター テスト データの書き込み:

set test "redis cluster test"

d) テスト データの読み取り

次のコマンドを使用して、Redis クラスターからテスト データを読み取ります:

get test

必要に応じて、上記の操作を実行します。 success テストデータが読み取られると、Redis クラスターは正常に確立されます。

  1. 概要

Redis クラスターを構築するプロセスは比較的単純ですが、構成ファイルとクラスター コマンドが正確であることに注意する必要があります。 Redis クラスターを使用する場合は、クラスターの可用性と拡張性を向上させるために、ノードの負荷状態とデータ バックアップの信頼性にも注意する必要があります。

以上がRedis クラスター構築の実践の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。