Kurztipp: proxysql (1.3.4) mit Galera und proxysql_galera_checker.sh

Genauere Informationen zu ProxySQL mit Galera findet man hier. Dort ist auch erklärt wie man das Skript bei proxysql nutzen kann. Das Skript wird vorzugsweise vom ProxySQL Scheduler aufgerufen. Man kann es aber natürlich auch einfach mal auf der Commandline testen.
Meiner Meinung nach wird sich das eh im Laufe der nächsten Versionen nochmal grundlegend ändern. Das ist alles relativ umfangreich,  daher nur ein paar Hinweise.

Das Skript  liegt unter
/usr/share/proxysql/tools/proxysql_galera_checker.sh

Ein Aufruf sieht in etwa so aus

$ ./proxysql_galera_checker.sh 1 0 2 0 /var/lib/proxysql/galerachecker.log

 

Das erste Parameter gibt die Hostgroup für der Writer an, das zweite die Reader Hostgroup. Die 2  ist die Anzahl der genutzten Writers und die letzte 0 gibt an ob Writer auch als Reader agieren sollen wenn sie in der gleichen Hostgroup wie die Reader sind und als letztes Argument der Pfad zum Log.

Schaut man nun in das Logfile findet man folgendes:

Fr 3. Mär 13:22:10 CET 2017 ###### proxysql_galera_checker.sh SUMMARY ######
Fr 3. Mär 13:22:10 CET 2017 Hostgroup writers 1
Fr 3. Mär 13:22:10 CET 2017 Hostgroup readers 0
Fr 3. Mär 13:22:10 CET 2017 Number of writers 2
Fr 3. Mär 13:22:10 CET 2017 Writers are readers 0
Fr 3. Mär 13:22:10 CET 2017 log file /var/lib/proxysql/proxysql_galera_checker.log
Fr 3. Mär 13:22:10 CET 2017 ###### HANDLE WRITER NODES ######
Fr 3. Mär 13:22:10 CET 2017 --> Checking WRITE server 1:galera3:3306, current status ONLINE, wsrep_local_state 4
Fr 3. Mär 13:22:10 CET 2017 server 1:galera3:3306 is already ONLINE: 1 of 2 write nodes
Fr 3. Mär 13:22:10 CET 2017 --> Checking WRITE server 1:galera4:3306, current status ONLINE, wsrep_local_state 4
Fr 3. Mär 13:22:10 CET 2017 server 1:galera4:3306 is already ONLINE: 2 of 2 write nodes
Fr 3. Mär 13:22:10 CET 2017 ###### HANDLE READER NODES ######
Fr 3. Mär 13:22:10 CET 2017 --> Checking READ server 0:galera1:3306, current status ONLINE, wsrep_local_state 4
Fr 3. Mär 13:22:10 CET 2017 server 0:galera1:3306 is already ONLINE
Fr 3. Mär 13:22:10 CET 2017 --> Checking READ server 0:galera2:3306, current status ONLINE, wsrep_local_state 4
Fr 3. Mär 13:22:10 CET 2017 server 0:galera2:3306 is already ONLINE
Fr 3. Mär 13:22:10 CET 2017 --> Checking READ server 0:galera3:3306, current status ONLINE, wsrep_local_state 4
Fr 3. Mär 13:22:10 CET 2017 Changing server 0:galera3:3306 to status OFFLINE_SOFT. Reason: making ONLINE writer node as read OFFLINE_SOFT as well because writers should not be readers
Fr 3. Mär 13:22:10 CET 2017 --> Checking READ server 0:galera4:3306, current status ONLINE, wsrep_local_state 4
Fr 3. Mär 13:22:10 CET 2017 Changing server 0:galera4:3306 to status OFFLINE_SOFT. Reason: making ONLINE writer node as read OFFLINE_SOFT as well because writers should not be readers
Fr 3. Mär 13:22:10 CET 2017 ###### SUMMARY ######
Fr 3. Mär 13:22:10 CET 2017 --> Number of writers that are 'ONLINE': 2 : hostgroup: 1
Fr 3. Mär 13:22:10 CET 2017 --> Number of readers that are 'ONLINE': 2 : hostgroup: 0
Fr 3. Mär 13:22:10 CET 2017 ###### Loading mysql_servers config into runtime ######

Wir haben also 4 Nodes,  Galera3  und 4 aus Hostgroup 1 werden zu Writern und Galera1 und 2 aus Hostgroup 0 werden zu Readern. Galera3 und 4 sind auch in Hostgroup 1, dort werden sie aber Aufgrund des „writes should not be readers“ Arguments deaktiviert.

