成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

ELFK 開源日志平臺實戰部署之 ES 集群搭建

開發
完整的架構在filebeat和logstash之間應該還有消息隊列,如kafka,但是中小型公司用上面架構已經足夠了。

接下來幾篇文章分享一下日志平臺ELFK的搭建,由于篇幅問題,我拆成幾篇文章來寫。

整體實驗架構:

完整的架構在filebeat和logstash之間應該還有消息隊列,如kafka,但是中小型公司用上面架構已經足夠了。后期再講有kafka的架構,適合大型公司。

一、環境準備

1. 基礎信息

IP

角色

內存要求

10.0.0.41

kibana+es集群節點1

建議2G或以上

10.0.0.42

es集群節點2

建議2G或以上

10.0.0.43

es集群節點3+logstash

建議2G或以上

10.0.0.44

filebeat+被采集日志的服務器

建議1G或以上

其他部署信息:

  • 目前最新9.0.3版本,本次安裝版本為:8.18.2
  • 支持Java 11或更高版本
  • 操作系統openEuler 22.04,同樣適用于其他redhat系列系統

注意es,logstash,kibana,filebeat都要使用相同版本

2. 配置主機名

# 設置主機名,根據自己定義設置每個節點名字
hostnamectl set-hostname xxx

3. 配置hosts文件

所有節點操作:

# 配置每個節點的hosts文件
cat >> /etc/hosts <<EOF
10.0.0.41 elk01
10.0.0.42 elk02
10.0.0.43 elk03
10.0.0.44 filebeat
EOF

4. 關閉防火墻和selinux

所有節點操作:

# 關閉防火墻
systemctl disable --now  firewalld

# 關閉SELinux
setenforce 0
sed -i 's/=enforcing/=disabled/g' /etc/selinux/config

二、ES集群部署

Elasticsearch(簡稱ES)是一個開源的分布式搜索引擎(在這里用于搜索日志),Elasticsearch還是一個分布式文檔數據庫。所以可以使用多臺服務器來實現ES集群。

下載地址:https://www.elastic.co/downloads/past-releases#elasticsearch

1. 所有節點上安裝jdk

ES是java開發的軟件,需要安裝Java,而Elasticsearch 8.x 需要Java 11或更高版本。可以使用yum安裝OpenJDK:

# 可以先查看一下本地版本再安裝
rpm -qa |grep jdk

# 如果沒有就安裝,如果是jdk8就卸載再安裝
yum install java-11-openjdk -y 

# 檢查版本
java -version

2. 所有es節點安裝es

上傳或下載軟件包到所有es節點,直接使用rpm命令安裝

rpm -ivh elasticsearch-8.18.2-x86_64.rpm

3. 分別配置es

節點1為例,其他節點配置一樣,修改一下node.name即可

# vi /etc/elasticsearch/elasticsearch.yml
# 主要修改下面幾個參數
cluster.name: elk-cluster
node.name: 10.0.0.41
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 0.0.0.0
http.port: 9200
discovery.seed_hosts: ["10.0.0.41", "10.0.0.42", "10.0.0.43"]
cluster.initial_master_nodes: ["10.0.0.41", "10.0.0.42", "10.0.0.43"]

# 注意后面還有一個cluster.initial_master_nodes需要注釋掉,不然啟動出錯

# 查看配置
grep -Ev "^#|^$" /etc/elasticsearch/elasticsearch.yml

參數說明:

參數

說明

cluster.name

集群名, 3個節點同一個名

node.name

節點名稱,不是IP(每個節點名稱不一樣)

path.data

數據目錄

path.logs

ES自己的日志目錄

network.host

服務監聽的范圍, 0.0.0.0表示所有IP都可以訪問

http.port

9200是給logstash,kibana等連接使用的端口

discovery.seed_hosts

組成集群的節點IP列表

cluster.initial_master_nodes

初始能成為master節點的IP列表(默認會自動選一個做為master)

4. 關閉 X-Pack 安全

從Elasticsearch 8.x+版本開始默認啟用了 TLS(X-Pack 安全),即使你沒主動配置它。

如果沒有正確配置證書、信任鏈或關閉安全模塊,就會導致你現在這種“啟動成功但端口返回空”的現象。

我這里先關閉。修改配置文件 /etc/elasticsearch/elasticsearch.yml,將下面幾個參數設置為false:

xpack.security.enabled: false
xpack.security.enrollment.enabled: false
xpack.security.http.ssl:
  enabled: false
  keystore.path: certs/http.p12
xpack.security.transport.ssl:
  enabled: false

然后重啟 Elasticsearch:

systemctl restart elasticsearch

注意:生產環境一般都開啟xpack,后續文章我再詳細寫,先部署一個簡單的。

5. 設置內存大小

設置Elasticsearch使用的內存大小,視情況而定:我機器是4G的內存,我給es分配2G:

vi /etc/elasticsearch/jvm.options

6. 所有es節點啟動服務

