環境: Docker + (Redis:5.0.5 * 3) 1. イメージをプルするdocker pull redis:5.0.5 2. Redisコンテナを作成する3 つの Redis コンテナを作成します。 redis-ノード1:6379 redis-ノード2:6380 redis-ノード3:6381 docker create --name redis-node1 -v /data/redis-data/node1:/data -p 6379:6379 redis:5.0.5 --cluster-enabled yes --cluster-config-file nodes-node-1.conf docker create --name redis-node2 -v /data/redis-data/node2:/data -p 6380:6379 redis:5.0.5 --cluster-enabled yes --cluster-config-file nodes-node-2.conf docker create --name redis-node3 -v /data/redis-data/node3:/data -p 6381:6379 redis:5.0.5 --cluster-enabled yes --cluster-config-file nodes-node-3.conf 3. コンテナを起動するためにクラスターを起動して構築するまず、 実行コマンドを実行した後、コンテナの起動を確認します。 上記のような状況が発生した場合、 上記のように、これは権限の問題です。権限を変更してみましょう。 chmod -R 777 /データ 起動が成功すると、次の図が表示されます。 クラスターの構築 Docker で 3 つの Redis によって割り当てられた IP ノード情報を表示します。 「docker examine redis-node1」を実行して、redis-node1 の IP 情報を取得します: 172.17.0.4 IP 情報を取得したら (各人の IP 情報は異なる場合があります)、コンテナーに入り、クラスターを構築します。 # ここでは例として node1 を入力します docker exec -it redis-node1 /bin/bash # 次にクラスタ形成コマンドを実行します(自分のIP情報に合わせて接続してください) redis-cli --cluster 作成 172.17.0.2:6379 172.17.0.3:6379 172.17.0.4:6379 --cluster-replicas 0 さて、これでクラスターが構築されました。テストしてみましょう。 テストクラスター
4. 既存の問題上記の手順により、クラスターは正常に構築されますが、まだいくつかの問題があります。クラスターノードの 1 つの解決策は、Docker に 既存の問題を解決するために、 1. 実行中のコンテナを停止する docker stop redis-node1 redis-node2 redis-node3 2. 以前に作成したコンテナを削除する docker rm redis-node1 redis-node2 redis-node3 # 上記で作成した設定ファイルをクリアします rm -rf /data/redis-data/node* 3. ホストモードに基づいて再作成する docker create --name redis-node1 --net host -v /data/redis-data/node1:/data redis:5.0.5 --cluster-enabled yes --cluster-config-file nodes-node-1.conf --port 6379 docker create --name redis-node2 --net host -v /data/redis-data/node2:/data redis:5.0.5 --cluster-enabled yes --cluster-config-file nodes-node-2.conf --port 6380 docker create --name redis-node3 --net host -v /data/redis-data/node3:/data redis:5.0.5 --cluster-enabled yes --cluster-config-file nodes-node-3.conf --port 6381 前の作成コマンドとは異なり、まず、 4. コンテナを起動してクラスターを形成する # コマンドを開始 docker start redis-node1 redis-node2 redis-node3 # コンテナに入る docker exec -it redis-node1 /bin/bash # クラスターを構築します。10.211.55.4 は現在の物理マシンの IP アドレスです。redis-cli --cluster create 10.211.55.4:6379 10.211.55.4:6380 10.211.55.4:6381 --cluster-replicas 0 5. クラスター情報を表示する ルート@CentOS7:/data# redis-cli 127.0.0.1:6379> クラスターノード 72c291c32815194b64d1f6d0fdf771f5cc04e14a 10.211.55.4:6380@16380 マスター - 0 1590905997358 2 接続 5461-10922 6a595b67bbff15c94e5874c2d2cd556d6a6a6c17 10.211.55.4:6381@16381 マスター - 0 1590905998362 3 接続済み 10923-16383 4e3dbdc8f835dcbc38291c88f08165ee51d53d3d 10.211.55.4:6379@16379 自分、マスター - 0 1590905997000 1 接続 0-5460 127.0.0.1:6379> 6. テストクラスター
ルート@CentOS7:/data# redis-cli -c 127.0.0.1:6379> wxiaowei 123 を設定 -> 10.211.55.4:6380 にあるスロット [7515] にリダイレクトされました わかりました 10.211.55.4:6380> wxiaowei を取得 「123」 この時点で、Docker ベースの Redis クラスターの 必要なマスタースレーブ クラスター: https://www.jb51.net/article/212285.htm Docker 上での Redis クラスターの構築に関するこの記事はこれで終わりです。Docker Redis クラスターの構築の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: CSS3 は下部に固定されたフッターを実装します (ページの高さに関係なく常に下部にあります)
序文私たちのビジネスがまだ初期段階にあり、同時実行の度合いが比較的低い場合、数年間はデッドロックの問...
目次1. 条件付きアクセス属性2. アロー関数の紹介1. 条件付きアクセス属性?. は ES2020...
目次1. グローバルに登録されたコンポーネント2. グローバルカスタム指示vue 、新しいプラグイン...
MyISAM、MySQLでよく使われるストレージエンジン特性: 1. 同時実行性とロックレベル2. ...
<br />今日、新しくなった ChinaUI.com の Web サイトを見たのですが...
CPU 権限の制限により、Linux ユーザー状態とカーネル状態間の通信は、プロセス間通信を使用した...
MySQL UTF-8 エンコーディングMySQL は 2003 年のバージョン 4.1 から U...
WeChatアプレットの簡単な計算機は参考用です。具体的な内容は次のとおりです。 1. はじめに1....
今日皆さんにお伝えしたいトピックは、「皆さんがよく話題にするテーブル スペースとは一体何でしょうか。...
1. オブジェクト指向のクラス継承これまでの章では、JavaScript のオブジェクト モデルがプ...
目次1. はじめに2. Vue JS のパフォーマンス最適化が必要な理由は何ですか? 3. Vueの...
この記事では、例を使用して MySQL データのバックアップと復元の方法について説明します。ご参考ま...
htmlのデフォルトの送信方法は、postではなくgetです。postに変更したい場合は、 meth...
長い引用には blockquote を、短い引用には q を、参考文献には cite を使用します。...
次のコマンドを実行します: glxinfo | grep レンダリング結果が「はい」の場合、グラフィ...