searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

使用 virsh 命令创建虚拟机

2024-06-27 10:18:34
14
0

使用 virsh 命令创建虚拟机

在计算虚拟化领域,virsh 是一个强大的命令行工具,主要用于管理基于 KVM(Kernel-based Virtual Machine)的虚拟机。virsh 提供了创建、修改、启动、停止和监控虚拟机的功能,是系统管理员和开发人员日常工作中的得力助手。本文将详细介绍如何使用 virsh 命令创建一台新的虚拟机。

1. 环境准备

在开始创建虚拟机之前,需要确保系统已安装 libvirtqemu-kvm,并且 libvirtd 服务正在运行。可以通过以下命令安装并启动这些服务:

# 安装libvirt和qemu-kvm
sudo apt-get install -y libvirt-bin qemu-kvm

# 启动libvirtd服务
sudo systemctl start libvirtd
sudo systemctl enable libvirtd

2. 创建存储池和存储卷

虚拟机的磁盘文件通常存储在存储池中。在本例中,我们将创建一个目录作为存储池,并在其中创建一个存储卷(虚拟机磁盘文件)。

# 创建存储池目录
sudo mkdir -p /var/lib/libvirt/images

# 定义并启动存储池
sudo virsh pool-define-as default dir - - - - "/var/lib/libvirt/images"
sudo virsh pool-start default
sudo virsh pool-autostart default

# 创建存储卷(虚拟机磁盘文件)
sudo virsh vol-create-as default my-vm-disk 20G --format qcow2

3. 下载操作系统镜像

创建虚拟机时,需要指定操作系统安装镜像(ISO 文件)。以下示例下载 Ubuntu Server 的 ISO 文件:

# 下载Ubuntu Server ISO文件
wget -O /var/lib/libvirt/images/ubuntu-server.iso http://releases.ubuntu.com/20.04/ubuntu-20.04.5-live-server-amd64.iso

4. 定义虚拟机

使用 virsh 创建虚拟机时,需要定义其配置。可以通过 XML 文件进行配置定义,也可以使用 virt-install 命令直接创建。以下示例展示如何使用 virt-install 命令定义和创建虚拟机:

sudo virt-install \
  --name my-vm \
  --ram 2048 \
  --vcpus 2 \
  --disk path=/var/lib/libvirt/images/my-vm-disk,format=qcow2 \
  --cdrom /var/lib/libvirt/images/ubuntu-server.iso \
  --network network=default \
  --graphics vnc,listen=0.0.0.0 \
  --os-type linux \
  --os-variant ubuntu20.04 \
  --hvm

参数解释:

  • --name:指定虚拟机名称。
  • --ram:分配给虚拟机的内存大小(MB)。
  • --vcpus:分配给虚拟机的虚拟 CPU 数量。
  • --disk:指定虚拟机的磁盘文件路径和格式。
  • --cdrom:指定操作系统安装镜像路径。
  • --network:配置虚拟机的网络,使用默认网络。
  • --graphics:配置图形界面,使用 VNC 进行远程连接。
  • --os-type:指定操作系统类型。
  • --os-variant:指定操作系统版本。
  • --hvm:启用硬件虚拟化。

5. 启动和管理虚拟机

虚拟机定义完成后,virsh 会自动启动虚拟机。可以使用以下命令管理和监控虚拟机:

# 查看虚拟机列表
sudo virsh list --all

# 启动虚拟机
sudo virsh start my-vm

# 停止虚拟机
sudo virsh shutdown my-vm

# 强制关闭虚拟机
sudo virsh destroy my-vm

# 删除虚拟机
sudo virsh undefine my-vm

6. 连接虚拟机控制台

可以使用 virsh 连接到虚拟机的控制台进行管理:

sudo virsh console my-vm

结论

通过以上步骤,我们成功使用 virsh 命令创建了一台新的虚拟机。从存储池和存储卷的创建,到操作系统镜像的下载,再到虚拟机的定义和启动,virsh 提供了一整套强大而灵活的工具集,使得虚拟机管理变得更加高效和便捷。在实际应用中,可以根据需要调整虚拟机的配置,以适应不同的使用场景。

0条评论
0 / 1000
c****n
1文章数
0粉丝数
c****n
1 文章 | 0 粉丝