Seite wählen

NETWAYS Blog

OpenVPN Access Server

OpenVPN dürfte den meisten Benutzern ein Begriff sein. Für diejenigen, denen die Installation und Konfiguration bisher zu kompliziert war, bietet die Firma OpenVPN Technologies seit kurzem mit dem OpenVPN Access Server eine Art Appliance an. Damit lässt sich auf einfache Weise ein vollwertiger OpenVPN-Server aufsetzen.

Die Installation beschränkt sich dabei auf einige wenige Fragen, die hauptsächlich die Erreichbarkeit des VPN-Servers betrefen: neben der IP-Adresse und dem Port für die Web-GUI ist nur noch der Administrator-Account zu benennen. Der Rest der Konfiguration kann über die übersichtliche Web-GUI geschehen.

Backend des OpenVPN AS

Die Web-GUI gliedert sich in vier Hauptpunkte: eine kurze Statusübersicht, die Netzwerk-Konfiguration, Beutzer-Authentifizierung und Tools. In der Statusübersicht sind dabei alle wichtigen Informationen auf einer Seite gebündelt: Aktive Verbindungen mit deren IP-Adressen, übertragene Datenmengen sowie die wichtigsten Einstellungen des aktuellen Profils. Die Netzwerk-Konfiguration beschränkt sich ebenfalls auf das Nötigste: IP-Adresse und Port des OpenVPN-Servers, Netzbereich für die VPN-Clients und die Regeln für den Zugriff auf lokale Netzbereiche stellen schon den Großteil der Konfigurationsmöglichkeiten dar.

Ebenfalls sehr übersichtlich ist der Bereich für die Benutzerauthentifizierung, hier ist die Anbindung an ein LDAP, einen RADIUS-Server oder die Verwendung einer lokalen Benutzerdatenbank über PAM möglich. Die Konfiguration beschränkt sich bei LDAP und RADIUS auf den zu verwendenden Server sowie den Suchpfad bei LDAP-Authentifizierung. Für PAM stehen keine Optionen zur Verfügung.

Frontend des OpenVP AS

Besonders gut gelöst ist die Verteilung der Client-Konfigurationen. So kann in den Einstellungen des Servers festgelegt werden, dass die Web-GUI über die OpenVPN-Adresse getunnelt wird. Auf diese Weise kann sich jeder Benutzer mit seinen Benutzerdaten an der Web-GUI anmelden und erhält zwei Download-Optionnen: die reine OpenVPN-Konfiguration für Linux und/oder Mac-Benutzer sowie der fertig konfigurierte Client für Windows. Einfacher war die Verteilung von OpenVPN-Zugängen bisher noch nicht möglich.

Erweiterung unseres Storage-Angebotes

FAS 2020 vor dem Einbau

FAS 2020

Anfang letzter Woche haben wir eine zusätzliche NetApp in unserem Rechenzentrum eingebaut, um unseren Kunden weitere Storage-Möglichkeiten anbieten zu können. Diesmal handelt es sich um eine FAS 2020 mit zwei Köpfen, d.h. zwei Storage-Controller. Die beiden Köpfe sind jeweils über Fibre-Channel an die Platten-Shelves angebunden, so dass bei einem Kopfausfall der zweite Kopf alle Funktionen des ersten übernehmen kann.

Die interne Bestückung mit Festplatten wurde bewusst nicht gewählt, da so bei einem möglichen Engpass der Wechsel der Kopfeinheit genügt und die vorhandenen Platten-Shelves weiterverwendet werden können. Bei der Bestückung der Shelves wurde auf die unterschiedliche Performance von SAS- und SATA-Festplatten Rücksicht genommen.

Dadurch können unseren Kunden zwei Arten von Storage angeboten werden:

  • schneller Speicherplatz, z.B. für Auslieferung von Webseiten-Inhalten (SAS)
  • etwas langsamerer, dafür kostengünstiger und größerer Speicherplatz, z.B. für Backup-Zwecke (SATA)

Wir haben bereits mehrere NetApp-Systeme im Einsatz, aber wir sind jedesmal wieder beigeistert, wenn wir in diesem Bereich einen Zuwachs bekommen. Wie man oben auf dem Bild sehen kann, lockt dies sogar unsere Geschäftsleitung aus dem Büro. Aufgrund unserer sehr guten Erfahrungen mit den Systemen wird dies auch ganz sicher nicht unser letzter Filer sein.

Loadbalancing bei Geobasisinformation Brandenburg

Hochverfügbarkeit und Lastverteilung spielen bei Internet-basierenden Diensten eine immer größere Rolle. Der Einsatz von Open-Source Software schafft hierbei eine kostenkünstige Möglichkeit sowohl die Verfügbarkeit zu steigern, aber auch die Last eines einzelnen Systemes durch Clustering zu senken.

Bei Geobasisinformation Brandenburg werden verschiedene, auf Karten basierende, Dienste dem Kunden online zur Verfügung gestellt. Im Zuge des Projektes sollte die vorhandene Anwendung auf einen Loadbalancer migriert werden, welche bisher von einem einzelnen Server ausgeliefert wurden.

