Schulung-Teil2-Server mit Xen aufsetzen: Unterschied zwischen den Versionen
Zeile 3: | Zeile 3: | ||
== Preface == | == Preface == | ||
− | + | This training session took place on 11-17-2016. It is the continuation of [http://wiki.revamp-it.ch/index.php?title=Schulung-Teil1-Server_mit_RAID1_aufsetzen ersten Teil]. Today we learned how to setup a Xen-Server. With a Xen-Server we can create virtual machines, that we can use for various purposes. The first virtual machine will be a webserver (Apache). jr <br /> | |
<pre> | <pre> | ||
Zeile 9: | Zeile 9: | ||
</pre> | </pre> | ||
− | == | + | == Boot the server == |
− | + | Our teacher installed the program "wakeonlan" on the LTSP-System we have for our training sessions. So, all our clients also get to use this program. With "wakenonlan" we can turn on our server through the LAN connection. In our training session the server is only a few meters away from us, but if there are several floors between us and the server or even several kilometers, this is a very handy tool, so we don't have to be on-site to power up the server. We do this with the following command:<br /> | |
wakeonlan -i 192.168.67.255 00:21:5a:6d:6d:42 | wakeonlan -i 192.168.67.255 00:21:5a:6d:6d:42 | ||
− | -i | + | -i states that an IP address follows<br /> |
− | 192.168.67.255 | + | 192.168.67.255 is the broadcast address of our network. Most likely this will be differnt in your case. For a little introduction into IPv4 I made [http://wiki.revamp-it.ch/index.php?title=Kurzeinf%C3%BChrung_zu_IPv4 this page]. <br /> |
− | 00:21:5a:6d:6d:42 | + | 00:21:5a:6d:6d:42 is the MAC address of my server's network card. This must be unique, so your's will be different <br /> |
− | + | So, the general synthax for this is: <br /> | |
wakeonlan -i "broadcast IP" "MAC address" | wakeonlan -i "broadcast IP" "MAC address" | ||
− | + | To be able to do an SSH session to our server, we had to find out the IP address our servers received. Our teacher did this by viewing the following: <br /> | |
less /var/lib/dhcp/dhcpd.leases | less /var/lib/dhcp/dhcpd.leases | ||
− | + | This file only exists on a DHCP server. It won't exist on a DHCP client. The path /var/lib/dhcp/ will exist on a server and a client. <br /> | |
− | == | + | == How to login on the server == |
− | In | + | In my case I had to enter the following command to login to my server:<br /> |
ssh user1@192.168.67.68 | ssh user1@192.168.67.68 | ||
− | + | A more general synthax is <br /> | |
− | ssh " | + | ssh "username"@"remote computer" |
Benutzername ist als wen man sich auf dem Server einloggen will. Der Benutzer root darf sich nicht per SSH auf einem Server einloggen aus Sicherheitsgründen. | Benutzername ist als wen man sich auf dem Server einloggen will. Der Benutzer root darf sich nicht per SSH auf einem Server einloggen aus Sicherheitsgründen. | ||
Zeile 342: | Zeile 342: | ||
-i sagt, dass anschliessend eine IP Adresse folgt <br /> | -i sagt, dass anschliessend eine IP Adresse folgt <br /> | ||
− | 192.168.67.255 ist die Broadcast-Adresse von unserem Netzwerk. | + | 192.168.67.255 ist die Broadcast-Adresse von unserem Netzwerk. [http://wiki.revamp-it.ch/index.php?title=Kurzeinf%C3%BChrung_zu_IPv4 Hier] findet man noch eine kleine Einführung in IPv4, dass man dies besser versteht.<br /> |
00:21:5a:6d:6d:42 ist die MAC-Adresse von der Netzwerkkarte die im Server steckt, den ich aufgesetzt habe. <br /> | 00:21:5a:6d:6d:42 ist die MAC-Adresse von der Netzwerkkarte die im Server steckt, den ich aufgesetzt habe. <br /> | ||
Version vom 30. März 2017, 09:50 Uhr
Vorwort
Diese Schulung hat am 17.11.2016 stattgefunden. Es handelt sich um eine Fortsetzung vom ersten Teil. Wir haben heute gelernt wie wir einen Xen-Server aufsetzen. Damit können wir virtuelle Maschinen erstellen, die wir für unterschiedliche Zwecke konfigurieren können. Die erste virtuelle Maschine wird ein Webserver (Apache) werden. jr
Falls noch Fragen offen sind nach dieser Anleitung bitte oben bei "Ansichten" auf "Diskussion" gehen und Feedback hinterlassen, dass ich noch weitere Details hinzufügen kann. jr
Den Server aufstarten
Unser Lehrer hat auf dem Server das Programm "wakeonlan" installiert, dass unsere Clients an denen wir arbeiten das auch nutzen können. Mit diesem Programm können wir unsere Server über die LAN-Verbindung einschalten. In unserem Schulungsfall ist das zwar nur ein paar Meter entfernt, doch falls man mehrere Stockwerke dazwischen hat oder gar mehrere Kilometer Distanz zum Server hat ist es eine grosse Erleichterung dies nicht vor Ort machen zu müssen. Der Befehl dazu ist der folgende:
wakeonlan -i 192.168.67.255 00:21:5a:6d:6d:42
-i sagt, dass anschliessend eine IP Adresse folgt
192.168.67.255 ist die Broadcast-Adresse von unserem Netzwerk. Hier findet man noch eine kleine Einführung in IPv4, dass man dies besser versteht.
00:21:5a:6d:6d:42 ist die MAC-Adresse von der Netzwerkkarte die im Server steckt, den ich aufgesetzt habe.
Eine allgemeinere Formulierung ist also
wakeonlan -i "broadcast IP" "MAC address"
Um jetzt per SSH musste unser Lehrer auf dem Server schauen welche IP Adressen unsere frisch aufgeweckten Server bezogen haben. Dies machte er über
less /var/lib/dhcp/dhcpd.leases
Diese Datei existiert jedoch nur auf dem DHCP Server. Auf einem DHCP Client existiert diese Datei nicht. Es gibt jedoch den Pfad /var/lib/dhcp/
Auf dem Server einloggen
In meinem Fall zum Einloggen auf dem Server musste ich den folgenden Befehl eingeben:
ssh user1@192.168.67.68
Die allgemeine Formulierung dazu ist
ssh "Benutzername"@"Remote Computer"
Benutzername ist als wen man sich auf dem Server einloggen will. Der Benutzer root darf sich nicht per SSH auf einem Server einloggen aus Sicherheitsgründen.
Remote Computer kann in Form der IP Adresse oder dem DNS Namen sein.
Wenn man zum ersten Mal auf einem Remote Computer einloggt von einer Maschine aus, schickt der Remote Computer seinen Fingerabdruck mit. Um da fortfahren zu können ist es notwendig die Antwort auszuschreiben. Ein einfaches "y" reicht nicht aus.
Are you sure you want to continue connecting (yes/no)? yes
Paketliste aktualisieren
Bevor wir jetzt anfangen Programme zu installieren wollen wir in unserem Debian Jessie die Liste mit den verfügbaren Paketen auf den neusten Stand bringen. Wenn man als normaler Benutzer eingeloggt ist macht man dies über
sudo apt update
Als Root kann man das "sudo" weglassen
Pakete für Xen-Hypervisor installieren
Für unseren Xen-Server brauchen wir die Pakete xen-linux-system und xen-tools. Also geben wir auf der Befehlszeile den folgenden Befehl ein:
user1@server1:~$ sudo apt install xen-linux-system xen-tools
Eine veraltete Version von dieser Installation finden wir bereits in unserem Wiki, doch einige Dinge können wir von dort übernehmen, dass wir nicht soviel schreiben müssen.
Wir müssen den folgenden Befehl eingeben:
sudo dpkg-divert --divert /etc/grub.d/08_linux_xen --rename /etc/grub.d/20_linux_xen
Wir geben damit der Datei einen anderen Namen und macht noch etwas dass die Datei nicht von einem Paketupdate überschrieben wird. Ich verstehe leider Linux als ganzes auch noch zu wenig um es besser erklären zu können. Sollte ich in der Zukunft mal ein besseres Verständnis dafür haben, werde ich den Text hier wohl updaten.
Da ich es leid wurde, dass ich die Befehle nicht direkt ausführen zu können (weil immer ein sudo nötig ist), habe ich in den Root User gewechselt über
sudo -i
Als nächstes müssen wir unserem Bootloader mit dem Namen Grub die Änderungen beibringen. Deswegen müssen wir den Befehl "update-grub" eingeben:
update-grub
Um zu testen ob was wir installiert haben auch effektiv ist, starten wir den Server neu. Auf der Kommandozeile geben wir den Befehl ein:
reboot
Netzwerkverbindung anpassen
Da die Verbindung der Arbeitsstation mit dem Server unterbrochen wird, müssen wir mit dem Server wieder neu verbinden:
neu mit server verbinden nach dem Neustart
ssh "Benutzername"@"Remote Computer" (in meinem Fall ssh user1@192.168.67.68)
und wieder auf Root gewechselt über
sudo -i
Um sehen zu können ob der Server jetzt auch mit den neuen Parametern startet benutzen wir das Programm "dmesg" Da Computer sehr viele Infos zum aufstarten anzeigt ist dies mehr als man in der Konsole anzeigen kann. Um trotzdem alles anschauen zu können leiten wir die Daten zu dem Programm "less" um, dass wir auch PageUp und PageDown nutzen können:
dmesg