torsdag 21 november 2013

Installera Graylog2 0.20.0 från scratch

Nu ska jag skriva ner hur man installerar Graylog2 0.20.0 på en ren installation av CentOS 6.

Den här guiden beskriver är specifik för version 0.20.0-preview6 och jag har av tidigare erfarenhet stött på att Graylog2 är ganska versionskänslig för paketen som den är beroende av (MongoDB och Elasticsearch)

I Elasticsearchfallet så är det version 0.90.6 vi vill ha, MongoDB ska vara nyare än 2.0 och Java ska vara 1.7.0 eller senare.

Lägg till EPEL repositoryn på din server

Några paket vi kommer behöva så småningom, Lika bra att installera på en gång:

 [root@localhost ~]# yum install -y java-1.7.0-openjdk mongodb-server mongodb wget pwgen perl-Digest-SHA

sedan kan vi ladda ner elasticsearch


[root@localhost ~]# curl -O https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-0.90.6.noarch.rpm

och installera
[root@localhost ~]# yum localinstall -y elasticsearch-0.90.6.noarch.rpm

Den enda konfigurationen vi vill göra med elasticsearch är att döpa om klusternamnet till graylog2
[root@localhost ~]# sed -i -e 's|# cluster.name: elasticsearch|cluster.name: graylog2|' /etc/elasticsearch/elasticsearch.yml

Nu till MongoDB
Se till att MongoDB startas vid boot
[root@localhost ~]#/etc/init.d/mongod start
[root@localhost ~]#chkconfig mongod on

skapa användaren grayloguser med lösenordet 123
[root@localhost ~]# echo 'db.addUser("grayloguser", "123");' > file.js && mongo 127.0.0.1:27017/graylog2 file.js && rm -rf file.js

Nu kan vi ladda ner Graylog2
Använd wget som vi installerade tidigare
[root@localhost ~]#wget https://github.com/Graylog2/graylog2-server/releases/download/0.20.0-preview.6/graylog2-server-0.20.0-preview.6.tgz
[root@localhost ~]#wget https://github.com/Graylog2/graylog2-web-interface/releases/download/0.20.0-preview.6/graylog2-web-interface-0.20.0-preview.6.tgz

Packa upp och kopiera innehållet till /opt
[root@localhost ~]#tar zvxf *.tgz
[root@localhost ~]#cp -r graylog2-server-0.20.0-preview.6 /opt/graylog2-server
[root@localhost ~]#cp -r graylog2-web-interface-0.20.0-preview.6 /opt/graylog2-web-insterface

Kopiera graylog2.conf.example till din /etc som graylog2.conf
[root@localhost ~]#cd /opt/graylog2-server/
[root@localhost ~]#cp graylog2.conf.example /etc/graylog2.conf

Konfigurera din passwordsecret, enklast med följande 3 kommandon som tar en random genererad sträng.
[root@localhost ~]#passwordsecret=`pwgen -s 96 | awk 'END{print}'`
[root@localhost ~]#sed -i -e 's|password_secret =|password_secret = '"$passwordsecret"'|' /etc/graylog2.conf
[root@localhost ~]#sed -i -e 's|application.secret=""|application.secret='"$passwordsecret"'|' /opt/graylog2-web-insterface/conf/graylog2-web-interface.conf
Här sätter du ditt adminlösenord, password i det här fallet.
[root@localhost ~]#graylog2password=`echo -n password | shasum -a 256 | awk '{print $1}'`
[root@localhost ~]#sed -i -e 's|root_password_sha2 =|root_password_sha2 = '"$graylog2password"'|' /etc/graylog2.conf

Starta Graylog2
[root@localhost ~]#/opt/graylog2-server/bin/graylog2ctl start
Konfigurera Graylog-web-interface
[root@localhost ~]#sed -i -e 's|graylog2-server.uris=""|graylog2-server.uris="http://127.0.0.1:12900/"|' /opt/graylog2-web-insterface/conf/graylog2-web-interface.conf

och tillslut starta Graylog2-web-interface
[root@localhost ~]#nohup /opt/graylog2-web-insterface/bin/graylog2-web-interface &

Nu kan du logga in på http://ipadress:9000
ps. om det inte fungerar så se över dina iptables brandväggsregler samt kolla status i SELinux. Graylog2 fungerar utmärkt med SELinux påslaget.

2 kommentarer:

  1. Hi!
    are you fix eror: no connection server.

    SvaraRadera
    Svar
    1. In the webgui?
      Is the server running and is listening for connections(port 12900 by default)? Then i suggest you check the graylog2-web-interface.conf so you have a value in graylog2-server.uris

      Radera