前言

下载linux的86x64的包。es是依赖于java的,所以首先需要安装jdk。
官方文档链接
配置JDK

安装

tar zxvf ./elasticsearch-8.2.0-linux-x86_64.tar.gz

修改elasticsearch-8.2.0/configelasticsearch.yml

cluster.name: nature-elasticsearch
node.name: node-1
node.attr.rack: r1
path.data: /home/nature/esdata/data/
path.logs: /home/nature/esdata/logs/
network.host: 192.168.0.120
http.port: 9200
transport.profiles.default.port: 9301
discovery.seed_hosts: ["192.168.0.120:9301"]
cluster.initial_master_nodes: ["node-1"]
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type

启动

在es的应用目录执行如下指令启动es

./bin/elasticsearch

后台启动

./bin/elasticsearch -d

错误处理

max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

在/etc/sysctl.conf末尾,加入如下配置并重启

vm.max_map_count=262144

max number of threads [3555] for user [nature] is too low, increase to at least [4096]

默认密码

es8默认会启用安全认证,会默认给你创建用户名密码,过程如下图所示:
启动默认密码
大意是说:

  • elastic用户的密码是:jGhW4D_54fn0bPnQ3Os3
  • 可以使用命令:bin/elasticsearch-reset-password -u elastic 重置密码。生成的是PAiWvtlQhc_EDshfk4x7
    下面那些就不介绍了,大意是说http的ca证书,给kibana的30分钟授权和其它节点加入该集群的30分钟授权key

访问es集群

浏览器里访问地址:https://192.168.0.120:9200/

安装kibana

直接下载官方压缩包,解压后执行以下指令

bin/kibana

但是,这个时候还没有配置,所以只能通过localhost进行访问。
``

修改配置

设置kibana专用用户密码

在config/kibana.yml文件中,可以修改相关的配置。需要注意的是,我们上面默认创建的elastic账号,是不允许配置的,需要我们自己创建一个账号。不过它默认是集成了一个专门给kibana的账号,叫kibana_system。我们只需要给他设置一个密码就好了。curl指令如下

curl --location --request POST 'https://192.168.0.120:9200/_security/user/kibana_system/_password' \
--header 'Authorization: Basic ZWxhc3RpYzpQQWlXdnRsUWhjX0VEc2hmazR4Nw==' \
--header 'Content-Type: application/json' \
--data-raw '{
    "password":"HUAN1415"
}'

上面的指令是我用postman创建的。基本的要素是这样的:

  • https://192.168.0.120:9200/_security/user/kibana_system/_password 这个是地址。从结构上可以看到_security是安全相关的,然后就是user中的kibana_system这个user的密码
  • 需要设置基本安全验证,填写用户名密码
  • body中设置新的密码

修改kibana配置

进行如下配置即可:

server.port: 5601
server.host: 192.168.0.120
server.name: "nature-kibana"
i18n.locale: "zh-CN"

然后我们就可以启动kibana远程访问他了。上面可以看到,我们将它配置成中文的了,灰常棒。

配置es

这个时候我们是没有给kibana配置es集群的。所以,默认会让我们输入前面初始化es时生成的一个码。如果过期了,可以用下面的指令生成。

./elasticsearch-create-enrollment-token -s kibana

不过我没用,而是选择了手动配置。这时就要求我们输入集群访问地址,然后在输入kibana_system的密码就好了。
要注意,最后会让我们输入用户名密码。是的,这里很困惑,因为我们没有为kibana设置过用户名密码。是的,这里输入的是es的。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