KVM虚拟机管理——虚拟机创建和操作系统安装
2. 交互式安装
2.1 图形化-本地安装
2.1.1 图形化本地CDROM安装
2.2.2 图形化本地镜像安装
2.2 命令行-本地安装
2.2.1 命令行CDROM安装
2.3 图形化-网络安装
2.3.1 图形化HTTP镜像
2.3.2 图形化FTP镜像
2.3.3 图形化NFS镜像
2.4 命令行-网络安装
2.4.1 命令行HTTP镜像
2.4.2 命令行FTP镜像
2.4.3 命令行NFS镜像
3. 自动化安装
3.1 图形化-PXE安装
3.2 命令行-PXE安装
4. 镜像安装与克隆
2.1 本地图像化CDROM安装
2.2 本地命令行镜像文件安装
3. 图形化网络安装
3.1 location方式安装
3.2 PXE预启动安装
1. 概述
KVM的管理有以下几种方式:
- 图形界面
- 命令行
- API
本篇博客主要是从图形界面和命令行,两种KVM虚拟机管理方式,来配置虚拟机,并安装操作系统。
2. 交互式安装
交互式安装,是区别自动化安装的安装方式。交互式安装能够给用户一个很大的自定义空间,当然采用ks.cfg文件的自动化部署也有很大的空间。
交互式安装,无论是从本地加载系统镜像,还是从远程(HTTP/FTP/NFS)下载镜像,均是同一个安装界面。不同的是从哪个URL下载而已。
2.1 图形化-本地安装
图形化的本地安装时,virt-mangeer是类似于VMware workstation一样的软件管理工具。能够实现虚拟设备的分配和配置。
这里以创建一个KVM虚拟机,安装CentOS6.5操作系统为例。
2.1.1 图形化本地CDROM安装
图形化本地CDROM的安装,与VMware workstation通过CDROM载入系统镜像一样。这里需要console事前已经通过loop形式,装载了CentOS6.5的系统镜像。
这种安装方式比较适合本地没有系统镜像,但是却载入了系统镜像的有物理光驱等使用场景。[相当于使用物理光驱]
具体过程,参见博客《》
2.2.2 图形化本地镜像安装
图形化本地镜像安装,是在图形界面启动之后,选择文件系统上的系统镜像。
这种安装方式比较适合本地没有CDROM,但是有系统镜像文件的使用场景,系统镜像也可以通过其他协议上传。[相当于建立虚拟光驱]
具体过程,参见博客《virt-manager图形化配置虚拟机并安装操作系统.md》
2.2 命令行-本地安装
命令行管理工具为:virt-install和virsh,前者是安装工具,后者是shell管理工具。
注:virt-install和virsh的help文档,参见《virt-install.help.md》和《virsh.help.md》
2.2.1 命令行CDROM安装
具体操作,参见博客《virt-install命令行配置虚拟机并安装操作系统.md》
采用这种方式,有两种情况:
- graphisc vnc
- graphisc none
- nographisc
采用graphisc vnc方式时,和virt-manger无异,均会启动图形界面来安装操作系统。
采用graphisc none方式时,会以文本的形式安装,文本输出到当前终端界面。
采用此种方式配置虚拟机并安装操作系统时,不适合批量部署,因为未提供自动化配置文件。
但是却十分符合自定义标准,或者安装windows操作系统
2.3 图形化-网络安装
图形化网络安装时,需要提前配置好支持HTTP/FTP/NFS协议的系统镜像站点。支持三大协议的系统镜像站点配置,参见博客《虚拟机console基础环境配置——系统镜像站点配置.md》
在部署好系统镜像站点之后,三大协议的系统镜像站点分别为:
- http://192.168.80.8/osimage/centos6.5
- ftp://192.168.80.8/osimage/centos6.5
- nfs:192.168.80.8:/mnt/cdrom
只需要在图形化配置过程中,将对应的URL修改为上述内容即可。这样的安装方式,只不过是从远程下载系统镜像。
与此对应,本系列博文将自动化配置文件ks.cfg
- http://192.168.80.8/kscfg/http-ks.cfg
- ftp://192.168.80.8/pub/kscfg/ftp-ks.cfg
- nfs:192.168.80.8:
2.3.1 图形化HTTP镜像
图像化HTTP镜像站点,需要做出的选择部分,如下图:


2.3.2 图形化FTP镜像


2.3.3 图形化NFS镜像
图形化NFS镜像站点,配置部分如下图:


2.4 命令行-网络安装
根据上面的工作,命令行在配置了graphics vnc的情况下,同样会打开图像界面来交互式安装。命令行与图形化安装的最大区别在于,是否配置graphics vnc模式
如果采用nographics,并且配置了ks.cfg文件之后,便可非交互后台静默安装
下面的shell内容,是博主写在脚本里的内容,后跟虚拟机的number,便可创建node${number}
2.4.1 命令行HTTP镜像
安装脚本,remote_http.sh,使用方式如,bash remote_http.sh 11
#!/bin/bash
virt-install \
--connect qemu:///system \
--name node$1 \
--vcpus sockets=2,cores=2,threads=1 \
--ram 512 \
--disk path=/mnt/data/vhost/node$1.img,size=8 \
--network bridge=br0,mac=00:00:00:80:00:$1,model=virtio \
--network bridge=br0,mac=00:00:00:10:00:$1,model=virtio \
--location=http://192.168.80.8/osimage/centos6.5/ \
--graphics vnc,port=59$1,keymap=us \
2.4.2 命令行FTP镜像
安装脚本,remote_ftp.sh,使用方式如,bash remote_ftp.sh 11
#!/bin/bash
virt-install \
--connect qemu:///system \
--name node$1 \
--vcpus sockets=2,cores=2,threads=1 \
--ram 512 \
--disk path=/mnt/data/vhost/node$1.img,size=8 \
--network bridge=br0,mac=00:00:00:80:00:$1,model=virtio \
--network bridge=br0,mac=00:00:00:10:00:$1,model=virtio \
--location=ftp://192.168.80.8/pub/osimage/centos6.5/ \
--graphics vnc,port=59$1,keymap=us \
2.4.3 命令行NFS镜像
安装脚本,remote_http.sh,使用方式如,bash remote_nfs.sh 11
#!/bin/bash
virt-install \
--connect qemu:///system \
--name node$1 \
--vcpus sockets=2,cores=2,threads=1 \
--ram 512 \
--disk path=/mnt/data/vhost/node$1.img,size=8 \
--network bridge=br0,mac=00:00:00:80:00:$1,model=virtio \
--network bridge=br0,mac=00:00:00:10:00:$1,model=virtio \
--location=nfs:192.168.80.8:/mnt/cdrom \
--graphics vnc,port=59$1,keymap=us \
3. 自动化安装
自动化安装,不仅对一个机器实现秒交互安装,也能够实现批量安装。前提是配置了PXE无人值守环境。这个环境主要包括四部分:
- DHCP环境
用于给客户机分配IP
- TFTP环境
用于客户机下载引导程序
- 系统站点
用于客户机下载完整镜像
- 自动化配置文件
用于自动配置安装过程
3.1 图形化-PXE安装
3.2 命令行-PXE安装
4. 镜像安装与克隆
4. 镜像安装与克隆
和VMware workstation一样,可以通过CDROM设备,进行操作系统的安装,前提是有系统镜像。对于KVM而言,既可以使用图像化安装方式,也可以使用命令行安装方式。
图像化安装方式,比较适合交互式的自定义安装;而命令行模式的,比较适合批量自动化安装(有自动化配置文件ks.cfg)。
2.1 本地图像化CDROM安装
本地图像化安装需要启动图形化。启动图像化之后,安装过程参见博客《virt-manager图像化安装操作系统.md》
本篇博客启动图形化过程中报错,具体解决方式参见博客《Error【0004】:virt-manager打开报错.md》
2.2 本地命令行镜像文件安装
3. 图形化网络安装
3.1 location方式安装
location安装方式,即从远程HTTP/FTP/NFS服务器上获取系统镜像。自动化配置文件ks.cfg可以通过指定内核参数,从远程HTTP/FTP/NFS上获取。
location安装方式可以从内核指定参数,配置安装的虚拟机能够从控制台直接登陆,即virsh console xxxx方式登陆。
#!/bin/bash
NODE=$1
if [ "$#" -ne "1" ];then
echo "指定虚拟机num." && echo 0;
fi
virt-install \
--name node$NODE \
--vcpus sockets=2,cores=2,threads=1 \
--ram 512 \
--location="" \
--extra-args="" \
--os-type linux \
--virt-type kvm \
--disk path=/mnt/data/vhost/node$NODE.img,size=10 \
--network bridge=br0,model=virtio,mac=00:00:00:80:00:$NODE \
--network bridge=br1,model=virtio,mac=00:00:00:10:00:$NODE \
--graphics vnc,listen=0.0.0.0,port=59$NODE,keymap=us \
3.2 PXE预启动安装
KVM虚拟机管理——虚拟机创建和操作系统安装的更多相关文章
- KVM虚拟化管理 virt manager常用操作
部分涉及到Linux.Nginx.tomcat.MySQL等的点滴操作记录,时间长了,就忘掉了,偶尔整理一下操作的history,就此简要备份一下: [原][BG]-一次虚拟化环境实践简要记录: ht ...
- kvm虚拟机管理(创建、连接)
创建虚机.远程管理kvm虚机.virsh命令行下管理虚机..kvm通过virsh console 连入虚拟机 一.创建虚机 1)打开虚拟化管理器
- KVM虚拟机管理——虚拟机克隆
1. 概述2. 部署基本操作系统虚拟机3. 配置虚拟机3.1 修改/etc/sysconfig/network3.2 删除/etc/sysconfig/network-scripts/ifcfg-et ...
- kvm命令管理虚拟机
virsh 既有命令行模式,也有交互模式,在命令行直接输入 virsh 就进入交互模式, virsh 后面跟命令参数,则是命令行模式: KVM 工具集合 libvirt:操作和管理KVM虚机的虚拟化 ...
- 6.12、通过kvm可视化管理虚拟机
6.12.1.通过Xmanager - Passive管理kvm虚拟机(首先要安装xmanager): 1.安装虚拟化管理软件: [root@centos7 ~]# yum install -y vi ...
- CentOS的KVM实践(虚拟机创建、网桥配置、Spice)
最近公司准备上一套基于openstack的虚拟桌面系统,作为该项目的负责人,觉得有必要自己实践一下,该系统的搭建.最基础的就是需要了解基于linux的kvm的实践. 一.基础软件包准备 系统是采用px ...
- kvm虚拟化管理平台WebVirtMgr部署-完整记录(安装Windows虚拟机)-(4)
一.背景说明 在之前的篇章中,提到在webvirtmgr里安装linux系统的vm,下面说下安装windows系统虚拟机的操作记录: 由于KVM管理虚拟机的硬盘和网卡需要virtio驱动,linux ...
- kvm虚拟机管理 系统自动化安装
原创博文安装配置KVM http://www.cnblogs.com/elvi/p/7718574.htmlweb管理kvm http://www.cnblogs.com/elvi/p/7718582 ...
- KVM -> 虚拟机管理&console登录_02
1.KVM虚拟机管理操作 virsh命令常用参数总结 1.开机关机: virsh list (只可以查看运行的虚拟机) virsh list --all (全部都可以查看) 开机与关机: virsh ...
随机推荐
- 使用Amanda ZRM备份远程MySQL数据库
本文写道最后的时候,我才发现ZRM for MySQL的一个致命问题,就我目前的理解和测试来看,它恢复数据的时候是采取覆盖的方式,举个例子,假定某台数据库服务器上有两个数据库test1,test2,你 ...
- C# System.IO.Path
Path的常用方法 函数列表 对一个路径做相应操作,包括文件路径,目录路径,通常会用到Path这个类, 本文列举一些常用的操作. 获取指定路径字符串的目录信息 public static string ...
- history历史记录控制
往往我们操作的每一条命令都会被机器记录下来,所有我们为了安全需要屏蔽掉某些敏感的操作命令. 设置linux默认的历史记录数: 临时生效: export HISTSIZE=5 history 永久生效 ...
- python os模块 遍历目录
#os #os ->tree命令 import os #递归 #目录 ->文件,文件夹 -> 文件文件夹 dirpath = input('请输入你要遍历的目录\n') def ge ...
- PyCharm导入模块报No model named
PyCharm导入模块报No model named 引言 在PyCharm中同目录下import其他模块,出现No model named ...的报错,但实际可以运行的情况. 这很可能是因为PyC ...
- elasticsearch之JAVA环境变量报错:could not find java; set JAVA_HOME or ensure java is in PATH
在以RPM包安装elasticsearch过程中出现报错JAVA环境的问题: ● elasticsearch.service - Elasticsearch Loaded: loaded (/usr/ ...
- Tidb数据库报错:Transaction too large
Tidb是一个支持ACID的分布式数据库,当你导入一个非常大的数据集时,这时候产生的事务相当严重,并且Tidb本身对事物的大小也是有一个严格的控制. 有事务大小的限制主要在于 TiKV 的实现用了一致 ...
- 【转】浅谈一个网页打开的全过程(涉及DNS、CDN、Nginx负载均衡等)
1.概要 从用户在浏览器输入域名开始,到web页面加载完毕,这是一个说复杂不复杂,说简单不简单的过程,下文暂且把这个过程称作网页加载过程.下面我将依靠自己的经验,总结一下整个过程.如有错漏,欢迎指正. ...
- 对比flash与ajax哪个好?
Ajax的优势: (1)可搜索性 普通的文本网页会更有利于SEO.文本内容是搜索引擎容易检索的,而繁琐的swf字节码却是搜索引擎不愿触及的.虽然Google等一些大型的搜索引擎可以检索SWF内部的内容 ...
- Jmeter性能测试-分布式压力测试
作为一个测试行业的菜鸟,由于投身于一个小公司,包揽所有的测试.刚开始的功能测试到接口测试,稳定性测试,兼容性测试等,一般由于是小项目所以对于性能有所忽略,也没怎么涉及,公司接了个大项目,后期对于性能上 ...