この記事では、引き続き Elasticsearch で CRUD を実行する方法についての基本的な学習を行います。
#Elasticsearch スタンドアロン デュアルノード クラスターのデプロイメント环境:CentOS 7.2 JDK 1.8.0_74
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
[タイプ 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"}
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]
vi /etc/security/limits.conf#在最后面追加下面内容es hard nofile 65536es soft nofile 65536
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
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"}
curl -sL https://rpm.nodesource.com/setup_8.x | bash - yum install -y nodejs
[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
connect: { server: { options: { port: ****, 改为head访问端口 base: '.', keepalive: true } } }
マスター ノードのアクセス アドレスなどのリンク アドレス入力
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:访问端口";
関連する推奨事項:
Yii2 の使用方法エラスティックサーチ、ああ?
Elasticsearch の CRUD
以上がElasticsearch の単一マシン 2 ノード クラスターのデプロイメントを理解する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。