Wichtig dabei ist:

„…ProxySQL uses a chain of query rules to figure out the routing. If none of the rules apply to a query, query will be routed to the default hostgroup for the user, which created the connection.“

https://severalnines.com/blog/how-proxysql-adds-failover-and-query-control-your-mysql-replication-setup

Das ganze Konstrukt ergibt quasi nur Sinn wenn man auch mit query rules arbeitet.  So kann man aber „bequem“ read/write Anfragen skalieren und die volle Kapazität des Clusters nutzen.

So eine richtige Meinung zu ProxySQL habe ich noch nicht. Diese Sache mit den Hostgruppen finde ich jedenfalls ziemlich gut.  Ob  nun MaxScale oder ProxySQL die bessere Lösung ist kann ich nicht ohne weiteres sagen, sondern das hängt sicherlich von der jeweiligen Anforderung ab.  Für genauere Aussagen müsste man sich das mal in einer Produktivumgebung anschauen und sich ausführlicher mit den beiden Tools beschäftigen. Die Lizenz von ProxySQL ist natürlich deutlich sympathischer.

Link:
http://www.proxysql.com/compare

 

Malen nach Zahlen

Ich hab ja rein maltechnisch null Talent. Ich schaffe grad mal so mit meiner Tochter ein Haus und Bäume mit Kreide auf unseren Bürgersteig zu malen. Seit kurzer Zeit versuche ich mich an diversen Brettspielminiaturen. Das schöne daran ist, dass man auch talentlos zufriedenstellende Ergebnisse erzielen kann. Zombicide zum starten kann ich nur empfehlen auch wenn die Miniaturen nicht besonders gut sind. Zombies sind sehr kritiklos wenn es ums Anmalen geht.

img_20161128_231021

Meine ersten beiden Versuche. Sieht auf jeden Fall besser als das olle grau aus.img_20161130_183054

BicBucStriim 1.3.6 + OMV 2.2.4

BicBucStriim ist ein Webinterface für eure Calibre Bibliothek. Primär gedacht für NAS Systeme auf denen man nicht ein komplettes Calibre laufen haben will. Natürlich kann man Calibre auch auf einem NAS laufen haben…habe ich auch, aber BicBucStriim ist deutlich schlanker und Ressourcen schonender. Voraussetzung ist, dass Ihr Calibre zur Ebookverwaltung nutzt und die Daten auf eurem OMV-NAS ablegt.

Ladet euch unter http://projekte.textmulch.de/bicbucstriim/downloads/  die aktuellste Version runter (oder github).

Entpacken und nach /var/www/openmediavault/bbs verschieben. Der data Ordner sollte für alle beschreibbar sein. Für faule:

chown -R openmediavault:www-data /var/www/openmediavault/bbs

chmod -R 775 /var/www/openmediavault/bbs

Kann man auch etwas restriktiver machen, aber da das NAS eh im lokalen Netzwerk ist, machen wir es uns mal einfach.

apt-get install sqlite3 php5-sqlite php5-intl php5-gd

In die /etc/nginx/sites-enabled/openmediavault-webgui kommt zusätzlich folgendes:

location /bbs/ {
rewrite ^/(bbs/img/.*)$ /$1 break;
rewrite ^/(bbs/js/.*)$ /$1 break;
rewrite ^/(bbs/style/.*)$ /$1 break;
rewrite ^/bbs/$ /bbs/index.php last;
rewrite
^/bbs/(admin|authors|authorslist|login|logout|metadata|search|series|serieslist|tags|tagslist|titles|titleslist|opds)/.*$
/bbs/index.php last;
}

Dann noch ein

/etc/init.d/nginx reload

und fertig. Unter http://eueromv/bbs/installerchedck.php könnt Ihr nochmal schauen ob nichts mehr rot angezeigt wird

Eventuell wird beim nächsten OMV Update die Nginx Konfiguration neu geschrieben oder eventuell wird auch der Ordner bbs aus dem docroot von OMV gelöscht. Schöner wäre natürlich ein eigener Vhost, daß machen wir aber erst wenn es so weit ist ;-).

Anmerkungen:

Eine Alternative zu BicBucStriim ist COPS. Die Installation ist ähnlich.

Seit einer der letzten Calibre Versionen braucht man bei OMV libgl1-mesa-glx damit es headless läuft.

apt-get install libgl1-mesa-glx

 

 

Kurztipp: Spam Versand ermöglichen

