Linux安装ElasticSearch和Kibana

news2024/11/16 3:33:51

es官网下载地址:https://www.elastic.co/cn/downloads/past-releases#elasticsearch
可以去官网下载包然后放到服务器
也可以使用wget进行下载安装
如果使用wget方式下载的话需要先安装
安装wget

yum install -y wget

在这里插入图片描述
wget下载es:wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.8.0-linux-x86_64.tar.gz
wget下载Kibana:wget https://artifacts.elastic.co/downloads/kibana/kibana-8.8.0-linux-x86_64.tar.gz
在这里插入图片描述
下载完成后进行解压

tar -zxvf elasticsearch-8.8.0-linux-x86_64.tar.gz
tar -zxvf kibana-8.8.0-linux-x86_64.tar.gz 

在这里插入图片描述

修改ElasticSearch配置文件

Es默认分配了2G的内存,如果Linux服务配置本来就很高可以不做修改
进入config文件夹开始配置

cd  /home/elasticSearch/elasticsearch-8.8.0/config
vi  jvm.options
## -Xms4g
## -Xmx4g
改为
-Xms256m
-Xmx256m

在这里插入图片描述
修改ElasticSearch核心文件
在 es目录下创建data文件
在这里插入图片描述

vi elasticsearch.yml
cluster.name: mycluster
node.name: node-1
network.host: 0.0.0.0
bootstrap.memory_lock: false
http.port: 9200
xpack.security.enabled: true

xpack.security.enrollment.enabled: true

# Enable encryption for HTTP API client connections, such as Kibana, Logstash, and Agents
xpack.security.http.ssl:
  enabled: false
  keystore.path: certs/http.p12

# Enable encryption and mutual authentication between cluster nodes
# 跨域
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Authorization,X-Requested-With,Content-Type,Content-Length

xpack.security.enabled: true
xpack.security.authc.accept_default_password: true
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: /home/elasticSearch/elasticsearch-8.8.0/elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: /home/elasticSearch/elasticsearch-8.8.0/elastic-certificates.p12
# Create a new cluster with the current node only
# Additional nodes can still join the cluster later
cluster.initial_master_nodes: ["iZ8vb6tda6e8mwssfo6usfZ"]

# Allow HTTP API connections from anywhere
# Connections are encrypted and require user authentication
http.host: 0.0.0.0

path:
  data: /home/elasticSearch/elasticsearch-8.8.0/data  #数据路径
  logs: /home/elasticSearch/elasticsearch-8.8.0/logs   #日志路径

修改配置 sysctl.conf

vi /etc/sysctl.conf

# 编辑如下信息
vm.max_map_count=655360

# 保存退出,执行以下命令

/sbin/sysctl -p

创建ElasticSearch专属用户启动

root用户不能直接启动,所以需要创建一个专用用户,来启动Es,如果没有报错则已经启动成功,Es默认只能本地连接,可以对核心配置文件进行修改来支持外部连接

创建elastic用户

useradd elastic
 chown elastic:elastic -R /home/elasticSearch

切换用户

su elastic

进入bin目录

cd /home/elasticSearch/elasticsearch-8.8.0/bin

后台启动es

./elasticsearch -d

