Elasticsearch
下载
下载地址 : Elasticsearch
解压
tar -xvf elasticsearch-7.6.2-linux-x86_64.tar.gz
目录
mkdir data
[esroot@localhost elasticsearch-7.6.2]$ ll总用量 556drwxr-xr-x. 2 esroot root 4096 3月 26 14:36 bin #可执行文件,运行es的命令drwxr-xr-x. 2 esroot root 4096 8月 3 21:19 config #配置文件目录drwxrwxr-x. 2 esroot esroot 6 8月 3 22:27 data #本人创立寄存es存储文件drwxr-xr-x. 9 esroot root 99 3月 26 14:36 jdkdrwxr-xr-x. 3 esroot root 4096 3月 26 14:36 lib #依赖的jar-rw-r--r--. 1 esroot root 13675 3月 26 14:28 LICENSE.txtdrwxr-xr-x. 2 esroot root 4096 8月 3 21:53 logs #日志文件夹drwxr-xr-x. 38 esroot root 4096 3月 26 14:37 modules-rw-r--r--. 1 esroot root 523209 3月 26 14:36 NOTICE.txtdrwxr-xr-x. 2 esroot root 6 3月 26 14:36 plugins-rw-r--r--. 1 esroot root 8164 3月 26 14:28 README.asciidoc
配置
config 目录
[esroot@localhost config]$ ll总用量 40-rw-rw----. 1 esroot root 199 8月 3 21:19 elasticsearch.keystore-rw-rw----. 1 esroot root 2831 3月 26 14:28 elasticsearch.yml #ES启动根底配置-rw-rw----. 1 esroot root 2301 3月 26 14:28 jvm.options #ES启动时JVM配置-rw-rw----. 1 esroot root 17545 3月 26 14:36 log4j2.properties #ES日志输入配置文件-rw-rw----. 1 esroot root 473 3月 26 14:36 role_mapping.yml-rw-rw----. 1 esroot root 197 3月 26 14:36 roles.yml-rw-rw----. 1 esroot root 0 3月 26 14:36 users-rw-rw----. 1 esroot root 0 3月 26 14:36 users_roles
elasticsearch.yml 配置
- 配置
es集群名称
(默认是被正文的,并且默认有一个集群名)
# ---------------------------------- Cluster -----------------------------------## Use a descriptive name for your cluster:#cluster.name: my-application#
- 配置以后
es节点名称
(默认是被正文的,并且默认有一个节点名)
# ------------------------------------ Node ------------------------------------## Use a descriptive name for the node:#node.name: node-1## Add custom attributes to the node:##node.attr.rack: r1#
- 配置
存储数据目录门路
(用逗号分隔多个地位)和日志文件门路
# ----------------------------------- Paths ------------------------------------## Path to directory where to store the data (separate multiple locations by comma):#path.data: /usr/local/elasticsearch-7.6.2/data## Path to log files:#path.logs: /usr/local/elasticsearch-7.6.2/logs#
- 绑定地址为特定 IP 地址(设置
0.0.0.0
能够让任何人拜访到你的 es),设置一个 http 申请端口(默认 9200)
# ---------------------------------- Network -----------------------------------## Set the bind address to a specific IP (IPv4 or IPv6):#network.host: 0.0.0.0## Set a custom port for HTTP:#http.port: 9200## For more information, consult the network module documentation.#
- 集群启动时,设置
master
节点列表(用逗号分隔,目前单机所以只配置了一个)
# --------------------------------- Discovery ----------------------------------## Pass an initial list of hosts to perform discovery when this node is started:# The default list of hosts is ["127.0.0.1", "[::1]"]##discovery.seed_hosts: ["host1", "host2"]## Bootstrap the cluster using an initial set of master-eligible nodes:#cluster.initial_master_nodes: ["node-1"]#
jvm.options 配置
Xms
、Xmx
设置为统一即可
# Xms represents the initial size of total heap space# Xmx represents the maximum size of total heap space-Xms256m-Xmx256m
vm.max_map_count 配置
[root@localhost config]# vi /etc/sysctl.conf
vm.max_map_count=655360
[root@localhost logs]# sysctl -pvm.max_map_count = 655360
创立用户并赋予es
装置目录权限
这是ES的一种安全措施,不让用root用户
创立一个 esroot 用户并设置初始密码
[root@localhost bin]# useradd -c 'ES user' -d /home/esroot esroot[root@localhost bin]# passwd esroot
将elasticsearch
装置目录属主权限改为 esroot 用户
[root@localhost elasticsearch-7.6.2]# chown -R esroot:esroot /usr/local/elasticsearch-7.6.2/
切换用户到 esroot
[root@localhost config]# su esroot
启动
[esroot@localhost config]$ cd /usr/local/elasticsearch-7.6.2/bin/[esroot@localhost bin]$ ./elasticsearch -d
胜利
[esroot@localhost elasticsearch-7.6.2]$ curl 192.168.190.131:9200{ "name" : "node-1", "cluster_name" : "my-application", "cluster_uuid" : "bo7IKZAIQsGRecAecc1lwQ", "version" : { "number" : "7.6.2", "build_flavor" : "default", "build_type" : "tar", "build_hash" : "ef48eb35cf30adf4db14086e8aabd07ef6fb113f", "build_date" : "2020-03-26T06:34:37.794943Z", "build_snapshot" : false, "lucene_version" : "8.4.0", "minimum_wire_compatibility_version" : "6.8.0", "minimum_index_compatibility_version" : "6.0.0-beta1" }, "tagline" : "You Know, for Search"}
谬误
jdk版本谬误
OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release.
这是因为jdk
版本太低造成的,jdk
版本须要在9.0
以上,因而须要重新安装jdk
- 查看以后版本
[root@localhost local]# java -versionopenjdk version "1.8.0_65"OpenJDK Runtime Environment (build 1.8.0_65-b17)OpenJDK 64-Bit Server VM (build 25.65-b01, mixed mode)
- 查看 rpm
[root@localhost local]# rpm -qa|grep javatzdata-java-2015g-1.el7.noarchpython-javapackages-3.4.1-11.el7.noarchjavapackages-tools-3.4.1-11.el7.noarchjava-1.8.0-openjdk-headless-1.8.0.65-3.b17.el7.x86_64java-1.8.0-openjdk-1.8.0.65-3.b17.el7.x86_64
[root@localhost local]# rpm -qa|grep jdkjava-1.8.0-openjdk-headless-1.8.0.65-3.b17.el7.x86_64java-1.8.0-openjdk-1.8.0.65-3.b17.el7.x86_64
- 卸载
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.65-3.b17.el7.x86_64
- 下载
9.0.1
版本 jdk
9.0.1 版本 - 解压
装置在/usr/java目录
tar -zxf jdk-9.0.1_linux-x64_bin.tar.gz
- 配置环境变量
vi /etc/profile
#set java environmentJAVA_HOME=/usr/java/jdk-9.0.1CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarPATH=$PATH:$JAVA_HOME/bin:$PATHexport JAVA_HOME CLASS_PATH PATH
- 启动配置信息
source /etc/profile
- 查看是否装置胜利
[root@localhost local]# java -versionjava version "9.0.1"Java(TM) SE Runtime Environment (build 9.0.1+11)Java HotSpot(TM) 64-Bit Server VM (build 9.0.1+11, mixed mode)
过程数问题和线程数问题
max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
每个过程最大同时关上文件数太小,批改/etc/security/limits.conf
文件(root用户)
* soft nofile 65536* hard nofile 65536
max number of threads [3790] for user [esroot] is too low, increase to at least [4096]
最大线程个数太低,批改/etc/security/limits.conf
文件(root用户)
* soft nproc 4096* hard nproc 4096
此文件批改后须要从新登录用户,才会失效
elasticsearch-head
必须有node.js
下载
下载地址 : elasticsearch-head
解压
[root@localhost local]$ unzip elasticsearch-head-master.zip[root@localhost local]$ cd elasticsearch-head-master/
将elasticsearch-head
装置目录属主权限改为 esroot 用户
[root@localhost local]# chown -R esroot:esroot /usr/local/elasticsearch-head-master/
切换用户到 esroot
[root@localhost config]# su esroot
装置
先用root
用户装置
淘宝镜像cnpm
[root@bogon elasticsearch-head-master]$ npm install cnpm -g --registry=https://registry.npm.taobao.orgnpm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142npm WARN deprecated har-validator@5.1.5: this/usr/local/node-v12.18.3-linux-x64/bin/cnpm -> /usr/local/node-v12.18.3-linux-x64/lib/node_modules/cnpm/bin/cnpm+ cnpm@6.1.1added 684 packages from 964 contributors in 30.381s[root@bogon local]# cnpm -vcnpm@6.1.1 (/usr/local/node-v12.18.3-linux-x64/lib/node_modules/cnpm/lib/parse_argv.js)npm@6.14.7 (/usr/local/node-v12.18.3-linux-x64/lib/node_modules/cnpm/node_modules/npm/lib/npm.js)node@12.18.3 (/usr/local/node-v12.18.3-linux-x64/bin/node)npminstall@3.27.0 (/usr/local/node-v12.18.3-linux-x64/lib/node_modules/cnpm/node_modules/npminstall/lib/index.js)prefix=/usr/local/node-v12.18.3-linux-x64 linux x64 3.10.0-327.el7.x86_64 registry=https://r.npm.taobao.org[esroot@bogon elasticsearch-head-master]$ cnpm install✔ Installed 10 packages✔ Linked 0 latest versions✔ Run 0 scripts✔ All packages installed (used 130ms(network 128ms), speed 0B/s, json 0(0B), tarball 0B)
运行
[esroot@bogon node_modules]$ npm run start> elasticsearch-head@0.0.0 start /usr/local/elasticsearch-7.6.2/plugins/elasticsearch-head-master> grunt serverRunning "connect:server" (connect) taskWaiting forever...Started connect web server on http://localhost:9100
开启跨域
[esroot@bogon root]$ vi /usr/local/elasticsearch-7.6.2/config/elasticsearch.yml
http.cors.enabled : truehttp.cors.allow-origin : "*"
kibana
下载
要和Elasticsearch版本统一
下载地址 : kibana
解压
[root@localhost local]$ tar -xzvf kibana-7.6.2-linux-x86_64.tar.gz[root@localhost local]# cd kibana-7.6.2-linux-x86_64/
将elasticsearch-head
装置目录属主权限改为 esroot 用户
[root@localhost elasticsearch-7.6.2]# chown -R esroot:esroot /usr/local/kibana-7.6.2-linux-x86_64
切换用户到 esroot
[root@localhost config]# su esroot
配置
$KIBANA/config/kibaba.yml
[esroot@localhost kibana-7.6.2-linux-x86_64]$ vi config/kibana.yml
i18n.locale: "zh-CN"server.host: "0.0.0.0"
启动
[esroot@localhost kibana-7.6.2-linux-x86_64]$ ./bin/kibana log [14:41:10.079] [info][status][plugin:reporting@7.6.2] Status changed from uninitialized to green - Ready log [14:41:10.540] [info][listening] Server running at http://localhost:5601 log [14:41:11.290] [info][server][Kibana][http] http server running at http://localhost:5601
IK分词器
下载
要和Elasticsearch版本统一
下载地址 : IK分词器
新建文件夹
放到Elasticsearch
的plugins
下
[root@localhost plugins]# mkdir ik
解压
[root@localhost ik]# unzip elasticsearch-analysis-ik-7.6.2.zip
将elasticsearch-head
装置目录属主权限改为 esroot 用户
[root@localhost plugins]# chown -R esroot:esroot ./
切换用户到esroot
[root@localhost config]# su esroot
重启Elasticsearch
[esroot@localhost bin]$ elasticsearch-plugin listfuture versions of Elasticsearch will require Java 11; your Java version from [/usr/java/jdk-9.0.1] does not meet this requirementik