Elasticsearch集群的运维与管理

news2024/9/20 1:32:35

【1】安装启动ES 集群

(1.1)集群架构规划

OS  ES versionIpnode.nameRolecluster.namees basedir
CentOS Linux release 7.8.2003 (Core)elasticsearch-7.14.1

192.168.175.132:9200

cluster:192.168.175.132:9301

node_1

node.master=true

node.data=true

es_cluster1/data/es/es_9200
CentOS Linux release 7.8.2003 (Core)elasticsearch-7.14.1

192.168.175.129:9200

cluster:192.168.175.132:9301

node_2

node.data=true

node.master=true

es_cluster1/data/es/es_9200
CentOS Linux release 7.8.2003 (Core)elasticsearch-7.14.1

192.168.175.129:9200

cluster:192.168.175.132:9301

node_3

node.data=true

node.master=true

es_cluster1/data/es/es_9200

es从5.x开始,默认不支持root账户启动的

可以以非root账户启动,或者是在启动时候加上参数: -Des.insecure.allow.root=true

1.2)前置目录、账户、信息等准备工作

 1 elasticsearch安装-CSDN博客

  ​​​​​​​(0.10)elasticsearch分布式集群基本搭建(centos7.x + elaticsearch7.11.1)

jdk如果不配置,没有 JAVA_HOME,则自动使用 es 包中自带的 JDK,这里我就没有安装jdk

mkdir -p /data/software
cd /data/software
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.14.1-linux-x86_64.tar.gz
groupadd elk
useradd elk -g elk
tar -zxf elasticsearch-7.14.1-linux-x86_64.tar.gzmkdir -p /data/es/
mv elasticsearch-7.14.1 /data/es/es_9200
echo 'vm.max_map_count=2655350'>> /etc/sysctl.conf
echo 'vm.swappiness=1'>>/etc/sysctl.conf
cat <<eof>> /etc/security/limits.conf
elk soft nproc 65535
elk hard nproc 65535
elk soft nofile 65535
elk hard nofile 65535
elk soft stack 65535
elk hard stack 65535
elk hard memlock unlimited  #锁定内存页
elk soft memlock unlimited  #需要退出重登会话生效
eofsysctl -p# /data/es/es_9200/data # 默认数据目录,同目录的 logs 放日志mkdir -p /data/es/es_9200/{es_data,es_logs}chown -R elk:elk /data/es#参考启动命令 su -l elk -c "/data/es/es_9200/bin/elasticsearch -d -p /tmp/es_9200.pid"

(1.3)配置文件 elasticsearch.yml

cp -r /data/es/es_9200/config/elasticsearch.yml /data/es/es_9200/config/elasticsearch.yml.bak
cat <<eof > /data/es/es_9200/config/elasticsearch.yml
#-----cluster-----
cluster.name: es_cluster1 #集群名称
  #gateway.recover_after_nodes: 3 #至少恢复3个节点及以上,集群节点才可以被访问

#-----node-----
node.name: node_1  #节点名称,其他两个节点分别改成 node_2 node_3
node.master: true  #该是否可被选举为主节点
node.data: true    #该节点是否可成为数据节点
node.max_local_storage_nodes: 5  #集群最大逻辑存储节点数
transport.port: 9301 #集群内部通信端口

#-----data and log------
path.data: es_data  #生产环境建议把这2个和解压文件夹分离,避免升级丢失数据
path.logs: es_logs

#-----memory-----
bootstrap.memory_lock: true  #启动锁定内存页,这样就可以避免内存压力从而导致es的内存页被释放掉或被存到交换内存

#-----network-----
network.host: 0.0.0.0  # 网关地址,0.0.0.0为不限制
http.port: 9200

discovery.seed_hosts: ["192.168.175.132:9301", "192.168.175.147:9301", "192.168.175.148:9301"]
cluster.initial_master_nodes: ["node_1", "node_2", "node_3"]

#-----http requests-----
bootstrap.system_call_filter: false
http.cors.allow-origin: "*"
http.cors.enabled: true
http.cors.allow-headers : X-Requested-With,X-Auth-Token,Content-Type,Content-Length,Authorization
http.cors.allow-credentials: true

#-----es operation-----
  #action.destructive_requires_name: true  #删除索引时是否必须要实际索引名,避免批量删除eof

(1.4)启动es、查阅(9200)

3个机器配置文件都弄好之后,启动es

echo 'su -l elk -c "/data/es/es_9200/bin/elasticsearch -d -p /tmp/es_9200.pid"'>>/etc/rc.localsu -l elk -c "/data/es/es_9200/bin/elasticsearch -d -p /tmp/es_9200.pid"#kill -F /tmp/es_9200.pid
#查阅curl localhost:9200curl localhost:9200/_cat/health?v

(1.5)整合UI监控,es-head(9100)

参考:(0.4)ElasticSearch7整合es-head,ES配置密码

(1)下载前置依赖:https://nodejs.org/en/download/

