検索
ホームページphp教程php手册Elasticsearch の単一マシン 2 ノード クラスターのデプロイメントを理解する方法

この記事では、引き続き Elasticsearch で CRUD を実行する方法についての基本的な学習を行います。

#Elasticsearch スタンドアロン デュアルノード クラスターのデプロイメント

环境:CentOS 7.2       JDK 1.8.0_74


##1. 最初の ElasticSearch (マスター ノード) をインストールします

1. es ユーザーを作成します。

useradd es
passwd es

root ユーザーは、/home/es ディレクトリに入ります。 ElasticSearch インストール パッケージ。

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.1.2.tar.gz

3. 解凍して名前を変更します (クラスタリング時に別の ES と区別しやすくするため)

tar xf elasticsearch-6.1.2.tar.gzmv elasticsearch-6.1.2.tar.gz elasticsearch-node2

4. 設定ファイルを変更します。

vi elasticsearch-node2/config/elasticsearch.yml

次の内容をファイルの末尾に追加して、接続ヘッドに正常性値が表示されるようにします (コードの各行の前にスペースを入れないでください)

cluster.name: my-application      
  各节点此名称必须一致node.name: node-2           
        节点名称,不能与其他节点相同        
         network.host: ***.***.***.***   
        自己的服务器IPhttp.port: ****         
           访问端口transport.tcp.port: ****  
    集群各节点间的通讯端口 discovery.zen.ping.unicast.hosts: ["主节点IP:通讯端口","辅节点IP:通讯端口"]

5. 起動

http.cors.enabled: truehttp.cors.allow-origin: "*"
sh elasticsearch-node2/bin/elasticsearch

正常に起動します。ブラウザに「

IP:access port##」と入力します。

#Webページには、展開が成功したことを示す次のコンテンツが表示されます

[2018-01-24T15:36:41,990][INFO ][o.e.n.Node               ] [KMyyO-3] started
[2018-01-24T15:36:41,997][INFO ][o.e.g.GatewayService     ] [KMyyO-3] recovered [0] indices into cluster_state

6、エラー報告とその処理

[タイプ 1]

{
  "name" : "node-2",
  "cluster_name" : "my-application",
  "cluster_uuid" : "j2aJ7CsRSuSo0G8Bgky2Ww",    
  "version" : {
    "number" : "6.1.2",
    "build_hash" : "5b1fea5",
    "build_date" : "2018-01-10T02:35:59.208Z",
    "build_snapshot" : false,
    "lucene_version" : "7.1.0",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"}
この問題は、es の実行に root ユーザーを使用できないため、es ユーザーに切り替えてもう一度開始してください

Caused by: java.lang.RuntimeException: can not run elasticsearch as root

[タイプ 2]

chown -R es:es elasticsearch-node2/su - es
sh elasticsearch-node2/bin/elasticsearch

ソリューション、root ユーザーに戻り、構成ファイルを変更します

max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]

[タイプ 3]

vi /etc/security/limits.conf#在最后面追加下面内容es hard nofile 65536es soft nofile 65536

ソリューション、元のユーザーに戻します。 root ユーザーにして設定ファイルを変更します。

max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

2. 2 番目の ElasticSearch (セカンダリ ノード) をインストールします。

インストール方法は最初と同じです。2 つは一貫しているので注意してください。構成ファイルの変更

root ユーザーは /home/es ディレクトリに入ります

1。解凍して名前を変更します

vi /etc/sysctl.conf 
#在最后面追加下面内容vm.max_map_count=655360#执行命令:sysctl -p

2。内容は次のとおりです。

tar xf elasticsearch-6.1.2.tar.gzmv elasticsearch-6.1.2.tar.gz elasticsearch-node3
また、ファイル
vi elasticsearch-node3/config/elasticsearch.yml

3 の最後に次のコードを追加します。

cluster.name: my-application      
  各节点此名称必须一致node.name: node-3      
               节点名称,不能与其他节点相同network.host: ***.***.***.***   
                   自己的服务器IPhttp.port: ****          
                              访问端口(注意不要与第一个端口重复)                              transport.tcp.port: ****            集群各节点间的通讯端口(注意不要与第一个端口重复)discovery.zen.ping.unicast.hosts: ["主节点IP:通讯端口","辅节点IP:通讯端口"]

ブラウザを起動し、

IP を入力します。ブラウザのポート

にアクセスします。

Webページには、2番目のデプロイが成功したことを示す次のコンテンツが表示されます。

http.cors.enabled: truehttp.cors.allow-origin: "*"

3. Elasticsearch-headプラグインをインストールします

1. head プラグインをインストールする前に、node.js をインストールする必要があります

sh elasticsearch-node3/bin/elasticsearch

インストールが完了したら、コマンドを実行してノードと npm のバージョンを表示します

{
  "name" : "node-3",
  "cluster_name" : "my-application",
  "cluster_uuid" : "j2aJ7CsRSuSo0G8Bgky2Ww",
  "version" : {
    "number" : "6.1.2",
    "build_hash" : "5b1fea5",
    "build_date" : "2018-01-10T02:35:59.208Z",
    "build_snapshot" : false,
    "lucene_version" : "7.1.0",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"}
#2。 git
curl -sL https://rpm.nodesource.com/setup_8.x | bash -
yum install -y nodejs

3 からヘッド プラグインを解凍します (操作を容易にするために名前を変更できます)

[root@host]# node -vv8.12.0[root@host]# npm -v6.4.1

4. 設定ファイルを変更します。ヘッドのポート番号

wget https://github.com/mobz/elasticsearch-head/archive/master.zip
unzip master.zip
mv elasticsearch-head-master/ head
ヘッドのリンク アドレスを変更します
vi head/Gruntfile.js

5. ヘッドを開始します

connect: {          server: {
                   options: {
                              port: ****,    改为head访问端口
                              base: '.',
                              keepalive: true                             }
                    }
          }

6. ブラウザのログイン ヘッド

URL 入力サーバー IP: ヘッド アクセス ポート

マスター ノードのアクセス アドレスなどのリンク アドレス入力

7. ヘッドのインストール時によくあるエラー

[タイプ 1] 正常に起動しましたが、Web ページを起動できません。 accessed

解決策

サーバー ファイアウォールをオフにする

vi head/_site/app.js

[タイプ 2]クラスターの正常性値が接続されていません

次のコードを elasticsearch.yml に追加します (スペースを含めないでください。コードの前)

init: function(parent) {
                        this._super();                        this.prefs = services.Preferences.instance();                        this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://主节点IP:访问端口";

Q: ES ノードがノード 2 とノード 3 を使用するのはなぜですか? Elasticsearch の単一マシン 2 ノード クラスターのデプロイメントを理解する方法回答: 以前にクラスター化されていない ES のセットを構築するためにノード 1 を使用したため、後続のクラスターには 2 と 3 を使用しました。

関連する推奨事項:


Yii2 の使用方法エラスティックサーチ、ああ?

Elasticsearch の CRUD


以上がElasticsearch の単一マシン 2 ノード クラスターのデプロイメントを理解する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい