Eine kleine Übersicht der Module
Homelab
Docker Spielereien
Ein paar Docker Spielereien… auf Ubuntu 14.04 LTS
Alternativ bietet sich seitens Canonical noch LXD an. Kenne mich damit jedoch noch zuwenig aus.
Die passende Cheat Sheet
Install Docker
1 2 3 4 5 6 |
echo deb http://get.docker.com/ubuntu docker main > /etc/apt/sources.list.d/docker.list apt-key adv --keyserver pgp.mit.edu --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9 apt-get update apt-get upgrade apt-get install -y lxc-docker-1.7.1 ln -sf /usr/bin/docker /usr/local/bin/docker |
Geht inzwischen noch schneller mit
1 |
wget -qO- https://get.docker.com/ | sh |
PHP Memcached unter Plesk / Ubuntu / NGINX aktivieren
Falls memcached noch nicht auf dem System installiert ist:
1 |
apt-get install memcached php5-memcached |
Zur Kontrolle
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
php -i |grep memcached /etc/php5/cli/conf.d/20-memcached.ini, memcached memcached support => enabled libmemcached version => 1.0.8 memcached.compression_factor => 1.3 => 1.3 memcached.compression_threshold => 2000 => 2000 memcached.compression_type => fastlz => fastlz memcached.serializer => php => php memcached.sess_binary => 0 => 0 memcached.sess_lock_wait => 150000 => 150000 memcached.sess_locking => 1 => 1 memcached.sess_prefix => memc.sess.key. => memc.sess.key. Registered save handlers => files user memcache memcached |
Bilder Gallerie und ImageMagick unter Plesk 12 / Ubuntu
Ich habe ein Album benötigt und habe zuallererst Gallery3 genommen da es schon als Anwendung unter Plesk verfügbar war.
Ich hatte jedoch das Problem, daß es partout nicht das ImageMagick Toolkit nehmen wollte sondern nur GD.
Die fehlende Einstellung fand sich dann bei den PHP Settings unter Plesk.
Plesk Hosting hardening
Die aktuelle Basiskonfiguration von Plesk beim Hosting läßt einige Wünsche offen.
Die Bewertung beim Qualys SSL Test war miserabel. Aber es läßt sich relativ einfach beheben.
NGINX dient als Reverse Proxy und das Hosting findet unter Apache statt.
Die ersten Schritte sind hier bestens beschrieben.
Nun werden noch die dhparam angepaßt.
1 |
openssl dhparam -out /etc/ssl/dh4096.pem 4096 |
Weiter geht es mit diesen Änderungen in den folgenden Dateien.
- /usr/local/psa/admin/conf/templates/custom/nginxWebmailPartial.php
- /usr/local/psa/admin/conf/templates/custom/domain/nginxDomainVirtualHost.php
- /usr/local/psa/admin/conf/templates/custom/server/nginxVhosts.php
IPFire – nginx reverse Proxy
Ursprünglich wollte ich Pound als Reverse Proxy nehmen. Jedoch konnte ich keine Weiterleitung auf Ports einrichten. Daher entschied ich mich dann für NGINX,
nginx mit pakfire installieren.
Dann wollen wir den gesamten externen Verkehr auf SSL umstellen. Der Einfachheit halber werden die jeweiligen Server als Virtual Host konfiguriert. Diese kommen in den sites-available Ordner und im sites-enabled per Symlink verknüpft.
1 2 3 |
cd /etc/nginx/ mkdir sites-available mkdir sites-enabled |
Anschließend die nginx.conf anpassen.
1 2 3 4 5 |
nano /etc/nginx/nnginx.conf # Virtual Hosts - am Ende der Datei einfügen include /etc/nginx/sites-enabled/*; |
OpenNebula 4.12 unter Ubuntu 14.10
1 |
grep -E 'svm|vmx' /proc/cpuinfo |
1 |
wget -q -O- http://downloads.opennebula.org/repo/Ubuntu/repo.key | apt-key add - |
Homelab – Webserver / TS3 / Jabber / Minecraft
Hardware – Überlegungen
Intel NUC / Shuttle XH61V
Intel NUC:
- Box Canyon (DC3217BY) – Core i3-3217U – KEIN Netzwerk Anschluß – HDMI / Thunderbolt
- Ice Canyon (DC3217IYE) – Core i3-3217U – wie oben jedoch mit Netzwerkanschluß, ohne Thunderbolt
- Horse Canyon (DC53427HYE) – Core i5-3427U – Dual HDMI
- Skull Canyon (DC73537SY) – Core i7-3537U?) – noch nicht verfügbar
- Wilson Canyon I3 (D34010WYK) – Core i3-4010U – neueres Modell
- Wilson Canyon I5 (D54250WYK) – Core i5-4250U – neueres Modell
- ca. Preise: DC3217BY 140,- DC3217IY 225,- DC53427HYE 320,- DC733537SY ?? DC34010 245,- DC54250WYK 322,-
Zabbix Agent auf Proxmox Server installieren
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
cd ~ mkdir zabbix/ cd zabbix/ wget http://www.zabbix.com/downloads/2.0.6/zabbix_agents_2.0.6.linux2_6_23.amd64.tar.gz tar fvxz zabbix_agents_2.0.6.linux2_6_23.amd64.tar.gz cp ~/src/zabbix/bin/* /usr/bin/ cp ~/src/zabbix/sbin/* /usr/sbin/ groupadd zabbix useradd -g zabbix zabbix mkdir /var/log/zabbix-agent chown zabbix:zabbix /var/log/zabbix-agent/ cp ~/src/zabbix/conf/zabbix_agent.conf /usr/local/etc/ cp ~/src/zabbix/conf/zabbix_agentd.conf /usr/local/etc/ nano /usr/local/etc/zabbix_agent.conf |
Ändere
1 |
Server=127.0.0.1 in Server=123.456.789.123 |
Logfile konfigurieren
1 2 3 |
nano /usr/local/etc/zabbix_agent.conf LogFile=/var/log/zabbix-agent/zabbix_agentd.log nano /etc/init.d/zabbix-agent |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 |
#! /bin/sh counter=0 zabbix_counter=$(ps -ef | grep zabbix_agentd | grep -v grep | wc -l) start(){ echo "-------------------------------------------------------------------" echo " LAUNCHING ZABBIX AGENT" if [ $zabbix_counter -gt 0 ]; then echo " * Zabbix agent was previously running" echo " * Number of Zabbix agentd instances= $zabbix_counter" echo "-----------------------------------------------------------------" fi # Checking if the user is able to start the agent.... if the user is not able to, script performs su to # the user zabbix and starts the agent if [ $(whoami) != "zabbix" ];then sudo -u zabbix zabbix_agentd else # Script is acting as the zabbix user, so it can start the agent. zabbix_agentd fi sleep 10 zabbix_counter=$(ps -ef | grep zabbix_agentd | grep -v grep | wc -l) if [ $zabbix_counter -gt 0 ]; then echo " * Zabbix agent succesfully started" echo " * Number of zabbix agentd instances= $zabbix_counter" echo "-------------------------------------------------------------------" else echo " * Zabbix agent couldn't be started, check Zabbix logs" echo "-------------------------------------------------------------------" fi } stop(){ # Checking if the user is able to stop the agent.... if the user is not able to, script performs su to # the user zabbix and kills the agent. Also script tries to kill zabbix-agent processes 5 times using a counter, if at # the fith try the agent is still there, script outputs a message to the console. echo "-------------------------------------------------------------------" echo " STOPPING ZABBIX AGENT" if [ $zabbix_counter -eq 0 ]; then echo " * Zabbix agent was not running on this machine" echo "-------------------------------------------------------------------" fi while [ $zabbix_counter -gt 0 ] && [ $counter -lt 5 ] ; do let counter=counter+1 echo " * Number of Attempts (Max 5)=$counter" echo " * Stopping zabbix.." echo " * Number of zabbix agentd instances= $zabbix_counter" if [ $(whoami) != "zabbix" ];then sudo -u zabbix killall zabbix_agentd > /dev/null & else killall zabbix_agentd > /dev/null & fi sleep 10 # Script has a 10 second delay to avoid attempting to kill a process that is still shutting down. If the script # can't kill the processes, an error will appear. # After 10 seconds script checks again the number of zabbix_agentd processes running, # if it's 0, script will exit the loop and continue on zabbix_counter=$(ps -ef | grep zabbix_agentd | grep -v grep | wc -l) done if [ $zabbix_counter -gt 0 ]; then echo " * Zabbix agent couldn't be stopped, check Zabbix logs" echo "-------------------------------------------------------------------" fi if [ $zabbix_counter -eq 0 ]; then echo " * Zabbix agent successfully stopped" echo "-------------------------------------------------------------------" fi } restart(){ stop # Gives system some time to stop processes before script restarts service sleep 10 # Now script can start the agent again start } case "$1" in start) start ;; stop) stop ;; restart) restart ;; *) echo "Usage: zabbix {start|stop|restart}" exit 1 esac exit 0 |
1 2 3 4 |
chmod 744 /etc/init.d/zabbix-agent ln -s /etc/init.d/zabbix-agent /sbin/zabbix-agent update-rc.d zabbix-agent defaults |
Ausgabe
1 2 |
update-rc.d: using dependency based boot sequencing insserv: warning: script 'zabbix-agent' missing LSB tags and overrides |
aus /etc/init.d/sekeleton die ersten paar Zeilen herauskopieren und in /etc/init.d/zabbix-agent herein kopieren
1 2 3 4 5 6 7 8 9 10 11 |
#! /bin/sh ### BEGIN INIT INFO # Provides: zabbix-agent # Required-Start: $remote_fs $syslog # Required-Stop: $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Example initscript # Description: This file should be used to construct scripts to be # placed in /etc/init.d. ### END INIT INFO |
Zeile Provides: entsprechend anpassen.
Diese Lösung schien in manchen Fälle Probleme zu bereiten.
Folgender Weg funktioniert definitiv:
Entsprechenden Agent unter diesem Link herunter laden: http://repo.zabbix.com/zabbix/2.0/debian/pool/main/z/zabbix/
1 2 3 4 5 6 |
cd ~ mkdir zabbix cd zabbix wget http://repo.zabbix.com/zabbix/2.0/debian/pool/main/z/zabbix/zabbix-agent_2.0.6-2+wheezy_amd64.deb dpkg -i zabbix-agent_2.0.6-2+wheezy_amd64.deb nano /etc/zabbix/zabbix_agentd.conf |
Die üblichen Änderung an der Agent konfiguration kann nun vorgenommen werden (Server IP / Log Verzeichnis / UserParameter usw.)
Der Agent wird mit
[code lang=”bash”]/etc/init.d/zabbix-agent restart[/code]
neu gestartet
Für die UserParameter fehlen noch z.B. die SmartMonTools.
Diese werden mit
1 |
apt-get install smartmontools |
nachinstalliert.
UserParameter Einstellungen befinden sich auf der Zabbix Konfigurationsseite.