记录在linux上单机elasticsearch8和kibana8
1、背景
此处简单记录一下,elasticsearch8和kibana8在Centos7下的单机安装步骤。
2、es对jdk和操作系统的要求等
不同版本的es对jdk和操作系统的要求不等,我们选择合适的版本,可以通过如下 https://www.elastic.co/cn/support/matrix#matrix_kubernetes进行确认。

3、安装步骤
3.1 下载对应版本的es

下载地址:https://www.elastic.co/cn/downloads/elasticsearch
3.2 创建es账户
需要为es单独创建一个用户,使用root账户启动es会报错。
[root@appbasic ~]# useradd es
[root@appbasic ~]# passwd es
[root@appbasic es]# tar -zxf elasticsearch-8.4.3-linux-aarch64.tar.gz
[root@appbasic es]# chown es -R elasticsearch-8.4.3
[root@appbasic es]# su - es
Last login: Sun Oct 30 11:13:55 CST 2022 from 192.168.121.1 on pts/1
[es@appbasic ~]$ cd /usr/local/es/elasticsearch-8.4.3
[es@appbasic elasticsearch-8.4.3]$ mkdir datas
[es@appbasic elasticsearch-8.4.3]$
3.3 修改es配置
3.3.1 修改es配置
vim config/elasticsearch.yml
# 集群名
cluster.name: es-cluster
# 节点名
node.name: es-node01
# 数据目录
path.data: /usr/local/es/elasticsearch-8.4.3/datas
# 日志目录
path.logs: /usr/local/es/elasticsearch-8.4.3/logs
# es绑定到的地址
network.host: 192.168.121.138
# es启动后前端访问的端口
http.port: 9200
http.cors.enabled: true
http.cors.allow-origin: "*"
3.3.3 修改jvm配置
vim config/jvm.options
可以根据实际情况 修改一下 -Xms 和 -Xmx 等参数
3.4 修改系统配置
3.4.1 修改用户打开的文件数限制
- 通过
ulimit -n查看当前用户可打开的文件数 - 修改用户可打开的文件数限制
vim /etc/security/limits.conf
es soft nofile 65536
es hard nofile 65536
参考链接: https://www.elastic.co/guide/en/elasticsearch/reference/current/setting-system-settings.html#ulimit
3.4.2 禁用swap
/etc/fstab
注释掉所有行中存在 swap 的行。
# /dev/mapper/cl_fedora-swap none swap defaults 0 0
参考链接: https://www.elastic.co/guide/en/elasticsearch/reference/current/setup-configuration-memory.html
3.4.3 修改虚拟内存
vim /etc/sysctl.conf
在此文件的最后一行增加 vm.max_map_count=262144。
参考链接:https://www.elastic.co/guide/en/elasticsearch/reference/current/vm-max-map-count.html
3.4.4 提高线程数
vim /etc/security/limits.conf
es soft nproc 65536
es hard nproc 65536
参考文档:https://www.elastic.co/guide/en/elasticsearch/reference/current/max-number-of-threads.html
以上配置配置完之后,重启一下系统,使系统配置生效。
3.5 放开9200端口
firewall-cmd --zone=public --add-port=9200/tcp --permanent
firewall-cmd --reload
4、启动es
需要使用非root账户启动。
bin/elasticsearch 前台启动
bin/elasticsearch -d 后台启动

5、重置 elastic 账户密码
[es@appbasic elasticsearch-8.4.3]$ bin/elasticsearch-reset-password --username elastic -i
warning: ignoring JAVA_HOME=/usr/local/jdk8; using bundled JDK
WARNING: Group of file [/usr/local/es/elasticsearch-8.4.3/config/users] used to be [root], but now is [es]
WARNING: Group of file [/usr/local/es/elasticsearch-8.4.3/config/users_roles] used to be [root], but now is [es]
This tool will reset the password of the [elastic] user.
You will be prompted to enter the password.
Please confirm that you would like to continue [y/N]y
Enter password for [elastic]:
Re-enter password for [elastic]:
Password for the [elastic] user successfully reset.
[es@appbasic elasticsearch-8.4.3]$
6、访问 es

出现如下信息,说明访问成功。
"name": "es-node01",
"cluster_name": "es-cluster",
"cluster_uuid": "OJsQ_w1ZTKWepM-u8-U-tg",
"version": {
"number": "8.4.3",
"build_flavor": "default",
"build_type": "tar",
"build_hash": "42f05b9372a9a4a470db3b52817899b99a76ee73",
"build_date": "2022-10-04T07:17:24.662462378Z",
"build_snapshot": false,
"lucene_version": "9.3.0",
"minimum_wire_compatibility_version": "7.17.0",
"minimum_index_compatibility_version": "7.0.0"
},
"tagline": "You Know, for Search"
}
7、kibana连接到es
7.1 修改kibana配置
vim /usr/local/kibana/kibana-8.4.3/config/kibana.yml
server.port: 5601
server.host: "192.168.121.138"
# elasticsearch.hosts: ["https://192.168.121.138:9200"] 和 es用户民密码都不用配置
注意:
如果上方的配置中增加了 如下配置 ( elasticsearch.username 和 elasticsearch.password) 或者 elasticsearch.hosts) 则可能出现如下异常
`[2022-10-30T18:31:29.858+08:00][ERROR][elasticsearch-service] Unable to retrieve version information from Elasticsearch nodes. self signed certificate in certificate chain`
解决方案:
执行如下命令
bin/kibana-setup --enrollment-token <enrollment-token>
<enrollment-token>通过如下命令获取:bin/elasticsearch-create-enrollment-token --scope kibana
7.2 启动kibana
bin/kibana

