Sonntag, 3. Dezember 2017

Proof of Concept Environment for PHPIPAM with Docker

Ich verwende zum Verwalten von IP Adressen nun schon seit längerem PHPIPAM
https://github.com/phpipam/phpipam ).
Da ich vor einem Upgrade gerne die neue Version unabhängig von der Produktivumgebung teste habe ich mir mal die Möglichkeit angesehen dies auf dem Lokalen Rechner mit Docker zu tun.
Zum Testen der POC Umgebung einfach das Gitlab Repository Clonen:
https://gitlab.com/rstumpner/sam-poc-docker-phpipam.git
Und mit docker-compose starten:
 git clone https://gitlab.com/rstumpner/sam-poc-docker-phpipam.git
 cd sam-poc-docker-phpipam
 docker-compose up
Nun ist die Demo Umgebung im Browser erreichbar.
http://localhost
Es kann die Installation mit dem Startup Wizzard von PHPIPAM abgeschlossen werden.
Damit ich die Testinstallation gleich mit einem Backup meiner Produktivinstanz versorgen kann wird die Datei MIGRATION.SQL in den Container kopiert.
Links:
PHPIPAM Github Repository:
https://github.com/phpipam/phpipam
POC PHPIPAM with Docker Repository:
https://gitlab.com/rstumpner/sam-poc-docker-phpipam

Samstag, 28. Oktober 2017

Präsentationen mit Markdown und showoff

Lokaler Webserver der Markdown Dateien in Präsentationen verwandelt und auch Dateien local zur Verfügung stellt.
  • Installation:
    • gem install showoff
  • Initialisieren der Präsentation mit showoff
    • showoff init
  • Verteichnisstruktur:
.
├── _files
│   └── share
├── _images
├── one
│   ├── 00_section.md
│   ├── 01_slide.md
│   └── 02_slide.md
├── showoff.json
└── stats
└── viewstats.json

Samstag, 21. Oktober 2017

Data Retention mit Chef am Beispiel von Freeradius

Ich weis , folgendes Problem , kann unter Linux einfacher gelöst werden , aber ist auch eine gute Übung um mit Chef etwas vertrauter zu werden.

Ziel ist es Logdaten nach einem gewissen Zeitraum zu löschen . Ist Chef Installiert kann dieses Script sehr einfach auf jeden Server ausgeführt werden. Auch von Kollegen die , die Logverzeichnisse der installierten Services vielleicht nicht kennen.

Folgenden Inhalt in ein default.rb kopieren:

#
# Cookbook Name:: radius-logfile-delete
# Recipe:: default
#
# cc 2017, Roland Stumpner
#
#
log 'remove old radius log files'
#::Dir['/var/log/radius/radacct/**/*auth*'].each { |f| ::FileUtils.rm_rf(f) if ::File.stat(f).ctime < (Time.now - 60*60*24*7) }


Dir['/var/log/radius/radacct/**/*auth*'].each do |path|
  file path do
   backup false
   action :delete
   only_if { ::File.stat(path).ctime < (Time.now - 60*60*24*30) }
 end
end


Dir['/var/log/radius/radacct/**/*reply*'].each do |path|
  file path do
    backup false
    action :delete
    only_if { ::File.stat(path).ctime < (Time.now - 60*60*24*30) }
  end
end


Starten mit Chef Apply: chef-apply default.rb

Freitag, 20. November 2015

Some hints on GIT

Change the default Brunch:

  git clone -b 1.2 http://github.com/phpipam/phpipam.git

Change the default Directory:

  git http://github.com/phpipam/phpipam.git phpipam

Skip the SSL Verification:

  git -c http.sslVerify=false clone -b 1.2 http://github.com/phpipam/phpipam.git phpipam

Montag, 12. Oktober 2015

Ubuntu Packages nach files durchsuchen

Können Abhängigkeiten nicht immer gleich gelöst werden stellt sich oft die Frage in welchem Packet denn die gesuchte Datei enthalten ist.
Abhilfe schafft hier apt-file unter Ubuntu und Debian Systemen.

apt-file Installieren:

apt-get install apt-file

apt-file cache füllen:

apt-file update

Datei in den Paketen suchen:

apt-file search 'method.h'

Nun werden in der Ausgabe Links das Paket und Rechts das File angezeigt.


Mittwoch, 7. Oktober 2015

Graylog Änderung des Java Heap Size

ubuntu@graylog:/etc/graylog$ cat /opt/graylog/service/graylog-server/run

#!/bin/sh
exec 2>&1

umask 077
export JAVA_HOME=/opt/graylog/embedded/jre
export GRAYLOG_SERVER_JAVA_OPTS="-Xms4g -Xmx4g -XX:NewRatio=1 -XX:PermSize=128m -XX:MaxPermSize=256m -server -XX:+ResizeTLAB -XX:+UseConcMarkSweepGC -XX:+CMSConcurrentMTEnabled -XX:+CMSClassUnloadingEnabled -XX:+UseParNewGC -XX:-OmitStackTraceInFastThrow"

# check if mongodb is up
timeout 600 bash -c "until curl -s http://127.0.0.1:27017; do sleep 1; done"
exec chpst -P -U graylog -u graylog /opt/graylog/embedded/bin/authbind $JAVA_HOME/bin/java $GRAYLOG_SERVER_JAVA_OPTS -jar -Dlog4j.configuration=file:///opt/graylog/conf/log4j.xml -Djava.library.path=/opt/graylog/server/lib/sigar/ /opt/graylog/server/graylog.jar server -f /opt/graylog/conf/graylog.conf


Änderung der fett Markierten Werte 1g auf 4g um die Leistung des Graylog2 Systems zu erhöhen.