Elasticsearch简介

Elasticsearch 是一个分布式可扩展的实时搜索和分析引擎,一个建立在全文搜索引擎 Apache Lucene™ 基础上的搜索引擎.当然 Elasticsearch 并不仅仅是 Lucene 那么简单,它不仅包括了全文搜索功能,还可以进行以下工作:

分布式实时文件存储,并将每一个字段都编入索引,使其可以被搜索。
实时分析的分布式搜索引擎。
可以扩展到上百台服务器,处理PB级别的结构化或非结构化数据。

lucene:就是一个jar包,里面包含了封装好的各种建立倒排索引,以及进行搜索的代码,包括各种算法。我们就用java开发的时候

Elasticsearch环境搭建

高版本的elasticsearch需要更高版本的jdk支持,这里我们采用jdk8、elasticsearch-5.6.2进行学习

elasticsearch官网:https://www.elastic.co/cn/

我们把文件上传上来,创建文件开始解压

cd /xuyang

mkdir es

利用rz或者其他工具进行上传

tar -zxvf elasticsearch-5.6.2.tar.gz

es是不能用root用户来启动的,不然会报错

创建新用户并授权
useradd es (创建新用户es)

授权(把我们es文件夹的权限给这个用户)
语法:chown -R 用户名 文件夹名

chown -R es es/elasticsearch-5.6.2/

切换用户
su es

启动es
进入es文件夹执行elasticsearch-5.6.2/bin/elasticsearch
或者sh elasticsearch-5.6.2/bin/elasticsearch

查看是否启动成功
curl -XGET ‘http://127.0.0.1:9200’

然后我们配置外网访问,也就可以在浏览器看见
进入文件夹 cd xuyang/es/elasticsearch-5.6.2
vi config/elasticsearch.yml 修改配置文件
配置好你的网络地址和端口
:wq 保存退出
Elasticsearch入门环境搭建_java
关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service 禁止防火墙开机启动

还需要修改Linux的一些系统配置
vi /etc/security/limits.conf
添加如下内容:

  • soft nofile 65536
  • hard nofile 131072
  • soft nproc 2048
  • hard nproc 4096

vi /etc/sysctl.conf
添加下面:
vm.max_map_count=2621441
sudo sysctl -p /etc/sysctl.conf

不修改会报一些错误,错误忘记截图了,都可以试试

然后我们重新启动bin/elasticsearch,就能在浏览器打开了

Elasticsearch入门环境搭建_git_02

Elasticsearch的header插件安装

elasticsearch-head是一个elasticsearch的集群管理工具,它是完全由html5编写的独立网页程序,你可以通过插件把它集成到es

我们需要先安装配置NodeJS
下载地址:https://nodejs.org/en/download/
版本自己看着下就好了

tar - xjf node-v12.16.1-linux-x64.tar.gz 解压

配置环境变量
vi /etc/profile

export NODE_HOME=/xuyang/es/node-v12.16.1
export PATH= N O D E H O M E / b i n : NODE_HOME/bin: NODEH​OME/bin:PATH

让环境变量生效
source /etc/profile

然后输入命令
node -v 和 npm -v能出现对应的版本号就是配置好了
Elasticsearch入门环境搭建_git_03
安装git
git是一个分布式版本控制系统
我们在Centos上安装GIT有好几种方式。这里我们用最简单的yum命令方式 一步到位,省了下载编译安装这些繁琐过程。
yum install -y git
查看是否安装成功,出现了对应的版本号就是成功了
git --version

打开 https://github.com/mobz/elasticsearch-head

cd es/进入文件夹

下载header

grunt安装
npm install -g grunt-cli

· git clone git://github.com/mobz/elasticsearch-head.git

· cd elasticsearch-head

· npm install

· npm run start

我们直接启动是看不到我们的集群服务的
Elasticsearch入门环境搭建_elasticsearch_04

配置elasticsearch,允许head插件访问

进入elasticsearch config目录 打开 elasticsearch.yml

在文件最后加上

http.cors.enabled: true

http.cors.allow-origin: “*”

cd es/elasticsearch-head-master/

然后开启服务npm run start
Elasticsearch入门环境搭建_lucene_05

end…