cd /data/software
wget https://nodejs.org/dist/v14.17.6/node-v14.17.6-linux-x64.tar.xz
tar -Jxf  node-v14.17.6-linux-x64.tar.xz
echo "export PATH=${PATH}:`pwd`/bin">> /etc/profile
source /etc/profile

(2)下载es-head插件:https://github.com/mobz/elasticsearch-head

# git clone https://github.com/mobz/elasticsearch-head.gitcd /data/software
wget https://github.com/mobz/elasticsearch-head/archive/master.zip
unzip master.zip
cd elasticsearch-head-master #如果报错,则运行下面那个,如果下面那个也报错,则检查Yum源
npm installnpm install phantomjs-prebuilt@2.1.16 --ignore-scripts# run softwarenohup npm run start &echo "nohup npm run start &">>/etc/rc.local

1.5)整合UI,cerebro(参考就行,不怎么会用,9000)

cerebro官网:​​​​​​GitHub - lmenezes/cerebro

装一个就可以了,我装在了 192.168.175.132 机器上 也就是 node_1

cd /data/software

wget https://github.com/lmenezes/cerebro/releases/download/v0.9.4/cerebro-0.9.4.tgz

tar -zxf cerebro-0.9.4.tgz
cd /data/software/cerebro-0.9.4/bin && nohup ./cerebro &echo 'cd /data/software/cerebro-0.9.4/bin && nohup ./cerebro &' >>/etc/rc.local

访问:http://192.168.175.132:9000

输入任意集群节点信息

 效果:

(1.6)整合kibana(5601)

1》依然装在 192.16.175.132 上面吧

cd /data/software
wget https://artifacts.elastic.co/downloads/kibana/kibana-7.14.1-linux-x86_64.tar.gz
tar -zxf kibana-7.14.1-linux-x86_64.tar.gz

2》修改配置文件

vim /data/software/kibana-7.14.1-linux-x86_64/config/kibana.yml

server.port: 5601
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://192.168.175.132:9200", "http://192.168.175.147:9200"

其他的默认值就好了

3》启动:

su -l elk -c"nohup /data/software/kibana-7.14.1-linux-x86_64/bin/kibana >/data/software/kibana-7.14.1-linux-x86_64/kibana.log &"

echo 'su -l elk -c"nohup /data/software/kibana-7.14.1-linux-x86_64/bin/kibana >/data/software/kibana-7.14.1-linux-x86_64/kibana.log &"' >>/etc/rc.local

4》连接使用

http://192.168.175.132:5601/

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

5.C_数据结构_树

概述 树的逻辑结构&#xff1a; 树中任何节点都可以有0个或多个直接后继节点&#xff0c;但最多只有一个直接前驱节点。根节点没有直接前驱节点&#xff0c;叶节点没有直接后继节点。 相关名词&#xff1a; 空树&#xff1a;树中没有节点节点的度数&#xff1a;一个节点的…

【2025】基于微信小程序的人工智能课程学习平台的设计与实现(源码+文档+解答)

博主介绍&#xff1a; ✌我是阿龙&#xff0c;一名专注于Java技术领域的程序员&#xff0c;全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师&#xff0c;我在计算机毕业设计开发方面积累了丰富的经验。同时&#xff0c;我也是掘金、华为云、阿里云、InfoQ等平台…

优化算法(四)—蚁群算法(附MATLAB程序)

蚁群算法&#xff08;Ant Colony Optimization, ACO&#xff09;是一种模拟蚂蚁觅食行为的优化算法&#xff0c;由Marco Dorigo于1990年提出。它利用了蚂蚁在寻找食物的过程中通过释放信息素来相互影响的机制&#xff0c;以找到最优解或接近最优解。蚁群算法特别适用于解决组合…

workbench的使用

connection name 是可以任意取的 Hostname 是数据库的地址&#xff0c;本地的话就默认是127.0.0.1 port是端口 选择store in value来存储密码 点击测试连接test connection 单击就可以登录&#xff0c;如果需要编辑的话&#xff0c;右键选择edit connection 可以选择删除账…

MD5、SHA256哈希值生成验证工具-生成文件的“指纹ID”-调用了微软.Net Framework里的加密工具来生成哈希值

MD5、SHA256等哈希值生成工具通常用来验证文件的完整性&#xff0c;或者说是生成文件的“指纹ID”。 Windows系统下调用哈希工具&#xff0c;要用命令提示符cmd调用&#xff0c;生成和比较不太方便。我编写了一个小工具&#xff0c;将文件拖拽到软件界面即可生成比较。 下载地址…

Vue.js与Flask/Django后端配合详细讲解

✨博客主页&#xff1a; https://blog.csdn.net/m0_63815035?typeblog &#x1f497;《博客内容》&#xff1a;.NET、Java.测试开发、Python、Android、Go、Node、Android前端小程序等相关领域知识 &#x1f4e2;博客专栏&#xff1a; https://blog.csdn.net/m0_63815035/cat…

如何在没有备份的情况下恢复 Mac 上丢失的数据

