创建虚拟机(kvm)
--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)的更多相关文章
- KVM初探之一--存储池与存储卷,使用virt-install创建虚拟机
在机器上装了一个Centos6.2用来测试KVM,对比Windows下的VMware worstation,KVM功能强大,定制性高,只要入了门,绝对是功能强大.用来作云计算不错.不过就是操作性差了点 ...
- KVM创建虚拟机
一.复制现有img备份 1.ssh登陆宿主机 我的在 192.168.0.302.复制img 我的虚拟机img文件在 /home/images 我的img模板文件在 /home/tools/kvm/i ...
- centos7安装kvm环境采用网桥模式并创建虚拟机制作openstack需要的镜像
初始环境的安装:centos7 mini iso镜像进行安装的系统 采用的环境是vm该软件,联网方式NAT模式下配置的静态ip(如何在NAT模式下配置静态ip参考之前的文章) 1.由于要安装kvm环境 ...
- kvm介绍、安装及创建虚拟机
kvm虚拟化介绍 一.虚拟化分类 1.虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机.在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独立 ...
- KVM :vnc 远程控制kvm创建虚拟机
一.vnc远程控制服务器 前期准备: 1.编辑/etc/hosts vi /etc/hosts 10.1.16.32 kvm 2.关闭防火墙 service iptables stop 3.关闭sel ...
- 搭建KVM环境——06 创建虚拟机
若转载请于明显处标明出处:https://www.cnblogs.com/kelamoyujuzhen/p/9071181.html 虚拟机磁盘格式 创建一个raw格式的虚拟机磁盘 [root@Cen ...
- Linux KVM创建虚拟机
原博文(https://www.cnblogs.com/supermao12/p/16382767.html) 开启虚拟化 KVM需要64位操作系统 [root@localhost 4.18.0-19 ...
- 使用QEMU创建虚拟机
下载安装: wget http://wiki.qemu-project.org/download/qemu-2.0.0.tar.bz2 tar xjvf qemu- ./configure --ena ...
- 在Ceph创建虚拟机的过程改进分析
作为个人学习笔记分享.有不论什么问题欢迎交流! 近期在Gerrit中看到一个change:https://review.openstack.org/#/c/94295/ , 它主要是对当前在Ceph中 ...
随机推荐
- SpringBoot 对IBM MQ进行数据监听接收以及数据发送
一.需求介绍 后端使用Spring Boot2.0框架,要实现IBM MQ的实时数据JMS监听接收处理,并形成回执通过MQ队列发送. 二.引入依赖jar包 <dependency> < ...
- 【k8s第一步】Kubernetes-Linux系统初始化【已修正错误】
⒈配置Linux的IP地址 vim /etc/sysconfig/network-scripts/ifcfg-ens33v ifcfg-ens33是网卡的最新命名规范,它会从BIOS => PC ...
- Netty的学习
看了几天高并发和NIO 今晚终于要开始学习Netty http://ifeve.com/netty5-user-guide/ Netty实现通信的步骤 1.创建两个NIO线程组,一个专门用于网络事件的 ...
- ros 配置udev
显示已经链接设备 lsusb 显示挂载点 ls /dev/ttyACM* /dev/ttyUSB* 可以看到 ttyUSB0 和 ttyUSB1 对应哪一个设备不确定,因此,我们就需要一种方法来保证每 ...
- Java 判断字符是大写小写或者数字
使用character类 Character.isLowerCase(Schar.charAt(i)) //获取字符串Schar中的某一个字符然后借用character类的方法来判断是不是小写. 其他 ...
- gitlab安装指南(gitlab-ce-9.4.3-ce.0.el7.x86_64 centos7)
1,安装gitlab wget https://packages.gitlab.com/gitlab/gitlab-ce/packages/el/7/gitlab-ce-9.4.3-ce.0.el7. ...
- redhad 7.0更换yum源
1. 卸载红帽yum源 rpm –e $(rpm –qa|grep yum) --nodeps 2.删除所有repo相关文件 rm –rf /etc/yum.conf rm –rf /etc/yum ...
- java7:核心技术与最佳实践读书笔记——类加载
流程:class -> 加载 -> jvm虚拟机 -> 链接 . 一.类加载器概述 1.引出 类加载器也是一个java类,java.lang.ClassLoader类是所 ...
- vue 父子组件数据的双向绑定大法
官方文档说明 所有的 prop 都使得其父子 prop 之间形成了一个 单向下行绑定 父级 prop 的更新会向下流动到子组件中,但是反过来则不行 2.3.0+ 新增 .sync 修饰符 以 upda ...
- Unable to bind to http://localhost:8080 on the IPv6 loopback interface: 'Cannot assign requested address'.
.net core+nginx警告: warn: Microsoft.AspNetCore.Server.Kestrel[0] Unable to bind to http://localhost:5 ...