从上图中可以 访问地址为 http://192.168.121.138:5601/?code=634917
7.3 配置kibana

点击蓝色的按钮,就开始配置 elastic 了。
8、参考链接
- https://www.elastic.co/guide/en/elasticsearch/reference/current/install-elasticsearch.html
- https://www.elastic.co/guide/en/elasticsearch/reference/current/system-config.html
- https://www.elastic.co/guide/en/elasticsearch/reference/current/configuring-stack-security.html#stack-start-with-security
记录在linux上单机elasticsearch8和kibana8的更多相关文章
- K8ssandra入门-详细记录在Linux上部署K8ssandra到Kubernetes
1 什么是K8ssandra Cassandra是一款非常优秀的开源的分布式NoSQL数据库,被许多优秀的大公司采用,具有高可用.弹性扩展.性能好等特点. 正应Cassandra的优势,我们经常需要在 ...
- ElasticSearch elasticsearch-servicewrapper 在linux上的安装部署全程记录
原文地址:http://www.cnblogs.com/tianjixiaoying/p/4316011.html 由于项目需求,需要在linux平台搭建一套ES服务.在搭建过程中,遇到各种各样的问题 ...
- ElasticSearch在linux上的安装部署全程记录
由于项目需求,需要在linux平台搭建一套ES服务.在搭建过程中,遇到各种各样的问题.后来都一一解决.现在要记录下来这个过程,以及其中遇到的问题,及其解决方法. 一.环境配置 操作系统:Cent OS ...
- 【Oracle 集群】11G RAC 知识图文详细教程之RAC在LINUX上使用NFS安装前准备(六)
RAC在LINUX上使用NFS安装前准备(六) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇 ...
- 记录在linux下的wine生活
记录在linux下的windows生活 本篇内容涉及QQ.微信.Office的安装配置 QQ: 到deepin下载轻聊版. 如果安装了crossover,那么将其中opt/cxoffice/suppo ...
- Linux上的free命令详解、swap机制
Linux上的free命令详解 解释一下Linux上free命令的输出. 下面是free的运行结果,一共有4行.为了方便说明,我加上了列号.这样可以把free的输出看成一个二维数组FO(Free ...
- 分布式缓存技术redis学习系列(一)——redis简介以及linux上的安装
redis简介 redis是NoSQL(No Only SQL,非关系型数据库)的一种,NoSQL是以Key-Value的形式存储数据.当前主流的分布式缓存技术有redis,memcached,ssd ...
- 在 Linux 上配置一个 syslog 服务器
syslog服务器可以用作一个网络中的日志监控中心,所有能够通过网络来发送日志的设施(包含了Linux或Windows服务器,路由器,交换机以及其他主机)都可以把日志发送给它. 通过设置一个syslo ...
- PHP在linux上执行外部命令
PHP在linux上执行外部命令 一.PHP中调用外部命令介绍二.关于安全问题三.关于超时问题四.关于PHP运行linux环境中命令出现的问题 一.PHP中调用外部命令介绍在PHP中调用外部命令,可以 ...
随机推荐
- 微服务性能分析|Pyroscope 在 Rainbond 上的实践分享
随着微服务体系在生产环境落地,也会伴随着一些问题出现,比如流量过大造成某个微服务应用程序的性能瓶颈.CPU利用率高.或内存泄漏等问题.要找到问题的根本原因,我们通常都会通过日志.进程再结合代码去判断根 ...
- Spring Boot部署方法
Spring Boot部署方法 网上搜到的部署方法无非是打成jar包,然后shell执行nohup java调用jar命令,或者是打成war包然后部署到tomcat或者jetty容器上面. S ...
- feign的fallback操作
Fallback可以帮助我们在使用Feign去调用另外一个服务时,如果出现了问题,走服务降级,返回一个错误数据,避免功能因为一个服务出现问题,全部失效. 依赖: <dependency> ...
- java数组---初始化
public class ArrayDemo { public static void main(String[] args) { int[] a={1,2,3,4,5,6,7,8,9}; //静态初 ...
- git cherry-pick 总结
git cherry-pick cherry-pick : 精心挑选,挑选一个我们需要的 commit 进行操作.它可以用于将在其他分支上的 commit 移植到当前的分支. 用法: // 复制com ...
- python脚本将json文件生成C语言结构体
1.引言 以前用过python脚本根据excel生成相关C语言代码,其实本质就是文件的读写,主要是逻辑问题,这次尝试将json文件生成C语言的结构体. 2.代码 这是一个json文件,生成这个结构体的 ...
- js中的对象和数组的创建
<!DOCTYPE html><html><head> <title>获取控制</title> <meta charset=" ...
- 【全网最全】springboot整合JSR303参数校验与全局异常处理
一.前言 我们在日常开发中,避不开的就是参数校验,有人说前端不是会在表单中进行校验的吗?在后端中,我们可以直接不管前端怎么样判断过滤,我们后端都需要进行再次判断,为了安全.因为前端很容易拜托,当测试使 ...
- Elasticsearch Painless script编程
我们之前看见了在Elasticsearch里的ingest node里,我们可以通过以下processor的处理帮我们处理我们的一些数据.它们的功能是非常具体而明确的.那么在Elasticsearch ...
- Elasticsearch:使用_update_by_query更新文档
转载自: https://blog.csdn.net/UbuntuTouch/article/details/105564270 在很多的情况下,我们我们想更新我们所有的文档: 添加一个新的field ...