CentOS7でのElasticsearchクラスター展開レコード

Elasticsearchは、Restful APIを提供する分散検索サービスです。最下層はLuceneに基づいており、[データセキュリティ](https://cloud.tencent.com/solution/data_protection?from=10680)を確保するために複数のシャードを使用し、自動再シャーディングを提供します。githubなどの大規模サイトも検索サービスとしてElasticsearchを使用します。 。ここでは意味のないことを繰り返しません。以下は、CentOS7でのElasticsearchクラスターの展開プロセスを記録しています。

Elasticsearchクラスターを3つのサーバーにデプロイする前に:
qd-vpc-op-es01    101.119.92.247
qd-vpc-op-es02    101.119.92.249
qd-vpc-op-es03    101.119.92.254

次に、別のes04マシンをクラスターに追加します。操作は次のとおりです。
qd-vpc-op-es04    101.119.92.161)jdkとelasticsearchをインストールします
jdk-8u5-linux-x64.rpmダウンロードアドレス:
https://pan.baidu.com/s/1bpxtX5X(パスワードの抽出:df6s)

elasticsearch-5.5.0.rpmダウンロードアドレス:
https://pan.baidu.com/s/1mibwWeG(抽出パスワード:vtm2)

[ root@qd-vpc-op-es04 ~]# cd tools/[root@qd-vpc-op-es04 tools]# ls
elasticsearch-5.5.0.rpm  jdk-8u5-linux-x64.rpm
[ root@qd-vpc-op-es04 tools]# rpm -ivh elasticsearch-5.5.0.rpm 
[ root@qd-vpc-op-es04 tools]# rpm -ivh jdk-8u5-linux-x64.rpm 
[ root@qd-vpc-op-es04 tools]# java -version
java version "1.8.0_05"Java(TM) SE Runtime Environment(build 1.8.0_05-b13)
Java HotSpot(TM)64-Bit Server VM(build 25.5-b02, mixed mode)2)elasticsearchを構成します
[ root@qd-vpc-op-es04 ~]# cd /etc/elasticsearch/[root@qd-vpc-op-es04 elasticsearch]# ls
elasticsearch.yml  elasticsearch.yml.bak  jvm.options  log4j2.properties  nohup.out  scripts

[ root@qd-vpc-op-es04 elasticsearch]# cat elasticsearch.yml|grep -v "#"//クラスタ内の各ノードの構成内容は基本的に同じです

cluster.name: image_search                                                       //クラスター名
node.name: image_search_node_4                                                   //クラスタ内のこのノードのノード名。ここで定義するだけです。
path.data:/data/es/data                                                         //サービスディレクトリパス
path.logs:/data/es/logs                                                         //サービスログパス
discovery.zen.ping.unicast.hosts:["101.119.92.247","101.119.92.249","101.119.92.254","10.111.233.16"]//各ノードのIPアドレスは次のとおりです
network.host:0.0.0.0//サービスにバインドされたネットワークアドレス

デフォルトのelasticsearchサービスポートは9200です[root@qd-vpc-op-es04 elasticsearch]# cat elasticsearch.yml|grep 9200
# http.port:9200[root@qd-vpc-op-es04 elasticsearch]# systemctl start elasticsearch.service
[ root@qd-vpc-op-es04 elasticsearch]# systemctl restart elasticsearch.service
[ root@qd-vpc-op-es04 elasticsearch]# systemctl status elasticsearch.service

[ root@qd-vpc-op-es04 elasticsearch]# ps -ef|grep elasticsearch
[ root@qd-vpc-op-es04 elasticsearch]# lsof -i:9200
COMMAND   PID          USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
java    10998 elasticsearch  320u  IPv4  39255      0t0  TCP *:wap-wsp(LISTEN)

Elasticsearchのヘルスステータスを確認する
[ root@qd-vpc-op-es04 elasticsearch]# curl 'localhost:9200/_cat/indices?v'
health status index                   uuid                   pri rep docs.count docs.deleted store.size pri.store.size
green  open   video_filter            Bx7He6ZtTEWuRBqXYC6gRw   5145801304.1gb            2gb
green  open   recommend_history_image svYo_Do4SM6wUiv6taUWug   512865902024.9gb         12.4gb
green  open   recommend_history_gif   rhN3MDN2TbuYILqEDksQSg   5126573102.4gb          1.2gb
green  open   post_images             TMsMsMEoR5Sdb7UEQJsR5Q   51487249320407.3gb        203.9gb
green  open   review_images_v2        qzqnknpgTniU4rCsvXzs0w   5150375955061.6gb         30.9gb
green  open   review_images           rWC4WlfMS8aGe-GOkTauZg   51518108770439.3gb        219.7gb
green  open   sensitive_images        KxSrjvXdSz-y8YcqwBMsZA   51133930128.1mb           64mb
green  open   post_images_v2          FDphBV4-QuKVoD4_G3vRtA   5149340491055.8gb         27.8gb

上記のコマンド結果からわかるように、このノードは名前イメージに正常に追加されています。_検索はelasticsearchクラスター内にあります。緑色は、ノードステータスが正常であり、データがすでに同期されていることを示します。

3 )コード内のelasticsearchの構成を更新します
新しいelasticsearchノードの構成をコードに追加するように開発部門の同僚に通知します。オンライン更新後、新しいノードのelasticsearchログをチェックして、elasticsearchログに情報が書き込まれているかどうかを確認します。
[ root@qd-vpc-op-es04 ~]# cd /data/es/logs/[root@qd-vpc-op-es04 ~]# chown -R elasticsearch.elasticsearch /data/es
[ root@qd-vpc-op-es04 logs]# ls
image_search_deprecation.log  image_search_index_indexing_slowlog.log  image_search_index_search_slowlog.log  image_search.log

