溫馨提示×

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

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Graylog2+Elasticsearch+Nxlog

發(fā)布時(shí)間:2020-07-12 09:19:02 來源:網(wǎng)絡(luò) 閱讀:4796 作者:小杰linux 欄目:建站服務(wù)器

博客地址已轉(zhuǎn)移至:http://cocojoey.lofter.com/post/1eff2f40_10a6d448

這里今后不再更新。。。。。。。。。。。。。

日志管理工具:收集,解析,可視化

  • Elasticsearch - 一個(gè)基于Lucene的文檔存儲(chǔ),主要用于日志索引、存儲(chǔ)和分析。

  • Logstash -管理事件和日志的工具

  • Kibana - 可視化日志和時(shí)間戳數(shù)據(jù)

  • Graylog2 -具有報(bào)警選項(xiàng)的可插入日志和事件分析服務(wù)器

  • Nxlog-跨平臺(tái),模塊化,具備日志緩沖與流量控制、定時(shí)作業(yè)、內(nèi)置配置語(yǔ)言的日志采集神器



Graylog與ELK方案的對(duì)比

ELK:Elasticsearch+Logstash+Kibana 

Graylog:Elasticsearch+Nxlog+Graylog-server(集成graylog-web)


Graylog架構(gòu)圖:


                最小化架構(gòu)圖:

Graylog2+Elasticsearch+Nxlog

                Graylog集群架構(gòu)圖:

Graylog2+Elasticsearch+Nxlog


ELK架構(gòu)圖:


Graylog2+Elasticsearch+Nxlog


簡(jiǎn)要說兩句:商業(yè)日志工具Splunk,號(hào)稱日志界的Google。還有Nxlog,它們有多牛逼我就不再贅述了。而Graylog簡(jiǎn)直就是開源版的Splunk。


此次,我們進(jìn)行最小化安裝,集群方案的部署后面會(huì)陸陸續(xù)續(xù)更新:

        安裝組件:

                Mongodb

                Elasticsearch

                Graylog-server(集成了Graylog-web)

                Graylog Collector Sidecar(舊版本是Graylog Collector,已經(jīng)廢棄了 )

安裝環(huán)境:

        Centos7.3+Graylog2.3+elasticsearch3.4.5+Nxlog2.9+Collector-Sidecar-0.1.3

        主機(jī)IP:192.168.55.33   此次配置服務(wù)端和客戶端都在一臺(tái)主機(jī)上


第一部分:    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:添加系統(tǒng)服務(wù)及啟動(dòng)                    

                         chkconfig --add mongod

                         systemctl daemon-reload

                         /sbin/chkconfig  mongod on

                         systemctl start mongod.service

                    注意:這里沒有進(jìn)行mongodb的相關(guān)配置包括graylog連接的配置,graylog啟動(dòng)時(shí)會(huì)自行創(chuàng)建相關(guān)數(shù)據(jù)


Elasticsearch:    

                  1:首先導(dǎo)入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,修改以下幾個(gè)地方,elasticsearch詳細(xì)配置自行谷歌

                        vim  /etc/elasticsearch/elasticsearch.yml

                            cluster.name: graylog2     elasticsearch集群名稱,若有多個(gè)集群,可根據(jù)此屬性區(qū)分。

                            node.name: node-142      集群節(jié)點(diǎn)名稱,elasticsearch啟動(dòng)時(shí)會(huì)自動(dòng)創(chuàng)建,也可手動(dòng)配置

                            network.host: 192.168.55.33        設(shè)置綁定的ip地址,可以是ipv4或ipv6的,默認(rèn)為0.0.0.0 

                            http.port: 9200        設(shè)置對(duì)外服務(wù)的Http端口,默認(rèn)是9200

                            transport.tcp.port: 9300       設(shè)置節(jié)點(diǎn)間交互的tcp端口,默認(rèn)是9300 

                            discovery.zen.ping.unicast.hosts: ["192.168.55.33"]     設(shè)置集群中master集群初始化列表,這個(gè)數(shù)組里的機(jī)器將被自動(dòng)發(fā)現(xiàn)加入集群,多個(gè)用逗號(hào)隔開

                     

                  5:添加至系統(tǒng)服務(wù)及啟動(dòng)                      

                         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及相關(guān)組件

                            yum install graylog-server pwgen 

                    

                    3:配置graylog2,修改以下幾個(gè)地方,其他地方保持默認(rèn),也可根據(jù)實(shí)際情況進(jìn)行設(shè)置,詳解自行谷歌

                            password_secret            WxWxFDNy36Wgl3VMQoFVyCdJl5TpiilNPujRBW3xoyYx5cB8aP8N

                                     對(duì)密碼進(jìn)行加鹽處理(就是密碼加鹽也就是密碼后面加上很長(zhǎng)的一串字符串再進(jìn)行加密),例如

                                     md5(md5(password)+salt)和SHA512(SHA512(password)+salt) 方式

                                    這里使用pwgen生成密碼:pwgen -N 1 -s 96

                            root_password_sha2     72d7c50d4e1e267df628ec2ee9eabee

                                        graylog-web登錄的用戶密碼,使用   sha256sum進(jìn)行加密。

                                        密碼加密命令:echo -n yourpassword | sha256sum 

                            root_email          email報(bào)警地址,此次博客未涉及到郵件報(bào)警相關(guān)內(nèi)容,不用管,此后更新

                            root_timezone = +08:00         設(shè)置時(shí)區(qū)

                            rest_listen_uri = http://192.16855.33:9000/api/      

                                        用于接受Graylog Collector Sidecar發(fā)送的心跳信息,collectors也可以訪問次uri

                            web_listen_uri = http://192.168.0.200:9000/         graylog-web訪問地址

                            elasticsearch_cluster_name = graylog2     必須與elasticsearch設(shè)置相同

                            elasticsearch_discovery_zen_ping_unicast_hosts = 192.168.55.33:9300

                                        添加elasticsearch集群的主機(jī),多個(gè)主機(jī)用逗號(hào)隔開

                            mongodb_uri = mongodb://localhost/graylog        MongoDB服務(wù)器身份驗(yàn)證,使用默認(rèn)即可


                  4:添加系統(tǒng)服務(wù)及啟動(dòng)                                  

                            chkconfig --add graylog-server

                                systemctl daemon-reload

                                systemctl enable graylog-server.service

                                systemctl start graylog-server.service


            至此,Graylog-server安裝完畢,可通過瀏覽器輸入192.168.55.33:9000進(jìn)行訪問,登錄,以上配置文件設(shè)計(jì)的

                        密碼加密選項(xiàng)必須設(shè)置,并且必須使用指定密碼工具生成密碼才能正常登錄,否則將失敗


