Debian上的virt-commands-SMB的计算机网络

系列总索引: 中小企业计算机网络:简介

这篇文章的标题是指一系列以«开头的控制台命令病毒-« 在某些情况下这很有用。 我们将仅对每一个进行简要说明,并给出一些使用示例。 我们重复一遍:我们不能替换每个命令随附的手册。 我们强烈建议 通过运行检查那些页面 男性病毒命令.

  • 本文的主要目的是继续向人们展示Linux中的虚拟化当前正在使用Qemu-KVM Hypervisor的广泛领域。 尽管在标题中我们写了分布名称«Debian«,一般原则通过每个原则的特定命令适用于任何其他发行版本。 特别是那些与软件包的搜索,描述和安装有关的项目.

在继续阅读之前, 我们建议参观 上一篇文章: Debian上的Qemu-KVM + Virt-Manager-中小企业计算机网络.

什么时候使用命令?

在许多情况下,我们会通过以下方式远程管理虚拟化支持服务器: Qemu-KVM 已安装,由于某种原因,我们没有 虚拟机管理器- 病毒经理:

  • 典型的情况是,当我们通过Windows工作站从Windows工作站访问远程服务器时 腻子,或许多其他 替代方案 可以通过SSH与Debian GNU / Linux服务器建立连接,而后者对«X«,或图形支持。
  • 我们只想使用控制台命令来管理本地或远程服务器上的虚拟机。

与libvirt-clients一起安装

以前的文章 我们安装软件包 libvirt的-垃圾桶,并且在安装过程中 libvirt客户端。 如果我们在控制台中运行:

buzz @ sysadmin:〜$ sudo dpkg -L libvirt-clients | grep / bin
/ usr / bin
/ usr / bin / virsh
/ usr / bin / virt-host-validate
/ usr / bin / virt-login-shell
/ usr / bin / virt-xml-validate
/ usr / bin / virt-pki-validate
  • 维尔什:virsh程序是完整管理来宾域的主要用户界面- 宾客。 它用于列出,创建,暂停和关闭域。 必须以以下权限调用此命令: 。 它有两种运行方式:在命令模式下和在交互模式下。 我们将把下一篇文章献给virsh.
  • 虚拟主机验证:用于验证主机配置的工具- 主办方,以便能够支持所有Hypervisor驱动程序- 管理程序。 为了获得正确的结果,该命令必须以以下权限运行: .
  • 虚拟登录外壳:执行一个命令 专为 普通用户 在一个容器里 LXC,其名称与调用它的用户相同。 如果容器未运行,则命令 虚拟登录外壳 将尝试启动它。 无法使用用户权限调用此命令 。 该程序的非常明确的配置文件是 /etc/libvirt/virt-login-shell.conf.
  • virt-xml-验证:验证来自的XML文件 libvirt的 将它们与示意图进行比较- 架构 有效。 如果执行,我们将获得有效模式名称的列表 人 virt-xml-validate.
  • virt-pki-验证:用于验证是否的PKI文件 libvirt的 在安全服务器端和将使用TLS加密协议远程访问服务器的客户端上,都已正确配置它们。 如果我们启用了基于TLS和SSL的远程管理,则必须执行它。 该文件的第22.2章 虚拟化部署和管理指南专用于此解决方案。 我们建议 我们的业务网络使用 通过SSH进行远程管理,这是用于业务LAN的最简单,最安全的方法,我们将在以后的文章中进行介绍。.

与virtisnt一起安装

在上一篇文章中,我们还安装了该软件包 病毒经理。 作为该过程的一部分,该软件包已安装 最原始的。 如果我们想知道后者包含哪些命令,请执行:

