ELK介绍以及搭建

基础环境

hostnamectl set-hostname els01
hostnamectl set-hostname els02
hostnamectl set-hostname els03
hostnamectl set-hostname kbased -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
systemctl stop firewalld & systemctl disable firewalld
# 安装jdk
cd  /usr/local
tar -xvf jdk1.8.0_231.tar.gzvi /etc/profile
export JAVA_HOME=/usr/local/jdk1.8.0_231
export PATH=$JAVA_HOME/bin:$PATHsource /etc/profile

elasticsearch

安装

# 创建用户与组
groupadd -g 500 elsmkdir -p /opt/app/els
useradd -d /opt/app/els -u 2000 -g els elsecho "els#123" | passwd --stdin elscp -r etc/skel/.bash* /opt/app/elscd /opt/app
chown -R els:els /opt/app/els
chmod -R 755 /opt/app/elssu - els
tar -xvf elasticsearch-7.6.2-linux-x86_64.tar.gz -C /opt/app/els
chown -R els:els /opt/app/els

更改用户可创建的线程数

vi /etc/security/limits.d/20-nproc.confels soft nproc 4096

在这里插入图片描述否则报错:max number of threads [1024] for user [elsearch] likely too low, increase to at least [4096]

更改打开文件数与线程数

vi /etc/security/limits.confels        soft    	nofile          65536
els        hard    	nofile          131072
els        soft    	nproc          4096
els        hard    	nproc          4096

在这里插入图片描述
否则报错:node validation exception bootstrap checks failed

更改系统控制文件

Elasticsearch 默认使用 mmapfs 目录存储索引,而 Linux 默认对 mmap 计数限制可能太低,会导致内存异常。系统控制文件是管理系统中的各种资源控制的配置文件,ES 需要开辟一个 65536 字节以上空间的虚拟内存,但 Linux 又不允许任何用户直接开辟虚拟内存,所以通过如下方式修改:

vi /etc/sysctl.confvm.max_map_count=655360sysctl -p

在这里插入图片描述
否则报错:max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]

环境变量

vi  /opt/app/els/.bash_profileexport JAVA_HOME=/usr/local/jdk1.8.0_231
export ES_HOME=$HOME/elasticsearch-7.6.2
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$ES_HOME/lib
export PATH=$HOME/bin:$JAVA_HOME/bin:$ES_HOME/bin:$PATHvi  /opt/app/elsearch/.bashrcES_HOME=/opt/app/elsearch/elasticsearch-7.6.2
PATH=$PATH:$ES_HOME/binsource  ~/.bash_profile & source  ~/.bashrc
su - els
mkdir -p /opt/app/elsearch/data /opt/app/elsearch/logsvi elasticsearch-7.6.2/config/elasticsearch.yml#集群名称
cluster.name: DR-ELK
#默认情况下,Elasticsearch 将使用随机生成的 UUID 的前七个字符作为节点 ID,该节点名称一经生成后,即使重启服务亦不会变更
node.name: els01path.data: /opt/app/elsearch/data
path.logs: /opt/app/elsearch/logs#默认情况下,此 elasticsearch 服务绑定到回环地址127.0.0.1。修改为节点ip在浏览器中访问不成功
network.host: 0.0.0.0#集群中拥有被选举成 Master 节点资格的地址列表
discovery.seed_hosts: ["ip1:9400","ip2:9400","ip3:9400"]#在一个新集群初始化时,符合 Master 节点资格的节点集
cluster.initial_master_nodes: ["ip1:9400","ip2:9400","ip3:9400"]#为最多主节点个数
discovery.zen.minimum_master_nodes: 1
#为超时后生效节点数
gateway.recover_after_nodes: 1
#没有这两项配置7.6.2版本的kibana将无法调用ES# 文本最后追加
http.cors.enabled: true
http.cors.allow-origin: "*"

注释掉判断是否存在 JAVA_HOME变量的流程分支,直接使用操作系统的JDK

cd /opt/app/elsearch/elasticsearch-7.6.2/bin/
cp elasticsearch-env elasticsearch-env.bakvi /opt/app/elsearch/elasticsearch-7.6.2/bin/elasticsearch-env

在这里插入图片描述

su - els
cd /opt/app/elsearch/elasticsearch-7.6.2/bin
#以守护进程模式运行
./elasticsearch -d
#停止
ps -ef | grep Elasticsearch | grep -v grep | awk '{print $2}' | xargs kill -SIGTERM
#查看状态
cat /opt/app/elsearch/logs/集群名称.log
curl -X GET http://ip:9200

