ES是一个分布式的全文搜索引擎
ES适合用来处理大量数据并在大量数据中进行检索,速度快
ES中存储的是文档 document,json格式
ES。。。就不说太多了
安装ES
操作系统 centos7
es版本7.6.1
辅助工具 postman(发请求,也可以用curl命令)xshell xftp
- 首先进入官网找到下载的地方先下载到本地然后上传到虚拟机去,或者你也可以复制这个下载的链接直接在linux内下载下来
网址:https://www.elastic.co/cn/downloads/past-releases/elasticsearch-7-6-1
下载链接:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.6.1-linux-x86_64.tar.gz
- 将安装包放入 /opt
- 解压安装包
tar -zxvf elasticsearch-7.6.1-linux-x86_64.tar.gz cd elasticsearch-7.6.1 ls cd bin/ ls
- 运行elasticsearch
./elasticsearch
会报错
报错不可怕,我们来看看,阅读之后上面写着原因(看不懂就用翻译也要把报错信息读懂)
can not run elasticsearch as root
不能用root账号启动es,看来是为了安全问题,不允许直接用root账号启动,那么我们新建一个账号来给es用
5. 创建es用户组和es用户
#创建用户组 elasticsearch groupadd elasticsearch #添加用户 es_user useradd es_user -g elasticsearch #修改文件夹所有权,把权限给es_user chown -R es_user:elasticsearch /opt/elasticsearch-7.6.1 #切换到es_user账号 su es_user #再次运行 ./elasticsearch
直接运行起来了有点出乎意料。。。按道理还有个报错的,最大文件打开数应该还需要再给我来个bug的,可是没有,但是我们还是要讲一下怎么解决这个最大文件打开数的bug
es跑起来了之后可以如上图看到运行起来了,我们测试一下,看到了"You Know, for Search"证明成功运行了
curl localhost:9200
继续讲下那个没有出现的最大数bug
使用ulimit -a查看限制,可以看到最大文件打开数是1024,我们一般改为65535甚至262143
[root@localhost ~]# ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 14989 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 14989 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited
#编辑限制配置 vi /etc/security/limits.conf #按下shift+G跳到最后,按i进入编辑模式,在最后增加如下 * soft nofile 65535 * hard nofile 65535 # 按下ESC 输入:wq 回车保存退出 #修改vm.max_map_count echo 'vm.max_map_count=262144' >> /etc/sysctl.conf sysctl -p #使用logout退出登录重新登录账号使配置生效 logout #重新登录后再次查看即可看到已经修改好了 ulimit -a