【服务部署】ELFK架构篇之Elasticsearch

文章目录

一、单点部署

1.环境准备

bash 复制代码
系统环境:Ubuntu Server 22.04
服务版本:Elasticsearch 7.17.29

服务下载:
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.17.29-amd64.deb

2.软件包安装

shell 复制代码
[root@elfk01 ~]# dpkg -i elasticsearch-7.17.29-amd64.deb 

3.修改配置文件

shell 复制代码
[root@elfk01 ~]# egrep -v "^.*#|^$" /etc/elasticsearch/elasticsearch.yml 
cluster.name: elfk-single
network.host: 0.0.0.0
discovery.type: single-node

4.启动服务

shell 复制代码
[root@elkf01 ~]# systemctl daemon-reload 
[root@elkf01 ~]# systemctl enable --now elasticsearch.service 
[root@elkf01 ~]# ss -ntl | egrep "92|300"
LISTEN 0      4096               *:9200            *:*          
LISTEN 0      4096               *:9300            *:*          

5.访问测试

shell 复制代码
[root@elfk01 ~]# curl 10.0.0.91:9200
{
  "name" : "elfk01",
  "cluster_name" : "elfk-single",
  "cluster_uuid" : "qrS21bRfSfGdqEIjcSTj3A",
  "version" : {
    "number" : "7.17.29",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "580aff1a0064ce4c93293aaab6fcc55e22c10d1c",
    "build_date" : "2025-06-19T01:37:57.847711500Z",
    "build_snapshot" : false,
    "lucene_version" : "8.11.3",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}
[root@elfk01 ~]# curl 10.0.0.91:9200/_cat/nodes
10.0.0.91 31 97 14 0.39 0.17 0.06 cdfhilmrstw * elfk01

二、ES集群部署实战

1.停止ES单点

bash 复制代码
[root@elfk01 ~]# systemctl stop elasticsearch.service 
[root@elfk01 ~]# ss -ntl | egrep "92|300"

2.修改配置文件

bash 复制代码
[root@elfk01 ~]# egrep -v "^#|^$" /etc/elasticsearch/elasticsearch.yml 
cluster.name: elfk-cluster
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 0.0.0.0
discovery.seed_hosts: ["10.0.0.91", "10.0.0.92","10.0.0.93"]
cluster.initial_master_nodes: ["10.0.0.91", "10.0.0.92","10.0.0.93"]
#discovery.type: single-node  把单点模式注释掉

3.清理旧数据

bash 复制代码
[root@elfk01 ~]# rm -rf /var/{log,lib}/elasticsearch/*
[root@elfk01 ~]# ll /var/{log,lib}/elasticsearch/
/var/lib/elasticsearch/:
total 8
drwxr-s---  2 elasticsearch elasticsearch 4096 Oct 29 11:36 ./
drwxr-xr-x 61 root          root          4096 Oct 29 10:08 ../
​
/var/log/elasticsearch/:
total 8
drwxr-s---  2 elasticsearch elasticsearch 4096 Oct 29 11:36 ./
drwxrwxr-x 10 root          syslog        4096 Oct 29 10:08 ../

4.分发软件包

bash 复制代码
[root@elfk01 ~]# scp elasticsearch-7.17.29-amd64.deb 10.0.0.92:~
[root@elfk01 ~]# scp elasticsearch-7.17.29-amd64.deb 10.0.0.93:~

5.多节点安装ES服务

bash 复制代码
[root@elfk02 ~]# dpkg -i elasticsearch-7.17.29-amd64.deb 
[root@elfk03 ~]# dpkg -i elasticsearch-7.17.29-amd64.deb 

6.同步配置文件

bash 复制代码
[root@elfk01 ~]# scp /etc/elasticsearch/elasticsearch.yml 10.0.0.92:/etc/elasticsearch/
[root@elfk01 ~]# scp /etc/elasticsearch/elasticsearch.yml 10.0.0.93:/etc/elasticsearch/

7.多节点需同时启动ES服务

bash 复制代码
[root@elfk01 ~]# systemctl enable --now elasticsearch.service
[root@elfk01 ~]# ss -ntl | egrep "92|300"
LISTEN 0      4096               *:9200            *:*          
LISTEN 0      4096               *:9300            *:*          

[root@elfk02 ~]# systemctl enable --now elasticsearch.service 
[root@elfk02 ~]# ss -ntl | egrep "92|300"
LISTEN 0      4096               *:9300            *:*          
LISTEN 0      4096               *:9200            *:*          
​
[root@elfk03 ~]# systemctl enable --now elasticsearch.service 
[root@elfk03 ~]# ss -ntl | egrep "92|300"
LISTEN 0      4096               *:9300            *:*          
LISTEN 0      4096               *:9200            *:*          

8.验证集群状态

bash 复制代码
[root@elfk01 ~]# curl 10.0.0.91:9200/_cat/nodes
10.0.0.92 21 97 12 0.33 0.31 0.14 cdfhilmrstw - elfk02
10.0.0.91 29 97 16 0.31 0.17 0.06 cdfhilmrstw * elfk01
10.0.0.93 23 97 52 0.89 0.34 0.12 cdfhilmrstw - elfk03

[root@elfk01 ~]# curl 10.0.0.92:9200/_cat/nodes
10.0.0.91 29 97  1 0.29 0.17 0.06 cdfhilmrstw * elfk01
10.0.0.93 23 97 50 0.90 0.36 0.13 cdfhilmrstw - elfk03
10.0.0.92 22 97  1 0.30 0.31 0.14 cdfhilmrstw - elfk02

[root@elfk01 ~]# curl 10.0.0.93:9200/_cat/nodes
10.0.0.93 23 97 55 0.90 0.36 0.13 cdfhilmrstw - elfk03
10.0.0.92 22 97  4 0.30 0.31 0.14 cdfhilmrstw - elfk02
10.0.0.91 29 97  0 0.29 0.17 0.06 cdfhilmrstw * elfk01

[root@elfk01 ~]# curl 10.0.0.93:9200
{
  "name" : "elfk03",
  "cluster_name" : "elfk-cluster",
  "cluster_uuid" : "Gcu4sGGlTO25jN2uTPjcHg",
  "version" : {
    "number" : "7.17.29",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "580aff1a0064ce4c93293aaab6fcc55e22c10d1c",
    "build_date" : "2025-06-19T01:37:57.847711500Z",
    "build_snapshot" : false,
    "lucene_version" : "8.11.3",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

下期分享:Kibana服务部署

相关推荐
LabVIEW开发2 小时前
LabVIEW QMH 队列消息处理架构
架构·labview·labview知识·labview功能·labview程序
rising start4 小时前
二、全面理解MySQL架构
mysql·架构
麦客奥德彪4 小时前
Android Skills
架构·ai编程
candyTong4 小时前
Claude Code 的 Edit 工具是怎么工作的
javascript·后端·架构
沪漂阿龙6 小时前
面试题详解:智能客服 Agent 系统全栈拆解——Rasa Pro、对话管理、意图识别、GraphRAG、Qwen 与 RAG 优化实战
人工智能·架构
不仙5206 小时前
VMware Workstation 26.0.0 在 Ubuntu 24.04 (内核 6.17.0) 上的安装与内核模块编译问题
linux·ubuntu·elasticsearch
辰海Coding7 小时前
MiniSpring框架学习-完成的 IoC 容器
java·spring boot·学习·架构
云边云科技_云网融合7 小时前
企业大模型时代的网络架构五层演进:从连接到智能的范式重构
网络·重构·架构
Yunzenn8 小时前
字节最新研究cola-DLM第 01 章:语言生成的三次范式之争 —— 从 RNN 到 AR 到扩散
架构·github
她的男孩8 小时前
从零搭一个企业后台,为什么我把能力拆成 Starter 和 Plugin
java·后端·架构