byzz @ sysadmin:〜$ sudo dpkg -L virtinst | grep / bin
/ usr / bin
/ usr / bin / virt-convert
/ usr / bin / virt-image
/ usr / bin / virt-xml
/ usr / bin / virt-install
/ usr / bin / virt-clone
  • 病毒转换-将虚拟机定义转换为格式的命令 VMX y 卵泡 到本地libvirt格式 XML。 VMX格式通常由 VMware的,而OVF«开放式虚拟化格式»任何人都可以使用 管理程序 支持它。
  • 病毒形象-从图像描述符文件以XML格式创建虚拟机。 该特定工具将从以后的版本中删除 最原始的因此 我们不建议 它的使用.
  • virt-xml:允许编辑由以下人员使用的本机XML文件 libvirt的,使用命令行选项。
  • 安装virt:命令行工具,允许在使用管理程序管理库的管理程序(例如KVM,Xen或Linux容器)中创建新的虚拟机 “ libvirt”。 如果我们使用例如 VNC 虚拟网络计算,o el 香料。 它还完全支持控制台或文本模式。 通过使用它,我们可以创建一个具有一个或多个硬盘驱动器,一个或多个网卡,声音设备,物理USB或PCI设备等的虚拟机。 安装介质可以是本地的,也可以是远程的,可以使用本机UNIX NFS网络文件系统协议HTTP,FTP发布。 等等
  • 病毒克隆-使用管理程序管理库克隆现有虚拟机的命令行工具 “ libvirt”。 基本上复制虚拟机的映像并创建一个新的Guest- 客人 具有相同的硬件配置。 需要唯一的硬件项(例如网卡的硬件地址)将被更新,以避免新旧之间的冲突或噪音 客人.

观看者

当您执行 病毒经理. 观看者 它是一个单独的程序包。

  • 观看者:允许我们通过VNC或SPICE显示特定虚拟机的图形控制台,无论该虚拟机位于本地还是远程。 我们可以参考 客人 我们想要通过其名称,ID或UUID显示的内容。 如果虚拟机未在运行,virt-viewer将等待其启动。

可以从单独的软件包中安装的其他“ virt-”命令

  • 善良品-与虚拟化相关的工具的集合。 包括«穆宁«,以及用于将使用VMware Workstation或VMware Server创建的虚拟机转换为Qemu-KVM中使用的格式的脚本。
  • 顶级:显示虚拟域的统计信息。 一种 最佳 o HTOP 用于虚拟机

与qemu-utils一起安装

尽管这些工具的名称不是以“ 病毒当然,我们将必须在某些时候使用其中一些,尤其是与虚拟机磁盘映像有关的那些。

我们可以在安装完 Qemu-Kvm虚拟化平台,如前一篇文章所述。 如果我们想知道哪个命令包留给我们使用 qemu-utils,我们只需要运行:

嗡嗡声@ sysadmin:〜$ sudo dpkg -L qemu-utils | grep / bin
/ usr / bin
/ usr / bin / qemu-img
/ usr / bin / qemu-nbd / usr / bin / qemu-io

如果不是由...来区别 /箱 我们会做的 /宾,我们将获得另一个结果供您考虑。

  • qemu-img:允许我们创建,转换和/或修改无法运行的光盘映像或 脱线.
    我们建议 运行命令 男人qemu-img。 我们只会强调,我们绝对不要使用此命令来 修改任何虚拟机或任何其他进程正在使用的任何映像,因为它可能会破坏该映像。 我们也不应查阅修改过程中的图像数据,因为我们会发现其状态不一致.

一些命令的使用示例

虚拟主机验证

嗡嗡声@ sysadmin:〜$ virt-host-validate 
  QEMU:检查硬件虚拟化:PASS QEMU:检查设备/ dev / kvm:PASS QEMU:检查设备/ dev / vhost-net:警告(加载“ vhost_net”模块以提高virtio网络的性能)QEMU:检查是否设备/开发/网络/调试:通过LXC:检查Linux> = 2.6.26:通过

嗡嗡声@ sysadmin:〜$ sudo virt-host-validate 
嗡嗡声的[sudo]密码:QEMU:检查硬件虚拟化:PASS QEMU:检查设备/ dev / kvm:PASS QEMU:检查设备/ dev / vhost-net:PASS QEMU:检查设备/ dev / net / tun :通过LXC:检查Linux> = 2.6.26:通过

virt-xml-验证

嗡嗡声@ sysadmin:〜$ sudo virt-xml-validate /etc/libvirt/qemu/dns.xml 
/etc/libvirt/qemu/dns.xml进行验证

嗡嗡声@ sysadmin:〜$ sudo virt-xml-validate /etc/libvirt/qemu/networks/default.xml
/etc/libvirt/qemu/networks/default.xml验证

qemu-img

嗡嗡声@ sysadmin:〜$ qemu-img检查/tera/vmware/omicron/omicron.vmdk
在图像上未发现错误。

