redisクラスタ設定パスワードの詳細
注意事項:
1.redis-tribを使用する場合rbツールはクラスタを構築し、クラスタ構築が完了する前にパスワードを構成しないでください.クラスタ構築が完了したらconfig set+config rewriteコマンドでマシンごとにパスワードを設定します.
2.クラスタにパスワードを設定する場合、requirepassとmasterauthの両方を設定する必要があります.そうしないと、プライマリ・セカンダリ・スイッチングが発生すると、認可の問題が発生し、ログをシミュレートして観察できます.
3.各ノードのパスワードが一致している必要があります.そうしないと、Redirectedは失敗します.
[plain] view plain copy config set masterauth abc config set requirepass abc config rewrite
パスワード設定後、redis-trib.rb check 192.168.0.107:6379
パスワード設定後、redis-trib.rb check 192.168.0.107:6379エラー接続がインスタンスに届かないことを報告し、解決方法:
vim/usr/lib/ruby/gems/1.8/gems/redis-3.3.0/lib/redis/client.rb
class Redis class Client
DEFAULTS = { :url => lambda { ENV["REDIS_URL"] }, :scheme => "redis", :host => "127.0.0.1", :port => 6379, :path => nil, :timeout => 5.0, :password => "gh*8pass", :db => 0, :driver => nil, :id => nil, :tcp_keepalive => 0, :reconnect_attempts => 1, :inherit_socket => false }
デフォルトのパスワードを変更すればいいです
1.パスワードの設定方法一:すべてのRedisクラスタのredisを変更する.confファイルの追加:masterauth passwd 123 requirepass passwd 123説明:この方法では各ノードを再起動する必要があります
方法2:各インスタンスにアクセスして設定:./redis-cli-c-p 7000 config set masterauth passwd 123 config set requirepass passwd 123 config rewriteの後にそれぞれ./redis-cli -c -p 7001,./redis-cli -c -p 7002…..コマンドは各ノードにパスワードを設定注意:各ノードのパスワードはすべて一致しなければならなくて、さもなくばRedirectedは失敗して、このような方式を推薦して、このような方式はパスワードをredisに書きます.confの中へ行って、しかも再起動する必要はありません
2.パスワードを設定後にredis-tribを使用する必要がある場合.rbの各種コマンド:redis-trib.rb check 127.0.0.1、エラーERR]Sorry,can’t connect to node 127.0.0.1:7000解決策:vim/usr/lib/ruby/gems/1.8/gems/redis-3.3.0/lib/redis/client.rb、passordを変更します
2.パスワードでクラスタにアクセス
3.Javaクライアントはjavaプログラムで最新のredisを使用する.Clientsラックパッケージ、古いバージョンのパッケージにはmavenプログラムなどのパスワードアクセスが提供されていない可能性があります.
コードにはパスワード付きのコンストラクション関数が使用されます
1.redis-tribを使用する場合rbツールはクラスタを構築し、クラスタ構築が完了する前にパスワードを構成しないでください.クラスタ構築が完了したらconfig set+config rewriteコマンドでマシンごとにパスワードを設定します.
2.クラスタにパスワードを設定する場合、requirepassとmasterauthの両方を設定する必要があります.そうしないと、プライマリ・セカンダリ・スイッチングが発生すると、認可の問題が発生し、ログをシミュレートして観察できます.
3.各ノードのパスワードが一致している必要があります.そうしないと、Redirectedは失敗します.
[plain] view plain copy
パスワード設定後、redis-trib.rb check 192.168.0.107:6379
パスワード設定後、redis-trib.rb check 192.168.0.107:6379エラー接続がインスタンスに届かないことを報告し、解決方法:
vim/usr/lib/ruby/gems/1.8/gems/redis-3.3.0/lib/redis/client.rb
class Redis class Client
DEFAULTS = { :url => lambda { ENV["REDIS_URL"] }, :scheme => "redis", :host => "127.0.0.1", :port => 6379, :path => nil, :timeout => 5.0, :password => "gh*8pass", :db => 0, :driver => nil, :id => nil, :tcp_keepalive => 0, :reconnect_attempts => 1, :inherit_socket => false }
デフォルトのパスワードを変更すればいいです
1.パスワードの設定方法一:すべてのRedisクラスタのredisを変更する.confファイルの追加:masterauth passwd 123 requirepass passwd 123説明:この方法では各ノードを再起動する必要があります
方法2:各インスタンスにアクセスして設定:./redis-cli-c-p 7000 config set masterauth passwd 123 config set requirepass passwd 123 config rewriteの後にそれぞれ./redis-cli -c -p 7001,./redis-cli -c -p 7002…..コマンドは各ノードにパスワードを設定注意:各ノードのパスワードはすべて一致しなければならなくて、さもなくばRedirectedは失敗して、このような方式を推薦して、このような方式はパスワードをredisに書きます.confの中へ行って、しかも再起動する必要はありません
2.パスワードを設定後にredis-tribを使用する必要がある場合.rbの各種コマンド:redis-trib.rb check 127.0.0.1、エラーERR]Sorry,can’t connect to node 127.0.0.1:7000解決策:vim/usr/lib/ruby/gems/1.8/gems/redis-3.3.0/lib/redis/client.rb、passordを変更します
class Client
DEFAULTS = { :url => lambda { ENV["REDIS_URL"] }, :scheme => "redis", :host => "127.0.0.1", :port => 6379, :path => nil, :timeout => 5.0, :password => "passwd123", :db => 0, :driver => nil, :id => nil, :tcp_keepalive => 0, :reconnect_attempts => 1, :inherit_socket => false
}1234567891011121314151612345678910111213141516
2.パスワードでクラスタにアクセス
./redis-cli -c -p 7000 -a passwd12311
3.Javaクライアントはjavaプログラムで最新のredisを使用する.Clientsラックパッケージ、古いバージョンのパッケージにはmavenプログラムなどのパスワードアクセスが提供されていない可能性があります.
redis.clients
jedis
2.9.0
jar
123456123456
コードにはパスワード付きのコンストラクション関数が使用されます
redisCluster = new JedisCluster(nodeList, TIME_OUT, 3000, 5, "passwd123", poolConfig);