- 博客(34)
- 资源 (12)
- 收藏
- 关注
原创 干货分享: 长达250页的Libvirt Qemu KVM的ppt,不实验无真相
1. 概论1.1 虚拟化的基本类型无虚拟化半虚拟化Paravirtualization非硬件辅助全虚拟化硬件辅助全虚拟化实验一:查看系统是否支持硬件辅助虚拟化1.2 KVM Qemu Libvirt之间的关系实验二:安装KVM, Qemu, Libvirt2. Qemu KVM接下来的章节介绍qemu-kvm,先不介绍
2014-11-04 20:00:04 3158
原创 干货分享: 长达150页的openvswitch的ppt,不实验无真相
一、概论Software Defined Network简介OpenFlow简介Openvswitch简介二、架构Openvswitch架构实验一:查看Openvswitch的架构Openvswitch数据库表结构实验二:打印数据库表结构三、Manager实验三:设置Manager的TCP连接四、SSL
2014-11-04 19:56:56 2328
原创 别以为真懂Openstack: 虚拟机创建的50个步骤和100个知识点(5)
八、KVM这一步,像virsh start命令一样,将虚拟机启动起来了。虚拟机启动之后,还有很多的步骤需要完成。步骤38:从DHCP Server获取IP有时候往往数据库里面,VM已经有了IP,很多人就认为虚拟机就得到了IP,可是总是连不进去,不知从何入手,其实界面上能看到VM的IP和VM真正从DHCP获得IP是两回事情。步骤39:cloud-init连
2014-11-04 19:51:33 1446
原创 别以为真懂Openstack: 虚拟机创建的50个步骤和100个知识点(4)
六、Libvirt对于Libvirt,在启动虚拟机之前,首先需要define虚拟机,是一个XML格式的文件列出所有的Instance# virsh listId Name State----------------------------------------------------10
2014-11-04 19:46:39 2490
原创 别以为真懂Openstack: 虚拟机创建的50个步骤和100个知识点(3)
四、Nova-compute步骤17:nova-compute接收到请求后,通过Resource Tracker将创建虚拟机所需要的资源声明占用步骤18:调用Neutron API配置Network,虚拟机处于Networking的状态需要注意的是,这一步虽然是配置Network,但是主要是数据结构的准备,真正的设备并没有创建。由于在创建虚拟机的时候,我
2014-11-04 19:45:18 1130
原创 别以为真懂Openstack: 虚拟机创建的50个步骤和100个知识点(2)
二、nova-api步骤3:nova-api接收请求nova-api接收请求,也不是随便怎么来都接收的,而是需要设定rate limits,默认的实现是在ratelimit的middleware里面实现的。然而有时候,我们希望实现distributed rate-limiting,从而Turnstile是一个不错的选择。https://github.co
2014-11-04 19:41:10 1386
原创 别以为真懂Openstack: 虚拟机创建的50个步骤和100个知识点(1)
还是先上图吧,无图无真相别以为真懂Openstack!先别着急骂我,我也没有说我真懂Openstack我其实很想弄懂Openstack,然而从哪里下手呢?作为程序员,第一个想法当然是代码,Code Talks,什么都可以忽悠,代码是实实在在的,何况原来也深入读过Lucene, Hadoop的源代码,总以为从代码下手,背后的原理变了然了。说干就干,我喜欢读取代码的
2014-11-04 19:29:40 1887
原创 High Availability 手册(3): 配置
各种配置在命令行状态下,多用crm进行Global Cluster Options这个类型是全局配置,主要包含下面两个:no-quorum-policyquorum的意思是最低法定人数,pacemaker能够继续工作所需要的最少的active的node的个数,这个数是(num of nodes)/2 + 1如果不能达到法定人数的时候行为如何呢?ign
2014-11-04 19:26:32 2111
原创 High Availability 手册(2): 架构
最底层是通信层corosync/openais负责cluster中node之间的通信上一层是Resource Allocation Layer,包含下面的组件:CRM Cluster Resouce Manager是总管,对于resource做的任何操作都是通过它。每个机器上都有一个CRM。CIB Cluster Information BaseCI
2014-11-04 19:24:34 714
原创 High Availability 手册(1): 环境
三台KVM虚拟机首先我们得有一个pacemaker的环境,需要三台机器,如果没有那么多物理机器,可以用kvm虚拟机创建一个bridgeovs-vsctl add-br ubuntu_brifconfig ubuntu_br 192.168.100.1/24在Host上设置NAT,并且enable ip forwarding# sysctl -pn
2014-11-04 19:22:25 1805
原创 QEMU KVM Libvirt(12): Live Migration
由于KVM的架构为Libvirt –> qemu –> KVM所以对于live migration有两种方式,一种是qemu + KVM自己的方式,一种是libvirt的方式,当然libvirt也是基于qemu+kvm的方式qemu + KVM自己的方式为使用monitorKVM MigrationKVM currently supports savevm/
2014-11-04 19:17:47 1619
原创 QEMU KVM Libvirt手册(11): Managing Storage
When managing a VM Guest on the VM Host Server itself, it is possible to access the complete file system of the VM Host Server in order to attach or create virtual hard disks or to attach existing ima
2014-11-04 19:15:01 1235
原创 QEMU KVM Libvirt手册(10):Managing Virtual Machines with libvirt
libvirt is a library that provides a common API for managing popular virtualization solutions, among them KVM and Xen.使用virt-install创建imageqemu-img create -f qcow2 /tmp/centos5.8.img 10Gvi
2014-11-04 19:12:52 5373
原创 QEMU KVM Libvirt手册(10): KVM的各种限制
OvercommitsKVM allows for both memory and disk space overcommit.However, hard errors resulting from exceeding available resources will result in guest failures.CPU overcommit is also supported but
2014-11-04 19:11:45 935
原创 QEMU KVM Libvirt手册(9): network
虚拟网卡由-net nic定义# qemu-system-x86_64 -enable-kvm -name ubuntutest -m 2048 -hda ubuntutest.img -vnc :19 -net nic如果我们在monitor中查看info network可以看到下面的有时候,我们看到的是VLAN 0,这里的VLAN和802.1.q一点关
2014-11-04 19:08:47 1143
原创 QEMU KVM Libvirt手册(8): 半虚拟化设备virtio
KVM本身并不提供半虚拟化功能,是通过virtio来实现的The benefits of virtio drivers are of lower overhead and higher performance.Memory Ballooning (virtio_balloon)memory ballooning可以动态调整guest的内存的大小如果有-m参数,则向更
2014-11-04 19:05:48 1218
原创 QEMU KVM Libvirt手册(7): 硬件虚拟化
在openstack中,如果我们启动一个虚拟机,我们会看到非常复杂的参数qemu-system-x86_64 -enable-kvm -name instance-00000024 -S -machine pc-i440fx-trusty,accel=kvm,usb=off -cpu SandyBridge,+erms,+smep,+fsgsbase,+pdpe1gb,
2014-11-04 19:04:38 5002
原创 QEMU KVM Libvirt手册(6) – Network Block Device
网络块设备是通过NBD Server将虚拟块设备通过TCP/IP export出来,可以远程访问。NBD Server通常是qemu-nbd可以提供unix socketqemu-nbd -t -k /home/cliu8/images/ubuntutest-nbd ubuntutest.img打开另一个窗口,可以连接这个unix socketqemu-sy
2014-11-04 19:01:02 802
原创 QEMU KVM Libvirt手册(5) – snapshots
前面讲了QEMU的qcow2格式的internal snapshot和external snapshot,这都是虚拟机文件格式的功能。这是文件级别的。还可以是文件系统级别的,比如很多文件系统支持snapshot,如OCFS2还可以是block级别的,比如LVM支持snapshot我们这节来分析openstack中各种snapshot的实现。在Openstac
2014-11-04 18:57:54 911
原创 QEMU KVM libvirt手册(4) – images
RAWraw是默认的格式,格式简单,容易转换为其他的格式。需要文件系统的支持才能支持sparse file创建image# qemu-img create -f raw flat.img 10GFormatting 'flat.img', fmt=raw size=10737418240如果我们ls则看到ls -lh flat.img -rw-r--
2014-11-04 18:53:55 1920
原创 QEMU KVM libvirt 手册(3) - Storage Media
访问Hard Drive使用-hda –hdbqemu-system-x86_64 -enable-kvm -name ubuntutest -m 2048 -hda ubuntutest.img -hdb ubuntutest1.img -boot c -vnc :19 -net nic,model=virtio -net tap,ifname=tap0,script=no,d
2014-11-04 18:48:49 1615
原创 QEMU KVM libvirt手册(2): monitor
Administrating Virtual Machines with QEMU MonitorWhen QEMU is running, a monitor console is provided for performing interaction with the user. Using the commands available in the monitor console,
2014-11-04 18:42:31 1881
原创 QEMU KVM libvirt 手册(1): 安装
安装对虚拟化的支持通常在BIOS中是禁掉的,必须开启才可以。对于Intel CPU,我们可以通过下面的命令查看是否支持虚拟化。# grep "vmx" /proc/cpuinfo flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflus
2014-11-04 18:34:26 1520
原创 Openvswitch手册(9): Flow
这一节我们将flow tableflow table主要由ovs-ofctl命令操作ovs-ofctl可以走和openflow controller一样的协议:ssl:ip[:port]: The specified SSL port (default: 6633) on the host at the given ip, which must be
2014-11-04 18:30:42 3210
原创 Openvswitch手册(8): ovs-vsctl的DB的操作
ovs-vsctl的DB的操作如果你在命令行里面找不到相应的命令创建和删除对象,则可以直接删除数据库[−−if−exists] [−−columns=column[,column]...] list table [record]...$ sudo ovs-vsctl list bridge _uuid : 91cd3178
2014-11-04 18:29:16 1340
原创 Openvswitch手册(7): Interfaces
我们来看Interfacesofport: OpenFlow port number for this interface.type:system: An ordinary network device, e.g. eth0 on Linux.internal: A simulated network device that sends and receives traff
2014-11-04 18:24:49 803
原创 Openvswitch手册(6): QoS
这一节我们看QoS,Qos的设置往往是和flow中的policy一起使用的Open vSwitch QoS capabilities1 Interface rate limiting2 Port QoS policyQoS: Interface rate limitingA rate and burst can be assigned to an Interface
2014-11-04 18:17:36 1499
原创 Openvswitch手册(5): VLAN and Bonding
我们这一节来看Port一般来说一个Port就是一个Interface,当然也有一个Port对应多个Interface的情况,成为BondVLAN ConfigurationPort的一个重要的方面就是VLAN Configuration,有两种模式:trunk port,这个port不配置tag,配置trunks,如果trunks为空,则所有的VLAN都trunk,
2014-11-04 18:11:56 1594
原创 Openvswitch手册(4): Mirror
这一节我们来分析MirrorMirror就是配置一个bridge,将某些包发给指定的mirrored ports对于包的选择:select_all,所有的包select_dst_portselect_src_portselect_vlan对于指定的目的:output_port (SPAN)output_vlan (RSPAN)Port mirrori
2014-11-04 18:08:10 1383
原创 Openvswitch手册(3): sFlow, netFlow
这一节,我们重点看sFlow采样流sFlow(Sampled Flow)是一种基于报文采样的网络流量监控技术,主要用于对网络流量进行统计分析。sFlow系统包含一个嵌入在设备中的sFlow Agent和远端的sFlow Collector。其中,sFlow Agent通过sFlow采样获取本设备上的接口统计信息和数据信息,将信息封装成sFlow报文,当sFlow报文缓冲区满或是在s
2014-11-04 18:03:41 4892 2
原创 Openvswitch手册(2): OpenFlow Controller
我们这一节主要来看ControllerController有两种:Primary Controller: 真正控制vswitch的flow table,vswitch会保持和controller的连接,如果失败,取决于bridge的fail mode。一个vswitch可以连接多个Controller,但是这些Controller之间的协作需要Controller自己来做。Serv
2014-11-04 17:35:21 1162
原创 Openvswitch手册(1): 架构,SSL, Manager, Bridge
Openvswitch是一个virutal swtich, 支持Open Flow协议,当然也有一些硬件Switch也支持Open Flow协议,他们都可以被统一的Controller管理,从而实现物理机和虚拟机的网络联通。Open Switch定义了一系列Flow Table,通过它来控制包的流向和结构。根据Open Flow协议,Flow Table包含matc
2014-11-04 17:16:52 2857
原创 Openvswtich 学习笔记
场景:创建一个Virtual Switch,支持VLAN,支持MAC-Learning包含下面四个Port:P1, truck portP2, VLAN 20P3, P4 VLAN 30包含五个flow table: Table 0: Admission control. Table 1: VLAN input processing.
2014-11-04 17:13:26 3469
原创 Icehouse 创建Instance代码分析
1. nova-api接收到request在/etc/nova/api-paste.ini中,是这样配置nova v2的[app:osapi_compute_app_v2] paste.app_factory = nova.api.openstack.compute:APIRouter.factory在/usr/lib/python2.7/dist-packages/n
2014-11-04 17:08:13 873
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人