您好,登錄后才能下訂單哦!
博客地址已轉移至:http://cocojoey.lofter.com/post/1eff2f40_10a6d448
這里今后不再更新。。。。。。。。。。。。。
日志管理工具:收集,解析,可視化
Elasticsearch - 一個基于Lucene的文檔存儲,主要用于日志索引、存儲和分析。
Logstash -管理事件和日志的工具
Kibana - 可視化日志和時間戳數據
Graylog2 -具有報警選項的可插入日志和事件分析服務器
Nxlog-跨平臺,模塊化,具備日志緩沖與流量控制、定時作業、內置配置語言的日志采集神器
ELK:Elasticsearch+Logstash+Kibana
Graylog:Elasticsearch+Nxlog+Graylog-server(集成graylog-web)
Graylog架構圖:
最小化架構圖:
Graylog集群架構圖:
ELK架構圖:
簡要說兩句:商業日志工具Splunk,號稱日志界的Google。還有Nxlog,它們有多牛逼我就不再贅述了。而Graylog簡直就是開源版的Splunk。
此次,我們進行最小化安裝,集群方案的部署后面會陸陸續續更新:
安裝組件:
Elasticsearch
Graylog-server(集成了Graylog-web)
Graylog Collector Sidecar(舊版本是Graylog Collector,已經廢棄了 )
安裝環境:
Centos7.3+Graylog2.3+elasticsearch3.4.5+Nxlog2.9+Collector-Sidecar-0.1.3
主機IP:192.168.55.33 此次配置服務端和客戶端都在一臺主機上
第一部分: Server端的部署
MongoDB:
1:安裝mongodb的yum源
vim /etc/yum.repos.d/mongodb-org-3.2.repo
[mongodb-org-3.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.2.asc
2:安裝mongodb
yum install mongodb-org
3:添加系統服務及啟動
chkconfig --add mongod
systemctl daemon-reload
/sbin/chkconfig mongod on
systemctl start mongod.service
注意:這里沒有進行mongodb的相關配置包括graylog連接的配置,graylog啟動時會自行創建相關數據
Elasticsearch:
1:首先導入Elastic GPG密鑰
rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch
2:添加yum源
vim /etc/yum.repos.d/elasticsearch.repo
[elasticsearch-2.x]
name=Elasticsearch repository for 2.x packages
baseurl=https://packages.elastic.co/elasticsearch/2.x/centos
gpgcheck=1
gpgkey=https://packages.elastic.co/GPG-KEY-elasticsearch
enabled=1
3:安裝elasticsearch
yum install elasticsearch
4:配置elasticsearch,修改以下幾個地方,elasticsearch詳細配置自行谷歌
vim /etc/elasticsearch/elasticsearch.yml
cluster.name: graylog2 elasticsearch集群名稱,若有多個集群,可根據此屬性區分。
node.name: node-142 集群節點名稱,elasticsearch啟動時會自動創建,也可手動配置
network.host: 192.168.55.33 設置綁定的ip地址,可以是ipv4或ipv6的,默認為0.0.0.0
http.port: 9200 設置對外服務的Http端口,默認是9200
transport.tcp.port: 9300 設置節點間交互的tcp端口,默認是9300
discovery.zen.ping.unicast.hosts: ["192.168.55.33"] 設置集群中master集群初始化列表,這個數組里的機器將被自動發現加入集群,多個用逗號隔開
5:添加至系統服務及啟動
chkconfig --add elasticsearch
systemctl daemon-reload
systemctl enable elasticsearch.service
systemctl restart elasticsearch.service
Graylog:
1:安裝Graylog的yum源及epel源
rpm -Uvh https://packages.graylog2.org/repo/packages/graylog-2.3-repository_latest.rpm
yum install epel-release
2:安裝Graylog-server及相關組件
yum install graylog-server pwgen
3:配置graylog2,修改以下幾個地方,其他地方保持默認,也可根據實際情況進行設置,詳解自行谷歌
password_secret WxWxFDNy36Wgl3VMQoFVyCdJl5TpiilNPujRBW3xoyYx5cB8aP8N
對密碼進行加鹽處理(就是密碼加鹽也就是密碼后面加上很長的一串字符串再進行加密),例如
md5(md5(password)+salt)和SHA512(SHA512(password)+salt) 方式
這里使用pwgen生成密碼:pwgen -N 1 -s 96
root_password_sha2 72d7c50d4e1e267df628ec2ee9eabee
graylog-web登錄的用戶密碼,使用 sha256sum進行加密。
密碼加密命令:echo -n yourpassword | sha256sum
root_email email報警地址,此次博客未涉及到郵件報警相關內容,不用管,此后更新
root_timezone = +08:00 設置時區
rest_listen_uri = http://192.16855.33:9000/api/
用于接受Graylog Collector Sidecar發送的心跳信息,collectors也可以訪問次uri
web_listen_uri = http://192.168.0.200:9000/ graylog-web訪問地址
elasticsearch_cluster_name = graylog2 必須與elasticsearch設置相同
elasticsearch_discovery_zen_ping_unicast_hosts = 192.168.55.33:9300
添加elasticsearch集群的主機,多個主機用逗號隔開
mongodb_uri = mongodb://localhost/graylog MongoDB服務器身份驗證,使用默認即可
4:添加系統服務及啟動
chkconfig --add graylog-server
systemctl daemon-reload
systemctl enable graylog-server.service
systemctl start graylog-server.service
至此,Graylog-server安裝完畢,可通過瀏覽器輸入192.168.55.33:9000進行訪問,登錄,以上配置文件設計的
密碼加密選項必須設置,并且必須使用指定密碼工具生成密碼才能正常登錄,否則將失敗
第二部分: Collector端的部署
1:簡述
Graylog Collector Sidecar是一種用于采集日志的輕量級配置管理系統,也稱為后端。
作為守護進程運行。
這些配置通過Graylog Web界面以圖形方式進行集中管理。對于特定需求,可以將原始
后端配置(稱為Snippets)直接存儲到Graylog中。
使用REST API,Sidecar守護進程將定期獲取目標的所有相關配置。實際獲取哪些配置
取決于主機的Sidecar配置文件中定義的“標簽”。例如,Web服務器主機可以
包括linux和nginx標簽。
在第一次運行或檢測到配置更改時,Sidecar將生成(呈現)相關的后端配置文件。
然后它將啟動或重新啟動那些重新配置的日志收集器。
目前,Sidecar支持Nxlog,Filebeat和Winlogbeat。支持的功能幾乎相同,可以在
web界面進行切換,對于所有收集器,可以使用帶有SSL加密的GELF輸出。
在服務器端,您可以與多個收集器共享輸入,例如,所有Filebeat和Winlogbeat
實例都可以將日志發送到單個Graylog-Beats輸入。
此次博客我們以Nxlog作為后端來進行配置。
1:安裝Nxlog和collector-sidecar
yum源現在沒有ollector-sidecar的,去官方下載rpm包進行安裝。
yum install collector-sidecar-0.1.3-1.x86_64.rpm nxlog-ce-2.9.1716-1_rhel7.x86_64.rpm
2:添加系統服務及用戶授權
gpasswd -a nxlog root
chown -R nxlog.nxlog /var/spool/collector-sidecar/nxlog
graylog-collector-sidecar -service install
systemctl start collector-sidecar
3:配置Nxlog
vim /etc/nxlog.conf
<Extension _gelf>
Module xm_gelf
</Extension>
<Input in>
Moduleim_file
File"/var/log/messages"
</Input>
<Output out>
Moduleom_udp
Host 192.168.55.33
Port 12201
</Output>
<Route r>
Pathin => out
</Route>
4:配置colloector
vim /etc/graylog/collector-sidecar/collector_sidecar.yml
server_url: http://192.168.55.33:9000/api/
update_interval: 10
tls_skip_verify: false
send_status: true
list_log_files:
node_id: graylog-collector-sidecar
collector_id: file:/etc/graylog/collector-sidecar/collector-id
cache_path: /var/cache/graylog/collector-sidecar
log_path: /var/log/graylog/collector-sidecar
log_rotation_time: 86400
log_max_age: 604800
tags:
- nginx
backends:
- name: nxlog
enabled: true
binary_path: /usr/bin/nxlog
configuration_path: /etc/graylog/collector-sidecar/generated/nxlog.conf
5:重啟服務
systemctl restart collector-sidecar systemctl restart-nxlog
至此,Collector相關的東西配置完成,接下來就是Graylog-Web端相關的配置
Graylog-Web
1: 瀏覽器輸入192.168.55.33進入管理界面,配置input和output相關信息
點擊collectors --> manage configurations --> creat configurations
采集器名字
tags標簽名字(與采集器客戶端配置文件相同)
設置output和input相關信息,與nxlog的配置文件相同
配置完成后,重啟客戶端的collector-sidecar:systemctl restart collector-sidecar
graylog web查看Collectors 是否運行正常:
graylog web 設置 日志接收
System --> inputs --> 選擇哪種方式讀取日志 --> 設置相關屬性(設置服務器端的ip地址) --> 保存
查看是否正常運行
search:可以進行正則匹配高亮顯示結果
至此,全部安裝完畢,使用正常,若有不明白或無法正常工作的地方,請留言或者加群討論:656633543
謝謝各位光臨的朋友
該博客會持續優化更新
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。