注:本文章的ubuntu的版本为:ubuntu-20.04.6-live-server-amd64。
Ubuntu(在线版)
更新软件源
sudo apt-get update
安装apt-transport-https
sudo apt-get install apt-transport-https
添加Elasticsearch的Apt仓库
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpg
将地址添加到系统的软件包源列表中
echo "deb [signed-by=/usr/share/keyrings/elasticsearch-keyring.gpg] https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-8.x.list
更新软件源
sudo apt-get update
安装Elasticsearch
sudo apt-get install elasticsearch
启动服务
systemctl start elasticsearch
查看Elasticsearch状态
systemctl status elasticsearch
看到activate即启动成功。
Ubuntu(离线版)
进入下载链接选择Elasticsearch版本下载
https://www.elastic.co/downloads/elasticsearch
注:本文章下载elasticsearch-8.17.4-linux-x86_64.tar.gz
解压文件到指定目录
tar -xvf elasticsearch-8.17.4-linux-x86_64.tar.gz -C /usr/local
进入解压后的目录
cd /usr/local/elasticsearch-8.17.4
启动Elasticsearch
bin/elasticsearch
查看Elasticsearch状态
ps -ef |grep elasticsearch
看到elasticsearch即启动成功。
设置Elasticsearch密码
elasticsearch已经默认生成了账户elastic,并为其自动生成一个密码,可根据以下步骤价将其重置。
进入目录
bash
# 本文章在线安装的elasticsearch
cd /usr/share/elasticsearch
# 本文章离线安装的elasticsearch
cd /usr/local/elasticsearch-8.17.4
重置elastic账号的密码
bash
sudo bin/elasticsearch-reset-password -u elastic
控制台会输出的New value,就是elastic重置后的密码。
创建用户(可选)
bash
# bin/elasticsearch-users useradd <账号> -p <密码> -r <角色>,其中密码需要超过6个字符
# 如
sudo bin/elasticsearch-users useradd myelastic -p 123456 -r superuser
注:Elasticsearch中的一些常见角色及其权限说明:
**superuser:**拥有对集群中所有资源的完全访问权限,通常分配给集群管理员,具有最高权限,可以执行所有操作。
admin: 具有管理索引和集群的权限,但不包括一些更敏感的操作(如安全设置),用于需要管理集群但不需要执行所有权限的用户。
**kibana_user:**具有Kibana访问权限,可以查看Kibana中的仪表板、索引和数据,但不能修改集群设置或管理用户,适用于需要访问Kibana进行数据分析和查看仪表板的用户。
**read_only:**允许用户读取集群中的数据,但不能进行任何修改操作(如创建或删除文档),用于需要读取数据但不能修改数据的用户。
**monitoring_user:**允许访问集群的监控数据,但不能修改集群设置或数据,用于需要查看集群监控数据的用户。
**logstash_system:**用于Logstash进程与Elasticsearch进行交互的特殊角色,Logstash用于收集和传输日志数据到Elasticsearch。
**ingest_admin:**允许管理和执行与数据摄取(Ingest)相关的操作,用于需要配置和管理摄取管道的用户。
**index_management:**允许管理和控制索引设置,用于索引管理,能创建、删除、更新索引等。
bash
sudo vim /etc/elasticsearch/elasticsearch.yml # 本文章在线安装的elasticsearch
设置远程连接
进入目录
bash
# 本文章在线安装的elasticsearch
sudo vim /etc/elasticsearch/elasticsearch.yml
# 本文章离线安装的elasticsearch
sudo vim /usr/local/elasticsearch-8.17.4/config/elasticsearch.yml
将http.host的值将其改为0.0.0.0,放开注释。
配置JDBC使用30天
DataGrip,dbeaver等数据库连接工具,可以配置JDBC从而连接elasticsearch,使得elasticsearch可以使用一般的SQL进行操作,直接连接会报错:current license is non-compliant for [jdbc]。那是因为免费版(也就是base版)的elasticsearch不提供该功能,但提供了30天的试用期。
发送post请求从而开启试用。
bash
# 192.168.170.163为文章的elasticsearch地址
https://192.168.170.163:9200/_license/start_trial?acknowledge=true&pretty
如下图所示:

发送get请求查看是否生效。
bash
# 192.168.170.163为文章的elasticsearch地址
https://192.168.170.163:9200/_license?pretty
如下图所示:type的值是trial,即开启使用。

试用到期后,如果不更新许可证,则需切换回免费版。(切换回免费版后,则无法使用SQL对其进行操作)
发送post请求切换回免费版。
bash
# 192.168.170.163为文章的elasticsearch地址
https://192.168.170.163:9200/_license/start_basic?acknowledge=true&pretty
如下图所示:

发送get请求查看是否生效。
bash
# 192.168.170.163为文章的elasticsearch地址
https://192.168.170.163:9200/_license?pretty
如下图所示,type的值是basic,即切换回免费版
