史上最详细ELK架构图解+部署es和kibana

Elastic Stack

课程:ElasticStack高级搜索入门到项目实战!Linux运维必备 (oldboyedu.com)

(29条消息) ELK日志系统搭建完整详细步骤_郑爱辰的博客-CSDN博客

一、 Elastic Stack在企业常见架构

1.1、Elastic Stack分布式日志系统概述

E—ekastucsearch

解决数据存储和检索(存放数据和查询数据以及分析)

L—logstash

主要有两个功能,收集和简单处理(切数据)

K—Kibana

图形化管理插件,用以展示数据

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-02Slxb1c-1686294863467)(https://shidt2023.oss-cn-shanghai.aliyuncs.com/typora/img/image-20230426190954410.png)]

老的品牌教ELK

新的品牌教ElasticStack

名字由来

logstash是一个重量级的服务,使用起来不方便,有时只需要执行简单的日志收集操作,所以很多插件用不上,因此专门开发了Beats组件:只有一个作用,收集日志。而日志处理还是交给logstash处理

Beats由多个收集组件组成

因此就以公司名字Elastic+技术栈Stack命名 ElasticStack

The Elastic Stack,包括Elasticsearch、Kibana、Beats和Logstash(也称为 ELK Stack)。
ElaticSearch:
 简称为ES, ES是⼀个开源的⾼扩展的分布式全⽂搜索引擎,是整个Elastic Stack技术栈的核⼼。它可以近乎实时的存储、检索数据;本身扩展性很好,可以扩展到上百台服务器,处理PB级别的数据。
 
Kibana:
 是⼀个免费且开放的⽤户界⾯,能够让您对Elasticsearch数据进⾏可视化,并让您在Elastic Stack中进⾏导航。您可以进⾏各种操作,从跟踪查询负载,到理解请求如何流经您的整个应⽤,都能轻松完成。

Beats:
 是⼀个免费且开放的平台,集合了多种单⼀⽤途数据采集器。它们从成百上千或成千上万台机器和系统向Logstash 或 
Elasticsearch发送数据。

Logstash:
 是免费且开放的服务器端数据处理管道,能够从多个来源采集数据,转换数据,然后将数据发送到您最喜欢的“存储库”中。

Elastic Stack的主要优点有如下⼏个:
 (1)处理⽅式灵活:
 elasticsearch是实时全⽂索引,具有强⼤的搜索功能。
 (2)配置相对简单:
 elasticsearch全部使⽤JSON 接⼝,logstash使⽤模块配置,kibana的配置⽂件部分更简单。
 (3)检索性能⾼效:
 基于优秀的设计,虽然每次查询都是实时,但是也可以达到百亿级数据的查询秒级响应。
 (4)集群线性扩展:
 elasticsearch和logstash都可以灵活线性扩展。
 (5)前端操作绚丽:
 kibana的前端设计⽐较绚丽,⽽且操作简单。
 
使⽤elastic stack能收集那些⽇志:
 容器管理⼯具:
 docker
 容器编排⼯具:
 docker swarm,Kubernetes
 负载均衡服务器:
 lvs,haproxy,nginx
 web服务器:
 httpd,nginx,tomcat
 数据库:
 mysql,redis,MongoDB,Hbase,Kudu,ClickHouse,PostgreSQL
 存储:
 nfs,gluterfs,fastdfs,HDFS,Ceph
 系统:
 message,security
 业务:
 包括但不限于C,C++,Java,PHP,Go,Python,Shell等编程语⾔研发的App

1.2 架构

1.2.1 EFK

Beats组件中有很多组件,最常用的是FileBeat,起到日志收集服务

[外链图片转存失败,建议将图片保存下来直接上传(img-wdcscYJM-1686294863468)(https://shidt2023.oss-cn-shanghai.aliyuncs.com/typora/img/image-20230426191959304.png)]

图中每个Filebeat都可以收集不同的日志,然后打存储到中Elasticsearch,最后使用kibana进行数据展示

数据流⾛向: 源数据层(nginx,tomcat) ---> 数据采集层(filebeat) ---> 数据存储层(ElasticSearch)

1.2.2 ELK

[外链图片转存失败,建议将图片保存下来直接上传(img-eqUPDHbc-1686294863469)(https://shidt2023.oss-cn-shanghai.aliyuncs.com/typora/img/image-20230426192019774.png)]

由Logstash进行日志收集工作,并加以简单分析处理,转发到Elasticsearch进行处理,最后由Kibana进行数据展示

数据流⾛向: 源数据层(nginx,tomcat) ---> 数据采集/转换层(Logstash) ---> 数据存储(ElasticSearch)

1.2.3 ELFK

[外链图片转存失败,建议将图片保存下来直接上传(img-KFAdidKU-1686294863469)(https://shidt2023.oss-cn-shanghai.aliyuncs.com/typora/img/image-20230426192334766.png)]

Filebeat执行日志收集,交给Logstash处理,然后写入Elasticsearch

数据流⾛向: 源数据层(nginx,tomcat) ---> 数据采集(filebeat) ---> 转换层(Logstash) ---> 数据存储层(ElasticSearch)

1.2.4 ELFK+kafka

在前一个架构中,logstash的作用本应该做数据处理转换的,但是由于多个filebeat把收集的日志打到logstash中,所以,他还担任着另一个角色,即日志聚合,在生产环境中,filebeat可能在很多台服务器上部署,而logstash只有一台,容易崩溃,数据就打不进来。

结局方案:前面加一个kafka集群,也就是消息队列,对filebeat收集的日志做一个缓冲,logstash从kafka中拿数据,再进行数据处理,然后写入elasticsearch中,最后由kibana可视化

[外链图片转存失败,建议将图片保存下来直接上传(img-OnYA3ZDo-1686294863469)(https://shidt2023.oss-cn-shanghai.aliyuncs.com/typora/img/image-20230426192810910.png)]

数据流⾛向: 源数据层(nginx,tomcat) ---> 数据采集(filebeat) ---> 数据缓存层(kafka)---> 转换层(Logstash) ---> 数据存储层(ElasticSearch)

1.2.5 ELFK + Kafka 架构演变

spark,flink等组件可以从kafka中拿去数据,后面再说

[外链图片转存失败,建议将图片保存下来直接上传(img-4dLFEaXh-1686294863470)(https://shidt2023.oss-cn-shanghai.aliyuncs.com/typora/img/image-20230426193007276.png)]

也就是说,再实际工作中,如果有大数据部门的存在,也有可能kafka的数据被多个部门使用

二、ElasticSearch和Solr的抉择

2.1 ElasticSearch和Lucene的关系

Lucene的优缺点:

优点: 可以被认为是迄今为⽌最先进,性能最好的,功能最全的搜索引擎库(框架)。

缺点:

(1)只能在Java项⽬中使⽤,并且要以jar包的⽅式直接集成在项⽬中;

(2)使⽤很复杂,你需要深⼊了解检索的相关知识来创建索引和搜索索引代码;

(3)不⽀持集群环境,索引数据不同步(不⽀持⼤型项⽬);

(4)扩展性差,索引库和应⽤所在同⼀个服务器,当索引数据过⼤时,效率逐渐降低;

值得注意的是,上述的Lucene框架中的缺点,Elasticsearch全部都能解决

ElasticSearch是一个实时的分布式搜索和分析引擎,它可以帮助你用前所未有的速度去处理大规模数据

ES可以用于全文搜索,结构化搜索以及分析。

2.2 ElasticSearch和Solr如何抉择

[外链图片转存失败,建议将图片保存下来直接上传(img-Omv5vbYs-1686294863470)(https://shidt2023.oss-cn-shanghai.aliyuncs.com/typora/img/image-20230426193647174.png)]

  • Solr是Apache Lucene项⽬的开源企业搜索平台。其主要功能包括全⽂检索、命中标示、分⾯搜 索、动态聚类、数据库集成,以及富⽂本(如Word、PDF)的处理。 Solr是⾼度可扩展的,并提供了分布式搜索和索引复制。Solr是最流⾏的企业级搜索引擎, Solr4 还增加了NoSQL⽀持。

  • Elasticsearch(下⾯简称"ES")与Solr的⽐较:

    • (1)Solr利⽤Zookeeper进⾏分布式管理,⽽ES⾃身带有分布式协调管理功能;
    • (2)Solr⽀持更多格式(JSON、XML、CSV)的数据,⽽ES仅⽀持JSON⽂件格式;
    • (3)Solr官⽅提供的功能更多,⽽ES本身更注重于核⼼功能,⾼级功能多有第三⽅插件提 供;
    • (4)Solr在"传统搜索"(已有数据)中表现好于ES,但在处理"实时搜索"(实时建⽴索引)应⽤时效率明显低ES。
    • (5)Solr是传统搜索应⽤的有⼒解决⽅案,但Elasticsearch更适⽤于新兴的实时搜索应⽤。

如下图所示,有⽹友在⽣产环境测试,将搜索引擎从Solr转到ElasticSearch以后的平均查询速 度有了将近50倍提升

[外链图片转存失败,建议将图片保存下来直接上传(img-fcuCCP83-1686294863470)(https://shidt2023.oss-cn-shanghai.aliyuncs.com/typora/img/image-20230426194048714.png)]

三、集群基础环境初始化

3.1 准备虚拟机

IP地址eth0 IP地址eth1 主机名 CPU 内存 磁盘 角色说明
10.10.31.14 172.20.0.101 elk101 2C 4G 20G ES node
10.10.31.28 172.20.0.102 elk102 2C 4G 20G ES node
10.10.31.21 172.20.0.103 elk103 2C 4G 20G ES node
cat >> /etc/hosts << 'EOF'
172.20.0.101 elk101.oldboyedu.com
172.20.0.102 elk102.oldboyedu.com
172.20.0.103 elk103.oldboyedu.com
EOF

3.2 修改软件源

sed -e 's|^mirrorlist=|#mirrorlist=|g' \
 -e 
's|^#baseurl=http://mirror.centos.org|baseurl=https://mirrors.tuna.tsing
hua.edu.cn|g' \
 -i.bak \
 /etc/yum.repos.d/CentOS-*.repo

3.3 修改终端颜色

cat <<EOF >> ~/.bashrc 
PS1='[\[\e[34;1m\]\u@\[\e[0m\]\[\e[32;1m\]\H\[\e[0m\]\[\e[31;1m\] \W\[\e[0m\]]# '
EOF
source ~/.bashrc 

3.4 修改sshd服务优化

sed -ri 's@^#UseDNS yes@UseDNS no@g' /etc/ssh/sshd_config
sed -ri 's#^GSSAPIAuthentication yes#GSSAPIAuthentication no#g' /etc/ssh/sshd_config
grep ^UseDNS /etc/ssh/sshd_config 
grep ^GSSAPIAuthentication /etc/ssh/sshd_config

3.5 关闭防火墙

systemctl disable --now firewalld && systemctl is-enabled firewalld
systemctl status firewalld

3.6 禁用selinux

sed -ri 's#(SELINUX=)enforcing#\1disabled#' /etc/selinux/config
grep ^SELINUX= /etc/selinux/config 
setenforce 0
getenforce 

3.7 配置集群免密登录及同步脚本

(1)修改主机列表
cat >> /etc/hosts << 'EOF'
172.20.0.101 elk101.oldboyedu.com
172.20.0.102 elk102.oldboyedu.com
172.20.0.103 elk103.oldboyedu.com
EOF
(2)elk101节点上⽣成密钥对
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa -q
(3)elk101配置所有集群节点的免密登录
for ((host_id=101;host_id<=103;host_id++));do ssh-copy-id elk${host_id}.oldboyedu.com ;done
(4)链接测试
ssh 'elk101.oldboyedu.com'
ssh 'elk102.oldboyedu.com'
ssh 'elk103.oldboyedu.com'
(5)所有节点安装rsync数据同步⼯具
yum -y install rsync
(6)编写同步脚本
vim /usr/local/sbin/data_rsync.sh # 将下⾯的内容拷⻉到该⽂件即可
#!/bin/bash
# Auther: Jason Yin
if [ $# -ne 1 ];then
 echo "Usage: $0 /path/to/file(绝对路径)"
 exit
fi 
# 判断⽂件是否存在
if [ ! -e $1 ];then
 echo "[ $1 ] dir or file not find!"
 exit
fi
# 获取⽗路径
fullpath=`dirname $1`
# 获取⼦路径
basename=`basename $1`
# 进⼊到⽗路径
cd $fullpath
for ((host_id=102;host_id<=103;host_id++))
 do
 # 使得终端输出变为绿⾊
 tput setaf 2
 echo ===== rsyncing elk${host_id}.oldboyedu.com: $basename =====
 # 使得终端恢复原来的颜⾊
 tput setaf 7
 # 将数据同步到其他两个节点
 rsync -az $basename `whoami`@elk${host_id}.oldboyedu.com:$fullpath
 if [ $? -eq 0 ];then
 echo "命令执⾏成功!"
 fi
done
(7)给脚本授权
chmod +x /usr/local/sbin/data_rsync.sh

3.8 集群时间同步

(1)安装常⽤的Linux⼯具,您可以⾃定义哈。
yum -y install vim net-tools 
(2)安装chrony服务
yum -y install ntpdate chrony 
(3)修改chrony服务配置⽂件
vim /etc/chrony.conf 
...
# 注释官⽅的时间服务器,换成国内的时间服务器即可
server ntp.aliyun.com iburst
server ntp1.aliyun.com iburst
server ntp2.aliyun.com iburst
server ntp3.aliyun.com iburst
server ntp4.aliyun.com iburst
server ntp5.aliyun.com iburst
...
(4)配置chronyd的开机⾃启动
systemctl enable --now chronyd
systemctl restart chronyd
(5)查看服务
systemctl status chronyd

全部完成后拍摄快照,以便后期恢复

[外链图片转存失败,建议将图片保存下来直接上传(img-mdLaIxpl-1686294863471)(https://shidt2023.oss-cn-shanghai.aliyuncs.com/typora/img/image-20230427094958992.png)]

四、ElasticSearch单节点部署

4.1 下载指定的ES版本

下载地址
https://www.elastic.co/cn/downloads/elasticsearch
这里下载7.17.3的tar包和rpm包
[root@elk101.oldboyedu.com ~]# wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.3-linux-x86_64.tar.gz
[root@elk101.oldboyedu.com ~]# wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.3-x86_64.rpm

4.2 单点部署elasticsearch

# (1)安装服务  # yum -y localinstall 会自动解决依赖
yum -y localinstall elasticsearch-7.17.3-x86_64.rpm

# 使用systemctl cat elasticsearch 查看配置文件内容

# 查看内置jdkversion
/usr/share/elasticsearch/jdk/bin/java -version
openjdk version "18" 2022-03-22
OpenJDK Runtime Environment Temurin-18+36 (build 18+36)
OpenJDK 64-Bit Server VM Temurin-18+36 (build 18+36,mixed mode,sharing)

# 查看服务有无启动
[root@elk101.oldboyedu.com ~]# systemctl status elasticsearch.service 
● elasticsearch.service - Elasticsearch
   Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; disabled; vendor preset: disabled)
   Active: inactive (dead)
     Docs: https://www.elastic.co

# 启动了两个端口  9200 和 9300
# 9200是对集群外部提供服务的,使用的是HTTP协议
# 9300集群之间相互通讯使用
[root@elk101.oldboyedu.com ~]# ss -nlt
# 测试9200端口
[root@elk101.oldboyedu.com ~]# curl 127.0.0.1:9200
{
  "name" : "elk101.oldboyedu.com",# 当前访问节点的名称
  "cluster_name" : "elasticsearch",# 集群名称
  "cluster_uuid" : "Tna7PKcKSiy1YSEfs2zR_w",# 集群唯一标识
  "version" : {
    "number" : "7.17.3","build_flavor" : "default","build_type" : "rpm","build_hash" : "5ad023604c8d7416c9eb6c0eadb62b14e766caff","build_date" : "2022-04-19T08:11:19.070913226Z","build_snapshot" : false,"lucene_version" : "8.11.1","minimum_wire_compatibility_version" : "6.8.0","minimum_index_compatibility_version" : "6.0.0-beta1"
  },"tagline" : "You Know,for Search"
}

# (2)修改配置⽂件
egrep -v "^#|^$" /etc/elasticsearch/elasticsearch.yml 
cluster.name: oldboyedu-elk
node.name: oldboyedu-elk103
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 0.0.0.0   # 指的是当前节点所有ip都可以访问
discovery.seed_hosts: ["172.20.0.101"]   # 设置集群配置,可写ip地址,也可以写主机名,会自动解析
# 相关参数说明:
 cluster.name: 
# 集群名称,若不指定,则默认是"elasticsearch",⽇志⽂件的前缀也是集群名称。
 node.name: 
# 指定节点的名称,可以⾃定义,推荐使⽤当前的主机名,要求集群唯⼀。
 path.data: 
# 数据路径。
 path.logs:
# ⽇志路径
 network.host: 
# ES服务监听的IP地址
 discovery.seed_hosts:
# 服务发现的主机列表,对于单点部署⽽⾔,主机列表和"network.host"字段配置相同即可。
# (3)启动服务
systemctl start elasticsearch.service

启动的时候可以去看日志

[外链图片转存失败,建议将图片保存下来直接上传(img-Tjrq2z6N-1686294863471)(https://shidt2023.oss-cn-shanghai.aliyuncs.com/typora/img/image-20230427111613298.png)]

再去查看下端口,匹配的所有ip地址

[外链图片转存失败,建议将图片保存下来直接上传(img-cNEFddyJ-1686294863471)(https://shidt2023.oss-cn-shanghai.aliyuncs.com/typora/img/image-20230427111855367.png)]

五、ElasticSearch分布式集群部署

注意:部署集群前尽量在干净的环境下部署

5.1 elk101修改配置文件

egrep -v "^$|^#" /etc/elasticsearch/elasticsearch.yml 
...
cluster.name: oldboyedu-elk
node.name: elk101
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 0.0.0.0
discovery.seed_hosts: ["elk101","elk102","elk103"]
cluster.initial_master_nodes: ["elk101","elk103"]
温馨提示:
 "node.name"各个节点配置要区分清楚,建议写对应的主机名称。

首先在每个节点安装ES

[外链图片转存失败,建议将图片保存下来直接上传(img-pRlRjqc7-1686294863472)(https://shidt2023.oss-cn-shanghai.aliyuncs.com/typora/img/image-20230427160432336.png)]

5.2 elk101修改配置文件

检查配置文件的技巧,直接cat不方便看,可以使用 下面的命令查询配置,意思是以#和空格开头的行不看

egrep -v "^#|^$" /etc/elasticsearch/elasticsearch.yml

[root@elk101.oldboyedu.com ~]# egrep -v "^#|^$" /etc/elasticsearch/elasticsearch.yml 
cluster.name: oldboyedu-elk
node.name: elk101
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 0.0.0.0
discovery.seed_hosts: ["172.20.0.101","172.20.0.102","172.20.0.103"]
cluster.initial_master_nodes: ["172.20.0.101"]


[root@elk102.oldboyedu.com ~]# egrep -v "^#|^$" /etc/elasticsearch/elasticsearch.yml 
cluster.name: oldboyedu-elk
node.name: elk102
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 0.0.0.0
discovery.seed_hosts: ["172.20.0.101","172.20.0.103"]
cluster.initial_master_nodes: ["172.20.0.101"]
[root@elk102.oldboyedu.com ~]# 


[root@elk103.oldboyedu.com ~]# egrep -v "^#|^$" /etc/elasticsearch/elasticsearch.yml 
cluster.name: oldboyedu-elk
node.name: elk103
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 0.0.0.0
discovery.seed_hosts: ["172.20.0.101","172.20.0.103"]
cluster.initial_master_nodes: ["172.20.0.101"]
[root@elk103.oldboyedu.com ~]# 

systemctl start elasticsearch.service

启动!并检验

[root@elk101.oldboyedu.com /]# !curl
curl 172.20.0.101:9200/
{
  "name" : "elk101","cluster_name" : "oldboyedu-elk-2023","cluster_uuid" : "0DxrLdtyR2yLRJ7sZixCqw","version" : {
    "number" : "7.17.3",for Search"
}


{
  "name" : "elk101",for Search"
}


curl 172.20.0.101:9200
{
  "name" : "elk101",for Search"
}

可以看到已经生成了uuid,再来看一下api

[root@elk101.oldboyedu.com /]# curl 172.20.0.101:9200/_cat/nodes
10.10.31.28 19 72 0 0.00 0.01 0.05 cdfhilmrstw - elk102
10.10.31.14 27 96 1 0.01 0.04 0.05 cdfhilmrstw * elk101
10.10.31.21 27 73 1 0.00 0.01 0.05 cdfhilmrstw - elk103

[外链图片转存失败,建议将图片保存下来直接上传(img-9sIkjr8C-1686294863472)(https://shidt2023.oss-cn-shanghai.aliyuncs.com/typora/img/image-20230428140506499.png)]

成功!

补充一下启动工程中查看日志的命令

tail -100f /var/log/elasticsearch/oldboyedu-elk-2023.log

5。3 集群启动失败后清理的方法

# 集群启动失败后需要清理产生的数据文件,日志文件和临时文件
# 注意,此操作不适用于生产环境!!!!!!
# 注意,此操作不适用于生产环境!!!!!!
# 注意,此操作不适用于生产环境!!!!!!
ll /var/{lib,log}/elasticsearch/*  三节点都要执行
rm -rf /var/{lib,log}/elasticsearch/*  三节点都要执行
tmp 目录也要关注一下

六、部署Kibana服务

6.1、本地安装kibana

下载方法同上,浏览elastic官网,找到kibana,找到对应version然后进行下载

注意:kibana版本要和elasticsearch一致

https://www.elastic.co/cn/downloads/

复制rpm包的下载链接https://artifacts.elastic.co/downloads/kibana/kibana-7.17.3-x86_64.rpm

直接wget下载

使用yum localinstall安装在哪个节点都可以,下面用elk103节点演示

[外链图片转存失败,建议将图片保存下来直接上传(img-7L3h0AWt-1686294863472)(https://shidt2023.oss-cn-shanghai.aliyuncs.com/typora/img/image-20230427200358733.png)]

6.2、修改kibana配置文件

通过以上方法安装的kibana配置文件位置为/etc/kibana/kibana.yml

下面来看下配置文件中较为关键的参数

# Kibana is served by a back end server. This setting specifies the port to use.
#server.port: 5601  # 服务端口号,默认5601


# Specifies the address to which the Kibana server will bind. IP addresses and host names are both valid values.
# The default is 'localhost',which usually means remote machines will not be able to connect.
# To allow connections from remote users,set this parameter to a non-loopback address.
#server.host: "localhost"   # kibana绑定的主机名或IP地址,默认是本地主机

# The Kibana server's name.  This is used for display purposes.
#server.name: "your-hostname" 服务名

# The URLs of the Elasticsearch instances to use for all your queries.
#elasticsearch.hosts: ["http://localhost:9200"]  # 指定一个部署的es节点可以配置单点或者集群,这里是集群,应该使用集群的每个节点
elasticsearch.hosts: ["http://10.10.31.14:9200","http://10.10.31.28:9200","http://10.10.31.21:9200"]


# If your Elasticsearch is protected with basic authentication,these settings provide
# the username and password that the Kibana server uses to perform maintenance on the Kibana
# index at startup. Your Kibana users still need to authenticate with Elasticsearch,which
# is proxied through the Kibana server.
# elasticsearch.username: "kibana_system"
# elasticsearch.password: "pass"    # 开启安全认证的账号密码


# 最后一行
# Specifies locale to be used for all localizable strings,dates and number formats.
# Supported languages are the following: English - en,by default,Chinese - zh-CN .
# i18n.locale: "en"  =======》 i18n 是国际化的简称,也就是配置kibana的语言支持

查看基本配置信息

[root@elk103.oldboyedu.com ~]# egrep -v "^#|^$" /etc/kibana/kibana.yml
server.host: "0.0.0.0"
server.name: "kibana"
elasticsearch.hosts: ["http://10.10.31.14:9200","http://10.10.31.21:9200"]
i18n.locale: "zh-CN"

启动kibana

[root@elk103.oldboyedu.com ~]# systemctl start kibana.service 
[root@elk103.oldboyedu.com ~]# systemctl status kibana.service 
● kibana.service - Kibana
   Loaded: loaded (/etc/systemd/system/kibana.service; disabled; vendor preset: disabled)
   Active: active (running) since Thu 2023-04-27 20:14:36 CST; 6s ago
     Docs: https://www.elastic.co
 Main PID: 2606 (node)
   CGroup: /system.slice/kibana.service
           └─2606 /usr/share/kibana/bin/../node/bin/node /usr/share/kibana/bin/../src/cli/dist --logging.dest="/var/log/kiba...

Apr 27 20:14:36 elk103.oldboyedu.com systemd[1]: Started Kibana.
[root@elk103.oldboyedu.com ~]# 

浏览器访问验证测试

[外链图片转存失败,建议将图片保存下来直接上传(img-4Db49M4n-1686294863472)(https://shidt2023.oss-cn-shanghai.aliyuncs.com/typora/img/image-20230427201950499.png)]

[外链图片转存失败,建议将图片保存下来直接上传(img-BmMXxT0F-1686294863473)(https://shidt2023.oss-cn-shanghai.aliyuncs.com/typora/img/image-20230427202053789.png)]

简单认识下索引

[外链图片转存失败,建议将图片保存下来直接上传(img-iFa1dVA9-1686294863473)(https://shidt2023.oss-cn-shanghai.aliyuncs.com/typora/img/image-20230427202528278.png)]

可以看到上图中的隐藏索引都是以 . 开头的,这基本是默认的系统创建的索引,不要做删除操作。我们在创建时也尽量不要以 . 开头创建索引。

原文地址:https://blog.csdn.net/weixin_51824719/article/details/131128195

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


文章浏览阅读774次,点赞24次,收藏16次。typescript项目中我们使用typings-for-css-modules-loader来替代css-loader实现css modules。1、typings-for-css-modules-loader加载器介绍 Webpack加载器,用作css-loader的替代产品,可动态生成CSS模块的TypeScript类型这句话是什么意思呢?就是编译时处理css文件...
文章浏览阅读784次。react router redux antd eslint prettier less axios_react+antd+redux+less
文章浏览阅读3.9k次,点赞5次,收藏11次。需要删除.security-7索引文件。把在第1步中的被注释的配置打开。之后就是按照提示输入密码。执行bin目录下的文件。_failed to authenticate user 'elastic' against
文章浏览阅读1.2k次,点赞23次,收藏24次。Centos 8 安装es_centos8 yum elasticsearch
文章浏览阅读3.2k次。设置完之后,数据会⾃动同步到其他节点。修改密码时,将第⼀步配置删除,然后重启。单独使⽤⼀个节点⽣成证书;执⾏设置⽤户名和密码的命令。执⾏完上⾯命令以后就可以在。⽂件,在⾥⾯添加如下内容。这个⽂件复制到其他节点下。其中⼀个节点设置密码即可。依次对每个账户设置密码。全部节点都要重启⼀遍。需要在配置⽂件中开启。个⽤户分别设置密码,⽬录下,证书⽂件名为。功能,并指定证书位置。_es设置账号和密码
文章浏览阅读1.9k次,点赞2次,收藏7次。针对多数据源写入的场景,可以借助MQ实现异步的多源写入,这种情况下各个源的写入逻辑互不干扰,不会由于单个数据源写入异常或缓慢影响其他数据源的写入,虽然整体写入的吞吐量增大了,但是由于MQ消费是异步消费,所以不适合实时业务场景。不易出现数据丢失问题,主要基于MQ消息的消费保障机制,比如ES宕机或者写入失败,还能重新消费MQ消息。针对这种情况,有数据强一致性要求的,就必须双写放到事务中来处理,而一旦用上事物,则性能下降更加明显。可能出现延时问题:MQ是异步消费模型,用户写入的数据不一定可以马上看到,造成延时。_mysql同步es
文章浏览阅读3.6w次,点赞48次,收藏44次。【程序员洲洲送书福利-第十九期】《C++ Core Guidelines解析》
文章浏览阅读1.3k次。当我们在开发Vue应用时,经常需要对表单进行校验,以确保用户输入的数据符合预期。Vue提供了一个强大的校验规则机制,通过定义rules规则,可以方便地对表单进行验证,并给出相应的错误提示。_vue ruler校验
文章浏览阅读2k次,点赞16次,收藏12次。Linux内核源码下载地址及方式_linux源码下载
文章浏览阅读1k次。这样在每天自动生成的索引skywalking_log_xxx就会使用上述模版来生成,timestamp会被设置成date类型。然后此时在–>索引管理–>kibana–>索引模式添加skywalking_log*索引时就会有时间字段了。在通过skywalking将日志收集到es后,由于skywalking收集的日志(skywalking_log索引)没有date类型的字段导致在es上再索引模式中没有时间范围的查询。skywalking收集的日志有时间戳字段timestamp,只是默认为long类型。_skywalking timestamp
文章浏览阅读937次,点赞18次,收藏21次。1.初始化git仓库,使用git int命令。2.添加文件到git仓库,两步走:2.1 使用命令,注意,可反复多次使用,添加多个文件;2.2 使用命令,完成。此笔记是我个人学习记录笔记,通过廖雪峰的笔记进行学习,用自己能理解的笔记记录下来,如果侵权,联系删。不存在任何盈利性质,单纯发布后,用于自己学习回顾。
文章浏览阅读786次,点赞8次,收藏7次。上述示例中的 origin 是远程仓库的名称,https://github.com/example/repository.git 是远程仓库的 URL,(fetch) 表示该远程仓库用于获取更新,(push) 表示该远程仓库用于推送更新。你可以选择在本地仓库创建与远程仓库分支对应的本地分支,也可以直接将本地仓库的分支推送到远程仓库的对应分支。将 替换为远程仓库的名称(例如 origin), 替换为要推送的本地分支的名称, 替换为要推送到的远程分支的名称。_git remote 智能切换仓库
文章浏览阅读1.5k次。配置eslint校验代码工具_eslint 实时校验
文章浏览阅读1.2k次,点赞28次,收藏26次。Git入门基础介绍,什么是Git,如何使用Git,以及Git的工作的基本原理
文章浏览阅读2.7k次。基于官方给出的几种不同环境不同的安装方式,本文将会选择在使用.zip文件在Windows上安装Elasticsearch在Linux或macOS上从存档文件安装ElasticsearchInstall Elasticsearch with Docker (此种方式待定)使用Docker安装Elasticsearch。_elasticsearch安装部署windows
文章浏览阅读3.3k次,点赞5次,收藏11次。【Linux驱动】内核模块编译 —— make modules 的使用(单模块编译、多模块编译)_make modules
文章浏览阅读1k次。docker启动es报错_max virtual memory areas vm.max_map_count [65530] is too low, increase to at
文章浏览阅读4.2k次,点赞2次,收藏6次。使用docker单机安装elasticsearch后再安装kibana时找不到es。_unable to retrieve version information from elasticsearch nodes. security_ex
文章浏览阅读1.1k次。日志处理对于任何现代IT系统都是关键部分,本教程专为新手设计,通过详细解释Logstash的三大核心组件,为您展示如何从零开始搭建强大的日志处理系统。您还将学习如何同步MySQL数据到Elasticsearch,并通过一个"Hello World"示例快速入门。无论您是完全的新手还是有一些基础,本教程都将引导您顺利掌握Logstash的基本操作和高级应用。_logstash mysql
文章浏览阅读1.1w次,点赞5次,收藏25次。执行这条指令之后,你的本地项目就与远程Git仓库建立了连接,你就可以开始对你的代码进行版本追踪和协作开发了。使用“git remote add origin”指令,可以轻松地将本地项目连接到远程Git仓库。git remote set-url origin 执行这条指令之后,Git就会将已经添加的名为“origin”的仓库删除。git remote add origin 其中,是你的远程Git仓库的网址。_git remote add origin