在这里插入图片描述

kibana

安装

groupadd -g 500 kbn
mkdir -p /opt/app/kbn
useradd -d /opt/app/kibana -u 2000 -g kba kba/bin/echo "kba#123" | passwd --stdin kbacp -r /etc/skel/.bash* /opt/app/kbachown -R kbn:kbn /opt/app/kba
chmod -R 755 /opt/app/kbasu - kba
tar -xvf kibana-7.6.2-linux-x86_64.tar.gz -C /opt/app/kba
chown -R kba:kba /opt/app/kibana

环境变量

vi  /opt/app/kba/.bashrc
# 注意jdk相关变量
export KIBANA_HOME=/opt/app/kibana/kibana-7.6.2-linux-x86_64
export PATH=$PATH:$KIBANA_HOME/binsource  ~/.bashrc

在这里插入图片描述
在这里插入图片描述

su - kba
vi kibana-7.6.2-linux-x86_64/config/kibana.yml
# 端口
server.port: 5601
# 服务主机名
server.host: "0.0.0.0"
# 指定ES服务,可以指定多个
elasticsearch.hosts: ["http://ip1:9200","http://ip2:9200","http://ip3:9200"]
# 进程文件
pid.file: /opt/app/kibana/kibana.pid
# 日志路径
logging.dest: /opt/app/kibana/logs/kibana.log
# 汉化
i18n.locale: "zh-CN"
mkdir -p /opt/app/kibana/logs/su - kba
cd  /opt/app/kibana/kibana-7.6.2-linux-x86_64/bin
#后台运行
./kibana &
#停止
ps -ef | grep kibana | grep -v grep | awk '{print $2}' | xargs kill -SIGTERM
#查看
cat /opt/app/kibana/logs/kibana.logs
#浏览器访问http://ip:5601/

在这里插入图片描述

es核心概念

节点分类

节点是一个独立的服务器实例或进程,用于存储数据并参与集群的索引和搜索功能。每个节点都有自己的名称、角色和职责。

master node:负责管理集群的整体状态和执行一些关键的集群级别的操作。主节点负责将分片存储到数据节点、维护集群的状态信息、决定哪些节点是集群的一部分等。本身不负责存储实际的数据。

data node:数据节点负责存储实际的数据。管理索引的分片,并处理与数据相关的操作,如搜索、索引和删除。数据节点存储索引的一部分,并通过将数据分布在多个节点上来实现水平扩展。

coordinating node:协调节点是可选的节点类型,主要用于处理搜索请求的协调工作。不存储实际的数据,而是负责接收来自客户端的搜索请求,并将这些请求转发给数据节点。协调节点有助于分散搜索请求的负载,特别是在大规模集群中。

ingest node:预处理节点,负责数据的预处理,如数据的转换和附加处理。这允许在将数据索引到es之前对数据进行修改或过滤。该节点通常用于日志处理和数据管道中。

machine learning node:用于执行与机器学习相关的任务,如异常检测或趋势分析。

remote-eligible node:远程合格节点,拥有远程集群客户端角色,可以充当远程客户端。默认情况下,集群内任意节点都可以作为跨集群的客户端连接到远程集群。

transform节点:用于执行数据转换操作,例如从一个索引中提取数据并将其转换为另一个索引,以便在数据仓库和分析方面进行使用。

index

索引是一个逻辑存储,类似关系型数据库中的表,用来存储管理相关数据,数据以JSON格式存储在索引的基本单元-文档Document。

shard

一条索引的数据往往会被分为多个分片进行存储,每个分片是一个独立的存储单元,底层为一个Lucene索引,可以在集群中的不同节点上分布,以提供高可用性和负载均衡。

分片的目的

允许索引水平分割和分布存储,实现数据和负载的分布。

分片的数量

在索引创建后不能被更改。通常,每个主分片的大小应该适中,以便在集群中的各个节点上均匀分布负载,也有利于数据的快速查询。

主分片

每个索引都可以被分为一个或多个主分片。主分片存储索引的一部分数据,并负责处理搜索和查询操作。主分片的数量设置在索引创建时便被定义,无法进行动态修改。

Replica

副本是指索引的一个复制,每个索引可以被配置为具有零个或多个副本。副本可以提高集群的可用性和容错性,以及提高搜索性能。