嗡嗡声@ sysadmin:〜$ qemu-img信息/tera/vmware/omicron/omicron.vmdk
图像:/tera/vmware/omicron/omicron.vmdk
文件格式:vmdk虚拟大小:20G(21474836480字节)磁盘大小:3.6G cluster_size:65536格式特定信息:cid:1473577509父cid:4294967295创建类型:monolithicSparse范围:[0]:虚拟大小:21474836480文件名:/ tera / vmware / omicron / omicron.vmdk群集大小:65536格式:

嗡嗡声@ sysadmin:〜$ qemu-img信息/tera/vms/omicron.raw 
图片:/tera/vms/omicron.raw
文件格式:原始虚拟大小:20G(21474836480字节)磁盘大小:3.4G

嗡嗡声@ sysadmin:〜$ qemu-img信息/tera/vms/miweb.qcow2
图像:/tera/vms/miweb.qcow2
文件格式:qcow2虚拟大小:10G(10737418240字节)磁盘大小:4.5G cluster_size:65536格式特定信息:compat:1.1惰性引用数:false

嗡嗡声@ sysadmin:〜$ sudo qemu-img转换-p /tera/vms/omicron.raw -O qcow2 /tera/vms/omicron.qcow2
    (27.56 / 100%)

嗡嗡声@ sysadmin:〜$ qemu-img信息/tera/vms/omicron.qcow2 
图像:/tera/vms/omicron.qcow2
文件格式:qcow2虚拟大小:20G(21474836480字节)磁盘大小:3.5G cluster_size:65536格式特定信息:compat:1.1惰性引用数:false
嗡嗡声@ sysadmin:〜$ sudo qemu-img create -f qcow2 /tera/vms/hyp2.qcow2 20G
格式化'/tera/vms/hyp2.qcow2',fmt = qcow2大小= 21474836480加密=关闭cluster_size = 65536 lazy_refcounts =关闭 

嗡嗡声@ sysadmin:〜$ sudo qemu-img信息/tera/vms/hyp2.qcow2
图像:/tera/vms/hyp2.qcow2
文件格式:qcow2虚拟大小:20G(21474836480字节)磁盘大小:196K cluster_size:65536特定于格式的信息:compat:1.1惰性引用数:false

virt-xml

首先,我们创建一个新专辑:

嗡嗡声@ sysadmin:〜$ sudo qemu-img create -f qcow2 /tera/vms/dns2.qcow2 10G

然后,将其加入到现有的“ dns”域中:

buzz @ sysadmin:〜$ virt-xml --connect qemu:///系统dns --add-device --disk /tera/vms/dns2.qcow2 --confirm
---原始XML +++更改后的XML @@ -128,5 +128,10 @@  + + + + +

使用更改后的XML定义“ dns”? (y / n):y
域“ dns”已成功定义。

在本文的结尾,我们给出了新修改的/etc/libvirt/qemu/dns.xml文件的完整结构。

病毒转换

让我们转换一个使用 VMware工作站 朝格式 libvirt的,但在指定转换后的硬盘的格式为 qcow2,以及在主存储库中创建了新的虚拟机映像 / Tera /虚拟机。 我们还希望命令输出尽可能明确,因此我们使用 -d.

嗡嗡声@ sysadmin:〜$ sudo virt-convert -d / tera / vmware / miweb / --disk-format qcow2 --destination / tera / vms

然后,virt-viewer自动连接到新转换的Guest,我们可以看到其整个启动过程。 道德

米网02

病毒克隆

让我们克隆虚拟机«DNS“:

嗡嗡声@ sysadmin:〜$ virt-clone --connect qemu:///系统-o dns --auto-clone
分配'dns-clone.qcow2'| 10 GB 00:20分配“ dns2-clone.qcow2” | 10 GB 00:01     

克隆“ dns-clone”已成功创建.

我们使用命令检查 维尔什,这是下一篇文章的预览:

buzz @ sysadmin:〜$ sudo virsh列表
 ID名称状态----------------------------------------------- -----

buzz @ sysadmin:〜$ sudo virsh列表--all
 ID名称状态----------------------------------------------- ------dns关闭-dns-clone关闭-miweb关闭

嗡嗡声@ sysadmin:〜$ sudo virsh启动dns-clone
域dns-clone启动
嗡嗡声@ sysadmin:〜$ virt-viewer --connect qemu:///系统dns-clone

dns克隆

安装virt

