--virsh console virt_name

-- virsh nodeinfo                               # 查看kvm节点(服务器)信息

--virsh list [--all]                 # 列出虚拟机

--virsh net-list [--all]                # 查看虚拟网络

--virsh dominfo virt_name             # 查看指定虚拟机信息           

--virsh domiflist virt_name            # 查看虚拟机网卡

--virsh start | reboot | shutdown vitr_name   

--virsh destroy virt_name            # 强制关闭指定的虚拟机

--virsh autostart [--disable] virt_name        # 开机自启

--virsh -c qemu+ssh://user@host_ip:port/syetem      # 远程连接

--qemu-img create -f format file_name size                  #  创建新的镜像盘文件

  qemu-img create -f qcow2 | raw disk.img 50G

--qemu-img info file_name            # 查看磁盘信息

--qemu-img snapshot

--qemu-img create -b temp -f qcow2 file_name  # 使用后端模板创建

cd /var/lib/libvirt/images/

qemu-img create -b node.qcow2 -f qcow2 node1.img 

创建虚拟交换机

创建配置文件    /etc/libvirt/qemu/networks/vbr.xml

创建虚拟网络 virsh net-define /etc/libvirt/qemu/networks/vbr.xml                # net-undefine 删除

启动虚拟网络 virsh net-start vbr                   # net-destroy   停止 net-edit 修改

查看虚拟网络 virsh net-list 

设置开机自启 virsh net-autostart vbr                                                                       

<network>
<name>vbr</name> # virsh net-list --all 可见
<bridge name='vbr' stp='on' delay='0'/> # ifconfig 可见
<domain name='vbr'/>
<forward mode="nat"/> # 启用地址转换
<ip address='192.168.1.254' netmask='255.255.255.0'> # dhcp服务器
<dhcp> # 在指定范围内随机分配ip
<range start="192.168.1.100" end="192.168.1.200"/>
</dhcp>
</ip>
</network>

创建虚拟机

创建配置文件   /etc/libvirt/qemu/node1.xml$

创建虚拟机      virsh define /etc/libvirt/qemu/node1.xml

启动虚拟机      virsh start node1

登陆     virsh console node1

<domain type='kvm'>
<name>node1</name>
<memory unit='KB'>1524000</memory> # 最大可使用内存
<currentMemory unit='KB'>1524000</currentMemory> # 当前最大内存
<vcpu placement='static'>2</vcpu> # 虚拟的cpu个数
<os>
<type arch='x86_64' machine='pc'>hvm</type>
<boot dev='hd'/> # 硬盘启动
<bootmenu enable='yes'/>
<bios useserial='yes'/>
</os>
<features>
<acpi/>
<apic/>
</features>
<cpu mode='host-passthrough'>
</cpu>
<clock offset='localtime'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<devices>
<emulator>/usr/libexec/qemu-kvm</emulator>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/var/lib/libvirt/images/node1.img'/>
<target dev='vda' bus='virtio'/>
</disk>
<interface type='bridge'>
<source bridge='vbr'/> # 连接的虚拟交换机
<model type='virtio'/>
</interface>
<channel type='unix'>
<target type='virtio' name='org.qemu.guest_agent.0'/>
</channel>
<serial type='pty'></serial>
<console type='pty'>
<target type='serial'/>
</console>
<memballoon model='virtio'></memballoon>
</devices>
</domain>

脚本创建虚拟机

#!/bin/bash

#read -p '请输入交换机名称:' sw_name
read -p '请输入主机名称:' vm_name
read -p '请分配空间:(?G):' size
read -p '是否自启动?(yes/no):' auto_start size=${size:-"20G"}
auto_start=${auto_start:-"yes"} echo $size
echo $auto_start #sw_path="/etc/libvirt/qemu/networks"
img_path="/var/lib/libvirt/images"
xml_path="/etc/libvirt/qemu" isExist=`find $img_path/ -name $vm_name.img | wc -l`
if [ $isExist -ne ];then
echo '镜像文件已经存在!'
exit
fi qemu-img create -b $img_path/node.qcow2 -f qcow2 $img_path/$vm_name.img $size sed "s/node/$vm_name/;/uuid/d" $xml_path/node.xml > $xml_path/$vm_name.xml
virsh define $xml_path/$vm_name.xml
virsh start $vm_name if [ $auto_start == "yes" ];then
virsh autostart $vm_name
fi

脚本删除虚拟机

#!/bin/bash

read -p '请输入要删除的主机名称:' vm_name

