Hauptprogramme / Configs

Das Grundsystem steht nun. Nun kommen noch die Programme und Konfigurationen dazu, die auf keinem meiner Server fehlen dürfen.

Konfigurationen

Zeit Synchronisation mit NTP

Das rc.conf haben wir ja bereits bei der Grundinstallation konfiguriert. Hier einfach nocheinmal die Settings im Überblick:

vi /etc/rc.conf 
#-----------------------------------------------# 
# Time Server/Client # 
#-----------------------------------------------#
ntpd_enable="NO"
ntpdate_enable="YES" 
ntpdate_flags="-b swisstime.ethz.ch 0.ch.pool.ntp.org 1.ch.pool.ntp.org 2.ch.pool.ntp.org"

Jetzt müssen wir nur noch den Cronjob anpassen, damit es immer wieder mal aktualisiert wird:

# crontab -e
# Help File # 
# minute        0-59    The exact minute that the command sequence executes 
# hour          0-23    The hour of the day that the command sequence executes 
# day           1-31    The day of the month that the command sequence executes
# month         1-12    The month of the year that the command sequence executes 
# weekday       0-6     The day of the week that the command sequence executes. 
#                       Sunday=0, Monday = 1, Tuesday = 2, and so forth. 
# command               Special The complete sequence of commands to be executed. 
#                       The command string must conform to Bourne shell syntax. 
#                       Commands, executables (such as scripts), or combinations are acceptable. 
# # 
#m      h       d       m       w   
59      01      *       *       *      /usr/sbin/ntpdate -b swisstime.ethz.ch 0.ch.pool.ntp.org 1.ch.pool.ntp.org 2.ch.pool.ntp.org    > /dev/null 2>&1

Note: den NTP Server braucht man nicht zu starten. Sonst ist der Port zu und die Zeit zu ungenau, da nur bei grösseren Abweichungen angepasst wird [FreeBSD Handbuch: Die Uhrzeit mit NTP synchronisieren] Weitere Informationen unter:

System Status Emails

Die „daily run output“ Emails können je nach Logfiles riesig ausfallen. Daher ist es sinnvoll, die Logs, die nicht so wichtig sind, auszublenden. z.b. die Logs über Mails, die versucht worden sind über unsere server zu verschicken (rejected mail hosts) Dazu einfach das Config wie folgt anpassen:

vi /etc/defaults/periodic.conf

# 460.status-mail-rejects
daily_status_mail_rejects_enable="NO"           # Check mail rejects 
daily_status_mail_rejects_logs=3                # How many logs to check

Basis Programme

Folgendes darf nicht fehlen:

Anmerkung: IPFW (Firewall) gehört natürlich auch auf jeden Server. Jedoch werde ich die pro Server konfigurieren – da auf jedem Server andere Services aktiviert sind und es so keine globale Firewall Config gibt. Sind alle Hauptprogramme installiert, mache ich ein Image von meiner „Server Vorlage“. Von hier aus baue ich nun meine einzelnen Server nach den speziellen Bedürfnissen. Ab hier gehts nun weiter zu meiner Software Collection .

Weitere Server erstellen

Server klonen

So, ab hier ist der Basis Server fertig und wir können daraus die „echten“ Server bauen. Dazu den Basis Server runterfahren und klonen. Hierbei ist es sehr wichtig NICHT DEN SERVER sondern die DRIVES zu klonen! Die Server Instanzen werden von den Drives komplett unabhängig behandelt. Wenn man einen Server klont werden nur die Server-Settings geklont (CPU, RAMs, Links zu den Drives, etc). Die verbundenen Laufwerke werden jedoch NICHT mitgeklont. Um keinen Flüchtigkeitsfehler zu machen ist es daher besser, die Drives zu klonen und in einem neu erstellen Server einzubauen.

Zusätzliche HDDs einbauen

Beim neuen Server nun die zusätzlich(en) HDDs einbauen. In meinem Fall füge ich nun eine HDD für die Datenbank hinzu sowie eine globale Disk, welche für alle Server Instanzen zugänglich sein wird. Nun den neuen Server starten und nachschauen, ob der Server die neuen HDDs auch erkannt hat:

# dmesg
ada0 at ata0 bus 0 scbus0 target 0 lun 0
ada0:  ATA-7 device
ada0: 16.700MB/s transfers (WDMA2, PIO 8192bytes)
ada0: 10752MB (22020096 512 byte sectors: 16H 63S/T 16383C)
ada0: Previously was known as ad0
ada1 at ata0 bus 0 scbus0 target 1 lun 0
ada1:  ATA-7 device
ada1: 16.700MB/s transfers (WDMA2, PIO 8192bytes)
ada1: 10240MB (20971520 512 byte sectors: 16H 63S/T 16383C)
ada1: Previously was known as ad1
ada2 at ata1 bus 0 scbus1 target 0 lun 0
ada2: ATA-7 device
ada2: 16.700MB/s transfers (WDMA2, PIO 8192bytes)
ada2: 20480MB (41943040 512 byte sectors: 16H 63S/T 16383C)
ada2: Previously was known as ad2
ada3 at ata1 bus 0 scbus1 target 1 lun 0
ada3: ATA-7 device
ada3: 16.700MB/s transfers (WDMA2, PIO 8192bytes)
ada3: 153600MB (314572800 512 byte sectors: 16H 63S/T 16383C)
ada3: Previously was known as ad3

Disks partitionieren