我们要创建一个名为«的虚拟机WordPress»托管网站 企业内部网。 它不会在Internet上发布。 它具有约1024 MB的RAM和80 GB动态增长的硬盘,该硬盘基于Debian Jessie,并已连接到网络«默认«。

为了使我们的生活更轻松,我们首先使用 qemu-img:

嗡嗡声@ sysadmin:〜$ sudo qemu-img create -f qcow2 / tera / vms / wordpress.qcow2 80G
格式化'/tera/vms/wordpress.qcow2',fmt = qcow2大小= 85899345920加密=关闭cluster_size = 65536 lazy_refcounts =关闭

接下来,我们创建机器并开始安装过程:

嗡嗡声@ sysadmin:〜$ sudo virt-install --connect qemu:///系统--virt-type = kvm \
--name wordpress --ram 1024 --vcpus = 1 \
--磁盘/tera/vms/wordpress.qcow2 \
--cdrom /home/buzz/isos/Linux/debian-8/debian-8.0.0-amd64-CD-1.iso \
--os-type linux --network网络=默认\
--描述wordpress。desdelinux。风扇

WordPress的

顶级

嗡嗡声@ sysadmin:〜$ virt-top --connect qemu:///系统
virt-top 15:39:21-x86_64 2 / 2CPU 1600MHz 3863MB 2个域,2个活动,2个正在运行,0个睡眠,0个暂停,0个不活动D:0 O:0 X:0 CPU:0.7%Mem:768 MB(来宾768 MB)ID S RDRQ WRRQ RXBY TXBY%CPU%MEM时间名称22 R 0 0 104 0 0.3 6.0 0:11.49 dns 21 R 0 0 104 0 0.3 13.0 0:13.42 miweb

dns.xml文件的结构

