搜索elasticsearch6.4.3 搭建在Ubuntu 18.04.4上.
首先要阿里云开通端口9200 和9300 因为es需要用到这两个端口
9300与9200区别
9300端口: ES节点之间通讯使用
9200端口: ES节点 和 外部 通讯使用
elasticsearch下载可以直接去官网下载.我这里选择6.4.3版本.https://www.elastic.co/downloads/elasticsearch
首先将elasticsearch上传到linux的/opt下解压.
tar -zxvf elasticsearch-6.4.3.tar.gz
修改config目录下的elasticsearch.yml 设置本机的ip和端口号
network.host: 192.168.212.151
http.port: 9200
修改同目录下的jvm.options 设置程序最大内存数和初始化内存栈大小. es要求至少设置1g. 这里设置2g
-Xmx用来设置你的应用程序(不是JVM)能够使用的最大内存数
-Xms用来设置程序初始化的时候内存栈的大小
因为启动es需要用到jdk.这里附上jdk的环境变量配置.
export JAVA_HOME=/opt/jdk1.8.0_181
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
source /etc/profile
这里遇到了jdk环境变量每次启动都要重新执行source /etc/profile命令.
最后找到了一种方法: 执行下面的命令:
配置默认的jdk版本命令.
update-alternatives --install /usr/bin/java java /opt/jdk1.8.0_144/bin/java 300
update-alternatives --install /usr/bin/javac javac /opt/jdk1.8.0_144/bin/javac 300
update-alternatives --install /usr/bin/jar jar /opt/jdk1.8.0_144/bin/jar 300
update-alternatives --install /usr/bin/javah javah /opt/jdk1.8.0_144/bin/javah 300
update-alternatives --install /usr/bin/javap javap /opt/jdk1.8.0_144/bin/javap 300
然后去es的bin目录下面直接启动后报错
can not run elasticsearch as root
解决方案:
因为安全问题elasticsearch 不让用root用户直接运行,所以要创建新用户
第一步:liunx创建新用户 adduser XXX 然后给创建的用户加密码 passwd XXX 输入两次密码。
第二步:切换刚才创建的用户 su XXX 然后执行elasticsearch 会显示Permission denied 权限不足。
第三步:给新建的XXX赋权限,chmod 777 * 这个不行,因为这个用户本身就没有权限,肯定自己不能给自己付权限。所以要用root用户登录付权限。
第四步:root给XXX赋权限,chown -R XXX /你的elasticsearch安装目录。
然后执行成功。
创建一个分组
groupadd idouall
useradd idouall-g idouall-p 123456
chown -R idouall:idouall elasticsearch-6.4.3
su idouall切换用户
然后在idouall用户下启动
./elasticsearch
继续报错
bootstrap checks failed max virtual memory areas vm.max_map_count [65530] is
这里需要如下设置.
vi /etc/sysctl.conf
vm.max_map_count=655360
sysctl p 或/sbin/sysctl -p
然后再次启动
./elasticsearch
又报如下错误.
max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
修改如下设置.
vi /etc/security/limits.conf
soft nofile 65536
hard nofile 131072
* soft nproc 2048
* hard nproc 4096
然后再次启动这里附上详细的启动命令:
nohup ./elasticsearch > /dev/null 2> /dev/null &
浏览器访问ip:9200 出现如下
证明启动成功!
下文讲解 kibana的安装.