# 啟動es并設置開機自啟動
systemctl enable --now elasticsearch

# netstat -ntlup |grep java
tcp6   0      0 :::9200      :::*        LISTEN      63544/java
tcp6   0      0 :::9300      :::*        LISTEN      63544/java

端口說明:

  • 9200則是數據傳輸端口,被kibana,logstash等連接
  • 9300端口是集群通信端口, 組建集群用

7. 查看集群狀態

使用curl命令或瀏覽器訪問查看集群狀態(10.0.0.41可換成任意集群節點IP)

[root@elk01 ~]# curl http://10.0.0.41:9200/_cluster/health?pretty
{
  "cluster_name" : "elk-cluster",					# 集群名
  "status" : "green",								# 集群狀態,green代表集群OK
  "timed_out" : false,
  "number_of_nodes" : 3,							# 集群總節點數
  "number_of_data_nodes" : 3,						# 數據節點數
  "active_primary_shards" : 0,
  "active_shards" : 0,
  "relocating_shards" : 0,
  "initializing_shards" : 0,
  "unassigned_shards" : 0,
  "delayed_unassigned_shards" : 0,
  "number_of_pending_tasks" : 0,
  "number_of_in_flight_fetch" : 0,
  "task_max_waiting_in_queue_millis" : 0,
  "active_shards_percent_as_number" : 100.0
}

說明:

  • http://10.0.0.42:9200/_cluster/health?pretty為查看ES集群狀態的API,前面可不加http://開頭
  • 結果格式為json格式(用key: value鍵值對來表示數據)

8. 查看集群節點狀態

使用curl命令或瀏覽器訪問查看集群節點狀態(10.0.0.41可換成任意集群節點IP)

# curl 10.0.0.41:9200/_cat/nodes?v
ip   heap.percent ram.percent cpu load_1m load_5m load_15m node.role master    name
10.0.0.42      29          93   0    0.00    0.01     0.05 dilm       *    10.0.0.42
10.0.0.43      14          89   0    0.00    0.01     0.05 dilm       -    10.0.0.43
10.0.0.41      21          99   0    0.00    0.01     0.05 dilm       -    10.0.0.41

說明:

  • master列中帶*號的表示為master節點
  • 10.0.0.42:9200/_cat/nodes?v 為查看集群節點狀態的API, 可以不加http://開頭

9. 瀏覽器訪問

輸入其中一個IP地址+9200端口即可訪問。因為我關閉了x-pack安全模塊,沒有賬號密碼也可以進去

現在ES集群已經部署完了,下一篇文章部署logstash。

責任編輯:趙寧寧 來源: 運維李哥不背鍋
相關推薦

2025-07-18 10:00:00

2025-07-18 08:35:33

logstash開源集群

2009-03-18 09:39:01

HPC微軟高性能計算

2009-04-23 10:47:06

2019-08-14 10:40:13

開源技術 軟件

2015-07-28 10:19:45

開源Ceph管理平臺Inkscope部署

2025-04-25 09:30:41

RancherKubernetes集群

2021-07-20 08:32:16

Kubernetes日志平臺

2021-07-19 09:18:07

KubernetesELK Stackk8s

2011-12-26 11:21:50

虛擬化SRM桌面虛擬化

2022-04-26 07:41:24

網絡日志關聯

2020-07-03 13:29:08

Redis集群哈希槽

2025-03-04 02:20:00

EurekaNetflixSpring

2019-11-21 16:35:32

架構運維技術

2009-10-30 08:51:01

Windows 7部署PXE

2013-11-01 10:43:35

日志分析Awstats實戰Apache

2012-09-13 13:26:40

Hadoop集群

2021-03-26 06:01:45

日志MongoDB存儲

2014-07-04 10:01:08

Spark集群

2018-11-20 09:35:42

開源技術 數據
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产成人精品亚洲 | 五月婷婷综合激情 | 交换多p群乱高h文 | 日韩在线视频一区 | 日本三级韩国三级美三级91 | 亚洲天堂影院 | wwwav在线| 国产日韩欧美精品 | 欧美精品一区二区三区四区 | 青青草av| 午夜小视频在线观看 | 国产精品亚洲精品 | 中文字幕按摩做爰 | 午夜性色| 色午夜 | 99久久久国产精品免费蜜臀 | 国产69精品久久久久久 | 欧美日韩毛片 | 一级黄色片免费看 | 91最新网站| 日韩成人综合 | 国产精品自拍小视频 | 亚洲国产精品久久久 | 丁香av | 国产激情网站 | 黄色在线免费网站 | 成人福利在线观看 | 依人在线 | 日韩欧美精品在线 | 精品国产欧美一区二区三区成人 | 欧美大片18| 亚洲一级片在线观看 | 波多野一区 | 亚洲日本中文字幕 | 男人操女人视频网站 | 国产美女久久 | 亚洲网站在线 | 日韩高清在线播放 | 大色av| 国产精品成人国产乱一区 | 亚洲一级精品 |