elasticsearch集群部署(代码片段)

小基基o_O 小基基o_O     2022-12-25     352

关键词:

预备知识

1、检索

以检索海南椰子为例:
层级查找方式:食品=>水果=>椰子=>海南椰子
关键词方式:输入关键词海南椰子

2、如果用MySQL来做关键词检索

SELECT * FROM goods WHERE name LIKE '%香蕉%';

即使对name创建索引,该查询依然是全表扫描(可以在开头加EXPLAIN来查看)
也就是说,索引失效了;关系型数据库不擅长干这事

3、倒排索引

https://blog.csdn.net/Yellow_python/article/details/88558424

ELK简介

  • ELK=ElasticSearch+Logstash+Kibana
    Elasticsearch:一个分布式、RESTful 风格的搜索和数据分析引擎
    Logstash:日志采集工具
    Kibana:为Logstash和ElasticSearch提供Web界面

ElasticSearch集群部署

01、集群规划+集群网络配置

环境版本
CentOS7.5
Java1.8
ElasticSearch6.6
Kibana6.6
节点hadoop100hadoop101hadoop102
master*--

https://yellow520.blog.csdn.net/article/details/113073636

02、CentOS7创建新用户+免密登录(可选)

用户为root才需要执行此步,下面创建名为yellow的用户:
https://yellow520.blog.csdn.net/article/details/115495027

集群之间各用户免密登录:
https://yellow520.blog.csdn.net/article/details/110143502

03、安装JDK

https://yellow520.blog.csdn.net/article/details/110425351

04、环境变量(可选)

https://yellow520.blog.csdn.net/article/details/112692486

05、ES的下载、上传、解压、修改户主

ES下载地址:
https://download.csdn.net/download/Yellow_python/21495315

tar -zxvf elasticsearch-6.6.0.tar.gz -C /opt/
cd /opt
mv elasticsearch-6.6.0 elasticsearch
chown -R yellow:yellow $ES_HOME
ls -l

06、创建数据存放目录

mkdir $ES_HOME/data

07、配置yml

vim $ES_HOME/config/elasticsearch.yml
#-----------------------Cluster-----------------------
cluster.name: my-application
#-----------------------Node-----------------------
node.name: node-100
#-----------------------Paths-----------------------
path.data: /opt/elasticsearch/data
#-----------------------Memory-----------------------
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
#-----------------------Network-----------------------
network.host: hadoop100
#-----------------------Discovery-----------------------
discovery.zen.ping.unicast.hosts: ["hadoop100"]
参数说明备注
cluster.name集群名称同一集群的各节点的集群名称要相同
node.name节点名称同一集群的各节点的节点名称要不同
path.data数据存放目录
bootstrap.memory_lockMake sure that the heap size is set to about half the memory available on the system and that the owner of the process is allowed to use this limit.Elasticsearch performs poorly when the system is swapping the memory.
network.host绑定主机名
discovery.zen.ping.unicast.hosts节点扩展当新节点启动时,会通过该主机列表来加入集群
discovery.zen.ping.unicast.hosts说明
["hadoop100","hadoop101","hadoop102"]新节点hadoop103启动后,会ping该主机列表来发现并加入集群
["hadoop100"]集群启动时,必须先启动hadoop100

08、配置JVM选项(可选)

虚拟机内存不够才需要改

vim $ES_HOME/config/jvm.options
-Xms256m
-Xmx256m

09、修改Linux配置

在每个节点,使用root用户编辑

sudo vim /etc/security/limits.conf
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096

在每个节点,使用root用户编辑

sudo vim /etc/sysctl.conf
vm.max_map_count=655360
sysctl -p

10、重启Linux

每个节点进行重启

reboot

11、分发ES

rsync.py分发

rsync.py $ES_HOME

分发后,分别修改每个节点的elasticsearch.ymlnode.namenetwork.host

12、启动ES

每个节点都执行下面命令

$ES_HOME/bin/elasticsearch

13、查看ES

浏览器打开hadoop100:9200或在Linux输入命令

curl hadoop100:9200

查看集群所有节点详细信息

curl hadoop100:9200/_cat/nodes?v

Kibana安装

1、解压

放到ES里(放别的地方也可)