启动报错:bootstrap check failure [1] of [1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
解决方案:

vi /etc/security/limits.conf

加入下面配置

* hard nofile 65535  # *可以是es启动用户
* soft nofile 65535
vi /etc/security/limits.conf 

关闭连接工具重新连接服务器然后再启动es

./elasticsearch -d

设置elastic、kibana、logstash等的访问密码

 ./elasticsearch-setup-passwords interactive

如果报错ERROR: Failed to verify bootstrap password在这里插入图片描述
则根据提示重新生成密码

elasticsearch-reset-password -u elastic

在这里插入图片描述
如果需要设置自定义密码 增加参数 -i

elasticsearch-reset-password -u elastic -i

Elasticsearch开启安全认证
生成证书:

cd /home/elasticSearch/elasticsearch-8.8.0/bin
./elasticsearch-certutil ca

碰到第一个直接回车,不用管
​ 碰到第二个输入密码,例如123456
完成后会生成一个文件:elastic-stack-ca.p12
生成秘钥:

./elasticsearch-certutil cert --ca elastic-stack-ca.p12

看见password就输入刚才设置的密码 ,其他就直接回车,之后会生成一个文件:elastic-certificates.p12文件
在这里插入图片描述

在这里插入图片描述

赋权

chmod 777 /home/elasticSearch/elasticsearch-8.8.0/elastic-certificates.p12

添加密码

./elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password

输入密码:第一步中设置的密码,123456

./elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password

生成节点正书

elasticsearch-certutil http
Generate a CSR? [y/N]n:是否生成 CSR,输入 n
Use an existing CA? [y/N]y:用已经存在的根证书,输入 y
CA Path: /usr/share/elasticsearch/elastic-stack-ca.p12:输入根证书的绝对路径
Password for elastic-stack-ca.p12:输入根证书的密码
For how long should your certificate be valid? [5y] :证书有效期,默认为 5y(5年)
Generate a certificate per node? [y/N]:是否为每一个节点都生成证书 
Enter all the hostnames that you need, one per line.:输入集群中节点的主机名,回车两次跳过即可
Enter all the IP addresses that you need, one per line.:输入集群中节点的IP地址,回车两次跳过即可
Do you wish to change any of these options? [y/N]n:是否要改变选项,输入 n
Provide a password for the “http.p12” file: [ for none]:输入私钥 http.p12 的密码,回车不设置密码
What filename should be used for the output zip file? :输出的压缩文件的文件名

之后会生成 elasticsearch-ssl-http.zip在根目录
在这里插入图片描述
将其中的elasticsearch 文件夹下的http.p12文件放到 /home/elasticSearch/elasticsearch-8.8.0/config 目录下
在这里插入图片描述
在这里插入图片描述
更改es配置文件中keystore.path 的路径
在这里插入图片描述
剩下压缩包中的kibana 文件夹下的证书也放到对应目录下
将 elasticsearch-ca.pem 为你文件复制到 Kibana 配置目录
在这里插入图片描述
在这里插入图片描述
修改配置文件kibana.yml
添加如下内容

elasticsearch.ssl.certificateAuthorities: /home/elasticSearch/kibana-8.8.0/config/elasticsearch-ca.pem

启动ES

java
./elasticsearch -d

设置elastic、kibana、logstash等的访问密码

 ./elasticsearch-setup-passwords interactive

配置Kibana

cd /home/elasticSearch/kibana-8.8.0/config
vi kibana.yml

增加如下配置,es需要配置自己es的账号密码

server.port: 5601
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://localhost:9200"]

#es的账号密码,如果设置了必须修改以下两行
elasticsearch.username: "elastic"
elasticsearch.password: "Qg4AHjAoTobf0HyAt3ml"
#改为中文
i18n.locale: "zh-CN"

执行如下命令:./kibana-encryption-keys generate
在这里插入图片描述
会生成如下三个key
在这里插入图片描述
我们可以把这三个同时拷贝,并添加到 config/kibana.yml 文件的后面
在这里插入图片描述
启动

cd /home/elasticSearch/kibana-8.8.0/bin

 ./kibana

启动成功进行访问
在这里插入图片描述
然后根据要求配置注册令牌

cd /home/elasticSearch/elasticsearch-8.8.0/bin

在这里插入图片描述

elasticsearch-create-enrollment-token --scope kibana

在这里插入图片描述
将令牌粘贴至页面然后出现验证
在这里插入图片描述
运行

cd /home/elasticSearch/kibana-8.8.0/bin  
 kibana-verification-code

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
账号是:elastic
这里的密码就是上面执行elasticsearch-reset-password -u elastic 重置的密码Qg4AHjAoTobf0HyAt3ml
如果忘记了就再执行下重置密码
后台运行 kibana

nohup ./kibana > nohup.out 2>&1 &

问题整理: FATAL Error: Port 5601 is already in use. Another instance of Kibana may be running!
5601端口占用问题
查询端口进程 并kill掉

fuser -n tcp 5601

在这里插入图片描述

如果启动kibana报如下错误
在这里插入图片描述
解决方案:Elasticsearch和Kibana之间HTTPS连接

然后重启就好了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/693025.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

B+树的设计步骤

1.节点的结构(如下图) (1)键值对--key是标识;value是存储的具体数据 (2)节点的子节点--存储的是具体的子节点 (3)节点的后节点--标记后一个节点 (4&#xff0…

JSP实现自定义标签【上】

目录 一、基础概念 1、标签语言的形式或结构 2、分类 二、自定义标签的开发及步骤 三、标签生命周期 1、返回值 四、案例 1、if 2、out 一、基础概念 JSP自定义标签是一种扩展JSP标记语言的方法。通过自定义标签,我们可以将自定义功能封装在一个独立的标签…

# rust abc(6): 字符串的简单使用

文章目录 1. 目的2. 数据类型2.1 str 类型2.2 标准库 String 类型 3. 常用 API3.1 len() 方法3.2 is_empty() 方法3.3 starts_with() 方法3.4 find() 方法 4. References 1. 目的 学习 Rust 语言中的字符串, 包括数据类型, 常用 API。 2. 数据类型 Ru…

新手入门:从零搭建vue3+webpack实战项目模板

搭建一个 vue3 webpack5 element-plus 基本模板 (vue3 webpack5 从零配置项目)。 本项目结构可以作为实战项目的基本结构搭建学习,作为刚学习完vue还没有实战项目经验的小伙伴练习比较合适。 项目地址: GitHub:ht…

如何将手写笔记转换成电子版格式?

记笔记是一种非常有效的学习方法。它不仅可以帮助我们加深对所学内容的理解,还能让我们收集更多有用的信息,以方便后续的查看和复习。不过,用传统的纸质笔记本记录笔记存在一定的弊端,比如说不易保存、不易携带等等。所以&#xf…

Mac下的java.io.FileNotFoundException: ~/Desktop/a.sql (No such file or directory)

【问题】: 今天在运行一个文件读取的Demo时,报如下错误: java.io.FileNotFoundException: ~/Desktop/a.sql (No such file or directory)如下图所示 : 可是这个文件命名可以通过终端窗口访问到啊? 【解决方案】&#xff…

STM32外设系列—HC-SR04(超声波)

文章目录 一、超声波测距基本原理二、超声波传感器简介三、HC-SR04测距实现思路四、超声波测距程序实现4.1 HC-SR04初始化程序4.3 TIM开关程序4.4 获取定时时间4.5 计算测量距离4.6 宏定义 五、应用实例六、拓展应用 一、超声波测距基本原理 超声波测距的原理非常简单&#xf…

高压放大器在压电陶瓷驱动器中的应用

高压放大器是一种将低电压信号放大成高电压信号的电子设备。它广泛运用于各种领域,如医疗、工业、军事以及科学研究。压电陶瓷驱动器是一种利用压电效应来驱动机械运动的装置。这两种设备经常被用于控制和操作许多不同类型的系统。 压电陶瓷是一种能够将电能转化为机…

监控摄像头的像素200万,400万,800万都是什么意思,200万像素、400万像素、800万像素是如何换算出来的?

一、像素 像素(Pixel)是用来表示图像分辨率的单位,数字越大,表示图像中的细节可以更精细地展现。当我们谈论监控摄像头的像素时,通常指的是摄像头图像传感器上的像素数量。像素的数量可以通过传感器上的横向像素数乘以…

win如何使用OpenSSL生成自签名证书,使 http 升级为 https

win如何使用OpenSSL生成自签名证书,使 http 升级为 https 前言 HTTPS其实就是HTTP over SSL,也就是让HTTP连接建立在SSL安全连接之上。 创建自签名证书需要安装openssl。参考本文安装OpenSSL部分。 使用OpenSSL生成自签名证书的步骤:参考…

python spider 爬虫 之 Selenium 系列 (-) Selenium

京东的 seckill 秒杀 专区 用 urllib 是获取不到的 回顾一下urllib 爬虫 # urllib 爬虫 from urllib import request headers {} url # 请求定制 req request(urlurl, headers headers) # 模拟请求 response request(req) content response.read().decode(utf-…

windows下安装Visual Studio + CMake+OpenCV + OpenCV contrib

目录 1 安装visual studio 2 安装CMake 3 OpenCV源码安装 3.1 OpenCV源码下载 3.2 OpenCV contrib源码下载 3.3 安装OpenCV 3.4 安装OpenCV-crontrib 3.5 VS生成代码 4 环境配置 最近在研究windows系统上部署安装目标检测算法,需要用到OpenCV软件&#xff…

智能指针+拷贝构造+vector容器+多态引起的bug

今天在调试一段代码的时候,VC编译提示: error C2280: “T485CommCtrlPara::T485CommCtrlPara(const T485CommCtrlPara &)”: 尝试引用已删除的函数 函数执行部分如下: 看意思是这个pComm485Pro已经消亡了,后续push_back到ve…

高速电路设计系列分享-信号链精度分析(中)

目录 概要 整体架构流程 技术名词解释 技术细节 1.直流无源误差 小结 概要 提示:这里可以添加技术概要 在任何设计中,信号链精度分析都可能是一项非常重要的任务,必须充分了解。之前, 我们讨论了在整个信号链累积起来并且最终会…

统一日志处理----AOP/面向切面编程

AOP Aspect Oriented Programing:面向切面编程 AOP是对OOP的补充,进一步提高编程的效率 AOP的常见使用场景有:权限检查、记录日志、事务管理等 如下图所示结构,每个模块都含有相同的系统需求,而这些需求和模块本身的功…

Flutter进阶-动画详解

目录 动画类别 一、隐式(全自动)动画 二、显式动画(手动控制) 三、其他动画(CustomPainter) 动画类别 Flutter 中有多种类型的动画: 隐式动画:通过更改部件属性自动触发的预定义动画,例如 …

什么是cookie

1、cookie是什么 Cookie,有时也用其复数形式Cookies。类型为“小型文本文件”,是某些网站为了辨别用户身份,进行Session跟踪而储存在用户本地终端上的数据(通常经过加密),由用户客户端计算机暂时或永久保存…

Python强类型编程

Python是一门强类型的动态类型语言,具体如下特性: 可以动态构造脚本执行、修改函数、对象类型结构、变量类型但不允许类型不匹配的操作 第一个例子体现动态性:用字符串直接执行代码,动态构建了一个函数并执行,甚至给…

力扣744.寻找比目标字母大的最小字符(java暴力查找法,二分查找法)

题目描述: 给你一个字符数组 letters,该数组按非递减顺序排序,以及一个字符 target。letters 里至少有两个不同的字符。 返回 letters 中大于 target 的最小的字符。如果不存在这样的字符,则返回 letters 的第一个字符。 [外链…

岭回归(Ridge)不同alpha值对归回结果的影响

对于有些矩阵,矩阵中某个元素的一个很小的变动,会引起最后计算结果误差很大,这种矩阵称为“病态矩阵”。有些时候不正确的计算方法也会使一个正常的矩阵在运算中表现出病态。对于高斯消去法来说,如果主元(即对角线上的…