Mac 是您数字世界的中心。它上面可能保存着照片和视频等回忆&#xff0c;以及您不再联系的朋友和家人发来的旧电子邮件。您可能花了数小时导入整个 CD 收藏。您还可能保存着重要文档&#xff0c;例如演示文稿和工作文件、家庭账户或学校或大学的作业。 如果由于某种原因您丢失…

【C++】C++11-包装器

目录 1、function包装器 2、function包装器包装成员函数指针 2.1 静态成员函数 2.2 非静态成员函数 3、bind包装器 3.1 调整参数顺序 3.2 调整参数个数 1、function包装器 包装器是用来包装可调用对象的&#xff0c;这里的可调用对象主要有函数指针、仿函数、lambda表达…

CSS渐变设计指南

CSS渐变设计指南 背景渐变文字渐变SVG渐变 背景渐变 开发界面时&#xff0c;渐变的图像会相比固定颜色的图形更加富有层次感与有趣。使用CSS可以轻松地为文本添加渐变效果。 实现CSS背景色渐变&#xff0c;可以使用CSS3的 background-image 属性结合 linear-gradient() 函数。…

智谱清影 -CogVideoX-2b-部署与使用,带你揭秘生成6s视频的极致体验!

文章目录 1 效果展示2 CogVideoX 前世今生3 CogVideoX 部署实践流程3.1 创建丹摩实例3.2 配置环境和依赖3.3 模型与配置文件3.4 运行4 遇到问题 1 效果展示 A street artist, clad in a worn-out denim jacket and a colorful bandana, stands before a vast concrete wall in …

JavaScript基础学习:预解析机制

JavaScript基础学习&#xff1a;预解析机制 前言 在 JavaScript 的世界里&#xff0c;代码的执行并不是简单地从上到下按顺序进行的。 在实际执行之前&#xff0c;JavaScript 引擎会进行一个特殊的阶段&#xff0c;称为“预解析”。 这一阶段对于理解 JavaScript 的行为至关…

2025武汉国际半导体产业与电子技术博览会

时间&#xff1a;2025年5月14日-16日地点&#xff1a;武汉中国光谷科技会展中心 展会简介&#xff1a; 为了推动中西部地区电子信息产业的跨越式发展&#xff0c;促进先进技术在中西部地区的创新应用&#xff0c;由中国光电子发展大会组委会联合沃森展览共同打造的2025 武汉国…

网络安全 DVWA通关指南 DVWA Stored Cross Site Scripting (存储型 XSS)

DVWA Stored Cross Site Scripting (存储型 XSS) 文章目录 DVWA Stored Cross Site Scripting (存储型 XSS)XSS跨站原理存储型 LowMediumHighImpossible 参考文献 WEB 安全靶场通关指南 XSS跨站原理 当应用程序发送给浏览器的页面中包含用户提交的数据&#xff0c;但没有经过适…

Yocto - 使用Yocto开发嵌入式Linux系统_01 前言

Embedded Linux Development Using Yocto Project: Leverage the power of the Yocto Project to build efficient Linux-based products, Third Edition By: Otavio Salvador, Daiane Angolini Overview of this book Yocto 项目是开发可靠的嵌入式 Linux 项目的行业标准。与…

C++ | Leetcode C++题解之第405题数字转换为十六进制数

题目&#xff1a; 题解&#xff1a; class Solution { public:string toHex(int num) {if (num 0) {return "0";}string sb;for (int i 7; i > 0; i --) {int val (num >> (4 * i)) & 0xf;if (sb.length() > 0 || val > 0) {char digit val …

内存管理(C++版)

C/C内存分布 程序经过编译生成可执行的二进制程序&#xff0c;我们可以把虚拟进程地址分为以下四个空间&#xff1a;栈&#xff0c;堆&#xff0c;常量区&#xff0c;静态区。这四个区里面存贮的也是不一样的内容。 各个区域所存储内容的说明 栈/堆栈&#xff1a;用于建立函…

C++—string类接口与用法大总结(其中涉及STL基础)

目录 1.string类的本质 2.string类的构造 1.普通构造 2.功能型构造 1.拷贝构造功能型 2.带参构造功能型 3.其余构造 3.operator[] 4.迭代器&#xff08;iterator&#xff09; 1.概念 2.改变string对象本身 3.正向迭代器&#xff08;iterator&#xff09; 4.反向迭代…

基于springboot的驾校预约管理系统的设计与实现 (含源码+sql+视频导入教程)

&#x1f449;文末查看项目功能视频演示获取源码sql脚本视频导入教程视频 1 、功能描述 基于springboot的驾校预约管理系统5拥有三种角色&#xff1a;管理员、教练、学员 管理员&#xff1a;学员管理、教练管理、车辆管理、车辆关联、维修管理等 教练&#xff1a;学员查看/毕…

通过Python代码发送量化交易信号邮件通知

量化交易利用数学模型和计算机算法来分析市场数据,并生成交易信号,本文将介绍如何使用Python编写一个简单的脚本,通过发送邮件通知量化交易信号。 开启SMTP服务 首先要在发件箱的邮件设置中,将POP3/SMPT服务开启,记录下授权密码,在本地可通过此密码登录,注意有效期和保…