0

現在のクラスターを ES2.1.1 から ES2.2.0 にアップグレードしてみることにしました。鏡のペア。クラスターは AWS 内で実行されているcloud-awsため、通信にはプラグインを使用しています。

最初のノードを正常にアップグレードし、マスター ステータスを想定しましたが、2 番目のノードをアップグレードするときに奇妙な通信/認証の問題が発生しました。

こちらのガイドラインに注意を払いましたが、まだ奇妙な問題が発生しているようです。

2 番目のノードのメイン クラスタ ログから:

[2016-02-03 12:29:41,241][INFO ][discovery.ec2            ] [Sharon Ventura] failed to send join request to master [{Space Phantom}{NzN7b7ZHT8uPu6oXJAORMg}{10.60.164.147}{10.60.164.147:9300}], reason [RemoteTransportException[[Space Phantom][10.60.164.147:9300][internal:discovery/zen/join]]; nested: IllegalStateException[failure when sending a validation request to node]; nested: RemoteTransportException[[Sharon Ventura][10.60.163.74:9300][internal:discovery/zen/join/validate]]; nested: ElasticsearchSecurityException[missing authentication token for action [internal:discovery/zen/join/validate]]; ]
[2016-02-03 12:29:42,455][DEBUG][action.admin.cluster.health] [Sharon Ventura] no known master node, scheduling a retry
[2016-02-03 12:29:44,255][INFO ][discovery.ec2            ] [Sharon Ventura] failed to send join request to master [{Space Phantom}{NzN7b7ZHT8uPu6oXJAORMg}{10.60.164.147}{10.60.164.147:9300}], reason [RemoteTransportException[[Space Phantom][10.60.164.147:9300][internal:discovery/zen/join]]; nested: IllegalStateException[failure when sending a validation request to node]; nested: RemoteTransportException[[Sharon Ventura][10.60.163.74:9300][internal:discovery/zen/join/validate]]; nested: ElasticsearchSecurityException[missing authentication token for action [internal:discovery/zen/join/validate]]; ]
[2016-02-03 12:29:47,269][INFO ][discovery.ec2            ] [Sharon Ventura] failed to send join request to master [{Space Phantom}{NzN7b7ZHT8uPu6oXJAORMg}{10.60.164.147}{10.60.164.147:9300}], reason [RemoteTransportException[[Space Phantom][10.60.164.147:9300][internal:discovery/zen/join]]; nested: IllegalStateException[failure when sending a validation request to node]; nested: RemoteTransportException[[Sharon Ventura][10.60.163.74:9300][internal:discovery/zen/join/validate]]; nested: ElasticsearchSecurityException[missing authentication token for action [internal:discovery/zen/join/validate]]; ]
[2016-02-03 12:29:49,472][DEBUG][action.admin.cluster.state] [Sharon Ventura] timed out while retrying [cluster:monitor/state] after failure (timeout [30s])
[2016-02-03 12:29:49,473][INFO ][rest.suppressed          ] /_cluster/settings Params: {}
MasterNotDiscoveredException[null]
        at org.elasticsearch.action.support.master.TransportMasterNodeAction$AsyncSingleAction$5.onTimeout(TransportMasterNodeAction.java:205)
        at org.elasticsearch.cluster.ClusterStateObserver$ObserverClusterStateListener.onTimeout(ClusterStateObserver.java:239)
        at org.elasticsearch.cluster.service.InternalClusterService$NotifyTimeout.run(InternalClusterService.java:794)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
[2016-02-03 12:29:50,283][INFO ][discovery.ec2            ] [Sharon Ventura] failed to send join request to master [{Space Phantom}{NzN7b7ZHT8uPu6oXJAORMg}{10.60.164.147}{10.60.164.147:9300}], reason [RemoteTransportException[[Space Phantom][10.60.164.147:9300][internal:discovery/zen/join]]; nested: IllegalStateException[failure when sending a validation request to node]; nested: RemoteTransportException[[Sharon Ventura][10.60.163.74:9300][internal:discovery/zen/join/validate]]; nested: ElasticsearchSecurityException[missing authentication token for action [internal:discovery/zen/join/validate]]; ]

私のelasticsearch.ymlファイル:

cluster.name: cluster01
http.cors.enabled: true
network.host: 0.0.0.0
discovery.type: ec2
discovery.ec2.tag.project_code_info: "cluster01"
cloud.aws.region: eu-central-1

最初のノードが検出されたことをログで確認できます。[Space Phantom][10.60.164.147:9300] 介入なしで検出されましたが、認証できないようです。

これは、インストールされているプラ​​グインに関連している可能性があると思わShieldれますが、以前と同じように正しい同一の権限が設定されています。他に何も変わっていません。

シールドでユーザー名とパスワードを使用していますが、SSL は構成されていません。

誰でも手伝ってもらえますか?

4

1 に答える 1

1

@ user3458016が要求したように、私はそれを理解することができました。

(すべてのノードで)すべての設定と構成をリセットし、プラグインlicenseshield削除し、すべてのユーザーを削除し、以前と同じようにすべてを再追加することで、この問題を解決できました。これらの構成は最初は同じだったので、これは奇妙です。

まず、すべてのノードで Elasticsearch を停止します。ローカルで実行している場合は、kibana を停止します。

カスタム ロールがある場合は/etc/elasticsearch/shield/roles.yml 、可能であれば、単一の記録された構成からこれを更新して、この構成を確認します。

プラグインを削除します:

/usr/share/elasticsearch/bin/plugin remove elasticsearch/license/latest /usr/share/elasticsearch/bin/plugin remove elasticsearch/shield/latest

ユーザーを削除:

/usr/share/elasticsearch/bin/shield/esusers userdel admin /usr/share/elasticsearch/bin/shield/esusers userdel logstash

プラグインを再追加します。

/usr/share/elasticsearch/bin/plugin install elasticsearch/license/latest -b /usr/share/elasticsearch/bin/plugin install elasticsearch/shield/latest -b

ユーザーを再度追加します。

/usr/share/elasticsearch/bin/shield/esusers useradd admin -p adminuserpw -r admin /usr/share/elasticsearch/bin/shield/esusers useradd logstash -p logstashuserpw -r logstash

カスタム ロールがある場合は、このロールの構成/etc/elasticsearch/shield/roles.ymlを再確認して、構成が変更または上書きされていないことを確認します。

最初のノードで Elasticsearch を開始します。ローカルで実行している場合は、kibana を開始します。

インデックスが正しく表示されていることを確認し、マスター ノードのステータスを確認します。

他のすべてのノードで上記のすべての手順を実行します。

一度に1 つずつ、残りのノードで elasticsearch を開始します。次のノードを開始する前に、正常なクラスタ レプリケーションを確認します。

誰かがこれが役立つことを願っています。

于 2016-02-29T16:16:22.017 に答える