img_path="/var/lib/libvirt/images"
xml_path="/etc/libvirt/qemu" virsh destroy $vm_name > /dev/null
virsh shutdown $vm_name > /dev/null
virsh undefine $vm_name > /dev/null
isExist=`find $img_path/ -name $vm_name.img | wc -l`
if [ $isExist -eq ];then
echo '镜像文件不存在!'
exit
fi rm -rf $img_path/$vm_name.img $xml_path/$vm_name.xml $xml_path/*-$vm_name > /dev/null

创建虚拟机(kvm)的更多相关文章

  1. KVM初探之一--存储池与存储卷,使用virt-install创建虚拟机

    在机器上装了一个Centos6.2用来测试KVM,对比Windows下的VMware worstation,KVM功能强大,定制性高,只要入了门,绝对是功能强大.用来作云计算不错.不过就是操作性差了点 ...

  2. KVM创建虚拟机

    一.复制现有img备份 1.ssh登陆宿主机 我的在 192.168.0.302.复制img 我的虚拟机img文件在 /home/images 我的img模板文件在 /home/tools/kvm/i ...

  3. centos7安装kvm环境采用网桥模式并创建虚拟机制作openstack需要的镜像

    初始环境的安装:centos7 mini iso镜像进行安装的系统 采用的环境是vm该软件,联网方式NAT模式下配置的静态ip(如何在NAT模式下配置静态ip参考之前的文章) 1.由于要安装kvm环境 ...

  4. kvm介绍、安装及创建虚拟机

    kvm虚拟化介绍 一.虚拟化分类 1.虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机.在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独立 ...

  5. KVM :vnc 远程控制kvm创建虚拟机

    一.vnc远程控制服务器 前期准备: 1.编辑/etc/hosts vi /etc/hosts 10.1.16.32 kvm 2.关闭防火墙 service iptables stop 3.关闭sel ...

  6. 搭建KVM环境——06 创建虚拟机

    若转载请于明显处标明出处:https://www.cnblogs.com/kelamoyujuzhen/p/9071181.html 虚拟机磁盘格式 创建一个raw格式的虚拟机磁盘 [root@Cen ...

  7. Linux KVM创建虚拟机

    原博文(https://www.cnblogs.com/supermao12/p/16382767.html) 开启虚拟化 KVM需要64位操作系统 [root@localhost 4.18.0-19 ...

  8. 使用QEMU创建虚拟机

    下载安装: wget http://wiki.qemu-project.org/download/qemu-2.0.0.tar.bz2 tar xjvf qemu- ./configure --ena ...

  9. 在Ceph创建虚拟机的过程改进分析

    作为个人学习笔记分享.有不论什么问题欢迎交流! 近期在Gerrit中看到一个change:https://review.openstack.org/#/c/94295/ , 它主要是对当前在Ceph中 ...

随机推荐

  1. 使用kubeadm进行单master(single master)和高可用(HA)kubernetes集群部署

    kubeadm部署k8s 使用kubeadm进行k8s的部署主要分为以下几个步骤: 环境预装: 主要安装docker.kubeadm等相关工具. 集群部署: 集群部署分为single master(单 ...

  2. Tkinter(一)

    采集小工具,目前采集主要针对知乎文章与评论,今天刚开始弄,会不断更新完善 目前效果(测试站点 :科技:测试连接:http://zhihu.sogou.com/include/pc/pc/topic/t ...

  3. Algorithm negotiation failed

    #用pycharm工具ssh client 报 algorithm negotiation failed#导致原因:是ssh升级后,为了安全,默认不再采用原来一些加密算法,我们手工添加进去即可#目前出 ...

  4. MySQL create table语法详解

    前面在查建表时key和index的区别时,发现建表语句包含了太多信息,于是完整看看官方手册的这一小节. 该文章根据MySQL 5.7的手册作笔记,而MySQL 8.0该节地址如下: https://d ...

  5. hdu 6043 KazaQ's Socks

    规律题.我自己写的规律对长度为2的要特判,wa一万次... 规律题目,容易错的反而是数据小的时候,得长记性. 题解:规律 先是1~n 然后1~n-2 n-1  1~n-2 n 交替出现 比如当n=4 ...

  6. vc 网络编程(socket)

    在网上找了很多的资料,现将这些资料整合起来,详细介绍一下VC下的socket编程,并提供一个服务器客户端具体的实例.希望对您有所帮助 一.原理部分 (个人觉得这篇写的可以,所以转与此,原文地址:htt ...

  7. NopCommerce的autofac的理解

    nop项目4.1是core.2.1开发的,Startup.cs文件开始 从入口进去ServiceCollectionExtensions这个文件 this IServiceCollection ser ...

  8. 如何爬取icourse163 中国慕课上课程信息(上),

    中国大学MOOC网上有着特别完善的课程信息,我觉得这是一份可以让我们充分利用的资源 那么,接下来的问题就是我们该如何爬取这里的资源 选择其中的计算机课程进行尝试 import requests fro ...

  9. YOLO 学习之路

    参考自官网  https://pjreddie.com/darknet/install/ 1. 下载darknet  并编译 git clone https://github.com/pjreddie ...

  10. React中,input外边如果包一个div,可以把input的onChange事件绑定到div上面,并且也生效

    最近第一次开始学习封装组件,遇到几个比较神奇的问题. 首先就是如果input外边包一个div,如果把input的onChange事件绑定到div上,也会生效 <div onChange={(e) ...