溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Centos中怎么使用Elasticsearch搭建可視化服務

發布時間:2021-08-05 16:24:04 來源:億速云 閱讀:233 作者:Leah 欄目:編程語言
# CentOS中怎么使用Elasticsearch搭建可視化服務

## 前言

Elasticsearch作為一款強大的分布式搜索和分析引擎,在企業級數據檢索、日志分析等場景中廣泛應用。但原生Elasticsearch僅提供REST API接口,直接操作不夠直觀。本文將詳細介紹在CentOS系統中部署Elasticsearch并集成Kibana可視化平臺的完整流程,包含性能優化和安全配置建議。

---

## 一、環境準備

### 1.1 系統要求
- **操作系統**:CentOS 7/8(本文以CentOS 7.9為例)
- **硬件配置**:
  - 最低2核CPU,4GB內存(生產環境建議8GB+)
  - 磁盤空間根據數據量預估(SSD推薦)
- **網絡要求**:
  - 開放9200(ES)、5601(Kibana)端口
  ```bash
  firewall-cmd --permanent --add-port={9200,5601}/tcp
  firewall-cmd --reload

1.2 安裝Java環境

Elasticsearch依賴Java運行環境:

# 安裝OpenJDK 11
yum install -y java-11-openjdk

# 驗證安裝
java -version

二、Elasticsearch安裝與配置

2.1 通過RPM包安裝

# 導入GPG密鑰
rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

# 創建repo文件
cat <<EOF > /etc/yum.repos.d/elasticsearch.repo
[elasticsearch]
name=Elasticsearch repository for 8.x packages
baseurl=https://artifacts.elastic.co/packages/8.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF

# 安裝Elasticsearch
yum install -y elasticsearch

2.2 關鍵配置調整

編輯/etc/elasticsearch/elasticsearch.yml

cluster.name: my-es-cluster
node.name: node-1
path.data: /var/lib/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 0.0.0.0
http.port: 9200
discovery.type: single-node  # 單節點模式
xpack.security.enabled: true  # 啟用安全功能

2.3 啟動與驗證

# 設置開機自啟
systemctl daemon-reload
systemctl enable elasticsearch

# 啟動服務
systemctl start elasticsearch

# 檢查狀態
curl -XGET "http://localhost:9200/_cluster/health?pretty" -u elastic

首次運行會輸出默認密碼,請妥善保存。


三、Kibana可視化平臺部署

3.1 安裝Kibana

yum install -y kibana

3.2 配置Kibana連接ES

編輯/etc/kibana/kibana.yml

server.port: 5601
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://localhost:9200"]
elasticsearch.username: "kibana_system"
elasticsearch.password: "自動生成的密碼"
i18n.locale: "zh-CN"  # 中文界面

3.3 初始化Kibana

# 生成Kibana系統用戶密碼
/usr/share/elasticsearch/bin/elasticsearch-reset-password -u kibana_system

# 啟動服務
systemctl enable kibana
systemctl start kibana

四、安全加固配置

4.1 配置HTTPS訪問

生成自簽名證書:

mkdir /etc/elasticsearch/certs
openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
  -keyout /etc/elasticsearch/certs/elasticsearch.key \
  -out /etc/elasticsearch/certs/elasticsearch.crt

修改ES配置:

xpack.security.http.ssl:
  enabled: true
  keystore.path: certs/elasticsearch.crt
  keystore.password: ""

4.2 設置角色權限

通過Kibana界面操作: 1. 訪問http://<服務器IP>:5601 2. 進入”Stack Management” > “安全” > “角色” 3. 創建只讀角色示例: - 集群權限:monitor - 索引權限:read, view_index_metadata


五、實戰:日志可視化案例

5.1 導入示例數據

# 下載航班數據樣本
wget https://download.elastic.co/demos/kibana/gettingstarted/flights.json

# 導入ES(需認證)
curl -XPOST "http://localhost:9200/flights/_bulk?pretty" \
  -H "Content-Type: application/json" \
  --data-binary @flights.json \
  -u elastic:<password>

5.2 創建可視化儀表盤

  1. 創建索引模式

    • 進入”Management” > “Stack Management” > “索引模式”
    • 輸入flights*作為模式名稱
  2. 構建可視化圖表

    • 進入”Analytics” > “Dashboard”
    • 添加以下可視化組件:
      • 航班延誤時間的柱狀圖
      • 出發地點的詞云
      • 平均延誤時間的指標卡

六、性能優化建議

6.1 JVM調優

編輯/etc/elasticsearch/jvm.options

-Xms4g  # 最小堆內存
-Xmx4g  # 最大堆內存(不超過物理內存50%)

6.2 分片策略優化

# 創建索引時指定分片
PUT /logs-2023.08.01
{
  "settings": {
    "number_of_shards": 3,
    "number_of_replicas": 1
  }
}

6.3 緩存配置

indices.queries.cache.size: 10%
indices.fielddata.cache.size: 30%

七、常見問題排查

7.1 服務啟動失敗

  • 錯誤現象max virtual memory areas vm.max_map_count [65530] is too low
  • 解決方案
    
    sysctl -w vm.max_map_count=262144
    echo "vm.max_map_count=262144" >> /etc/sysctl.conf
    

7.2 Kibana無法連接ES

  • 檢查步驟
    1. 驗證ES服務狀態:curl -XGET localhost:9200
    2. 檢查Kibana日志:journalctl -u kibana -f
    3. 確認防火墻規則

結語

通過本文的詳細指導,您已在CentOS系統上成功搭建了Elasticsearch搜索服務與Kibana可視化平臺。建議進一步探索: - 集成Logstash構建ELK日志系統 - 使用APM實現應用性能監控 - 通過Watcher功能設置告警機制

注意事項:生產環境務必配置完備的安全策略,包括定期密碼輪換、網絡ACL限制等。官方文檔是獲取最新信息的最佳途徑:Elastic官方文檔 “`

該文檔包含以下特點: 1. 結構化分步指南,適合不同基礎用戶 2. 包含安全配置、性能優化等進階內容 3. 提供實際可執行的命令和配置片段 4. 中英文混合的關鍵術語標注 5. 典型問題排查方案 6. 擴展學習建議 7. 符合Markdown語法規范

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女