linux虚拟化概述
虚拟化
硬件虚拟化:
一台物理机虚拟出多台逻辑上的计算机
cpu,内存可分配给多个虚拟机
软件虚拟化:
一个LAMP平台支撑多个网站
桌面虚拟化
......
虚拟机:通过软件平台模拟出的计算机
对最终用户来说,感受不到与物理计算机的差异
根据虚拟化程度不同,所需的修改也不同
虚拟化实现程度:
完全虚拟化,Full Virtualization
由平台软件来模拟实现,客户机的操作系统代码几乎不做修改
版虚拟化,Para Virtualization
平台软件只提供最核心的虚拟机功能,需要修改客户机的系统内核,兼容性较差
KVM,完全虚拟化------支持各种OS
XEN,部分虚拟化------不支持windows
硬件辅助虚拟化:
将实现虚拟化技术的部分功能硬件化,主要指intel/amd等cpu支持
常见的虚拟化软件
主要厂商及产品
—————————————————————————————
系列 pc/服务版代表 |
vmware vsphere平台 vmware workstartion |
microsoft virtualpc hyper-v |
redhat kvm ,rhev平台 |
citrix xen |
oracle oracle vm virtualbox |
—————————————————————————————
KVM虚拟化
基于内核的完全虚拟化解决方案
红帽5.4版本开始推出,可替代早先的xen产品
需要intel vt或amd v处理器技术支持
支持linux/unix/windows客户机
host os与guest os
host os———》物理机/宿主机
运行kvm虚拟化平台的物理机的操作系统
guest os——》虚拟机。客户机
虚拟机上运行的操作系统
虚拟网络类型
桥接模式:虚拟机能够与真实机互相通信(相同网段)
隔离模式:虚拟机不能够与真实机互相通信(不同网段)
网络访问模式(隔离的虚拟机与真实网络通信)
nat模式:kvm服务器作为网关,连接的虚拟机组成一个内网,
这些虚拟机共用kvm服务器的外网地址去访问外部真机
路由模式:kvm服务器作为路由器,手动设置路由记录
————————————————————————————————————————-
搭建KVM平台
安装虚拟化相关包组
Virtualization,Virtualization Client,
Virtualization Tools,Virtualization Platform
启动libvirtd服务,并设为开机自启
[root@pc205 ~]# yum -y groupinstall Virtualization,Virtualization Client,Virtualization Tools,Virtualization Platform
(支持中文安装[root@pc205 ~]# yum -y groupinstall 虚拟化 虚拟化客户端 虚拟化工具 虚拟化平台)
[root@pc205 ~]# service libvirtd restart
[root@pc205 ~]# chkconfig libvirtd on
[root@pc205 ~]# ifconfig virbr0(会多出一个网卡)
(常见错误:libvirtd服务无法启动。原因:需要调用dnsmasq服务可能与dhcp,dbs冲突,停用冲突的服务dhcpd,named)
kvm服务器提供的虚拟网络
隔离+nat:virbr0
桥接:br0
(注意停用NetworkManager)
建立虚拟接口br0的配置
把真实接口eth0加入到桥接
[root@pc205 ~]# cd /etc/sysconfig/network-scripts
[root@pc205 network-scripts]# cp ifcfg-eth0 ifcfg-br0(复制网卡配置到虚拟接口)
[root@pc205 network-scripts]# vim ifcfg-br0
DEVICE=br0(网卡名)
TYPE=Bridge(桥接)
[root@pc205 network-scripts]# vim ifcfg-eth0(把真实接口eth0加入到桥接)
BRIDGE=br0(添加)
[root@pc205 network-scripts]# service network restart(重启服务,测试桥接结果)
正在关闭接口 eth0: bridge br0 does not exist!
[确定]
正在关闭接口 eth1: [确定]
正在关闭接口 eth2: [确定]
正在关闭接口 eth3: [确定]
关闭环回接口: [确定]
弹出环回接口: [确定]
弹出界面 eth0: [确定]
弹出界面 eth1: [确定]
弹出界面 eth2: [确定]
弹出界面 eth3: [确定]
弹出界面 br0: Determining if ip address 192.168.4.205 is already in use for device br0...
——————————————————————————————————————————————————————
kvm虚拟机的硬件设备
配置文件(cpu,内存,显卡...)
虚拟磁盘文件
[root@room1pc01 /]# mkdir /opt/images(创建虚拟机磁盘)
[root@room1pc01 ~]# dd if=/dev/zero of=/opt/images/hydra1.img bs=10M count=1000 (创建10G的虚拟机的磁盘)
记录了1000+0 的读入
记录了1000+0 的写出
10485760000字节(10 GB)已复制,303.181 秒,34.6 MB/秒
ssh免密码验证的实现
[root@room1pc01 桌面]# ssh-keygen(创建一对密钥)
[root@room1pc01 .ssh]# ls
authorized_keys id_rsa id_rsa.pub known_hosts
[root@room1pc01 .ssh]# ssh-copy-id root@192.168.4.6(把公钥部署到远程用户的家目录)
一个私钥——》多份公钥(把公钥分别发送到不同的主机上)
多分私钥——》一个公钥(不常见)
————————————————————————————————————————————————
linux虚拟化概述的更多相关文章
- <Mastering KVM Virtualization>:第一章 了解Linux虚拟化
本章为读者提供了Linux虚拟化中流行技术的深刻见解,以及相较于其他同类技术的优势特点.本书共有14章,囊括了KVM虚拟化中的各个方面,从KVM的内部构造开始,并包括了诸如软件定义网络(SDN),性能 ...
- 【原创】Linux虚拟化KVM-Qemu分析(三)之KVM源码(1)
背景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: KVM版本:5.9 ...
- 【原创】Linux虚拟化KVM-Qemu分析(五)之内存虚拟化
背景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: KVM版本:5.9 ...
- 关于Linux虚拟化技术KVM的科普
虚拟化技术应用越来越广泛,虚拟化技术需求越来越强劲.KVM.XEN.Docker等比较热门,尤其是KVM技术越来越受欢迎. 基于此背景,了解一下KVM+QEMU就有点必要了. 从网上收集了一些资料进行 ...
- Linux学习笔记之三————Linux命令概述
一.引言 很多人可能在电视或电影中看到过类似的场景,黑客面对一个黑色的屏幕,上面飘着密密麻麻的字符,梆梆一顿敲,就完成了窃取资料的任务. Linux 刚出世时没有什么图形界面,所有的操作全靠命令完成, ...
- Linux的概述与分类
1.Linux的概述 Linux是基于Unix的开源免费的操作系统,由于系统的稳定性和安全性几乎成为程序代码运行的最佳系统环境.Linux是由Linus Torvalds(林纳斯·托瓦兹)起初开发的, ...
- My way on Linux - [虚拟化&云计算] - 云计算概述&KVM虚拟化基础
思维导图
- KVM虚拟化概述与安装
虚拟化是构建云计算基础架构不可或缺的关键技术之一,云计算的云端系统,其实质上就是一个大型的KVM分布式系统,虚拟化通过在一个物理平台上虚拟出更多的虚拟平台,而其中的每一个虚拟平台则可以作为独立的终端加 ...
- 【原创】Linux虚拟化KVM-Qemu分析(一)
背景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: KVM版本:5.9 ...
随机推荐
- Mysql基本命令一
一.清除mysql表中数据 delete from 表名;truncate table 表名;不带where参数的delete语句可以删除mysql表中所有内容,使用truncate table也可以 ...
- sublime卡顿
sublime突然卡顿,输入字符要一两秒后才显示出来, 解决方法:首选项--插件控制--禁用插件 Git Gutter
- jenkins持续集成简介[一]
标签(linux): jenkins 笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 什么时持续集成? Continuous integration(CI) 持续 ...
- postgres允许别人访问连接配置
- 关于HDPHP,HDCMS 安装,空白问题
这几天,框论坛发现,HDPHP,号称还不错. 微信,支付宝支付,短信,阿里云OSS,权限认证等,都有.对开发人员来说很好了.. 马上下载来试试, HDPHP官方文档说需要PHP5.6,不过貌似我5.5 ...
- R语言-单一变量分析
R语言简介: R语言是一门专用于统计分析的语言,有大量的内置函数和第三方库来制作基于数据的表格 准备工作 安装R语言 https://cran.rstudio.com/bin/windows/base ...
- 基于线程池的线程管理(BlockingQueue生产者消费者方式)实例
1.线程池管理类: public class ThreadPoolManager { private static ThreadPoolManager instance = new ThreadPoo ...
- JavaScript语言学习中的注意事项
javascript: 基于浏览器 基于对象 事件驱动 脚本语言 由: javascript: ECMAscript(ES) DOM文档对象模型 BOM浏览器对象模型,三部分组成 使用js的三种方式 ...
- 微信小程序项目踩过的几个坑
一.前言 近期,开始了一段辛酸的还未开始就已经结束的"创业"(参见我的第二次创业,以梦为马,莫负韶华).大体上是开发了一款微信小程序,关于创业这件事情就不细说了,本文主要介绍一下开 ...
- redux简明学习
前面的话 这几天被redux折腾的够呛,看了很多视频,也看了很多资料.很多时候,感觉好像顿悟了,但实际上只是理解了其中的一个小概念而已.真正去做项目的时候,还是会卡壳.可能是学CSS和Javascri ...