每个索引被划分为一个或多个主分片。主分片负责存储索引的一部分数据,以及处理搜索和写入请求。为了提高可用性和容错性,每个主分片可以有零个或多个副本。

每个索引的副本数量是可以配置的。在创建索引时,可以指定副本的数量。副本数量的选择取决于对可用性和性能的需求。

maping

映射是索引中文档的规范,定义了结构和字段属性,描述了文档中的每个字段的数据类型、分词器、是否索引等信息。类似于关系型数据库中的Schema。

示例

在这里插入图片描述

index的名称为example_index

title是一个文本字段,使用标准分词器
author是一个关键字字段,通常用于精确匹配
publish_date是一个日期字段,用于存储日期信息
views是一个整数字段,用于存储整数值
tags是一个关键字字段,用于存储标签信息

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Unity数据持久化之PlayerPrefs

这里写目录标题 PlayerPrefs概述基本方法PlayerPrefs存储位置实践小项目反射知识补充数据管理类的创建反射存储数据----常用成员反射存储数据----List成员反射存储数据----Dictionary成员反射存储数据----自定义类成员反射读取数据----常用成员反射读取数据----List成员反射读取…

Sora-OpenAI 的 Text-to-Video 模型:制作逼真的 60s 视频片段

OpenAI 推出的人工智能功能曾经只存在于科幻小说中。 2022年,Openai 发布了 ChatGPT,展示了先进的语言模型如何实现自然对话。 随后,DALL-E 问世,它利用文字提示生成令人惊叹的合成图像。 现在,他们又推出了 Text-t…

选择适合你的编程语言

引言 在当今瞬息万变的技术领域中,选择一门合适的编程语言对于个人职业发展和技术成长至关重要。每种语言都拥有独特的设计哲学、应用场景和市场需求,因此,在决定投入时间和精力去学习哪种编程语言时,我们需要综合分析多个因素&a…

在 Jupyter Notebook 中查看所使用的 Python 版本和 Python 解释器路径

🍉 CSDN 叶庭云:https://yetingyun.blog.csdn.net/ 我们在做 Python 开发时,有时在我们的服务器上可能安装了多个 Python 版本。 使用 conda info --envs 可以列出所有的 conda 环境。当在 Linux 服务器上使用 which python 命令时&#xff0…

绿盾限制终端网络访问权限会恢复后,别的网站访问正常就是无法访问钉钉网站和下载东西