Soweit alles Bestens! Wenn es komplett neue Disks sind, müssen wir die jetzt noch partitionieren. Falls die HDDs bereits partitioniert sind oder Daten drauf haben, geht es mit dem nächsten Kapitel /etc/fstab weiter. Ich mache das einfachheitshalber mit sysinstall . Du kannst es aber auch direkt über die Shell machen. Hier die offizielle Anleitung vom FreeBSD Handbuch .

# sysinstall

Hier ins Configure Menü rein.

Configure      Do post-install configuration of FreeBSD

Danach Fdisk aufrufen

Fdisk          The disk slice (PC-style partition) editor

Meine neuen Disks sind ada2 und ada3 . Zuerst wähle ich ada2 . Das gibt meine Datenbank HDD. Hierfür nehme ich die gesamte Disk ( Option A ). Nun sieht es so aus:

Offset       Size(ST)        End        Name     PType       Desc         Subtype    Flags          
0            63              62         -        12          unused       0         
63           41942817        41942879   ada2s1   8           freebsd      165   
41942880     160             41943039   -        12          unused        0
  • Nun die Änderungen speichern mit W (Write Changes)
  • Das Warning Popup einfach mit YES bestätigen.
  • Bei der Frage nach der Installation des Boot Managers None wählen.
  • Nun wurde Partition geschrieben. Mit OK bestätigen.
  • Nun beenden mit Q
  • Jetzt die nächste Platte auswählen ( ada3 ) und das selbe nochmal machen.
  • Dies ist eine Globale Platte wo ich zwei Partitionen drauf machen werde. Die eine ist für Monitoring Daten, der Rest für Backups. Also:
    • C für Create -> 10G -> type 165 (FreeBSD) 
    • C für Create -> Rest Das sieht nun so aus:
Offset       Size(ST)        End        Name     PType      Desc  Subtype    Flags          
0            63              62         -        12       unused        0         
63           20971377        20971439   ada3s1    8      freebsd      165   
20971440     293601168       314572607  ada3s2    8      freebsd      165

Nun wieder wie vorher:

  • W für Write changes
  • Popup bestätigen mit YES
  • Boot Manager: None
  • Bestätigen mit OK
  • Nun fdisk beenden mit Q
  • Nun über OK fdisk beenden (mit Tab zum OK button gehen) und Sysinstall ebenfall beenden.

Nun muss man sysinstallerneut starten.

# sysinstall
  • Configure
  • Label
  • ada2 mit Leertaste aktivieren
  • Q für Beenden
  • Nun ada3 auswählen -> jetzt sind alle 3 Partitionen ausgewählt.
  • Nun bei der ersten Disk (ada2)
  • C für Create -> gesamte Disk (default) -> FS -> /database
  • Zweite Disk, erste Partition (10GB) auswählen und
  • C für Create -> gesamte Disk (default) -> FS -> /monitoring
  • Die zweite Partition auswählen (139 GB)
  • C für Create -> gesamte Disk (default) -> FS -> /backup

nun sieht es so aus:

Part      Mount          Size Newfs   Part      Mount          Size Newfs 
----      -----          ---- -----   ----      -----          ---- ----- 
ada2s1d   /database   20479MB UFS2+S Y 
ada3s1d   /monitori   10239MB UFS2+S Y 
ada3s2d   /backup       139GB UFS2+S Y
  • W für Write
  • Popup Warning bestätigen mit Yes

/etc/fstab

Nun muss man die neuen Partitionen in /etc/fstab eintragen. Das macht sysinstall nicht selber…

# vi /etc/fstab

folgende Zeilen hinzufügen

/dev/ada2s1d    /database       ufs     rw      2       2 
/dev/ada3s1d    /monitoring     ufs     rw      2       2 
/dev/ada3s2d    /backup         ufs     rw      2       2

So,  nun sind die Disks ready und können benutzt werden:

#df
Filesystem   1024-blocks    Used     Avail Capacity  Mounted on
/dev/ada0p2      1547804  625112    798868    44%    /
devfs                  1       1         0   100%    /dev
/dev/ada0p3      1031708    8292    940880     1%    /tmp
/dev/ada0p4      6184220   80004   5609480     1%    /var
/dev/ada1p1     10318968 5563072   3930380    59%    /usr
/dev/ada2s1d    20307084       8  18682512     0%    /database
/dev/ada3s1d    10143412       8   9331932     0%    /monitoring
/dev/ada3s2d   142191172       8 130815872     0%    /backup

Hostname ändern

Als nächstes erhält der Server seine eigene Identität…

# vi /etc/rc.conf

Hostname in den neuen Servernamen ändern

hostname="NeuerName"

beim nächsten booten wird automatisch der neue Name gesetzt. Im laufenden Betrieb können wir das nun auch noch ändern:

hostname NeuerName

Setup Monitoring Directories

Für die Monitoring Scripts müssen jetzt noch die Directories erstellt werden:

mkdir -p /monitoring/mrtg/NeuerName
chown -R mrtg:mrtg /monitoring/mrtg

und natürlich auch das mrtg Config entsprechend den Diensten / Bedürfnissen des Servers anpassen.

vi /usr/local/etc/mrtg/mrtg.cfg

Hier ist nun die Grundconfig für diesen Server abgeschlossen. Nun kann man die gewünschte Software installieren.

Server Setup

MySQL Server

Dieser Server wird ausschliesslich als Datenbankserver verwendet. Daher fällt die Software Installation sehr übersichtlich aus 😉

Web Server  

  • Installation Apache Worker
  • Installation PHP

Mail Server    

Flattr this!

  • *

    Du kannst diese HTML tags verwenden: <a> <abbr> <acronym> <b> <blockquote> <cite> <code> <del> <em> <i> <q> <s> <strike> <strong>

  • Kommentar-Feed für diesen Beitrag
nach oben