创建虚拟机(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中 ...
随机推荐
- Oulipo POJ - 3461(kmp,求重叠匹配个数)
Problem Description The French author Georges Perec (1936–1982) once wrote a book, La disparition, w ...
- Centos安装elasticsearch,php连接使用
一.下载安装JAVA 下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html ...
- thinkphp5日志文件权限的问题
由于www用户和root用户(比如command的cli进程日志)都有可能对log文件进行读写. 如果是由www用户创建的log文件,不会出任何问题. 但是如果是先由root用户创建的log文件,然后 ...
- k8s-traefik默认80端口
vim traefik.yaml kind: Deployment apiVersion: extensions/v1beta1 metadata: name: traefik-ingress-con ...
- k8s组件通信或者创建pod生命周期
Kubernetes 多组件之间的通信原理: apiserver 负责 etcd 存储的所有操作,且只有 apiserver 才直接操作 etcd 集群 apiserver 对内(集群中的其他组件)和 ...
- 代理模式与动态代理之JDK实现和CGlib实现
静态代理 静态代理中的代理类和委托类会实现同一接口或是派生自相同的父类. 由业务实现类.业务代理类 两部分组成.业务实现类 负责实现主要的业务方法,业务代理类负责对调用的业务方法作拦截.过滤.预处理, ...
- codeforce B. Petya and Exam
wa一万次难受. #include<cstdio> #include<cstring> #include<cmath> #include<algorithm& ...
- React-脚手架
1. Node和NPM 版本 2. 脚手架 在对React比较熟悉之前,为了避免陷入到开发工具的繁琐配置中,借助react官方提供的脚手架工具Create React App来搭建React应用 np ...
- Spring web.xml详解
web.xml文件是Java Web项目中的一个配置文件,主要用于配置欢迎页.Filter.Listener.Servlet等,但并不是必须的,一个Java Web项目没有web.xml文件也是照样能 ...
- 2.1 使用JAXP 对 xml文档进行DOM解析
//使用 jaxp 对xml文档进行dom解析 public class Demo2 { //必要步骤 @Test public void test() throws Exception { //1. ...