CentOS 7.9 安裝 ELK( 三 )

5 瀏覽器訪問:IP:5601

CentOS 7.9 安裝 ELK

文章插圖
六、elasticsearch-analysis-ik分詞器插件安裝作用:如果直接使用Elasticsearch的分詞器在處理中文內容的搜索時,ES會將中文詞語分成一個一個的漢字 。當用Kibana作圖,按照term來分組的時候,也會將一個漢字單獨分成一組 。這對于我們的使用是及其不方便的,因此我們引入es之中文的分詞器插件es-ik就能解決這個問題 。
1 elasticsearch-analysis-ik分詞器下載地址:https://github.com/medcl/elasticsearch-analysis-ik/releases
2 創建分詞器目錄
分詞器安裝在ES目錄下即可 , 所有在ES目錄下創建分詞器目錄
mkdir /opt/elastic/elasticsearch-7.8.1/plugins/ik3 解壓安裝包
unzip /opt/software/elastic/elasticsearch-analysis-ik-7.8.1.zip -d /opt/elastic/elasticsearch-7.8.1/plugins/ik/4 重新對ES目錄授權
chown -R es:es /opt/elastic/elasticsearch-7.8.1
CentOS 7.9 安裝 ELK

文章插圖
5 關閉ES和Kibana
可以先通過Kill命令殺掉ES和Kibana進程
ps -ef | grep elastickill -96 啟動
/opt/elastic/elasticsearch-7.8.1/bin/elasticsearch -d/opt/elastic/kibana-7.8.1-linux-x86_64/bin/kibana此時的ES日志是可以查看到是有加載分詞器插件的
CentOS 7.9 安裝 ELK

文章插圖
七、logstash安裝1 下載
wget https://artifacts.elastic.co/downloads/logstash/logstash-7.8.1.tar.gz2 解壓
tar -zxvf /opt/software/elastic/logstash-7.8.1.tar.gz -C /opt/elastic/3 配置 logstash.yml
vim/opt/elastic/logstash-7.8.1/config/logstash.yml
CentOS 7.9 安裝 ELK

文章插圖
系統配置不高可以適當減少
4 啟動
  • -t 測試配置文件是否正確 。
  • -f 指定logstash的配置文件 。
  • -e 格式是后面跟字符串,這個字符串就被當做是logstash的配置,如果"",那么默認使用stdin作為輸出 。
logstash啟動命令位于安裝路徑的bin目錄中,直接啟動會報錯,需要按照如下方式提供參數 。
命令行啟動日志中看到 "Successfully started Logstash API endpoint {:port=>9600}"  , 就說明啟動成功 。
上面命令行定義的是一個標準輸入插件(即 stdin)和一個標準輸出插件(即 stdout) 。
意思就是從命令行提取輸入,并從命令行直接將提取的數據輸出,我們可以測試下,啟動后如下圖,界面在等待輸入 。
/opt/elastic/logstash-7.8.1/bin/logstash -e "input {stdin {}} output {stdout {}}"
CentOS 7.9 安裝 ELK

文章插圖
5 連接 Elasticsearch
logstash可以通過命令行并使用 -e 參數傳入配置字符串,指定了標準輸入 stdin 插件和 stdout 插件 。
但在實際應用中,通常使用配置文件指定插件 , 配置文件的語法形式與命令行相同,要使用的插件名稱來指定,一般配置文件均放置到部署目錄的config目錄中,配置中找到名為 logstash-sample.conf 的文件,也可新建配置文件
啟動配置文件 logstash-sample.conf
vim /opt/elastic/logstash-7.8.1/config/logstash-sample.confinput {file {type => "systemlog-xyz"#標簽path => "/opt/elastic/logstash/logs/xyz"#采集點start_position => "beginning"#開始收集點stat_interval => "2"#掃描間隔時間,默認是1s , 建議5s}}output {elasticsearch {hosts => ["192.168.0.98:9200"]#指定信息發送到esindex => "app-xyz-log-%{+YYYY.MM.dd}"#定義格式 }file {path => "/opt/elastic/logstash/logs/xyz/xyz.log"}}啟動命令
/opt/elastic/logstash-7.8.1/bin/logstash -f ../config/logstash-sample.conf -t/opt/elastic/logstash-7.8.1/bin/logstash -f ../config/logstash-sample.conf八、Filebeat安裝報錯1 failed; error='Not enough space
虛擬機內存不足,修改虛擬機分配內存大小的參數是,-Xmx和-Xms
[es@ecs-65685 ~]$ /opt/elastic/elasticsearch-7.8.1/bin/elasticsearchException in thread "main" java.lang.RuntimeException: starting java failed with [1]output:## There is insufficient memory for the Java Runtime Environment to continue.# Native memory allocation (mmap) failed to map 549755813888 bytes for committing reserved memory.# An error report file with more information is saved as:# logs/hs_err_pid12013.logerror:OpenJDK 64-Bit Server VM warning: INFO: os::commit_memory(0x00007f38ee000000, 549755813888, 0) failed; error='Not enough space' (errno=12) at org.elasticsearch.tools.launchers.JvmErgonomics.flagsFinal(JvmErgonomics.java:126) at org.elasticsearch.tools.launchers.JvmErgonomics.finalJvmOptions(JvmErgonomics.java:88) at org.elasticsearch.tools.launchers.JvmErgonomics.choose(JvmErgonomics.java:59) at org.elasticsearch.tools.launchers.JvmOptionsParser.jvmOptions(JvmOptionsParser.java:137) at org.elasticsearch.tools.launchers.JvmOptionsParser.main(JvmOptionsParser.java:95)[es@ecs-65685 ~]$

推薦閱讀