tar -zxvf kibana-6.6.0-linux-x86_64.tar.gz -C $ES_HOME/
cd $ES_HOME
mv kibana-6.6.0-linux-x86_64 kibana
ls -l

2、修改配置

vim $ES_HOME/kibana/config/kibana.yml
修改参数参数值备注
server.hosthadoop100指定Kibana服务器绑定的地址,可以是IP地址或主机名
elasticsearch.hosts["http://hadoop100:9200"]指定Kibana查询ES时的URL列表

3、启动Kibana

$ES_HOME/kibana/bin/kibana

查看浏览器hadoop100:5601

集群启停脚本

可选,前提是配置好集群间免密登录

touch ~/bin/es.sh
chmod 777 ~/bin/es.sh
vim ~/bin/es.sh
#!/bin/bash

cmd='echo Usage: es.sh start/stop'

if(($#!=1))
then
    $cmd
    exit
fi

# ElasticSearch
case $1 in
"start") 
    cmd="nohup $ES_HOME/bin/elasticsearch > /dev/null 2>&1 &"
;;
"stop") 
    cmd="ps -ef | grep $ES_HOME | grep -v grep | awk 'print \\$2' | xargs kill"
;;
*) 
    $cmd
    exit
;;
esac

for h in hadoop100 hadoop101 hadoop102
do
    ssh $h $cmd
    sleep 9s
done

# Kibana
kibana=$ES_HOME/kibana/bin/kibana

case $1 in
"start") 
    nohup $kibana > /dev/null 2>&1 &
;;
esac

jps.py

效果

Appendix

en🔉cn
unicast'juːnɪkɑːstn. 单一传播
swapswɑːpv. 交换;n. 交换

elasticsearch集群部署(代码片段)

...1、检索2、如果用MySQL来做关键词检索3、倒排索引ELK简介ElasticSearch集群部署01、集群规划+集群网络配置02、CentOS7创建新用户+免密登录(可选)03、安装JDK04、环境变量(可选)05、ES的下载、上传、解压、修... 查看详情

2022elasticsearch-7.17.6集群部署(代码片段)

目录0.环境系统1.安装es集群2.配置es集群2.1.修改es配置文件2.2.修改JVM配置3.系统配置4.启动es集群0.环境系统1.安装es集群下载及安装wgethttps://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.6-x86_64.rpmwgethttps://artifacts.elastic.co 查看详情

树莓派部署elasticsearch6集群(代码片段)

欢迎访问我的GitHub本篇概览今天在两个树莓派3B上部署了Elasticsearch6.7.1版本的集群,和在一般Linux服务器上部署区别不大,现在把过程小结一下,希望能给您一些参考;环境信息树莓派操作系统是64位Ubuntu,该系统的安装步骤请参... 查看详情

elasticsearch集群部署windows+linux双系统搭建(代码片段)

...er)配置首先打开node-1文件夹->config目录下-》bin目录下的elasticsearch.ym 查看详情

elasticsearch7docker集群部署(代码片段)

背景在日志分析中常用中间件ELK,工作中需要部署一套elastic7集群用于存储数据。搭建过程如下。镜像版本elasticsearch:7.16.2kibana:7.16.2部署地址:192.168.20.20/192.168.20.21/192.168.20.22创建目录sudomkdir-p/app/server/elasticsearch/temp/configs 查看详情

如何在docker中部署elasticsearch集群和kibana(代码片段)

做实验时需要了解Elasticsearch集群如何操作?通过使用docker-compose可以批量创建docker容器,启动ES集群。先配置文件docker-compose.yml文件如下:1version:‘2.2‘2networks:3esnet:4services:5es00:6image:docker.elastic.co/elasticsearch/elasticsearch:6.5. 查看详情

elasticsearch集群部署系统参数配置调优(代码片段)

内存基本要求参考书籍:[Elasticsearch:权威指南]节选https://www.elastic.co/guide/cn/elasticsearch/guide/current/hardware.html进程数和文件句柄数配置使用命令查看:vi/etc/security/limits.conf如果没配置,在文件的后面加上配置*softnproc131072*ha 查看详情

centos单机部署elasticsearch7.2集群(代码片段)

