Rekonzeption der Serverinfrastruktur Hettstedt


  1. Einleitung
  2. Planung
  3. Durchführung
  4. Zusammenfassung
  1. Projektumfeld
  2. Projektdefinition
  3. Ist-Zustand

Firma: SecuControl Produktions GmbH

Angestellte: ca. 50 weltweit

Standorte
LandOrte
DeutschlandHettstedt, Senftenberg, Berlin
USAAlexandria (Nähe Washington D.C.)
BrasilienFlorianopolis

Einsatzort: Berlin / Hettstedt

showMap

Projekt Teil der Infrastruktursanierung

Parallel laufende Projekte:

  • Erneuerung der Verkabelung in Hettstedt
  • Umbau Telefonanlage Senftenberg von ISDN auf VoIP
  • Neuer Backupserver in Berlin
  • Neuer öffentlicher Webserver

Ziele:

  • Serverlandschaft in Hettsedt modernisieren
  • lfd. Kosten senken
  • Anzahl physischer Systeme reduzieren
  • Laufstabilität erhöhen
  • Wartbarkeit erhöhen
  • Arbeitsaufwand reduzieren

Ausgenommen aus dem Gesamtprojekt: Kabel in Hettstedt verlegen

  • Sechs Desktop PCs als Server verwendet
  • hoher Stromverbrauch
  • Nur Gateway an USV angeschlossen
  • Konfigurationen undurchsichtig, chaotisch gewachsen
  • häufige Ausfälle
  1. Zeitplanung
  2. Sollkonzept
  3. Kaufentscheidung
PhaseGeplante Dauer
Planung15 h
Durchführung11,5 h
Qualitätskontrolle und Abnahme5 h
Dokumentation5 h
Puffer0,5 h
Gesamt35 h
  • lösung: Virtualisierung
  • ein physischer Server
  • drei virtuelle Maschinen
  • dienste logisch zusammenfassen

Vergleich Virtualisierungstechniken

Virtualisierungstechnik Performance Sicherheit Skalierbarkeit Aufwand
Hardwareemulation - +++ +++ ++
Hardwarevirtualisierung ++ ++ +++ ++
Paravirtualisierung +++ - ++ --
Betriebsystemvirtualisierung +++ --- - +++

Entscheidung: Hardwarevirtualisierung

HP ProLiant DL360e Gen8
CPU2x Intel Xeon E5-2430v2 (6x 2,50GHz)
RAM4x 4GB DDR3 (16GB)
HDD2x 1000GB
Netzteile2x redundant
HP ProLiant SE326M1
CPU2x Intel Xeon X5550 (4x 2,66GHz)
RAM4x 4GB DDR3 (16GB)
HDD2x 146GB
Netzteile2x redundant

zzgl. 1x HDD-Upgrade (6x 300GB)

  1. Installation Software
  2. Konfiguration der Dienste
  3. Qualitätskontrolle

Konfiguration BIOS

  • Intel Virtualisierungtechnologie aktivieren
  • RAID-System einstellen (RAID5)
  • WakeOnLAN aktivieren
  • Automatischer Start nach Schwarzfall
  • temporär Booten von ext. Medien erlauben

Installation von ProxMox

installProxmox

Konfiguration von ProxMox

configProxMox0
  1. root@knot1.secucontrol.net:~#

Konfiguration von ProxMox

configProxMox1
  1. Einstellung des Hostnamen (Bsp. knot1.secucontrol.net)
  2. root@knot1.secucontrol.net:~#

Konfiguration von ProxMox

configProxMox2
  1. Einstellung des Hostnamen (Bsp. knot1.secucontrol.net)
  2. Installation sudo
  3. root@knot1.secucontrol.net:~#

Konfiguration von ProxMox

configProxMox3
  1. Einstellung des Hostnamen (Bsp. knot1.secucontrol.net)
  2. Installation sudo
  3. Anlegen des Adminusers (Bsp. admin)
  4. root@knot1.secucontrol.net:~#

Konfiguration von ProxMox