Will man externen den Versand von Spam über den eigenen Server ermöglichen, kann man dafür eine nicht mehr gepflegte Gallery2 Installation bereitstellen.
Geholfen hat ein  Nagios Check für die  mailq und php maillog in der php.ini zu aktivieren. Schnell bemerkt, schnell behoben, trotzdem ärgerlich da in den ca. 30 Minuten doch einiges an Spam raus ging.
Daher mein Tipp: Software, die nicht mehr genutzt wird, löschen oder hinter htaccess packen.

Kurztipp: Gnu Social XMPP Bot

Das wird wohl ähnliche Gründe wie das roundcube Problem aus dem letzten Kurztipp haben. Der XMPP Bot von gnu social kann sich nicht mehr an der ejabberd Instanz anmelden. Da wird sich PHP wohl auch an den selfsigned Zertifikat von ejabberd stören. Geholfen hat ein Verzicht auf Verschlüsselung ;-). Der XMPP Bot meldet sich also unverschlüsselt an den lokalen ejabberd an.

Babycam

 

91hB4bF56dL

FI9821W V2.1 lautet die Bezeichnung laut Webinterface. Die Kamera haben  wir uns als zusätzliche Sicherheit angeschafft als Schatzmarie beschlossen hat, auch im Bett umher krabbeln zu wollen. Darauf gekommen bin ich über Jan, die haben eine ähnliche Kamera und sind damit sehr zufrieden. So kann man bequem via Android (iihfon geht bestimmt auch), Kodi (XMBC) Addon (geht auch direkt via rtsp Stream), vlc oder über das Webinterface schauen, ob alles mit der Schatzmarie in Ordnung ist. Die Nachtsicht ist hervorragend und auch bei wenig Licht liefert die Kamera ein gutes Bild.

Natürlich hat das Teil auch eine großen Nachteil. Es existiert kein Linux Plugin für den Browser um das Teil unter Linux nutzen zu können. Um es richtig zu konfigurieren kommt man um Windows nicht herum. Auch der Videostream des Webinterfaces lässt sich somit nur unter Windows anschauen.
Die Kamera ersetzt kein 08/15 Babyphone , aber ergänzt es sehr gut.

Streaming:

 vlc rtsp://username:password@IP.ADDRESS.OF.CAM:PORT/videoMain
vlc rtsp://username:password@IP.ADDRESS.OF.CAM:PORT/videoSub
vlc  rtsp://username:password@IP.ADDRESS.OF.CAM:PORT/audio

Snapshot:

http://IP.ADDRESS.OF.CAM:PORT/cgi-bin/CGIProxy.fcgi?cmd=snapPicture&usr=username&pwd=password

Rest findet man im Link unten.

Eventuell kommt hier noch etwas mehr zu…sobald Zeit.

Tipps zur Linuxnutzung findet man unter:

http://www.gaggl.com/2014/02/getting-foscam-ip-cameras-to-work-from-linux-ubuntu/

Kurztipp: google+ lässt sich nicht updaten/installieren bei cm 12 auf dem Nexus 4

Google+ lies sich nicht mehr installieren bzw .updaten auf meinem Nexus 4 mit cm12. Updaten / Installieren im  Playstore ergab einen 505 Fehler.

Installieren via adb lieferte:

adb install com.google.android.apps.plus-4.9.0.84567213-413607930-minAPI19.apk
3790 KB/s (26337584 bytes in 6.785s)
pkg: /data/local/tmp/com.google.android.apps.plus-4.9.0.84567213-413607930-minAPI19.apk
Failure [INSTALL_FAILED_DUPLICATE_PERMISSION perm=com.google.android.gallery3d.permission.GALLERY_PROVIDER pkg=com.android.gallery3d]

Die Galerie App ist wohl bei Android 5 rausgeflogen und wird von der „Fotos“ App ersetzt. Dadurch kommt es wohl zu Überschneidung bei den Rechten und google+ wird die Installation verweigert. Geholfen hat bei mir…damit kann man sich auch das ganze Telefon zerschießen, also vorsichtig sein.

adb shell
su
mount -o rw,remount /system
rm -rf /system/app/Gallery2/ 

dann einfach rebooten

Die alte Galerie App ist dann weg und google+ kann wieder installiert bzw. geupdatet werden.

http://wiki.cyanogenmod.org/w/Barebones

 

 

 

ejabberd Nagios

Es gibt da bestimmt tolle Plugins für Nagios, die ich nicht gefunden habe, aber ich wollte nur einen Graphen für meine Centreon/Nagios Installation.

#!/bin/bash
connections=$(ejabberdctl connected-users-number)
echo "Benutzer:$connections | 'Benutzer'=$connections"
exit 0

Munin hat ejabberd mit dabei und malt schöne Graphen für die Hippos.