第二部分:    Collector端的部署

           

            1:簡(jiǎn)述                   

                         Graylog Collector Sidecar是一種用于采集日志的輕量級(jí)配置管理系統(tǒng),也稱為后端。

                            作為守護(hù)進(jìn)程運(yùn)行。

       Graylog2+Elasticsearch+Nxlog

                這些配置通過Graylog Web界面以圖形方式進(jìn)行集中管理。對(duì)于特定需求,可以將原始

                                后端配置(稱為Snippets)直接存儲(chǔ)到Graylog中。                        

                使用REST API,Sidecar守護(hù)進(jìn)程將定期獲取目標(biāo)的所有相關(guān)配置。實(shí)際獲取哪些配置

                                取決于主機(jī)的Sidecar配置文件中定義的“標(biāo)簽”。例如,Web服務(wù)器主機(jī)可以

                                包括linux和nginx標(biāo)簽。              

                在第一次運(yùn)行或檢測(cè)到配置更改時(shí),Sidecar將生成(呈現(xiàn))相關(guān)的后端配置文件。

                                然后它將啟動(dòng)或重新啟動(dòng)那些重新配置的日志收集器。

                目前,Sidecar支持Nxlog,F(xiàn)ilebeat和Winlogbeat。支持的功能幾乎相同,可以在

                                web界面進(jìn)行切換,對(duì)于所有收集器,可以使用帶有SSL加密的GELF輸出。

                在服務(wù)器端,您可以與多個(gè)收集器共享輸入,例如,所有Filebeat和Winlogbeat

                                實(shí)例都可以將日志發(fā)送到單個(gè)Graylog-Beats輸入。

                此次博客我們以Nxlog作為后端來進(jìn)行配置。


            1:安裝Nxlog和collector-sidecar

                    yum源現(xiàn)在沒有ollector-sidecar的,去官方下載rpm包進(jìn)行安裝。

                            yum install collector-sidecar-0.1.3-1.x86_64.rpm  nxlog-ce-2.9.1716-1_rhel7.x86_64.rpm


            2:添加系統(tǒng)服務(wù)及用戶授權(quán)                                            

                            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:重啟服務(wù)

                      systemctl restart collector-sidecar           systemctl restart-nxlog                    

       至此,Collector相關(guān)的東西配置完成,接下來就是Graylog-Web端相關(guān)的配置 


Graylog-Web


            1:    瀏覽器輸入192.168.55.33進(jìn)入管理界面,配置input和output相關(guān)信息


點(diǎn)擊collectors --> manage configurations --> creat configurations 

Graylog2+Elasticsearch+Nxlog


Graylog2+Elasticsearch+Nxlog


Graylog2+Elasticsearch+Nxlog

采集器名字

Graylog2+Elasticsearch+Nxlog

Graylog2+Elasticsearch+Nxlog

tags標(biāo)簽名字(與采集器客戶端配置文件相同)


Graylog2+Elasticsearch+Nxlog

設(shè)置output和input相關(guān)信息,與nxlog的配置文件相同

Graylog2+Elasticsearch+Nxlog

Graylog2+Elasticsearch+Nxlog


配置完成后,重啟客戶端的collector-sidecar:systemctl restart collector-sidecar


graylog web查看Collectors 是否運(yùn)行正常:

Graylog2+Elasticsearch+Nxlog

Graylog2+Elasticsearch+Nxlog


graylog web 設(shè)置 日志接收

System -->  inputs --> 選擇哪種方式讀取日志 -->  設(shè)置相關(guān)屬性(設(shè)置服務(wù)器端的ip地址) --> 保存

Graylog2+Elasticsearch+Nxlog


查看是否正常運(yùn)行

search:可以進(jìn)行正則匹配高亮顯示結(jié)果

Graylog2+Elasticsearch+Nxlog


至此,全部安裝完畢,使用正常,若有不明白或無(wú)法正常工作的地方,請(qǐng)留言或者加群討論:656633543

謝謝各位光臨的朋友


該博客會(huì)持續(xù)優(yōu)化更新

        

        

    





























向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI