Ubuntu安装Elasticsearch

发布于:2025-04-04 ⋅ 阅读:(14) ⋅ 点赞:(0)

注:本文章的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,并为其自动生成一个密码,可根据以下步骤价将其重置。

进入目录

# 本文章在线安装的elasticsearch
cd /usr/share/elasticsearch
# 本文章离线安装的elasticsearch
cd /usr/local/elasticsearch-8.17.4

重置elastic账号的密码

sudo bin/elasticsearch-reset-password -u elastic

控制台会输出的New value,就是elastic重置后的密码。

创建用户(可选)

# 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:允许管理和控制索引设置,用于索引管理,能创建、删除、更新索引等。

sudo vim /etc/elasticsearch/elasticsearch.yml # 本文章在线安装的elasticsearch

设置远程连接

进入目录

 # 本文章在线安装的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请求从而开启试用。

# 192.168.170.163为文章的elasticsearch地址
https://192.168.170.163:9200/_license/start_trial?acknowledge=true&pretty

如下图所示:

发送get请求查看是否生效。

# 192.168.170.163为文章的elasticsearch地址
https://192.168.170.163:9200/_license?pretty

如下图所示:type的值是trial,即开启使用。

试用到期后,如果不更新许可证,则需切换回免费版。(切换回免费版后,则无法使用SQL对其进行操作)

发送post请求切换回免费版。

# 192.168.170.163为文章的elasticsearch地址
https://192.168.170.163:9200/_license/start_basic?acknowledge=true&pretty

如下图所示: 

发送get请求查看是否生效。 

# 192.168.170.163为文章的elasticsearch地址
https://192.168.170.163:9200/_license?pretty

如下图所示,type的值是basic,即切换回免费版