如何在KVM环境下使用网络安装(HTTP、FTP和NFS)部署多个虚拟机 – 第2部分

这是KVM系列的第2部分,我们将讨论如何在KVM环境下使用网络安装部署Linux虚拟机。我们将讨论三种类型的网络安装(FTP、NFS和HTTP),每种都有其特定的先决条件。

Deploy VM’s using Network Install in KVM

在开始之前,请确保您具备本系列第一部分中提到的先决条件。

  1. 在Linux中使用KVM(基于内核的虚拟机)设置虚拟机 – 第1部分

使用FTP进行网络安装

1. 在开始之前,我们应该安装ftp服务包。

# yum install vsftpd

2. 安装vsftpd后,让我们开始并使其永久启用服务。

# systemctl start vsftpd
# systemctl enable vsftpd

3. 出于安全问题考虑,您可能需要将FTP服务添加到防火墙中。

# firewall-cmd --permanent --add-service=ftp
# firewall-cmd –reload

4. 现在是选择您想要工作的首选Linux ISO的时候了,在这一部分我们使用 RHEL7 ISO。让我们将ISO映像挂载到挂载点(即/mnt位置)。您也可以创建自定义挂载点。

# mount -t iso9660 -o ro /path-to-iso/rhel-server-7.0-x86_64-dvd.iso  /mnt/iso-mp/

5. 到目前为止,我们还没有在FTP服务器下共享任何内容。FTP默认数据路径为 /var/ftp/pub/ 让我们在其中创建新目录。

# mkdir /var/ftp/pub/RHEL7

6. 然后将挂载的ISO文件复制到其中。您也可以在复制时添加‘v’选项以获取详细信息。

# cp -r /mnt/iso-mp/* /var/ftp/pub/RHEL7/

7. 最后,让我们重新启动vsftpd服务并检查服务的状态。

# systemctl restart vsftpd
# systemctl enable vsftpd
# systemctl status vsftpd
 vsftpd.service - Vsftpd ftp daemon
 Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; enabled)
 Active: active (running) 
 Main PID: 27275 (vsftpd)

8.现在是时候启动我们的 GUI 工具 virt-manager

# virt-manager

9.启动‘virt-manager‘后,创建新的虚拟机,然后从此窗口中选择网络安装。

KVM Network Install

10.当您第一次安装 KVM 软件包时,虚拟网桥已创建以连接虚拟机与物理主机。您可以使用 ifconfig 命令显示其配置。

# ifconfig virbr0
示例输出
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

您会注意到 IP: 192.168.124.1 被分配给虚拟网桥 vibr0。虚拟机使用此 IP 与物理主机连接。因此,我们可以说此 IP 代表虚拟网络环境中的物理主机。

我们将使用此 IP 提供 FTP 目录的 URL 路径,其中包含 ISO 文件。如果您在另一台/远程主机上部署了 FTP 服务器,请输入另一台服务器的 IP,而不是之前的 IP。

KVM FTP Network Install

11.然后您将被询问资源和存储,与我们教程的前一部分相同。最后,您将到达此窗口或类似窗口。

KVM Create New VM

点击完成,享受您的新虚拟机。

KVM VM Installation

使用 NFS 进行网络安装

1.这里几乎有相同的步骤,安装 nfs 服务软件包。

# yum install nfs-utils

2.接下来,启动 nfs 服务并将服务永久添加到防火墙。

# systemctl start nfs
# systemctl enable nfs
# firewall-cmd --permanent --add-service=nfs
# firewall-cmd –reload

3.挂载 Linux ISO。

# mount -t iso9660 -o ro /path-to-iso/rhel-server-7.0-x86_64-dvd.iso  /mnt/iso-mp/

4.我们可以通过编辑/etc/exports来共享这个挂载点使用NFS共享。

#echo /mnt/iso-mp *(ro) > /etc/exports

5.重新启动NFS服务并检查服务的状态。

# systemctl restart nfs
# systemctl status nfs
示例输出
   nfs-server.service - NFS server and services
   Loaded: loaded (/usr/lib/systemd/system/nfs-server.service; disabled)
   Active: active (exited)

8.启动GUI工具’virt-manager‘。

# virt-manager

9.启动’virt-manager‘后,创建新的虚拟机,然后选择网络安装,然后输入NFS目录的URL路径,其中包含ISO文件。如果您已在其他远程计算机上部署了NFS服务器,请只输入该计算机的IP。

KVM NFS Install

10.然后会要求您输入资源和存储,就像在本系列的前一部分中讨论的那样。只需填写所有这些细节,然后点击“完成”按钮。

使用HTTP进行网络安装

1.这里也几乎有相同的步骤,安装http服务包,启动它,并在防火墙上永久启用它。

# yum install httpd
# systemctl start httpd
# systemctl enable httpd
# firewall-cmd --permanent --add-service=httpd
# firewall-cmd –reload

2.接下来,在“/mnt/iso-mp”位置挂载ISO映像。

# mount -t iso9660 -o ro /path-to-iso/rhel-server-7.0-x86_64-dvd.iso  /mnt/iso-mp/

3.到目前为止,我们还没有在HTTP服务器下共享任何内容。HTTP默认数据路径是“/var/www/html”,让我们在其中创建一个新目录。

# mkdir /var/www/html/RHEL7

4.然后将挂载的ISO文件复制到此目录中。

# cp -r /mnt/iso-mp/* /var/www/html/RHEL7/

5.重新启动httpd服务并检查服务的状态。

# systemctl restart httpd
# systemctl status httpd
示例输出
httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled)
   Active: active (running)
 Main PID: 3650 (httpd)

6. 接下来启动‘virt-manager‘,创建一个新的虚拟机,然后选择网络安装并输入 HTTP 目录路径 URL,其中包含 ISO 镜像文件,并按照上述讨论的步骤进行操作。

KVM HTTP Install

结论

我们讨论了如何使用网络安装部署 Linux 虚拟机。网络安装比本地安装更受青睐,因为它可以集中管理,帮助您部署一个中央安装源,所有服务器/机器都使用它来部署其操作系统。这真的减少了在庞大环境中浪费的安装时间。

Source:
https://www.tecmint.com/multiple-virtual-machine-installation-using-network-install-kvm/