ビルドステップ
一つの主よ、読むためにノード内のマスターノードへの、からの書き込みの一つは、成功した構築するために、マスター・スレーブ・アーキテクチャを読み取ることができ、ノード間の認証パスワードが含まれます
レプリケーションを有効にし、展開スレーブノード
別のサーバー上のノードから展開します。
- インストール
tcl8.6.1-src.tar.gz
wget http://downloads.sourceforge.net/tcl/tcl8.6.1-src.tar.gz
tar -xzvf tcl8.6.1-src.tar.gz
cd /usr/local/tcl8.6.1/unix/
./configure
make && make install
- 使用
redis-3.2.8.tar.gz
(あなたが最新の安定バージョンを使用することができます)
tar -zxvf redis-3.2.8.tar.gz
cd redis-3.2.8
make && make test && make install
make install
- Redisのutilsのディレクトリの下に、スクリプトredis_init_scriptがあります
- Redis_init_scriptは、Linuxの/etc/init.dディレクトリにスクリプトをコピーし、redis_init_scriptリネームredis_6379,6379は、このインスタンスがポート番号Redisのを聞いていることを、私たちの希望です
- 修正REDISPORTライン6 redis_6379スクリプト、同じポート番号に設定(デフォルトは6379です)
- 2つのディレクトリを作成します。/ etc / Redisの(ストレージ構成ファイルをRedisの)、は/ var / Redisの/ 6379(ファイルのRedisの永続ストレージ)
- /の/ etcにコピー(ルートディレクトリのデフォルト、redis.confによる)を変更プロファイルを、RedisのディレクトリをRedisの、6379.confの名前を変更します
- 修飾部分はredis.conf生産するように構成されています
daemonize yes 让redis以daemon进程运行
pidfile /var/run/redis_6379.pid 设置redis的pid文件位置
port 6379 设置redis的监听端口号
dir /var/redis/6379 设置持久化文件的存储位置
- Redisのは、システムが起動し、自動的にredis_6379スクリプトで起動従ってみましょう、トップ、2行のコメントを追加
# chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
その後、実行します。
chkconfig redis_6379 on
- スレーブノードとして構成される。スレーブノードの構成について:
slaveof 192.168.1.1 6379
缶
また、コマンドを使用することができますslaveof
**
強制別々の読み取りと書き込み
- レプリケーションマスタアーキテクチャに基づいて個別の読み取りと書き込みを達成するために
redis slave node
読み取り専用、デフォルトで有効になって、slave-read-only
- 読み取り専用オープン
redis slave node
、などの読み取りや書き込みなど、すべての書き込み操作は、別のインフラストラクチャを構築するために強制することができ拒否する
クラスタ安全認証
設定後、Redisの-CLIパスワードを入力するには、ローカルのテストを除去することができます。
redis-cli -h 192.168.0.107 -a redis-pass
- マスターは、安全認証で有効になって
requirepass
- 接続されたスレーブマスターパスワード、
masterauth
読み取りと書き込みの分離アーキテクチャ試験
- 最初のマスターノードを起動し、Eショップ-cache01に例のRedis
- のノード、Eショップ-cache02から例Redisの再始動
/etc/init.d/redis_6379開始
- あなたが与えられたノードから開始した場合
のノードから再実行make install
- マスタノードテストからの同期データが見つかりません
slave节点
ない同期master节点
データを。
- telnetテストIPとポートは、
redis slave node
に接続されていないredis master node
6379のポート
yum install -y telnet
telnet eshop-cache01 6379
- 解決策:クラスタの運用環境を構築する場合、設定を変更することを忘れないでください
bind 127.0.0.1
- >ローカル開発およびデバッグモード、それができるだけで127.0.0.1
、ローカルポート6379へのアクセスに、それぞれredis.conf
のbind 127.0.0.1
- >自分のIPアドレスをバインドするように変更
- ポートオープン(デフォルトはすでに自由化)、我々は、各ノードで、次のとおりです。
iptables -A INPUT -ptcp --dport 6379 -j ACCEPT
- 、マスタノードにそれぞれ接続されているデータノードからの情報を表示します。
redis-cli -h ipaddr
info replication
私は読んでから、主キーにテストを書くことができます