关键词:
文章目录
预备知识
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、集群规划+集群网络配置
环境 | 版本 |
---|---|
CentOS | 7.5 |
Java | 1.8 |
ElasticSearch | 6.6 |
Kibana | 6.6 |
节点 | hadoop100 | hadoop101 | hadoop102 |
---|---|---|---|
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_lock | Make 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 $ES_HOME
分发后,分别修改每个节点的elasticsearch.yml
的node.name
和network.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.host | hadoop100 | 指定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ɑːst | n. 单一传播 |
swap | swɑːp | v. 交换;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的安装过程,... 查看详情