Elasticsearch 是一个分布式可扩展的实时搜索和分析引擎,一个建立在全文搜索引擎 Apache Lucene™ 基础上的搜索引擎.当然 Elasticsearch 并不仅仅是 Lucene 那么简单,它不仅包括了全文搜索功能,还可以进行以下工作:
1.分布式实时文件存储,并将每一个字段都编入索引,使其可以被搜索。
2.实时分析的分布式搜索引擎。
3.可以扩展到上百台服务器,处理PB级别的结构化或非结构化数据
1、去官网上下载elasticseach
官网地址 : https://www.elastic.co/cn/products/elasticsearch
//也可以用wget 方式下载
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.8.1-linux-x86_64.tar.gz
//解压文件
sudo tar -zxvf elasticsearch-7.8.1-linux-x86_64.tar.gz
//修改文件夹名称
sudo mv elasticsearch-7.8.1 es7.8.1
//因为安全问题, Elasticsearch 不允许 root 用户直接运行,所以要创建新用户,在 root 用户中创建新用户。
useradd es #添加用户 es
passwd es # 为 es 用户设置密码,密码输入的时候看不见,我设置的密码是 es123456
userdel -r es #如果错了,可以删除再加
//查看当前目录
pwd
//为这个文件夹赋予所有者 es
chown -R es:es /homer/es7.8.1
//切换到es的bin目录
cd /home/es7.8.1/bin
//运行elasticsearch
.\elasticsearch
ES文件夹里自己携带了 JDK ,但是如果我们的 Linux 下安装了 JDK ,ES 就不会用自己自带的 JDK ,反而会使用我们 Linux 安装的 JDK ,这个时候如果两个jdk的版本不一致,就会造成jdk不能正常运行,报错
解决办法
//进入ES文件夹的bin目录
// 使用ES7版本时,启动或者执行ES命令,提示上面错误信息。这是由于ES7使用的高版本的jdk。如果不想升级服务的jdk,可以通过修改elasticsearch-env配置文件(版本7.8.1)
//注释掉41行内容 # JAVA="$JAVA_HOME/bin/java"
//增加行 JAVA="$ES_HOME/jdk/bin/java"
启动报错:Exception in thread “main” java.nio.file.AccessDeniedException: /home/elasticsearch-7.8.1/config/elasticsearch.keystore
elasticsearch用户没有该文件夹的权限,执行命令
chown -R es:es /home/elasticsearch-7.8.1/