Jak wdrożyć wiele maszyn wirtualnych przy użyciu instalacji sieciowej (HTTP, FTP i NFS) w środowisku KVM — część 2
To jest część 2 serii KVM, tutaj omówimy, jak wdrożyć maszyny wirtualne z systemem Linux przy użyciu instalacji sieciowej w środowisku KVM. Omówimy trzy typy instalacji sieciowej (FTP, NFS i HTTP), każdy z nich ma swoje specjalne wymagania wstępne.
Zanim zaczniesz, upewnij się, że masz wymagania wstępne, o których wspominaliśmy w pierwszej części tej serii.
- Skonfiguruj maszyny wirtualne w systemie Linux za pomocą KVM (maszyna wirtualna oparta na jądrze) – część 1
Instalacja sieciowa przy użyciu protokołu FTP
1. Przed rozpoczęciem powinniśmy zainstalować pakiet usługi FTP.
yum install vsftpd
2. Po zainstalowaniu vsftpd uruchommy go i włączmy usługę na stałe.
systemctl start vsftpd
systemctl enable vsftpd
3. Ze względów bezpieczeństwa może być konieczne dodanie usługi FTP do zapory sieciowej.
firewall-cmd --permanent --add-service=ftp
firewall-cmd –reload
4. Teraz nadszedł czas, aby wybrać preferowane ISO systemu Linux, nad którym chcesz pracować. W tej części używamy RHEL7 ISO. Zamontujmy obraz ISO w punkcie montowania (tj. lokalizacji /mnt). Możesz także utworzyć własny punkt montowania.
mount -t iso9660 -o ro /path-to-iso/rhel-server-7.0-x86_64-dvd.iso /mnt/iso-mp/
5. Do tej pory nie udostępnialiśmy jeszcze niczego na serwerze FTP. Domyślna ścieżka danych FTP to /var/ftp/pub/, więc utwórz pod nią nowy katalog.
mkdir /var/ftp/pub/RHEL7
6. Następnie skopiuj do niego zamontowane pliki ISO. Możesz także dodać opcję „v”, aby uzyskać szczegółowe informacje podczas kopiowania.
cp -r /mnt/iso-mp/* /var/ftp/pub/RHEL7/
7. Na koniec zrestartujmy usługę vsftpd i sprawdźmy status usługi.
systemctl restart vsftpd
systemctl enable vsftpd
systemctl status vsftpd
Przykładowe wyjście
vsftpd.service - Vsftpd ftp daemon
Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; enabled)
Active: active (running)
Main PID: 27275 (vsftpd)
8. Teraz czas na uruchomienie naszego narzędzia GUI virt-manager.
virt-manager
9. Po uruchomieniu „virt-manager” utwórz nową maszynę wirtualną, a następnie w tym oknie wybierz opcję Instalacja sieciowa.
10. Kiedy instalujesz pakiety KVM po raz pierwszy, tworzony jest wirtualny most łączący maszynę wirtualną z hostem fizycznym. Możesz wyświetlić jego konfigurację za pomocą polecenia ifconfig.
ifconfig virbr0
Przykładowe wyjście
virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 192.168.124.1 netmask 255.255.255.0 broadcast 192.168.124.255
inet6 fe80::5054:ff:fe03:d8b9 prefixlen 64 scopeid 0x20
ether 52:54:00:03:d8:b9 txqueuelen 0 (Ethernet)
RX packets 21603 bytes 1144064 (1.0 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 214834 bytes 1108937131 (1.0 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Zauważysz, że IP: 192.168.124.1 jest przydzielony mostowi wirtualnemu vibr0. Maszyny wirtualne używają tego adresu IP do łączenia się z hostem fizycznym. Można więc powiedzieć, że ten adres IP reprezentuje hosta fizycznego w środowisku sieci wirtualnej.
Wykorzystamy ten adres IP do podania ścieżki URL do naszego katalogu FTP, który zawiera pliki naszego ISO. Jeśli wdrożyłeś serwer FTP na innym/zdalnym hoście, po prostu wpisz adres IP innego serwera zamiast poprzedniego adresu IP.
11. Następnie zostaniesz zapytany o zasoby i miejsce na dysku, tak samo jak w poprzedniej części naszego poradnika. W końcu dotrzesz do tego okna lub czegoś w tym rodzaju.
Naciśnij Zakończ i ciesz się nową maszyną wirtualną.
Instalacja sieciowa przy użyciu NFS
1. Mamy tutaj prawie te same kroki, zainstaluj pakiet usług nfs.
yum install nfs-utils
2. Następnie uruchom usługę nfs i dodaj ją na stałe do zapory sieciowej.
systemctl start nfs
systemctl enable nfs
firewall-cmd --permanent --add-service=nfs
firewall-cmd –reload
3. Zamontuj obraz ISO systemu Linux.
mount -t iso9660 -o ro /path-to-iso/rhel-server-7.0-x86_64-dvd.iso /mnt/iso-mp/
4. Moglibyśmy udostępnić ten punkt montowania za pomocą udostępniania NFS, edytując plik /etc/exports.
#echo /mnt/iso-mp *(ro) > /etc/exports
5. Uruchom ponownie usługę NFS i sprawdź jej stan.
systemctl restart nfs
systemctl status nfs
Przykładowe wyjście
nfs-server.service - NFS server and services
Loaded: loaded (/usr/lib/systemd/system/nfs-server.service; disabled)
Active: active (exited)
8. Uruchom narzędzie GUI „virt-manager”.
virt-manager
9. Po uruchomieniu „virt-manager” utwórz nową maszynę wirtualną, wybierz opcję Instalacja sieciowa i wprowadź ścieżkę URL katalogu NFS, który zawiera pliki ISO. Jeśli wdrożyłeś serwer NFS na innym zdalnym komputerze, po prostu wprowadź adres IP tego komputera.
10. Następnie zostaniesz poproszony o wprowadzenie zasobów i miejsca do przechowywania, tak jak to omówiono w poprzedniej części tej serii.. Po prostu wypełnij wszystkie te szczegóły i naciśnij przycisk „Zakończ”.
Instalacja sieciowa przy użyciu protokołu HTTP
1. Tutaj również mamy prawie te same kroki, zainstaluj pakiet usługi http, uruchom go i włącz na stałe w zaporze ogniowej.
yum install httpd
systemctl start httpd
systemctl enable httpd
firewall-cmd --permanent --add-service=httpd
firewall-cmd –reload
2. Następnie zamontuj obraz ISO w lokalizacji „/mnt/iso-mp”.
mount -t iso9660 -o ro /path-to-iso/rhel-server-7.0-x86_64-dvd.iso /mnt/iso-mp/
3. Do tej pory nie udostępnialiśmy jeszcze niczego na serwerze HTTP. Domyślna ścieżka danych HTTP to „/var/www/html”, utwórzmy pod nią nowy katalog.
mkdir /var/www/html/RHEL7
4. Następnie skopiuj zamontowane pliki ISO do tego katalogu.
cp -r /mnt/iso-mp/* /var/www/html/RHEL7/
5. Uruchom ponownie usługę httpd i sprawdź jej stan.
systemctl restart httpd
systemctl status httpd
Przykładowe wyjście
httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled)
Active: active (running)
Main PID: 3650 (httpd)
6. Następnie uruchom „virt-manager”, utwórz nową maszynę wirtualną, następnie wybierz opcję Instalacja sieciowa i wprowadź adres URL ścieżki katalogu HTTP, który zawiera pliki obrazu ISO i postępuj zgodnie z procedura opisana powyżej..
Wniosek
Omówiliśmy sposób wdrożenia maszyny wirtualnej z systemem Linux przy użyciu instalacji sieciowej. Instalacja sieciowa jest zdecydowanie preferowana w porównaniu z instalacją lokalną ze względu na centralizację, która pomaga wdrożyć jedno centralne źródło instalacji, a wszystkie serwery/maszyny używają go do wdrażania swojego systemu operacyjnego. To naprawdę skróciło czas stracony na instalację w ogromnych środowiskach.