ES: ES+Kibana 环境部署
ES+Kibana 部署
机器信息
10.10.8.62
10.10.8.63
10.10.8.64
版本选择:6.8.1
基础环境优化
所有节点
# 关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service# 查看selinux
getenforce # 关闭selinux
setenforce 0 # 永久关闭selinux
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config# 清除iptables 规则
iptables -F# 关闭NetworkManager
systemctl stop NetworkManager
systemctl disable NetworkManager# 备份
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup# 配置源
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo# 清除缓存
yum clean all# 安装常用命令及依赖
yum install -y net-tools lrzsz vim libaio-devel unzip \
tree libaio-devel lsof sysstat lrzsz ntpdate bash-completion bash-completion-extras # 定时时间同步
cat >>/var/spool/cron/root<<'EOF'
# ntp 时间同步
00 00 * * * /usr/sbin/ntpdate ntp.aliyun.com
EOF# 时间同步
ntpdate ntp.aliyun.com
ES 优化
所有节点
# 增大文件句柄数
cat >/etc/security/limits.conf<<'EOF'
# 所有用户文件打开数
* soft nofile 65536
* hard nofile 65536# 增大线程池的大小
* soft nproc 9000
* hard nproc 9000# 关闭内外存交换
* hard memlock unlimited
* soft memlock unlimited
EOF# 此文件控制上面的文件也要改
cat >/etc/security/limits.d/20-nproc.conf<<'EOF'
* soft nproc 9000
root soft nproc unlimited
EOF# 虚拟内存
cat >/etc/sysctl.conf<<'EOF'
# 增大虚拟内存地址空间
vm.max_map_count=262144# 系统文件最大打开数
fs.file-max = 2097152# 减少交换空间的使用 0 - 100
vm.swappiness = 1# 缓存回收速度 0-100
vm.vfs_cache_pressure = 50
EOF# 生效配置
sysctl -p
安装 jdk
所有节点
yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel -y
java -version
安装ES
下载
所有节点
https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.8.1.tar.gz
https://artifacts.elastic.co/downloads/kibana/kibana-6.8.1-linux-x86_64.tar.gz
安装
所有节点
# 解压
cd /home/zcsadmin
tar xf elasticsearch-6.8.1.tar.gz -C /usr/local/# 修改工作目录
mv /usr/local/elasticsearch-6.8.1 /usr/local/es6_9200/# 创建数据目录
mkdir -p /data/es_9200/{data,logs,tmp}# 创建es账号
groupadd es_dkecde
useradd es_dkecde -g es_dkecde# 配置环境变量
cat >/etc/profile.d/es_9200.sh<<'EOF'
export ES_HOME=/usr/local/es6_9200
export PATH=$PATH:$ES_HOME/bin
# 修改 tmp 目录
export ES_TMPDIR=/data/es_9200/tmp
EOF# 生效环境变量
source /etc/profile.d/es_9200.sh
配置
创建证书
10.10.8.62 节点
mkdir /usr/local/es6_9200/config/certs/
cd /usr/local/es6_9200/config/certs/elasticsearch-certutil ca # 一路回车
elasticsearch-certutil cert --ca elastic-stack-ca.p12 # 一路回车
拷贝至其他节点
10.10.8.62 节点
scp -r /usr/local/es6_9200/config/certs zcsadmin@10.10.8.63:/tmp/
scp -r /usr/local/es6_9200/config/certs zcsadmin@10.10.8.64:/tmp/
10.10.8.63/64 节点
mv /tmp/certs /usr/local/es6_9200/config
配置文件
所有节点 注意修改 node.name
# 编写配置文件
cat >/usr/local/es6_9200/config/elasticsearch.yml<<'EOF'
cluster.name: test_es
# 修改每个节点不同的名字
node.name: es_62
node.master: true
node.data: true
path.data: /data/es_9200/data
path.logs: /data/es_9200/logs
network.host: 0.0.0.0
http.port: 9200
transport.tcp.port: 9300
discovery.zen.ping.unicast.hosts: ["10.10.8.62:9300", "10.10.8.63:9300", "10.10.8.64:9300"]
indices.fielddata.cache.size: 2%
# 最小主节点数
discovery.zen.minimum_master_nodes: 2# 系统必须设置 unlimited
bootstrap.memory_lock: true# 开启集群之间加密
xpack.security.enabled: true
xpack.monitoring.enabled: true
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: /usr/local/es6_9200/config/certs/elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: /usr/local/es6_9200/config/certs/elastic-certificates.p12
EOF
所有节点
# 修改测试机最大使用内存 //三个节点都进行操作
# 生产环境设置可用内存的 50% 但最好不超过 32G
sed -i 's#-Xms1g#-Xms512M#g' /usr/local/es6_9200/config/jvm.options
sed -i 's#-Xmx1g#-Xmx512M#g' /usr/local/es6_9200/config/jvm.options
启动
systemd 管理
所有节点
# 使用 systemd 管理
cat >/usr/lib/systemd/system/es_9200.service<<'EOF'
[Unit]
Description=Elasticsearch 9200
Wants=network-online.target
After=network-online.target[Service]
User=es_dkecde
Group=es_dkecde
LimitNOFILE=100000
LimitNPROC=100000
Type=simple
ExecStart=/usr/local/es6_9200/bin/elasticsearch
Restart=on-failure
RestartSec=10
StartLimitInterval=10
StartLimitBurst=3 # 设置重启次数
LimitMEMLOCK=infinity
PrivateTmp=true[Install]
WantedBy=multi-user.target
EOF
启动
所有节点
# 授权工作及数据目录
chown -R es_dkecde:es_dkecde /data/es_9200/
chown -R es_dkecde:es_dkecde /usr/local/es6_9200# 重载 systemd
systemctl daemon-reload# 启动
systemctl start es_9200.service# 状态
systemctl status es_9200.service# 开机自启
systemctl enable es_9200.service
配置密码
所有节点
elasticsearch-setup-passwords interactive # 为方便记录设置为相同密码 mypassword
验证
# 查看实例状态
curl -u elastic:'mypassword' -XGET "http://127.0.0.1:9200"# 查看集群状态
curl -u elastic:'mypassword' -XGET "http://127.0.0.1:9200/_cluster/health"
安装 kibana
安装
10.10.8.62 节点
cd /home/zcsadmin
tar xf kibana-6.8.1-linux-x86_64.tar.gz -C /usr/local/mv /usr/local/kibana-6.8.1-linux-x86_64 /usr/local/kibana6
配置
配置证书
10.10.8.62 节点
mkdir /usr/local/kibana6/config/certs
cd /usr/local/kibana6/config/certs# 编写证书生成文件
cat >instance.yml<<'EOF'
instances:- name: 'kibana6'dns: [ '10.10.8.62' ]
EOF# 生成CA证书
elasticsearch-certutil cert ca --pem --in instance.yml --out ./certs.zip# 解压
unzip certs.zip
配置文件
10.10.8.62 节点
cat >/usr/local/kibana6/config/kibana.yml<<'EOF'
server.port: 5601
server.host: "0.0.0.0"
# 集群地址列表
elasticsearch.hosts: ["http://10.10.8.62:9200", "http://10.10.8.63:9200", "http://10.10.8.64:9200"]
elasticsearch.username: "elastic"
elasticsearch.password: "mypassword"
logging.dest: /var/log/kibana.log
i18n.locale: "zh-CN"# 客户端开启 https
server.ssl.enabled: true
server.ssl.certificate: /usr/local/kibana6/config/certs/kibana6/kibana6.crt
server.ssl.key: /usr/local/kibana6/config/certs/kibana6/kibana6.key
elasticsearch.ssl.certificateAuthorities: /usr/local/kibana6/config/certs/ca/ca.crt
elasticsearch.ssl.verificationMode: certificate
EOF
授权
10.10.8.62 节点
touch /var/log/kibana.log
chown -R es_dkecde:es_dkecde /var/log/kibana.log
chown -R es_dkecde:es_dkecde /usr/local/kibana6
启动
systemd 管理
10.10.8.62 节点
# 使用 systemd 管理
cat >/usr/lib/systemd/system/kibana.service<<'EOF'
[Unit]
Description=kibana
Wants=network-online.target
After=network-online.target[Service]
User=es_dkecde
Group=es_dkecde
LimitNOFILE=100000
LimitNPROC=100000
Type=simple
ExecStart=/usr/local/kibana6/bin/kibana
Restart=on-failure
RestartSec=10
StartLimitInterval=10
# 设置重启次数
StartLimitBurst=3
LimitMEMLOCK=infinity
PrivateTmp=true[Install]
WantedBy=multi-user.target
EOF
启动
10.10.8.62 节点
systemctl daemon-reload
systemctl start kibana.service
systemctl enable kibana.service
systemctl status kibana.service
相关文章:
ES: ES+Kibana 环境部署
ESKibana 部署 机器信息 10.10.8.62 10.10.8.63 10.10.8.64版本选择:6.8.1 基础环境优化 所有节点 # 关闭防火墙 systemctl stop firewalld.service systemctl disable firewalld.service# 查看selinux getenforce # 关闭selinux setenforce 0 # 永久关闭se…...
Find My产品越来越得到市场认可,伦茨科技ST17H6x芯片赋能厂家
苹果发布AirTag发布以来,大家都更加注重物品的防丢,苹果的 Find My 就可以查找 iPhone、Mac、AirPods、Apple Watch,如今的Find My已经不单单可以查找苹果的设备,随着第三方设备的加入,将丰富Find My Network的版图。产…...
Linux系统——Haproxy高性能负载均衡软件
目录 一、Haproxy介绍 1.Haproxy定义 2.Haproxy主要特性 二、安装Haproxy 1.yum安装 2.第三方rpm包安装 3.编译安装 3.1解决Lua环境 3.2编译安装Haproxy 三、配置文件详解 1.状态页 2.日志管理 2.1定义日志到其他主机站点 3.指定进程线程个数 4.cpu亲缘性 5.多进…...
Python办公自动化之PDF(二)
Python操作PDF二 1、PyMuPDF简介2、 1、PyMuPDF简介 PyMuPDF(也称Fitz)开源,提供了一整套用于处理PDF文件的综合工具。使用PyMuPDF,用户可以高效地执行打开PDF、提取文本、图像和表格、操作旋转和裁剪等页面属性、创建新PDF文档以…...
登录失败重试次数安全设计方案
1、登录失败重试次数设计方案 1、无论是账号还是密码错误,统一提示:用户名或密码错误,账号剩余登录次数N! 2、同一账号连续登录失败5次,锁定该账号5分钟,5分钟后可以再重试登录。 开发设计 keyÿ…...
Django——模板
Django——模板 Django 提供一种动态生成 HTML 页面 —— 模板 1、模板语言 模板语言(DTL): 变量 , 注释 , 标签 , 过滤器 , 模板继承 1、变量 <body> <!-- 这个是前端中的注释 --> {# 这种是Django中模板语言的…...
角蜥优化算法 (Horned Lizard Optimization Algorithm ,HLOA)求解无人机路径优化
一、无人机路径规划模型介绍 无人机三维路径规划是指在三维空间中为无人机规划一条合理的飞行路径,使其能够安全、高效地完成任务。路径规划是无人机自主飞行的关键技术之一,它可以通过算法和模型来确定无人机的航迹,以避开障碍物、优化飞行时间和节省能量消耗。 二、算法介…...
Windows下 OracleXE_21 数据库的下载与安装
Oracle 数据库的下载与安装 数据库安装包下载数据库安装访问数据库进行测试Navicat连接数据库 1. 数据库安装包的下载 1.1 下载地址 Oracle Database Express Edition | Oracle 中国 1.2 点击“下载 Oracle Database XE”按钮,进去到下载页面(选择对…...
新手如何快速上手学习单片机?
读者朋友能容我,不使博文负真心 新开专栏,期待与诸君共享精彩 个人主页:17_Kevin-CSDN博客 专栏:《单片机》 学习单片机是一个有趣且有挑战性的过程。单片机是一种微控制器,广泛应用于各种电子设备和嵌入式系统中。在这…...
grpc的验证器
简介 在使用grpc库时候 ,很多时候我们需要对反序列化的参数进行校验,代码中有很多参数校验的代码,如果手动实现,会非常繁琐,对于grpc来说,在定义proto的时候使用直接定义参数的限制规则是一种更合理、更优雅的方式,插…...
无法找到concrt140.dll怎么办?concrt140.dll丢失的5种解决方法
在我们使用计算机的时候,偶尔会遭遇一些技术问题,其中一个比较常见的问题就是出现了"丢失concrt140.dll文件"的提示。当我们的电脑告诉我们缺少了concrt140.dll文件时,常常是因为某些程序无法找到这个文件而导致了程序的运行异常。…...
Elasticsearch 分享
一、Elasticsearch 基础介绍 ElasticSearch 是分布式实时搜索、实时分析、实时存储引擎,简称(ES), 成立于2012年,是一家来自荷兰的、开源的大数据搜索、分析服务提供商,为企业提供实时搜索、数据分析服务,…...
cpu masks的初始化
在内核中,有几个位图变量是用作标识cpu数量和状态的,它们分别是: 变量名称用途循环所使用的宏cpu_possible_mask系统中有多少个可以运行的cpu核for_each_possible_cpucpu_present_mask系统中有多少个可处于运行状态的cpu核for_each_present_…...
【软件测试面试】银行项目测试面试题+答案(二)
目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 面试题࿱…...
视频极速切割无损工具免费版,亲测好用!
问题描述 最近想兼职做自媒体,最初想法是想把视频资源下载到本地,本地做一些剪辑和图文配音发布到自媒体app上,但是要把视频(腾讯视频qlv转mp4看我上一篇文章,也是免费版)切割成一小段的片段用手机剪太费劲了,网上好多…...
LightDB ecpg 支持 exec sql execute ... end-exec【24.1】【oracle 兼容】
LightDB 从24.1 版本开始支持 oracle pro*c 中执行匿名块的语法(之前可以通过do 语句执行匿名块): EXEC SQL EXECUTEanonymous block END-EXEC;因为匿名块不是SQL标准的一部分,所以此用法也不存在于SQL标准中。 示例 #include …...
菜品检测,基于YOLOV8
菜品检测,基于YOLOV8NANO,训练得到模型PT,然后转换成ONNX,OPENCV的DNN调用,支持C/PYTHON/ANDROID开发菜品检测,基于YOLOV8,能检测五种菜品,水豆腐、豆腐干、空心菜、豆芽菜、茄子...
前端面试练习24.3.5
webpack相关 项目使用webpack流程 进入一个初始化好的vue项目下载安装webpack相关依赖包/插件 npm install --save-dev webpack webpack-cli webpack-dev-server安装一些相关的loader,比如vue-loader,babel-loader,css-loader等创建webpack.config.js文…...
vim 编辑器
vim 编辑器是什么用途? vim 是一种强大而灵活的文本编辑器,广泛用于开发和系统管理任务。它可以在命令行界面中使用,并提供许多高级编辑功能和快捷键,使用户能够高效地编辑文本文件。 vim 编辑器适用于哪些语言? vim 编…...
docker安装MongoDB脚本
使用docker安装MongoDB只需要按以下步骤执行即可: 一、docker 运行 注意修改默认端口,防止被攻击: docker run -d --name mongo --restartalways -p 25066:28317 -v /usr/local/mongDb/configdb:/data/configdb -v /usr/local/mongDb/db:…...
脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)
一、数据处理与分析实战 (一)实时滤波与参数调整 基础滤波操作 60Hz 工频滤波:勾选界面右侧 “60Hz” 复选框,可有效抑制电网干扰(适用于北美地区,欧洲用户可调整为 50Hz)。 平滑处理&…...
在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能
下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能,包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...
【入坑系列】TiDB 强制索引在不同库下不生效问题
文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...
理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端
🌟 什么是 MCP? 模型控制协议 (MCP) 是一种创新的协议,旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议,它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...
定时器任务——若依源码分析
分析util包下面的工具类schedule utils: ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类,封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz,先构建任务的 JobD…...
视频字幕质量评估的大规模细粒度基准
大家读完觉得有帮助记得关注和点赞!!! 摘要 视频字幕在文本到视频生成任务中起着至关重要的作用,因为它们的质量直接影响所生成视频的语义连贯性和视觉保真度。尽管大型视觉-语言模型(VLMs)在字幕生成方面…...
Spring数据访问模块设计
前面我们已经完成了IoC和web模块的设计,聪明的码友立马就知道了,该到数据访问模块了,要不就这俩玩个6啊,查库势在必行,至此,它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据(数据库、No…...
MySQL用户和授权
开放MySQL白名单 可以通过iptables-save命令确认对应客户端ip是否可以访问MySQL服务: test: # iptables-save | grep 3306 -A mp_srv_whitelist -s 172.16.14.102/32 -p tcp -m tcp --dport 3306 -j ACCEPT -A mp_srv_whitelist -s 172.16.4.16/32 -p tcp -m tcp -…...
重启Eureka集群中的节点,对已经注册的服务有什么影响
先看答案,如果正确地操作,重启Eureka集群中的节点,对已经注册的服务影响非常小,甚至可以做到无感知。 但如果操作不当,可能会引发短暂的服务发现问题。 下面我们从Eureka的核心工作原理来详细分析这个问题。 Eureka的…...
招商蛇口 | 执笔CID,启幕低密生活新境
作为中国城市生长的力量,招商蛇口以“美好生活承载者”为使命,深耕全球111座城市,以央企担当匠造时代理想人居。从深圳湾的开拓基因到西安高新CID的战略落子,招商蛇口始终与城市发展同频共振,以建筑诠释对土地与生活的…...
