百度网盘下载
1 安装JDK
网上教程很多,也可以参考本人教程之前写的Linux安装JDK
2 安装Elasticsearch
首先到官网下载最新版本的ElasticSearch的zip压缩包,也可以复制下载地址在终端中使用wget命令直接下载到CentOS中。例如在终端中执行以下命令:
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.0.0.tar.gz
1.先在linux创建elsearch用户,因为elasticsearch不能用root用户操作
useradd elsearch
在创建安装文件夹,授权文件夹为elsearch操作
2.//创建
mkdir /usr/local/elasticsearch
- //授权
chown elsearch:elsearch /usr/local/es -R
chown elsearch:elsearch /usr/local/es/elasticsearch-7.6.2/logs -R
4.上传es的文件解压到es目录
tar -xvf elasticsearch-7.6.2-linux-x86_64.tar.gz -C es
5.修改配置文件
/usr/local/es/elasticsearch-7.6.2/config
修改elasticsearch.yml
vim elasticsearch.yml
设置任意ip都可以连接
network.host: 0.0.0.0
修改jvm.options
vim jvm.options
-Xms128m
-Xmx128m
修改 /etc/sysctl.conf
vim /etc/sysctl.conf
vm.max_map_count=655360
配置生效
sysctl -p
启动elasticsearch
cd /usr/local/es/elasticsearch-7.6.2/bin/
./elasticsearch
或者 ./elasticsearch -d 后台启动
``
``
5.添加用户组(因为elasticsearch不能用root用户启动)
1)创建 elasticsearch 用户组
[root@localhost ~]# groupadd elasticsearch
2) 创建用户 es 并设置密码为es
[root@localhost ~]# useradd es
[root@localhost ~]# passwd es
3 )用户es 添加到 elasticsearch 用户组
[root@localhost ~]# usermod -G elasticsearch es
6..这时重新启动,不会提示任何错误了。新打开一个窗口,输入curl localhost:9200,如果有以下输出则说明启动成功。
[king@localhost ~]$ curl localhost:9200
{
"name" : "ZGws7ZX",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "yeYDTLbNQ--rmDXMi2xO-g",
"version" : {
"number" : "5.5.2",
"build_hash" : "b2f0c09",
"build_date" : "2017-08-14T12:33:14.154Z",
"build_snapshot" : false,
"lucene_version" : "6.6.0"
},
"tagline" : "You Know, for Search"
}
问题
问题一
直接启动,遇到如图问题,如下:
这个问题是由于内存分配不够造成的,修改适合本机的内存,修改文件config/jvm.options
vi ../config/jvm.options
由于我的服务器内存较小,修改为512m,具体可以根据情况修改,如下:
修改后在次启动:
./elasticsearch
问题二
出现如下错误:
org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root
如图
这个问题很明显,不允许使用root用户启动,那么我们新建一个es用户,并赋予权限:
添加es用户
useradd es
添加es用户密码
passwd es
将文件夹elasticsearch-5.4.2赋予es权限
chown -R es:es /usr/local/tool/elasticsearch/elasticsearch-5.4.2
切换为es用户
su es
再次启动es
./elasticsearch
这次启动成功了,我们在使用一个窗口登录root用户,输入命令:
curl -X GET http://localhost:9200
如图所示,可以成功访问
问题三
在浏览器访问http://118.24.242.170:9200/拒绝访问(118.24.242.170为服务器ip)
使用root用户,打开elasticsearch.yml文件,如下:
vi /usr/local/tool/elasticsearch/elasticsearch-5.4.2/config/elasticsearch.yml
文件内增加如下代码
network.host: 0.0.0.0
使用es用户启动,发现又出现了错误如下,得到错误信息如图
使用root用户打开如下文件:
vim /etc/sysctl.conf
添加如下配置:
vm.max_map_count = 655360
使配置生效
/sbin/sysctl -p
然后使用es用户启动Elasticsearch,这次可以成功启动了,如果需要后台启动的话,在启动命令后加&,如下所示:
./elasticsearch &