配置node0#========================ElasticsearchConfiguration=========================##NOTE:Elasticsearchcomeswithreasonabledefaultsformostsettings.#Beforeyousetouttotweakandtunetheconfiguration,makesureyou#understandwhatareyoutryingtoaccomplishandtheconsequences.##Theprimarywayofconfiguringanodei... 查看详情

logstash+kibana+多elasticsearch集群部署(代码片段)

ELK原理与介绍?ELK是三个开源软件的缩写,分别表示:Elasticsearch,Logstash,Kibana,它们都是开源软件。新增了一个FileBeat,它是一个轻量级的日志收集处理工具(Agent),Filebeat占用资源少,适合于在各个服务器上搜集日志后传输给Logstash... 查看详情

日志分析系统elk之elasticsearch(代码片段)

Elasticsearch什么是ELKElasticsearchElasticsearch基础模块elasticsearch应用场景Elasticsearch单节点部署Elasticsearch集群的部署集群简介elasticsearch节点角色集群部署可视化工具cerebro可视化工具elasticsearch-head插件索引、分片和副本Elasticsearch节点优... 查看详情

日志分析系统elk之elasticsearch(代码片段)

Elasticsearch什么是ELKElasticsearchElasticsearch基础模块elasticsearch应用场景Elasticsearch单节点部署Elasticsearch集群的部署集群简介elasticsearch节点角色集群部署可视化工具cerebro可视化工具elasticsearch-head插件索引、分片和副本Elasticsearch节点优... 查看详情

elasticsearch——windows下es集群部署&linux下es单节点集群部署(代码片段)

...要是说一下windows下部署ES集群、Linux下单节点部署。单台Elasticsearch服务器提供服务,往往都有最大的负载能力,超过这个阈值,服务器性能就会大大降低甚至不可用,所以生产环境中,一般都是运行在指定服... 查看详情

elasticsearch——windows下es集群部署&linux下es单节点集群部署(代码片段)

...要是说一下windows下部署ES集群、Linux下单节点部署。单台Elasticsearch服务器提供服务,往往都有最大的负载能力,超过这个阈值,服务器性能就会大大降低甚至不可用,所以生产环境中,一般都是运行在指定服... 查看详情

elastic:在腾讯云上部署elasticsearch集群(代码片段)

...f08;https://cloud.tencent.com/product/es)是基于开源搜索引擎Elasticsearch打造的高可用、可伸缩的云端全托管的Elasticsearch服务,包含Kibana及常用插件,并集成了安全、SQL、机器学习、告警、监控等高级特性(X-Pack)。... 查看详情

elasticsearch的安装部署(代码片段)

https://blog.csdn.net/lubin2016/article/details/81606753 1.elasticsearch的安装1.1集群规划上传elasticsearch的tar.gz包至规划的集群各节点的目录下(规划两个节点rc-fhcb-10-es001,rc-fhcb-10-es002),如:本项目安装在/opt/fhcb/目录下注意:建议elasticse 查看详情

elasticsearch7.8.0版本入门——集群部署(linux环境-centos7)(代码片段)

目录一、三台服务器信息二、Elasticsearch7.8.0单机部署三、Elasticsearch7.8.0集群部署3.1、分别再三台服务器中都安装Elasticsearch7.8.03.2、修改192.168.136.23服务器中elasticsearch配置文件3.2、修改192.168.136.24服务器中elasticsearch配置文件3.3、修... 查看详情

elasticsearch6.x集群安装部署(代码片段)

...版本不能低于1.8,推荐使用openjdk软件包版本下载地址elasticsearch6.2.3https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.3.rpmopenjdk9.0.4https://download.java.net/java/GA/jdk9/9.0.4/binaries/openjdk-9.0.4_linux-x64_bin.tar.gz部署步骤三个节分别安... 查看详情

elasticsearch8集群搭建安全功能配置详述(代码片段)

ElasticStack产品栈包含Beats、APM、Elasticsearch、ElasticsearchHadoop、Kibana、Logstash,这些产品常被作为一个整体搭配使用,其部署需要使用同样的版本,这样子能够有效简化部署操作。本文主要记录Elasticsearch8.4.3的安装过程,... 查看详情