起初,似乎很难理解虚拟机或 客人如Qemu-KVM虚拟机管理程序和相关库(例如 libvirt的。 该文件为标准格式。XML。 它由定义块构成,包含在主块««。

....

在该区块中,我们将找到 整个虚拟机的定义:

  • 团队名称
  • 队友
  • RAM数量
  • 处理器数量
  • 操作系统的类型及其体系结构。 的设备 开机.
  • 它支持的功能,例如ACPI“自动控制电源接口”,APM“自动电源管理”和PAE。
  • CPU型号及其特征
  • 时钟设置:是否为UTC“美国时间坐标”。
  • 对诸如关机,重新启动或系统崩溃之类的事件的响应
  • 如果PM«电源管理»启用了事件«暂停写入内存»和«暂停写入硬盘»
  • 不同设备的仿真器类型或 KVM设备
  • 对于所有硬盘驱动器:驱动程序,磁盘类型,映像文件路径,目标设备,总线类型,插槽«插槽»它所连接的»Pci等,取决于虚拟磁盘:IDE,SATA,SCSI,USB或Virtio。
  • CDR等光学设备
  • USB连接器的数量和类型
  • IDE磁盘的pci插槽
  • 通讯串行连接器
  • 打印机的并行连接器
  • 具有唯一MAC地址的网卡,网卡的类型,它连接到的pci插槽以及它将连接到的虚拟网络
  • pty系列游戏机
  • 输入设备,例如垫«良好“,鼠标键盘”老鼠”等
  • 显卡及其RAM,类型,型号,插槽,总线等。
  • 和另一长等

简而言之,Qemu-KVM虚拟机管理程序和相关库所必需和支持的定义和设备的La MarOcéana,要具有功能齐全的虚拟机,就好像它是真实的计算机一样。

嗡嗡声@ sysadmin:〜$须藤猫/etc/libvirt/qemu/dns.xml 
<!--
警告:这是一个自动生成的文件。  对它的更改很可能被覆盖并且丢失。  应当使用以下命令对此xml配置进行更改:virsh edit dns或其他使用libvirt API的应用程序。

即将交付

  • Virsh命令
  • 使用SSH远程管理虚拟机监控程序及其虚拟机

请记住,这将是由 中小企业计算机网络。 我们将等您!


15条评论,留下您的评论

发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。

  1.   迭戈

    您已要求我提供反馈,并且进展顺利...🙂

    该系列非常有趣,非常完整。 尽管我还没有尝试过“量产”,但我从中学到了很多。

    目前,我正在完成一个非常忙的项目,但是我一定会参考该系列文章。 感谢您的巨大努力。

    1.    费德里科

      感谢迭戈的反馈。至少我知道我发表的东西对你有用。你对我们所做的巨大努力的看法是正确的 DesdeLinux 以西班牙语向您提供优质文章。我们知道这些类型的帖子并不丰富,这就是我们撰写它们的原因。

  2.   黄道十二宫

    全面而有说服力的文章amigo Fico,在文章中收集了KVM中使用的virt- *命令。 用西班牙语很难找到像这样的材料。 我认为缺少virt-what命令。 否则优秀

    1.    FICO

      朋友黄道带,感谢您的评论。 确实缺少了virt-what命令。 我有意识地省略了它,因为根据其手册对它的使用的建议给我留下了不好的味道。 最后,我了解到他们不建议使用它

  3.   费德里科

    非常真诚的十二生肖朋友。正如迭戈在他的评论中所说,这是我们做出的巨大努力 DesdeLinux 以西班牙语向您提供优质文章。除了 WWW 村中比比皆是的经典复制粘贴 CD 帖子。这有助于系统管理员的培训。关注本系列的人将会意识到,我们计划按逻辑顺序全面涵盖中小型企业网络的解决方案。再次感谢大家的评论。

  4.   Crespo88

    我一直在使用android智能手机做某事,但我还没有机会阅读这么好的文章,这次我只是想说点什么。 加油很好的理解...

  5.   费德里科

    Crespo88,文章可能有点长,但是如果您的意思是这样,我不是在几个帖子中删减此类特定主题的朋友。 内容的相对复杂性,我不说,这是虚拟化本身的问题。 😉

    1.    Crespo88

      我没有像往常一样提到它,这是一篇很棒的文章。 我的意思是,您正在播放非常好的歌曲,也就是说,它具有非常有用的实用程序。 “让它变软”意味着您正在逃避。 呵呵呵,一个拥抱的兄弟。

      1.    FICO

        谢谢哥哥的评论

  6.   彼得切科

    很好的帖子...教学法,完整而简单。

    现在,对于那些喜欢使用这种类型的虚拟化技术的人来说,最好使用oVirt(http://www.ovirt.org/),这是构建Red Hat Virtualization和Open Source的项目。 这样,就可以以非常简单的方式访问非常高级的选项,这在控制台中非常复杂:)。

    http://www.ovirt.org/download/
    http://www.ovirt.org/documentation/introduction/about-ovirt/

    干杯:)。

  7.   费德里科

    非常感谢Petercheco的评论。 在上一篇文章“ Debian中的虚拟化:简介”中,专门讨论开放虚拟化联盟的段落中,我提到oVirt是OVA推广的软件之一。 我认为oVirt适用于大型部署。 另一方面,他要求配备4 GB RAM的专用工作站作为建议的内存量。 我的朋友和同事Eduardo Noel“ enoel.corebsd@gmail.com”已安装了多个基于CentOS 7的虚拟化服务器,并使用oVirt对其进行了出色的管理。

  8.   丹尼斯·坎蒂略

    优秀的文章,我的伴侣,另一个体现您品质的例子

  9.   费德里科

    谢谢朋友丹尼斯(Denis)的评论,对我也不应有的赞赏。 我们尽我们所能。

  10.   伊斯梅尔·阿尔瓦雷斯·黄

    尽管我正在等待家庭实验室中的virt命令的测试,但是我不禁意识到这篇文章非常棒,非常实用并且非常有用,因为它的重点是我最喜欢的终端设备系统管理员。
    无需使用“ Virt-Manager”图形界面,即可完成与VM的本地或远程管理相关的所有工作。
    再一次,我的朋友Fico,您将通过无私地分享您对Linux世界的了解来扩大自己。
    Wong的喷射式SLD和我将继续更加努力地研究Virt Qemu-KVM系列。

    1.    费德里科

      Wong Friend:像您这样的评论迫使我继续撰写有关SME Networks的文章。 许多人可能想知道为什么我偏重Qemu-KVM,答案在我的文章中 https://blog.desdelinux.net/virtualizacion-debian-introduccion-redes-computadoras-las-pymes/#Open_Virtualization_Alliance_OVA。 少谈他 视觉,我认为它适合于规模比SME Network更大的方案,我已经处理了由 OVA。 这么简单

      如果我需要在企业级别进行虚拟化,为什么还要在我登上的每个发行版的程序存储库之外进行搜索?

      朋友黄先生,感谢您的宝贵意见!