Przeglądaj źródła

Readme fuer ubuntu(linux) hinzugefuegt.

cajuskamer 7 lat temu
rodzic
commit
de43a64abc
1 zmienionych plików z 182 dodań i 0 usunięć
  1. 182 0
      README.ubuntu.md

+ 182 - 0
README.ubuntu.md

@@ -0,0 +1,182 @@
+# ffdo Status Setup unter Linux
+
+Hier wird beschrieben wie das ffdo status System unter linux aufgesetzt werden kann. Dabei werden vorwiegend die Schritte beschrieben die notwendig sind um das System zu installieren und sich von der Installation von anderen Betriebssystemen unterscheiden.
+Also Basis dient ein [Ubuntu](https://ubuntu.com) System. Andere debian basierte Systeme sind sehr ähnlich und Distributionen mit rpm Nutzung sind ähnlich.
+
+### Installation benötigter Programme
+
+#### Werkzeuge zum Erstellen von nodes2grafana
+nodes2grafana wird lokal gebaut.
+Die Basis der Entwicklung ist das Meta Paket **build-essential**:
+
+    sudo apt-get -y install build-essential
+
+Zusätzlich wird noch **smlnj** benötigt:
+
+    sudo apt-get -y install smlnj ml-lpt
+
+Mit dem Programm git kann man den Quellcode von nodes2grafana kopieren.
+
+Installieren von git:
+
+    sudo apt-get -y install git
+
+
+
+#### Werkzeuge zum Erstellen von nodes2grafana
+
+Installation weiterer notwendiger Services
+
+    sudo apt -y install prometheus prometheus-node-exporter grafana
+
+
+
+### Erstellen von nodes2grafana
+
+
+#### nodes2grafana Erzeugen
+
+nodes2grafana wird lokal gebaut. Dazu muss der Quellcode geladen und übersetzt werden.
+
+Laden des nodes2grafana Quellcodes mit **git**:
+
+    git clone https://git.ffdo.de/altlast/nodes2grafana.git
+
+
+Alternativ kann man auch das bereits vorhandene **wget** oder **curl** verwenden um den Quellcode von [nodes2grafana](https://git.ffdo.de/altlast/nodes2grafana/archive/master.tar.gz) als Paket  zu laden. Das Paket muss dann an geeigneter Stelle entpackt werden.
+
+Übersetzen des Programms:
+
+    cd nodes2grafana
+    make -C conf && make
+    cp conf/substitutions.conf.default conf/substitutions.conf.local
+    vi conf/substitutions.conf.local
+
+
+## Betrieb
+
+Nach der Übersetzung nodes2grafana kann nun das System in Betrieb genommen werden.
+
+### Installation von nodes2grafana 
+
+Installation von nodes2grafana
+
+     sudo mv conf/substitutions.conf.local /etc/nodes2grafana.conf
+     sudo make install
+
+
+
+### prometheus-node-exporter anpassen
+
+prometheus-node-exporter Überprüfen:
+
+    sudo prometheus-node-exporter -web.listen-address=localhost:9100 -collector.textfile.directory=/var/tmp/node_exporter -collectors.enabled=textfile
+
+Das kann folgende Ausgaben liebern, wenn schon ein prometheus-node-exporter service läuft:
+
+    INFO[0000] Enabled collectors:                           file=node_exporter.go line=142
+    INFO[0000]  - textfile                                   file=node_exporter.go line=144
+    INFO[0000] Starting node_exporter v0.0.0.dev at localhost:9100  file=node_exporter.go line=176
+    FATA[0000] listen tcp 127.0.0.1:9100: bind: address already in use  file=node_exporter.go line=179
+
+In diesem Fall sollte man den Service prometheus-node-exporter stoppen:
+    sudo systemctl stop prometheus-node-exporter.service
+
+prometheus-node-exporter testen:
+    sudo prometheus-node-exporter -web.listen-address=localhost:9100 -collector.textfile.directory=/var/tmp/node_exporter -collectors.enabled=textfile
+
+Das muss man dann mit Cntrl-C abbrechen.
+Anschließend werden die default Start Parameter von prometheus-node-exporter angepasst:
+
+    sudo vi  /etc/default/prometheus-node-exporter
+
+Die ersten Zeilen sollten etwa so aussehen:
+
+    # Set the command-line arguments to pass to the server.
+    ARGS='-web.listen-address=localhost:9100 -collector.textfile.directory=/var/tmp/node_exporter -collectors.enabled=textfile'
+
+Jetzt ist der prometheus-node-exporter Service neu zu starten:
+    sudo systemctl restart prometheus-node-exporter.service
+
+
+### prometheus Installation anpassen
+
+Zuerst werden die Standard Startparameter angepasst:
+
+     sudo vi /etc/default/prometheus
+
+     # Set the command-line arguments to pass to the server.
+     ARGS="-config.file=/etc/prometheus/prometheus.yml -storage.local.retention 336h0m0s"
+
+
+Die Konfigurationsdatei <big>/etc/prometheus/prometheus.yml</big> passt soweit.
+
+    sudo vi /etc/prometheus/prometheus.yml
+
+
+Also direkt den Service (neu) starten:
+    sudo systemctl restart prometheus.service
+
+Ein kleiner Test, ob prometheus soweit gut aussieht, bekommt man dann auf der Seite bekommen: [http://localhost:9100/metric]
+
+
+### grafana Installtion anpassen
+
+Abschließend ist die grafana anzupassen:
+
+    sudo vi /etc/grafana/grafana.ini
+
+Hiermit wird er anonyme Ledezugriff ermöglicht:
+
+    #################################### Anonymous Auth ##########################
+    [auth.anonymous]
+    # enable anonymous access
+    ;enabled = false
+    enabled = true
+
+    # specify organization name that should be used for unauthenticated users
+    ;org_name = Main Org.
+    org_name = ffdo
+
+    # specify role for unauthenticated users
+    ;org_role = Viewer
+    org_role = Viewer
+
+
+So ziemlich am Ende sind zwei Zeilen anzupassen um de vordefinierten Übersichten in grafana bekannt zu machen:
+
+    ...
+    ;#################################### Dashboard JSON files ##########################
+    [dashboards.json]
+    enabled = true
+    path group: '= /var/lib/grafana/dashboards
+
+
+Das Verzeichnis **/var/lib/grafana/dashboards** sollte bei der Installation von nodes2grafana bereits angelegt und gefüllt worden sein. Ansonsten muss man das per Hand machen:
+
+    sudo mkdir /var/lib/grafana/dashboards
+    sudo cp /var/db/grafana/dashboards/FF-DO-status* /var/lib/grafana/dashboards/
+    sudo chown -R grafana:grafana /var/lib/grafana/dashboards
+
+Jetzt ist der grafana Service neu zu starten:
+    sudo systemctl restart grafana.service
+
+
+
+Jetzt muss man noch in grafana als Datenquelle der lokale prometheus Service eintragen werden.
+Eine detaillierte Anleitung gibt es auch unter [prometheus](http://docs.grafana.org/features/datasources/prometheus/)
+
+Grafana aufrufen:
+  (http://localhost:3000')
+
+Dann als 'admin' einloggen, Password 'admin'.
+Anschließend unter [http://localhost:3000/datasources] eine neue Datenquelle hinzufügen:
+
+    Name:       prometheus-local (beliebig)
+    Default:    aktiviert
+    Type:       Prometheus
+    
+    Url:        http://localhost:9090
+    Access:     direct
+    
+Auf 'Add' klicken.