Die Basis hierfür war eine Kombination aus einem realen Server und einem virtualisierten Server, der im Fehlerfalle die Dienste übernehmen soll. Für die Ausfallsicherheit wurde Heartbeat auf beiden Servern installiert, und auf Basis von Version 2 für die grafische Administration konfiguriert.

Die Lastverteilung der eingehenden Anfragen wurde über das Linux Virtual Server Projekt gelöst. Hierbei werden alle Anfragen vom aktiven Director auf die dahinterliegenden Server www-1, www-2 … www-n verteilt. Die Synchronisation der Verbindungs-Tabellen zwischen den beiden Director-Knoten geschieht über eine dedizierte Netzwerkverbindung, so dass bei einem Ausfall keine Verbindungen verloren gehen.

Durch dieses Setup konnte nun sowohl die Ausfallsicherheit gesteigert, als auch eine Lastverteilung auf aktuell 2 Webserver geschaffen werden. Die Lastverteilung kann bei Bedarf ohne große Änderungen und Ausfallzeiten auf weitere Server ausgedehnt werden.

Zentrales Konfigurationsmanagement mit Puppet

Je größer die Anzahl der Server wird, desto schwieriger wird es alle Systeme synchron zu halten. Bei der Installation ist dies noch über einen zentralen Installationsserver möglich der einen fest definierten System und Paketzustand abbildet. Bei Konfigurationsänderungen oder Paketinstallationen vergisst man allerdings sehr leicht alle Systeme des gleichen Typs z.B. alle Knoten eines Mailserverclusters mit anzupassen.
Eine zentrale Stelle für Konfigurationsdateien verhindert diesen Wildwuchs. Die Konfigurationen oder Paketlisten werden einmal an einer Stelle geändert und alle Systeme, die zum Erhalt der Dateien oder Pakete konfiguriert sind erhalten die neue Ausführung kurze Zeit später.
Ein Open-Source-Tool für diesen Zweck ist Puppet, das auf allen Unix-artigen Systemen lauffähig ist. Die Konfigurationsmöglichkeiten erstrecken sich somit z.B. auch auf Apple-Rechner mit MacOS X. Im Gegensatz zum bisherigen Platzhirsch cfengine ist Puppet noch nicht so verbreitet und bekannt, allerdings bietet es viele Features die mit cfengine nicht oder nur umständlich zu realisieren sind.
Unter anderem ist es cfengine in folgenden Punkten überlegen:

  • (wahlweise zentrales) Backup geänderter Dateien
  • Verwaltung von Benutzern und Gruppen
  • Erweiterbarkeit durch eigene Plugins, die vom Server verteilt werden
  • integrierter Fileserver für Konfigurations-Dateien

Leider lassen sich mit Puppet aktuell noch keine Windows-Server verwalten. Dafür sind die Konfigurationsdateien für den unbedarften Admin aber auch leichter lesbar als die (mehr oder weniger) kryptische Konfiguration von cfengine.
In unserer Server-Umgebung konnten so die Zeiten zum Abgleichen der Systeme, Aktivieren neuer Konfigurationen oder Installation von Paketen auf ein Minimum reduziert werden. Gerade bei lastverteilten oder hochverfügbaren Systemen bei denen Konfigurationsfehler auf einem einzelnen Server unter Umständen erst einige Zeit später auffallen, wird die Installation und Wartung sehr vereinfacht zusätzlich lässt sich durch das zentrale Konfigurationsmanagement die Qualität der erbrachten Dienstleistungen steigern.
Update: Inzwischen haben wir auch auf unseren Webseiten Infos zu Puppet online

Virtualisierung im Zeichen von GreenIT

Xen ist eine freie Software zur Virtualisierung verschiedenster Gast-Betriebssysteme. Durch den Einsatz einer Virtualisierungslösung lassen sich die vorhandenen Ressourcen effektiver nutzen und auch dynamisch verteilen. Zusätzlich bietet Virtualisierung den Vorteil, dass bei einer beschränkten Anzahl an Servern trotzdem jeder Serverdienst in einer eigenen Umgebung läuft, und so andere Dienste nicht beeinflussen kann.
Aktuell sind bei uns 5 Xen Systeme im Einsatz, die zusammen 31 virtuelle Maschinen bereitstellen. Das Spektrum der virtuellen Maschinen reicht dabei von einfachen Dingen wie Syslog- oder DNS-Servern bis hin zu lastintensiven Datenbank- oder Nagios-Servern. Alle wichtigen System haben wir doppelt ausgelegt und auf verschiedene Wirte verteilt. Durch einen vorgeschalteten Loadbalancer verteilen wir die Last auf mehrere virtuelle Maschinen. Selbst bei nicht geclusterten Systeme beschränkt sich ein Ausfall auf ein Minimum an Zeit, da die Gastsysteme ohne größere Probleme auf einen anderen Wirt verlagert werden können. Zusammenfassend bleibt zu sagen, dass die Virtualisierung uns einen Leistungsgewinn bei gleichzeitiger Platz- und Stromersparnis bietet.