日志搜集之ELK


二、 部署安裝

環境:

1、jdk環境:

[root@openstack-node7 local]# java -version
java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)

2、

7.102 es kibana
7.108 es logstash
7.109 es filebast

3、版本均為6.8.9

2.3.安裝es(所有節點操作)

1、選擇版本

官網:https://www.elastic.co/cn/downloads/past-releases#elasticsearch

配置hosts文件

192.168.7.102 master-node
192.168.7.108 data-node1
192.168.7.109 data-node2

2、獲取安裝包

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.8.9.tar.gz

3、解壓並建立軟連接

mkdir /usr/local/elk
tar zxf elasticsearch-6.8.0.tar.gz
ln -sv /usr/local/src/elasticsearch-6.8.9 /usr/local/elk/es

4、新建安裝目錄和並授權elk用戶


useradd elk
chown -R elk.elk /usr/local/elk/es/

image-20200606143832784

5、配置文件描述符和內核參數

vim /etc/security/limits.conf
# End of file
* soft nofile 65536
* hard nofile 131072
* soft nproc 65536
* hard nproc 131072
vim /etc/sysctl.conf
vm.max_map_count = 655360
sysctl -p

設置用戶資源參數

vi /etc/security/limits.d/20-nproc.conf
elk    soft    nproc     65536

6、修改配置文件

vim /config/elasticsearch.yml
[root@master-node es]# egrep -v "^$|^#" config/elasticsearch.yml 
cluster.name: es-linux37
node.name: master-node
path.data: /data/es/data
path.logs: /logs/es/logs
network.host: 192.168.7.102
http.port: 9200
discovery.zen.ping.unicast.hosts: ["192.168.7.108", "192.168.7.109","192.168.7.102"]
discovery.zen.minimum_master_nodes: 3
http.cors.enabled: true    #解決跨域無法訪問問題
http.cors.allow-origin: "*"

7、新建文件夾

mkdir /logs/es/logs -pv 
mkdir /data/es/data -pv
chown elk.elk /logs/es/ -R
chown elk.elk  /data/es/ -R

8、啟動文件(如果log有輸出,即正常啟動成功)

su - elk
cd /usr/local/elk/es
./bin/elasticseach

image-20200606145459862

#這是提示找不到足夠的節點應該是3個節點

其他節點只要修改node.name:和network.host:,都改成自己的IP地址

9、后台執行

#所有節點用elk用戶啟動服務,后台運行,現在就要看日志看看有什么問題了。root用戶啟動會報錯的得非root用戶啟動

./bin/elasticsearch -d 

節點啟動后:日志輸出如下為成功啟動

image-20200606152222960

在102查看日志,如沒有報錯即可

image-20200606152746083

9、查看端口

image-20200606153214621

10、瀏覽器訪問測試並查看

#每個節點都可以通過:IP:9200端口查看的,如下圖

image-20200606153447157

#可以看到所有節點的json信息

image-20200606153620399

復制然后通過json.cnz轉義

網址:json.cn

image-20200606153727273

lsof -i :9300 #每個節點都跟其他節點進行着連接

image-20200606153901273

2.2.安裝head插件

ElasticSearch-Head 是一個與Elastic集群(Cluster)相交互的Web前台

ES-Head主要作用

它展現ES集群的拓撲結構,並且可以通過它來進行索引(Index)和節點(Node)級別的操作
它提供一組針對集群的查詢API,並將結果以json和表格形式返回
它提供一些快捷菜單,用以展現集群的各種狀態

安裝npm

由於head插件本質上還是一個nodejs的工程,因此需要安裝node,使用npm來安裝依賴的包

官方網址:https://nodejs.org/en/download/

使用二進制文件節省時間

wget https://nodejs.org/dist/v14.4.0/node-v14.4.0-linux-x64.tar.xz
ln -sv /usr/local/src/node-v14.4.0-linux-x64/bin/node /usr/bin/node
ln -sv /usr/local/src/node-v14.4.0-linux-x64/bin/npm /usr/bin/npm

驗證版本

[root@master-node src]# npm -v 
6.14.5
[root@master-node src]# node -v 
v14.4.0

安裝Head插件

github網址:https://github.com/mobz/elasticsearch-head

cd /usr/local/elk/es/plugins
yum install git 
git clone git://github.com/mobz/elasticsearch-head.git

修改npm鏡像

國外鏡像會很慢 ,所以要修改成國內的

npm congfig get registry  #查看鏡像

npm config set registry https://registry.npm.taobao.org #set命令更改阿里鏡像

image-20200606171029998

安裝Head

npm install 
npm run start

修改配置文件

mkdir /usr/local/elk/plugin

cp -rf mv elasticsearch-head /usr/local/elk/plugin/head

chown -R elk.elk /usr/local/elk/plugin/head

$ vim /home/elk/plugin/head/Gruntfile.js

connect: {
                        server: {
                                options: {
                                        port: 9100,
                                        hostname: '*',      #增加此行
                                        base: '.',
                                        keepalive: true

$ vim /head/_site/app.js

this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://192.168.7.102:9200";

$ cd /home/elk/plugin/head/ #一定要進入此目錄下啟動命令啊

image-20200606171224036

放到后台運行

yum install -y screen
screen -S  head #創建一個head窗口,執行上圖啟動命令
ctrl A+D #退出窗口
screen -list
screen -r head #進入head窗口

登陸驗證

image-20200606181553341


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM