KDE4.DE

KDE4 Info Blog. Zusätzlich werden viele weitere Linux Themen behandelt

Sonar + SVN + Kerberos – svn: E170001: Negotiate

Erstmal möchte ich mich nun nach längerer, gesundheitsbedingter Pause, mal wieder melden, doch leider fehlte bisher das richtige Thema, nun habe ich eins :-).

Die Herausforderung bestand darin einen SonarQube Server ans laufen zu bekommen, der bestehende Projekte zu gefüttert bekommt. Dazu verwende ich den Kollegen Jenkins und entsprechend den SonarQube-Scanner. Das Subversion Repository was verwendet wird ist via Kerberos geschützt und greift im Hintergrund zur Authentifizierung auf ein Windows ActiveDirectory zu.

Ich habe im SonarQube das SCM SVN Plugin installiert  und entsprechend mit credentials ausgestattet habe aber permanent folgenden Fehler bekommen

java.lang.IllegalStateException: Error when executing blame for file
....
Caused by: org.tmatesoft.svn.core.SVNAuthenticationException: svn: E170001: Negotiate authentication failed: 'No valid credentials provided'

Abhilfe schaffte dann im Jenkins selbst den Sonar-Scanner Task beim Parameter 
JVM Options = -Dsvnkit.http.methods=Basic,Digest,Negotiate,NTLM 

Auszustatten, denn von Hause aus braucht das SvnKit welches im Sonar Plugin verwendet wird die Basic Authentication, so teilen wir der JVM mit, dass für SVN Kit auch Negotiate zugelassen ist, dann klappt es auch mit der Authentifizierung.

Downtime wegen defekter Platten

Nachdem ich feststellte, dass eine Platte des Servers nach dem Reboot nicht mehr mit ins Raid aufgenommen habe ich diese mittels SMART – Tools untersucht. Ich konnte feststellen, dass bereits 3200 Sektoren automatisch „allocated“ wurden :-(. Anruf beim Server Hoster ergab Plattentausch. Gemacht getan, Server fährt normal hoch, platte wird ins Raid array aufgenommen. Sync bricht nach 30% ab, wegen Lesefehler auf der einzigen aktiven Platte :-(. Letztendlich blieb nur ein Fullbackup und der tausch der zweiten Platte. Natürlich erfolgte dann noch ein Restore der gesicherten Daten.

Nachdem Restore hatte ich allerdings Probleme dass die Kiste sauber bootete.

1. Sicherung der neuen fstab (Umstellung auf UUID für die Platten anzusprechen)

2. Sicherung von /boot da hier andere Kernelversionen als in der grub config standen.

Nun schnurrt der Server wieder vor sich hin.

TokuDB und das liebe Linux

TokuDB von Tokutek.com ist seit ein paar Tagen OpenSource. Erstmal Daumen hoch !. Es handelt sich dabei um eine Storageengine für das DBMS System Mysql, oder eins seiner Derivate, z.B MariaDB. Letztere verschmelzt gerade mit den Entwicklern des Percona Servers. Auch dafür Daumen hoch!.

ABER

Wer Probleme hat das fertige Binary Build von MariaDB + TokuDB unter Centos oder RHEL zum laufen zu bekommen befolge oder besser prüfe den folgenden Sachverhalt, bei mir hat es geholfen, dass der Dienst endlich startet.

Im Errorlog taucht folgendes auf:

130507 13:17:07 [ERROR] Plugin 'TokuDB' init function returned error.
130507 13:17:07 [ERROR] Plugin 'TokuDB' registration as a STORAGE ENGINE failed.
130507 13:17:07 [ERROR] Unknown/unsupported storage engine: TokuDB
130507 13:17:07 [ERROR] Aborting

Das war der einzige erkennbare Fehler, aber entscheidend sind genau die zwei Zeilen im Log davor

Transparent huge pages are enabled, according to /sys/kernel/mm/redhat_transparent_hugepage/enabled
Transparent huge pages are enabled, according to /sys/kernel/mm/transparent_hugepage/enabled

nach Stunden langem googlen habe ich einen Kommentar in einem Blog gefunden, der genau darauf verwiesen hat. Unter den beiden Systemen Centos und RHEL muss man noch folgendes ausführen, damit der Dienst sauber startet

echo never >   /sys/kernel/mm/redhat_transparent_hugepage/enable

Quelle:

Android und Apps mit HTTPS – so geht’s

Eigentlich wollte ich nur ein paar Apps ausprobieren, und das ganze im Firmenumfeld. Ich bin dann relativ schnell gescheitert, die Apps haben immer die Verbindungsparameter für invalide gehalten, und geschrieben ich solle die Einstellungen überprüfen. Nach einiger Recherche, denn ich bin mir sehr sicher das die URLs und die Credentials stimmen, habe ich heraus gefunden, dass viele Apps nicht berücksichtigt haben, dass man Zertifikate selber signieren kann. Dies wird oft bei internen Applikationen gemacht.

Lösung

Um den ganzen Herr der Lage zu werden, habe ich mir das „root“ Zertifikat mit dem unsere IT alle selbst signierten Zertifikate unterschreibt geben lassen. Man muss dieses physisch auf dem Android Gerät speichern und mit der Dateiendung „.crt“ versehen. Klickt man nun mit einem Dateiexplorer auf diese Datei wir einem das öffnen mit dem Zertifikatsimporter von Android geöffnet. Einmal damit im Gerät hinterlegt, kann man problemlos mit jedem App via https auf die internen Systeme zugreifen.

Besserer Lösungsvorschlag an App Entwickler

Liebe App Entwickler da draußen, bitte seht bei euren Apps vor, dass es auch Zertifikate gibt, die nicht von einem offiziellen Trustcenter signiert sind. Man kann dazu, wie beim Webbrowser, eine Rückfrage an den Anwender stellen, ob er dem Zertifikat dennoch vertrauen möchte, anstelle ihn mit „Bitte überprüfe deine URL sowie Usernamen und Kennwort“ zu belasten.

 

Was denkt ihr?

Neuer Server neues Glück – Apache2

Auch der Apache 2 war nicht optimal konfiguriert, maximal für ein bis zwei Webseiten, aber mehr nicht.

Gehofen haben die Einstellungen die ich hier gefunden habe:

  • http://www.liquidweb.com/kb/apache-optimization/

Viel Spass damit

Neuer Server neues Glück

Endlich, ein neuer Server, allerdings mit Plesk zum administrieren. Die Standardeinstellungen z.B für den Imap Server, erlauben den gleichzeitigen Zugriff von einer IP Adresse nur begrenzt. Wer nun viele Geräte zu Hause im WLAN hat und gleichzeitig die Mails überall synchron haben möchte kommt nicht drum herum die Einstellungen zu modifizieren.

Undo so geht es:

In den beiden Dateien /etc/courier-imap/imapd und pop3d

Die beiden Werte der Variablen MAXDAEMONS und MAXPERIP hoch setzten. Danach hatte ich zumindest keine Verbindungsprobleme mehr. Hoffe das hilft irgendwem.

Nicht vergessen den dienst danach durch zu starten.

C-Name Eintrag bei schlundtech

Wer von einer Public Domain den Traffic nach Hause umbiegen will, kann das mit einem CNAME Eintrag im DNS Server machen. Ich habe nun zwei Anläufe dazu gebraucht :-). Der Traffic wird nun von einer public Domain auf eine Dynamischster Domain umgeleitet, vollkommen transparent für den User.
Wichtig dabei ist, dass man am Ende der Weiterleitung einen „.“ einträgt


umleitung.beispiel.de CNAME Beispiel.dynamic.org.

Lässt man den Punkt am Ende weg, wird bei meinem DNS Verwalter automatisch die Hauptdomain noch einmal hinten angehangen.

Seitwert.de WordPress Plugin Version 0.3 verfügbar

Bei dem schlechtem Wetter habe ich mal das Seitwert WordPressplugin überarbeitet.

Aktuelle Version ist 0.3

Ich freue mich auf Feedback.

Testdrive

Wer gerne mal einen Blick auf KDE 4 werfen möchte ohne gleich eine CD, eine DVD, eine VM Appliance oder einen USB Stick zu erstellen, der hat eine geniale Möglichkeit. SuseStudio bietet einen sogenannten Testdrive Modus. Es handelt sich hierbei um eine virtuelle Maschine, die im Browser abgespielt werden kann. Einfach ein unter SuseStudio erstelle Appliance auswählen und auf der rechten Seite auf Testdrive klicken. Schon startet die Kiste. Ich finde das einfach nur genial. Die Sessionlaufzeit ist auf 60 Minuten beschränkt, aber mal im ernst, 60 Minuten für einen kurzen Test reichen voll und ganz aus.

Hier noch ein Link zu einer gelungenen Appliance

Wie seht ihr das ?

Auf der Suche nach einer Fotodatenbank

Derzeit bin ich auf der Suche nach einem Foto Managementsystem, gerne auch als Datenbank Anwendung. Vorraussetzungen sind, Tags, Alben, multi User, Cross Plattform.

Klar gibt es für diesen Zweck etliche Weblösungen, allerdings finde ich bei denen die Importe sehr umständlich. Ideal wäre es, wenn ich wie bei digikam die Kamera anschließen könnte und die Bilder automatisch importiert werden.

Wer Erfahrungen mit solchen Systemen hat möge sich bitte zu Wort melden.

Versucht habe ich schon Picasa, IPhoto und digikam, wobei mir letzteres vom Handling am besten gefallen hat.

Bin auf eure antworten gespannt.