环境: Win10 专业版 钉钉7.5.5 绿盾7.0 问题描述: 绿盾限制终端网络访问权限会恢复后,别的网站访问正常就是无法访问钉钉网站和下载东西 解决方案: 排查方法 1.重置浏览器或者更换浏览器测试(未解决&#xff09…

游戏行业洞察:分布式开源爬虫项目在数据采集与分析中的应用案例介绍

前言 我在领导一个为游戏行业巨头提供数据采集服务的项目中,我们面临着实时数据需求和大规模数据处理的挑战。我们构建了一个基于开源分布式爬虫技术的自动化平台,实现了高效、准确的数据采集。通过自然语言处理技术,我们确保了数据的质量和…

Flutter插件开发指南02: 事件订阅 EventChannel

Flutter插件开发指南02: 事件订阅 EventChannel 视频 https://www.bilibili.com/video/BV1zj411d7k4/ 前言 上一节我们讲了 Channel 通道,但是如果你是卫星定位业务,原生端主动推消息给 Flutter 这时候就要用到 EventChannel 通道了。 本节会写一个 1~…

Maven setting.xml 配置

目的:可以把我们书写的jar包发布到maven私有仓库,简称私仓 1. 打开云效 2.点击 非生产库-snapshot mave release仓库与snapshot仓库区别? 在软件开发中,"Maven release 仓库"和"Maven snapshot 仓库"是两种…

[极客大挑战2019]upload

该题考点&#xff1a;后缀黑名单文件内容过滤php木马的几种书写方法 phtml可以解析php代码&#xff1b;<script language"php">eval($_POST[cmd]);</script> 犯蠢的点儿&#xff1a;利用html、php空格和php.不解析<script language"php"&…

AI文生图网站测评

主要测评文章配图生成效果、绘制logo等效果 测评关键点&#xff1a;生成效果、网站易用度、是否免费 测评prompt&#xff1a;请生成一个文章内容配图&#xff0c;图片比例是3&#xff1a;2&#xff0c;文章主旨是AI既是机遇&#xff0c;也存在挑战和风险&#xff0c;要求图片…

PyTorch概述(二)---MNIST

NIST Special Database3 具体指的是一个更大的特殊数据库3&#xff1b;该数据库的内容为手写数字黑白图片&#xff1b;该数据库由美国人口普查局的雇员手写 NIST Special Database1 特殊数据库1&#xff1b;该数据库的内容为手写数字黑白图片&#xff1b;该数据库的图片由高…

Jetson Xavier NX 与笔记本网线连接 ,网络共享,ssh连接到vscode

Jetson Xavier NX 与笔记本网线连接 &#xff0c;网络共享&#xff0c;ssh连接到vscode Jetson Xavier NX桌面版需要连接显示屏、鼠标和键盘&#xff0c;操作起来并不方便&#xff0c;因此常常需要ssh远程连接到本地笔记本电脑&#xff0c;这里介绍一种连接方式&#xff0c;通过…

linux安装sqoop

目录 下载配置 下载 本地下载好上传&#xff0c;解压&#xff0c;重命名&#xff0c;注意路径 tar -zxvf /opt/sqoop/sqoop-1.4.6.tar.gz -C /opt/ mv /opt/sqoop-1.4.6.bin__hadoop-2.0.4-alpha /opt/sqoop配置 环境变量 echo export SQOOP_HOME/opt/sqoop/ >> /etc…

Ubuntu18.04有线连接后,无法设置ip地址以及显示网口设置

前提&#xff1a;首先测试过网线是完全没问题的 桌面端找不到设置网口 终端输入&#xff1a; ifconfig 没有找到网口设置和对应IP 然后查询网口驱动是否正常安装&#xff0c;输入&#xff1a; lspci | grep Ethernet 有输出说明网口驱动正常安装 然后查询电脑的ip地址&am…

图像分割标签噪声问题优化

文章目录 前言一、损失函数方面(1)t-loss(2)边缘平滑前言 在制作数据集时,标注数据时难免会存在噪声,如不同类别交界处存在模糊导致定位异常问题,训练过程梯度不稳定,网络对这部分数据的分类置信度较低(如其它中心区域的类别置信度都在0.9左右,而类别交界处的置信度…

在openEuler中通过KVM可视化安装华为FusionCompute的CNA主机

一、环境说明 在Windows物理主机上通过VMware WorkStation创建一个虚拟机&#xff08;4U4C、16GB内存&#xff0c;400GB磁盘&#xff0c;NAT网络连接&#xff09;&#xff0c;在虚拟机中安装openEuler 22.03 LTS系统&#xff0c;并将该虚拟机作为部署 FusionCompute的服务器&a…

ArcgisForJS如何实现添加含图片样式的点要素?

文章目录 0.引言1.加载底图2.获取点要素的坐标3.添加含图片样式的几何要素4.完整实现 0.引言 ArcGIS API for JavaScript 是一个用于在Web和移动应用程序中创建交互式地图和地理空间分析应用的库。本文在ArcGIS For JavaScript中使用Graphic对象来创建包含图片样式的点要素。 …

西门子200SMART SB AE01的正确用法

西门子200SMART SB AE01&#xff0c;就是1路模拟量输入的SB板。信号板直接安装在 SR/ST CPU 本体正面&#xff0c;无需占用电控柜空间&#xff0c;安装、拆卸方便快捷。有些小型的系统如果只有1路模拟量输入&#xff0c;或者模块配置中恰好缺少1路模拟量输入&#xff0c;就可以…

Clickhouse系列之连接工具连接、数据类型和数据库

基本操作 一、使用连接工具连接二、数据类型1、数字类型IntFloatDecimal 2、字符串类型StringFixedStringUUID 3、时间类型DateTimeDateTime64Date 4、复合类型ArrayEnum 5、特殊类型Nullable 三、数据库 一、使用连接工具连接 上一篇介绍了clickhouse的命令行登录&#xff0c…

紫光同创初使用

芯片PGC2KG-6LPG144 1、安装好软件接&#xff0c;加载license,有两个&#xff0c;与电脑MAC地址绑定的 2、正常使用后&#xff0c;新建个工程&#xff0c;配置管脚Tools→UCE 3、程序中有些信号被软件认为是时钟信号&#xff0c;会报错&#xff08;时钟输入I0约束在非专用时钟…