简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
qemu-kvmde 磁盘cache的参数有一下五种,在建立虚拟机的过程中 通过下面的函数设定int bdrv_parse_cache_mode(const char *mode, int *flags, bool *writethrough){*flags &= ~BDRV_O_CACHE_MASK;if (!strcmp(mode, "off") || !strcmp
CPU Steal time 是指虚拟机vm需要执行某个命令但是没有抢到物理cpu来执行的时间.其实现在arch/arm64/kernel/paravirt.c这个特性对应一个kconfig CONFIG_PARAVIRT,开了这个能提高系统性能.开了这个config后,这个特性就使能了,但是这个特性应该只在guest kernel中使用,host的kernel中则可以关掉这个特性sta...
virsh 使用libvirt管理的虚拟机的log在/var/log中,从log中能看到很多虚拟机相关的信息
在通过/nova/compute/manager.py:ComputeManager中的_build_and_run_instance来创建虚拟机的时候,会通过claim机制来监视当前的资源是否够创建虚拟机 def _build_and_run_instance(self, context, instance, image, injected_files, ad
通过UI 可以知道目前两个虚拟机都在计算节点上登录计算节点,通过virsh list可以看到这两个虚拟机通过virsh edit 可以查看虚拟机的xml虚拟机的类型是kvm用的模拟器是qemu-system-aarch64用的是openvswitch tap是tapa7b97820
首先查看instance目前只有一个网卡选择attach interface这里选择lan1这样就可以看到instance 有两张网卡从网络拓扑结构可以看出instance 添加网卡前和网卡后的变化变化前:变化后:可以看到vxlan这个instance 同时连到lan1和vxlan这两个网络上
点击上差untest.yaml文件填写stackname可以看到这个时候heat创建失败了进去后发现失败的原因是选择网络的时候有多个选择,但是不知道选择哪个所以错误了.这个test.yaml 文件如下:为这个文件增加网络部分重新建立stack就会成功
kvm的基本结构分为KVM driver + QEMU,其中KVM是kernel内核的一个模块。主要负责虚拟机的创建,虚拟内存的分配,虚拟cpu寄存器的读写等.QEMU和kvm之前通过IOCTL来通信。我们一下主要讨论arm 的kvm在kernel的实现部分.kvm在kernel中的code 主要分布在下面两个路径中.linux/arch/arm/kvmlinux/virt/kvm
qemu是一个支持跨平台的虚拟机,其使用分两种方式,分别是system mode和user mode。在qemu的system mode的配置下可以模拟出来整个计算机。从源码的路径看user mode 根据架构的不同有分为bsd-user和linux-user,这里以linux-user为例看看user mode具体作用是啥?linux-user mode的的源码在linux-user中,从源码中
ksm的全称是kernel samepage mergeing,主要用于合并内容相同的页面,只要用于虚拟机中存在的大量的冗余页面。在kernel中可以通过PageKsm 来判断一个页面是否是ksm页面static __always_inline int PageKsm(struct page *page){page = compound_head(page);return ((un...