Elasticsearch 一种开源的搜索和分析引擎,旨在处理大量数据并提供实时搜索、分析和可视化功能。它可以处理各种类型的数据,包括结构化、非结构化和半结构化数据,并支持多种数据源,包括数据库、日志文件和外部API。Elastic还提供了一些工具和插件,用于数据可视化、监控和安全等方面的功能。Elastic被广泛应用于企业搜索、日志分析、安全分析、商业智能等领域。
Kibana是一个开源的数据可视化和分析平台,用于查询、分析和可视化 Elasticsearch 中的数据。它可以帮助用户以更直观的方式理解 Elasticsearch 中的数据,并从中获得有价值的见解。Kibana提供了各种图表和可视化工具,包括柱状图、饼图、折线图、地图等,可以根据用户的需要进行自定义设置。Kibana还支持实时数据查询和过滤,可以帮助用户快速识别和解决问题。
一、部署Elasticsearch7.6.2
环境:
[root@serverc ~]# hostnamectl
Static hostname: serverc
Pretty hostname: ServerC
Icon name: computer-vm
Chassis: vm
Machine ID: 220aa23d5ed54dbf983eaa0433c46097
Boot ID: 5a362eba6b954cf38fdeedbbdd879dcf
Virtualization: vmware
Operating System: CentOS Linux 7 (Core)
CPE OS Name: cpe:/o:centos:centos:7
Kernel: Linux 3.10.0-1160.90.1.el7.x86_64
Architecture: x86-64
1-2. 下载Elasticsearch7.6.2
官网链接:下载 Elastic 产品 | Elastic
1-3 环境要安装jdk11
(这个jdk安装是因为我们的elasticsearch是java编写,所以需要jdK环境,具体版本我们可以询问官网或者chatgpt)
1-3-下载官网历史版本:www.oracle.com/technetwork…
1-3-2.下载jdk
点击具体JDK版本后进入详细下载界面如下:根据Linux操作系统位数下载正确的安装包 但是现在下载JDK安装包需要注册Oracle账号,嫌麻烦?放心,小饼已经给各位准备好了jdk1.8的安装包,来,张嘴~
百度网盘下载:pan.baidu.com/s/1a5Io5FFP… 提取码:0915
1-3-3部署jdk
[root@serverc ~]# tar -xaf jdk-8u371-linux-i586\ \(1\).tar.gz
[root@serverc ~]# cd jdk1.8.0_371/
[root@serverc ~]# mkdir -p /home/local/java
[root@serverc ~]# mv jdk-11.0.19 /home/local/java/
[root@serverc ~]# cd /home/local/java/
[root@serverc java]# ls
jdk-11.0.19
[root@serverc java]# vim /etc/profile
点击键盘 `i` 进行编辑;
将下面内容粘贴到末尾;
export JAVA_HOME=/home/local/java/jdk-11.0.19
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
按:wq保存退出
1-3-4 验证
[root@serverc java]# source /etc/profile
[root@serverc java]# java --version
openjdk 11.0.19 2023-04-18 LTS
OpenJDK Runtime Environment (Red_Hat-11.0.19.0.7-1.el7_9) (build 11.0.19+7-LTS)
OpenJDK 64-Bit Server VM (Red_Hat-11.0.19.0.7-1.el7_9) (build 11.0.19+7-LTS, mixed mode, sharing)
1-4 部署elasticsearch
1-4-1创建用户并授权
[root@serverc ~]# useradd es [root@serverc ~]# echo "redhat" | passwd es -f --stdin 更改用户 es 的密码 。 passwd:所有的身份验证令牌已经成功更新。
[root@serverc ~]# useradd es
[root@serverc ~]# echo "redhat" | passwd es -f --stdin
更改用户 es 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@serverc ~]# cd /opt/module/es/
[root@serverc es]# ls
elasticsearch-7.6.2-linux-x86_64.tar.gz
[root@serverc es]# tar -xaf elasticsearch-7.6.2-linux-x86_64.tar.gz
[root@serverc es]# ls
elasticsearch-7.6.2 elasticsearch-7.6.2-linux-x86_64.tar.gz
[root@serverc es]# cd ..
[root@serverc module]# cd
[root@serverc ~]# chmod -R 777 /opt/module/es/
[root@serverc ~]# chown es:es /opt/module/es/
[root@serverc ~]# chown -R es:es /opt/module/es/
确保自定义(/opt/module/es)下所有文件都修改了为es用户es组
[root@serverc elasticsearch-7.6.2]# ls
bin config jdk lib LICENSE.txt logs modules NOTICE.txt plugins README.asciidoc
[root@serverc elasticsearch-7.6.2]# ll -d ./*
drwxrwxrwx. 2 es es 4096 3月 26 2020 ./bin
drwxrwxrwx. 2 es es 148 3月 26 2020 ./config
drwxrwxrwx. 9 es es 107 3月 26 2020 ./jdk
drwxrwxrwx. 3 es es 4096 3月 26 2020 ./lib
-rwxrwxrwx. 1 es es 13675 3月 26 2020 ./LICENSE.txt
drwxrwxrwx. 2 es es 6 3月 26 2020 ./logs
drwxrwxrwx. 38 es es 4096 3月 26 2020 ./modules
-rwxrwxrwx. 1 es es 523209 3月 26 2020 ./NOTICE.txt
drwxrwxrwx. 2 es es 6 3月 26 2020 ./plugins
-rwxrwxrwx. 1 es es 8164 3月 26 2020 ./README.asciidoc
1-4-2: 这里我们提前把可能出现的报错都提前做好,以免我们启动的时候出现报错
这下面的报错解决方法,我们先启动程序后,再去看,找对应的报错。不用上来直接改,不过改了也没毛病,冲!!
- 使用root用户启动报错:
解决方法: 以刚才我们自定义的用户去启动
[root@xxx bin]# su es
[elasticuser@xxx bin]$ ./elasticsearch
- 启动报错: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
解决方法:
最大虚拟内存太小,在/etc/sysctl.conf文件最后添加一行
vm.max_map_count=655360
执行/sbin/sysctl -p 立即生效
/sbin/sysctl -p
重新启动elasticsearch即可
ps -ef | grep elasticsearch
kill -9 2876900 ##这个pid进程号大家每个都不一样哈,以上面命令查到的为主
3.jvm 内存不足报错: Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) failed; error='Cannot allocate memory' (errno=12)
这里的情况我们自定义为主哈,如果没有报错,大家就不要去修改jvm的参数,这个参数和后期查询数据的速度有很大关系!!!
解决方法:
1、killed服务,释放内存
2、由于 elasticsearch7.12.1 默认分配 jvm 空间大小为4g,修改 jvm空间分配
修改elasticsearch安装目录下的config里的jvm.options
vim config/jvm.options?
-Xms1g
-Xmx1g
#可根据自己服务器内存大小设置合适的内存值
#Xms512m
#Xmx512m
保存配置文件,重启即可
- 文件权限报错:
解决方法: 打开文件权限
[root@serverc ~]# chmod -R 777 /opt/module/es/elasticsearch-7.6.2
[root@serverc ~]# chown -R es:es /opt/module/es/elasticsearch-7.6.2
- 搜索进程太低:
ERROR: [1] bootstrap checks failed [1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65535]
解决方法:
编辑 /etc/security/limits.conf
vi /etc/security/limits.conf,添加下面内容:
* soft nofile 65536
* hard nofile 65536
之后重新登录es用户才有效。(提一嘴,如果有的同学用户不是es,是自定义的其他用户,那就使用自己自定义的)
1-5启动elasticsearch
1-5-1.创建程序日志,和数据存储位置,方便后期维护。
[root@serverc ~]# mkdir -p /home/es/logs
[root@serverc ~]# mkdir -p /home/es/data
[root@serverc ~]# chmod -R 777 /home/es/logs/
[root@serverc ~]# chown -R es:es /home/es/logs/
[root@serverc ~]# chown -R es:es /home/es/data/
[root@serverc ~]# chmod -R 777 /home/es/data/
1-5-2. 程序启动前,我们先去改一下配置文件的基础参数哈
# ======================== Elasticsearch Configuration =========================
#配置elasticsearch的集群名称,默认是elasticsearch
cluster.name: my-elasticsearch-name
#节点名,elasticsearch会默认随机指定一个名字
node.name: node-1
#network.host:设置为0.0.0.0允许外网访问
network.host: 0.0.0.0
#Elasticsearch的http访问端口
http.port: 19200
#初始化新的集群时需要此配置来选举
master cluster.initial_master_nodes: node-1
#自定义日志存储目录
path.logs: /home/es/logs
# 自定义数据存储目录
path.data: /home/es/data
1-5-3.部署成功
1-5-4.如果有同学没有到上一步,但是启动elasticsearch 也没有报错。同学们要排查一下自己的防火墙,(firewalld/iptables)别问为啥我知道,不说了,呜呜呜呜,接着看下面的处理吧!
解决方法:
[root@serverc ~]# firewall-cmd --add-service=elasticsearch --permanent
[root@serverc ~]# firewall-cmd --add-port=19200/tcp --permanent
[root@serverc ~]# firewall-cmd --reload
firewall-cmd --reload
1-6 把es 做成服务,用system 管理
[root@serverc ~]# vim /usr/lib/systemd/system/elasticsearch.service
[Unit]
Description=elasticsearch
After=network.target
[Service]
Type=forking
User=es ##启动elasticsearch 的用户,如果你不一样,记得修改
ExecStart=/opt/module/es/elasticsearch-7.6.2/bin/elasticsearch -d ##这里写你的绝对路径
PrivateTmp=true
# 指定此进程可以打开的最大文件数
LimitNOFILE=65535
# 指定此进程可以打开的最大进程数
LimitNPROC=65535
# 最大虚拟内存
LimitAS=infinity
# 最大文件大小
LimitFSIZE=infinity
# 超时设置 0-永不超时
TimeoutStopSec=0
# SIGTERM是停止java进程的信号
KillSignal=SIGTERM
# 信号只发送给给JVM
KillMode=process
# java进程不会被杀掉
SendSIGKILL=no
# 正常退出状态
SuccessExitStatus=143
[Install]
WantedBy=multi-user.target
[root@serverc ~]# systemctl enable elasticsearch.service ##刷新配置
Created symlink from /etc/systemd/system/multi-user.target.wants/elasticsearch.service to /usr/lib/systemd/s
ystem/elasticsearch.service.
1-7.设置elascsearch的用户名和密码
手动设置密码 ##推荐使用
在此之前我们要先修改配置文件并打开安全验证功能
/opt/module/es/elasticsearch-7.6.2/config
[es@serverc config]$ vim elasticsearch.yml
#开启xpack
xpack.security.enabled: true
xpack.license.self_generated.type: basic
xpack.security.transport.ssl.enabled: true
#证书配置(先生成证书文件)
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: certs/elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: certs/elastic-certificates.p12
1-7-1. 生成节点证书
root@serverc bin]# ./elasticsearch-certutil ca -out config/certs/elastic-certificates.p12 -pass
root@serverc ~]# cd /opt/module/es/elasticsearch-7.6.2/
[root@serverc elasticsearch-7.6.2]# cd config/
[root@serverc config]# ls
certs elasticsearch.yml log4j2.properties roles.yml users_roles
elasticsearch.keystore jvm.options role_mapping.yml users
[root@serverc config]# cd certs/
[root@serverc certs]# ll
总用量 4
-rwxrwxrwx. 1 es es 2527 5月 17 16:07 elastic-certificates.p12
这里建议先配置生成节点证书,一定要检查自己config目录里面是否存在“elastic-certificates.p12”,上面证书配置如果不存在改文件,启动会报错!!!!!!
手动配置密码:
./elasticsearch-setup-passwords interactive
Initiating the setup of passwords for reserved users elastic,apm_system,kibana,logstash_system,beats_system,
remote_monitoring_user.You will be prompted to enter passwords as the process progresses.
Please confirm that you would like to continue [y/N]y
Enter password for [elastic]: ##设置elastic 的密码,(123456)自定义哈,我图方便!生产环境中建议写复杂点
Reenter password for [elastic]: ## 重新确认一下密码
Enter password for [apm_system]: ##
Reenter password for [apm_system]:
Enter password for [kibana]:
Reenter password for [kibana]:
Enter password for [logstash_system]:
Reenter password for [logstash_system]:
Enter password for [beats_system]:
Reenter password for [beats_system]:
Enter password for [remote_monitoring_user]:
Reenter password for [remote_monitoring_user]:
12Changed password for user [apm_system]
Changed password for user [kibana]
Changed password for user [logstash_system]
Changed password for user [beats_system]
Changed password for user [remote_monitoring_user]
Changed password for user [elastic]
这里用户密码设置我有比较重要的用户我提一嘴哈! elastic 账号:拥有 superuser 角色,是内置的超级用户。
kibana 账号:拥有 kibana_system 角色,用户 kibana 用来连接 elasticsearch 并与之通信。Kibana 服务器以该用户身份提交请求以访问集群监视 API 和 .kibana 索引。不能访问 index。
logstash_system 账号:拥有 logstash_system 角色。用户 Logstash 在 Elasticsearch 中存储监控信息时使用。
账号: elastic 密码: 123456(刚才你们自己设置的啊,账号一样密码可能你们自己定义的不一样。如果有同学自定义的密码输入自己的密码啊)
1-7-2: 自动设置密码
./elasticsearch-setup-passwords auto
这种情况需要自己记住密码,而且密码很烦人。我特别不喜欢,表示非常恶心! 我觉得总有勇者想这么干,还是把方法写出来大家自己把握!
官方文档链接:www.elastic.co/guide/en/el…
2、到这里我们的es算h是ok了,接着我们来装kibana
3、kibana下载
1、下载链接Download Kibana Free | Get Started Now | Elastic
2.部署安装
[root@serverc ~]# mkdir /opt/module/kibana
[root@serverc ~]# cd /opt/module/kibana/
[root@serverc kibana]# ls
kibana-7.6.2-linux-x86_64.tar.gz
[root@serverc kibana]# tar -xaf kibana-7.6.2-linux-x86_64.tar.gz
[root@serverc kibana]# cd kibana-7.6.2-linux-x86_64/
######设置为es 用户和权限
[root@serverc module]# chmod -R 777 /opt/module/kibana/kibana-7.6.2-linux-x86_64
[root@serverc module]# chown -R es:es /opt/module/kibana/kibana-7.6.2-linux-x86_64
3.修改配置文件(使用es用户,如果你使用root用户修改后文件所有者会改变)
[es@serverc config]$ vim kibana.yml
按i 添加如下数据
server.port: 5601 ##服务端口
server.host: 0.0.0.0 ##可访问的ip
elasticsearch.hosts: ["http://172.17.55.170:19200"] ##elasticearch服务器的地址
elasticsearch.username: "kibana" ## 刚才设置的用户
elasticsearch.password: "123456" ## 密码
i18n.locale: "zh-CN" ##设置为中文
4.重启服务
[es@serverc bin]$ ./kibana
出现了这个,证明你的kibana已经起来了
5.如果你出现了
这里是使用elastic用户去登录 切记!!!!!!!!
6.注册kibana服务并设置开机自启动
[root@serverc ~]# vim /usr/lib/systemd/system/kibana.service ##注册服务的时候使用root用户
Unit]
Description=kibana
After=network.target
[Service]
Type=simple
User=es
ExecStart=/opt/module/kibana/kibana-7.6.2-linux-x86_64/bin/kibana
PrivateTmp=true
[Install]
WantedBy=multi-user.target
[root@serverc ~]# systemctl enable kibana.service
Created symlink from /etc/systemd/system/multi-user.target.wants/kibana.service to /usr/lib/systemd/system/k
ibana.service. ##注册成功
7.写到这里基本可以收工了,这里我们再来看看可视化界面的东西
本网站是一个以CSS、JavaScript、Vue、HTML为核心的前端开发技术网站。我们致力于为广大前端开发者提供专业、全面、实用的前端开发知识和技术支持。 在本网站中,您可以学习到最新的前端开发技术,了解前端开发的最新趋势和最佳实践。我们提供丰富的教程和案例,让您可以快速掌握前端开发的核心技术和流程。 本网站还提供一系列实用的工具和插件,帮助您更加高效地进行前端开发工作。我们提供的工具和插件都经过精心设计和优化,可以帮助您节省时间和精力,提升开发效率。 除此之外,本网站还拥有一个活跃的社区,您可以在社区中与其他前端开发者交流技术、分享经验、解决问题。我们相信,社区的力量可以帮助您更好地成长和进步。 在本网站中,您可以找到您需要的一切前端开发资源,让您成为一名更加优秀的前端开发者。欢迎您加入我们的大家庭,一起探索前端开发的无限可能!后期在可视化界面可以修改elaticsearch用户的密码!!!
各位大佬们多多点赞,收藏,评论啊。小饼很需要你们的支持和鼓励! 这几天相当高产,一下子发布了三篇帖子,各位请求一个收藏、点赞支持!
代办报建
本公司承接江浙沪报建代办施工许可证。
联系人:张经理,18321657689(微信同号)。
19条评论
一口气看完了,我要下去回味回味了!http://dhjd.cqfyy.com
怎么我回帖都没人理我呢?http://byz78p.myktg.com
内容很有深度!http://4g6w23.khgzapo.cn
在哪里跌倒,就在那里多爬一会儿!http://yx3v.wwggzp.com
语言表达流畅,没有冗余,读起来很舒服。http://oy7.suduwl.com
收藏了,改天让朋友看看!http://tko7ig.gzhuanhaow.com
观点鲜明,立场坚定,作者态度明确。http://jg0.xaqrpj.com.cn
看帖回帖一条路!http://9qfur1.qdtadiao.com
今天是个特别的日子,值得纪念!http://uyr.bjerba.com
楼主英明!http://h8ai.xaqrpj.com.cn
论坛的人气不行了!http://fbq.35meeting.com
我默默的回帖,从不声张!http://f9u1t.zhhgao.com
楼上的能详细介绍一下么?http://y2ee.benmengkeji.cn
论坛的人气越来越旺了!http://x40z.io49.com
今天是个特别的日子,值得纪念!http://www.guangcexing.net/voddetail/axUHzwbDns.html
信楼主,考试不挂科!http://www.guangcexing.net/voddetail/uvgZqfdKUn.html
缺乏激情了!http://www.cervejaesalsicha.com/
论坛人气好旺!http://jljsbsy.cn/html/77b98998933.html
顶一个!https://www.telegramlp.com/
发表评论