----------------------------------------------------------------------------------------------------------------
注意:
Elasticsearchクラスターにノードを追加する場合は、次のようにします。
1 )新しいノードにjdkとelasticsearchサービスをインストールし、elasticsearchを構成します.ymlファイル、elasticsearchサービスを開始します
2 )クラスター内の他のノードでelasticsearchを構成します.ymlファイル、elasticsearchサービスを開始する必要はありません
3 )新しいノードでcurlを実行します'localhost:9200/_cat/indices?v'ヘルスステータスとデータ同期を表示するコマンド
4 )新しいelasticsearchノードの構成をコードに追加します。オンライン更新後、新しいノードのelasticsearchログに情報が書き込まれているかどうかを確認します。
----------------------------------------------------------------------------------------------------------------
最後に、ちなみに、他の3つのノードのelasticsearchを投稿してください.ymlファイル構成:
[ root@qd-vpc-op-es01 ~]# cat /etc/elasticsearch/elasticsearch.yml |grep -v "#"

cluster.name: image_search
node.name: image_search_node_1
path.data:/data/es/data
path.logs:/data/es/logs
discovery.zen.ping.unicast.hosts:["10.111.233.16","101.119.92.247","101.119.92.249","101.119.92.254"]
network.host:0.0.0.0[root@qd-vpc-op-es02 ~]# cat /etc/elasticsearch/elasticsearch.yml |grep -v "#"
cluster.name: image_search
node.name: image_search_node_2
path.data:/data/es/data
path.logs:/data/es/logs
discovery.zen.ping.unicast.hosts:["10.111.233.16","101.119.92.247","101.119.92.249","101.119.92.254"]
network.host:0.0.0.0[root@qd-vpc-op-es03 ~]# cat /etc/elasticsearch/elasticsearch.yml|grep -v "#"

cluster.name: image_search
node.name: image_search_node_3
path.data:/data/es/data
path.logs:/data/es/logs
discovery.zen.ping.unicast.hosts:["101.119.92.247","101.119.92.249","101.119.92.254","10.111.233.16"]
network.host:0.0.0.0----------------------------------------------------------------------------------------------------------------

ノードをシャットダウンするか、クラスターから削除する場合は、データの同期を停止するように事前にノードに通知する必要があります(移行中に使用されます)。
# curl -XPUT 'localhost:9200/_cluster/settings'-d '{"transient":{"cluster.routing.allocation.enable": "none”}}’ 

Recommended Posts

CentOS7でのElasticsearchクラスター展開レコード
Centos6.9でのRabbitMQクラスター展開レコード
Centos7.4デプロイメント構成Elasticsearch5.6クラスター
centos7でのFFmpeg環境の展開記録
CentosでのPPTP環境の展開記録
Centos7.2でのLDAPの完全な展開レコード
[CentOS環境の展開] CentOSでのJava7 / Java8の展開
CentOSでのRedisクラスターのインストール
CentOSでのRedisクラスターのインストール
Centos7.2展開vncサービスレコード
CentosでのSFTPデュアルマシン高可用性環境の展開記録
CentOS8でPXCクラスターを構築する
CentOS7でのErlang20.2のインストールと展開
k8sプラクティス(1):Centos 7.6デプロイメントk8s(v1.14.2)クラスター
CentOS6 / 7でのMySQL8.0のインストール、展開、および構成
CentOSでのZabbixのインストールと展開およびローカリゼーション
CentOS7でのJenkinsのインストールと展開のチュートリアル
CentOS展開ハーバー
CentOS7でScaleIO分散ストレージクラスターを構築する
CentOSでのMySQL8.0のインストールと展開、非常に詳細!
CentOS8でのApollo構成センターの分散展開
CentOS7でGitBookを展開する
CentOS7.4でHadoop-2.7.6をコンパイルします
ランチャーを使用して、CentOS7でK8sクラスターを構築します
CentOS7.3.1611はk8s1.5.2クラスターを展開します
Centos6.9ビルドrabbitmq3.6.8クラスター
CentOS7の下にmysql5.7をインストールします
Centosインストールelasticsearchチュートリアル
CentOS6インストールcouchdb2クラスター
Centos7の下にActiveMQをインストールします
CentOS7の下にPostgreSQL12をインストールします
VMwareにCentOSをインストールする
CentOS6.8はzookeeperクラスターを展開します
Centos7ビルドKubernetesクラスター
Centos7mqttクラスターのインストール
CentOSの下にJDK + Tomcat8をデプロイします
Centos7にmysqlをインストールします
centos6.8でランプを構成する
Centos7の下にJenkinsをインストールします
Centos7でのRedis3のインストール
CentOSクラスター関連の問題
Centos7はKubernetesクラスターを展開します
MariaDBCentos7の下にMariaDBをインストールします
CentOS6.5の下にmysql5.1をインストールします
CentOS7はk8sクラスターを展開します
Centos7にElasticsearch6をインストールします
CentOS7環境でのKubernetes(k8s)クラスターの迅速な展開
CentOS7.6サーバー展開VNC
CentOSでの脆弱性スキャンおよび分析ソフトウェアNessusの展開
Ubuntu 14.04でのDjango&MySQL環境の展開
Centos6.5でドッカー環境を構築する
Centos7ミニインストールプロセスの記録
CentOS7にElasticSearch7.xをインストールします
CentOS7でOpenLDAPサーバーを構築する
CentOS7インストールrabbitmqクラスター(バイナリ)
Centos7へのGlusterfsクラスターのインストール
CentOS 7 GaleraClusterインストールガイド
Centos7.2 /7.3クラスターインストールKubernetes1.8.4 +ダッシュボード
CentOS7で静的IPを構成する
centos7へのグラファイトの展開
CentOS6.9でOracle11gR2データベースをインストールします