一、官网下载
下载地址:https://www.elastic.co/cn/downloads/past-releases#elasticsearch
下载相关压缩包:
elasticsearch-7.16.3-linux-x86_64.tar.gz
kibana-7.16.3-linux-x86_64.tar.gz
二、elasticsearch简单部署
1、创建相关的用户(不能使用root用户来启动,必须使用普通用户来安装启动)
#创建 elasticsearch 用户组
[root@i-slebi7x6 es]# groupadd elasticsearch
#创建用户 es9 并设置密码
[root@i-slebi7x6 es]# useradd es9
[root@i-slebi7x6 es]# passwd es9
Changing password for user es9.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
Sorry, passwords do not match.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: all authentication tokens updated successfully.
#用户es9 添加到 elasticsearch 用户组
[root@i-slebi7x6 es]# usermod -G elasticsearch es9
[root@i-slebi7x6 es]# ls
elasticsearch-7.16.3 es0
[root@i-slebi7x6 es]# cd elasticsearch-7.16.3/
[root@i-slebi7x6 elasticsearch-7.16.3]# pwd
/opt/es/elasticsearch-7.16.3
[root@i-slebi7x6 elasticsearch-7.16.3]# chown -R es9 /opt/es/elasticsearch-7.16.3
[root@i-slebi7x6 elasticsearch-7.16.3]# ll
total 652
drwxr-xr-x 2 es9 root 4096 Jan 7 07:48 bin
drwxr-xr-x 3 es9 root 4096 Jan 26 15:12 config
drwxr-xr-x 9 es9 root 4096 Jan 7 07:48 jdk
drwxr-xr-x 3 es9 root 4096 Jan 7 07:48 lib
-rw-r--r-- 1 es9 root 3860 Jan 7 07:40 LICENSE.txt
drwxr-xr-x 2 es9 root 4096 Jan 7 07:45 logs
drwxr-xr-x 61 es9 root 4096 Jan 7 07:48 modules
-rw-r--r-- 1 es9 root 627787 Jan 7 07:45 NOTICE.txt
drwxr-xr-x 2 es9 root 4096 Jan 7 07:45 plugins
-rw-r--r-- 1 es9 root 2710 Jan 7 07:40 README.asciidoc
[root@i-slebi7x6 elasticsearch-7.16.3]# cd ../
[root@i-slebi7x6 es]# ls
elasticsearch-7.16.3 es0
[root@i-slebi7x6 es]# chown -R es9 /opt/es/elasticsearch-7.16.3
[root@i-slebi7x6 es]# ll
total 8
drwxr-xr-x 9 es9 root 4096 Jan 7 07:48 elasticsearch-7.16.3
drwxr-xr-x 2 root root 4096 Feb 7 09:43 es0
#为了让普通用户有更大的操作权限,我们一般都会给普通用户设置sudo权限,方便普通用户的操作
[root@i-slebi7x6 es]# visudo
#在root ALL=(ALL) ALL 一行下面
#添加es9用户 如下:
es9 ALL=(ALL) ALL
#添加成功保存后切换到es9用户操作
[root@i-slebi7x6 es]# su es9
2、切换用户es9,进行下面操作。
3、解压文件,并修改config/elasticsearch.yml
解压文件,并创建data文件夹。
[es9@i-slebi7x6 elasticsearch-7.16.3]$ ls
bin config jdk lib LICENSE.txt logs modules NOTICE.txt plugins README.asciidoc
[root@i-slebi7x6 elasticsearch-7.16.3]# mkdir data
[root@i-slebi7x6 elasticsearch-7.16.3]# ls
bin config data jdk lib LICENSE.txt logs modules NOTICE.txt plugins README.asciidoc
elasticsearch.yml:修改配置文件
cluster.name: my-es9
node.name: node-1
path.data: /opt/es/elasticsearch-7.16.3/data
path.logs: /opt/es/elasticsearch-7.16.3/logs
bootstrap.memory_lock: false
network.host: 0.0.0.0
http.port: 9200
discovery.seed_hosts: ["10.140.250.17"]
cluster.initial_master_nodes: ["node-1"]
jvm.option:根据自己服务器的内存大小来进行调整
-Xms1g
-Xmx1g
注意:由于现在使用普通用户来安装es服务,且es服务对服务器的资源要求比较多,包括内存大小,线程数等。所以我们需要给普通用户解开资源的束缚。
1、普通用户打开文件的最大数限制
max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]
ES因为需要大量的创建索引文件,需要大量的打开系统的文件,所以我们需要解除linux系统当中打开文件最大数目的限制,不然ES启动就会抛错。
sudo vim /etc/security/limits.conf #增加 * soft nofile 65536 * hard nofile 131072 * soft nproc 2048 * hard nproc 4096
2、普通用户启动线程数限制
max number of threads [1024] for user [es] likely too low, increase to at least [4096]
原因:无法创建本地线程问题,用户最大可创建线程数太小解决方案:修改90-nproc.conf 配置文件。
Centos6 sudo vim /etc/security/limits.d/90-nproc.conf Centos7 sudo vim /etc/security/limits.d/20-nproc.conf 修改: * soft nproc 1024 #修改为 * soft nproc 4096
此文件修改后需要重新登录用户,才会生效。
3、普通用户调大虚拟内存
max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]
原因:最大虚拟内存太小。
sudo vim /etc/sysctl.conf 追加: vm.max_map_count=262144 保存后执行: sudo sysctl -p
5、查看本服务器安装的JDK版本。
es版本对应JDK版本:支持矩阵 | Elastic
启动之后JDK版本不符合要求,则会提示:
[2022-02-07T14:11:28,951][CRITICAL][o.e.d.b.Bootstrap ] [node-1] [] future versions of Elasticsearch will require Java 11; your Java version from [/opt/jdk1.8.0_171/jre] does not meet this requirement. Consider switching to a distribution of Elasticsearch with a bundled JDK. If you are already using a distribution with a bundled JDK, ensure the JAVA_HOME environment variable is not set.
因为7.16.3需要对应的JDK11,而且该版本es默认自带JDK,我们可以再不改名系统本身环境变量的同时,使用es自身的JDK所以需要修改一下启动的JDK。
vim elasticsearch
export ES_JAVA_HOME=/opt/es/elasticsearch-7.16.3/jdk
export PATH=$ES_JAVA_HOME/bin:$PATH
if [ -x "$ES_JAVA_HOME/bin/java" ]; then
JAVA="/opt/es/elasticsearch-7.16.3/jdk/bin/java"
else
JAVA=`which java`
fi
4、启动服务。
./elasticsearch -d
启动服务,方式服务器IP:9200,启动成功后,可以查看一些信息。
三、kibana简单部署
ES主流客户端Kibana,开放9200端口与图形界面客户端交互.
1、解压文件。
[es9@i-slebi7x6 kibana]$ sudo tar -zxvf kibana-7.16.3-linux-x86_64.tar.gz
[es9@i-slebi7x6 kibana]$ cd kibana-7.16.3-linux-x86_64/
[es9@i-slebi7x6 kibana-7.16.3-linux-x86_64]$ ls
bin config data LICENSE.txt node node_modules NOTICE.txt package.json plugins README.txt src x-pack
2、修改配置文件config/kibana.yml
server.port: 5601
server.host: "10.140.250.17"
elasticsearch.hosts: ["http://10.140.250.17:9200"]
3、启动与停止
./bin/kibana
启动成功后访问:http://ip:5601/app/kibana
如果要停止
#需要筛选
ps -ef|grep node
注意:如果要对内存进行调整。
#修改bin/kibana下的--max-old-space-size参数 NODE_OPTIONS="--no-warnings --max-http-header-size=65535 --tls-min-v1.0 $KBN_NODE_OPTS $NODE_OPTIONS" NODE_ENV=production exec "${NODE}" "${DIR}/src/cli/dist" ${@}
四、安装IK分词器
下载地址:https://github.com/medcl/elasticsearch-analysis-ik/releases
下载文件:elasticsearch-analysis-ik-7.16.3.zip
进入/elasticsearch-7.16.3/plugins/ik目录下解压。
[es9@i-slebi7x6 ik]$ ls
commons-codec-1.9.jar config httpclient-4.5.2.jar plugin-descriptor.properties
commons-logging-1.2.jar elasticsearch-analysis-ik-7.17.0.jar httpcore-4.4.4.jar plugin-security.policy
然后重启即可。