configProxMox4
  1. Einstellung des Hostnamen (Bsp. knot1.secucontrol.net)
  2. Installation sudo
  3. Anlegen des Adminusers (Bsp. admin)
  4. User admin der Gruppe sudo zuweisen
  5. root@knot1.secucontrol.net:~#

VM1 und VM2

Installierte Pakete: sudo, ssh, htop

Konfiguration ssh

#Geänderte Zeilen:
Port 50123 #(Standard: 22)
PermitRootLogin no #(Standard: yes)
AllowUsers admin #(Standard: nicht gesetzt)

VM1

Auszug Konfiguration vpn

server 192.168.255.0 255.255.255.0
port 1194
proto udp
...
ca /var/cert/ca.cert
cert /var/cert/hostname.crt
key /var/cert/hostname.key
dh /var/cert/dh1024.pem

VM1

Auszug Konfiguration squid3

http_port 3128
http_port 127.0.0.1:3129 intercept
...
acl admins src 192.168.128.0/24
acl azubis src 192.168.129.3
...
http_access allow admins
http_access deny badsites !admins
access_log deamon:/pfad/zu/logfile/squid.log from nointern azubis

VM1

iptables

  • Stateful Packet Inspection
  • Zusätzliche offene Ports für vpn und SolidWorks Lizenzdienst
  • Regeln für Pre- und Postrouting eingetragen
  • IP Forwarding aktiviert

VM2

Auszug Share Konfiguration samba

[Verwaltung]
comment = Verwaltung
path = /mnt/verwaltung
writeable = yes
hide dot files = yes
create mask = 0770
directory mask = 0770

VM2

apache2 virtual host für SSL-Verbindungen

<VirtualHost *:443>
    ServerName knot1.secucontrol.net
    DocumentRoot /var/www/html/
    SSLEngine on
    SSLCertificateKeyFile /etc/ssl.key/example.com.key
    SSLCertificateFile /etc/ssl.crt/example.com.crt
</VirtualHost>

VM2

Installierte Pakete ohne Konfigurationsbedarf

  • php5
  • mariadb (während Installation Vergabe eines root-Kennwortes)
  • phpmyadmin (Konfiguration automatisch mit dbconfig-common)
  • proftpd (erfordert lediglich Zusweisung von Usern in die Gruppe proftpd
qa
Rebooting...
Funktion/DienstErgebnis
Netzwerkinterfaces
Root Login gesperrt
ProxMox Webinterface
Webserver erreichbar
Phpmyadmin erreichbar
Schwarzfall
Routing/Firewall
Offene Ports
Pullscript vom Backupserver
Serverabgleich zum Failover
  1. Soll-Ist-Vergleich
  2. Diskrepanzen
  3. Fazit
Gateway Proxyserver
Web- FTP- DB- Fileserver
FTP-Server
DB-Server
Fileserver
DC
Hypervisor
Gateway Proxyserver
Web- FTP- DB- Fileserver
FTP-Server
DB-Server
Fileserver
DC
Failover
vorhernachher
Abweichungen von der Zeitplanung in Stunden (Auszug)

ProjektphaseGeplante DauerTatsächliche DauerDifferenz
Planung1516,5+1,5
Projektdefinition22,5+0,5
Analyse und Konzeption1314+1
Durchführung11,58,5-3
Implementierung118-3
Softwareinstallation97-2
Qualitätssicherung und Testing56+1
Dokumentation54-1
Gesamtdauer35350
  • Planungsaufwand unterschätzt
  • Durchführungsaufwand überschätzt
  • Trotz Änderungen Planung anpassbar und umsetzbar gewesen
  • Wissen erweitert und neue Erfahrungen gesammelt

?

Vielen Dank für Ihre Aufmerksamkeit

endani
adrian@ihk-presentation:/var/www/html/ihk# Sending SIGKILL to all processes. [] Stopping presentation deamon. [] Stopping webserver. [] Stopping fileserver. [] Stopping database server. [] Stopping cron services. [✱✱✱] Closing active sessions. [✱✱✱] Clearing cache. [✱✱✱] Unmounting hard drives. [] Halting interfaces. [✱✱✱] Stopping System Kernel. []
adrian@ihk-presentation:/var/www/html/ihk#
?