qemu

QEMU桥接配置

≡放荡痞女 提交于 2020-11-09 17:29:50
1、安装 app-emulation/qemu 、 sys-apps/usermode-utilities 、 net-misc/bridge-utils、 app-emulation/libvirt 、 app-emulation/virt-manager 2、配置/etc/conf.d/net文件 # Interface wlp1s0 config_wlp1s0=null # Interface tap0 config_tap0=null tuntap_tap0="tap" carrier_timeout_tap0="0" # Interface br0 config_br0="192.168.0.1/24" bridge_br0="tap0" rc_net_br0_need="net.tap0" bridge_forward_delay_br0=1500 bridge_hello_time_br0=200 bridge_stp_state_br0=1 bridge_priority_br0=50 brport_priority_wlp1s0=60 3、开启br0、设置转发和防火墙 1)临时设置 ifconfig br0 192.168.0.1 up sysctl -w net.ipv4.ip_forward=1 iptables -t nat -A POSTROUTING

QEMU桥接配置

女生的网名这么多〃 提交于 2020-11-09 17:17:58
1、安装 app-emulation/qemu 、 sys-apps/usermode-utilities 、 net-misc/bridge-utils、app-emulation/libvirt 2、配置/etc/conf.d/net文件 1)vi /etc/conf.d/net # Interface tap0 config_tap0=null tuntap_tap0="tap" # Interface br0 config_br0="192.168.1.1/24" bridge_br0="tap0" rc_net_br0_need="net.tap0" 2)设置br0和tap0接口 cd /etc/init.d ln -s net.lo net.tap0 ln -s net.lo net.br0 rc-update add net.br0 default /etc/init.d/net.br0 start 3、设置转发和防火墙 1)开启转发 vi /etc/sysctl.conf net.ipv4.ip_forward=1 sysctl -p 2)设置防火墙 rc-update add iptables default iptables -A FORWARD -i br0 -o wlan0 -j ACCEPT iptables -t nat -A POSTROUTING

在qemu-kvm配置桥接网络

家住魔仙堡 提交于 2020-11-09 13:36:05
为了宿主机和虚拟机可以很好的通信,当然是选择桥接网络啦!!! 话不多说 ===========================配置桥接网络========================== 虚拟机虽然能够上网了,但是宿主机并不能与虚拟机通信,这给开发调试带来了很多的困难。我们希望的是,可以用ssh连上虚拟机。这就要求虚拟机就像一台物理机一样,与宿主机存在于同一个网段内。 首先,在宿主机上,安装必要的工具(为了tunctl命令): 以下命令均是在su下进行若是认证失败,请输入sudo passwd root 进行密码更新重新进入su apt-get install uml-utilities 接着,创建一张虚拟TUN网卡: tunctl -t tap0 -u lfc 这里的lfc换成你的Linux用户名。然后,将网卡设置为任何人都有权限使用: chmod 0666 /dev/net/tun 之后,为tap0网卡设置一个IP地址,不要与真实的IP地址在同一个网段。比如我的真实IP地址是192.168.1.2(输入ifconfig -a 查看),那么我就给tap0设置192.168.2.1: ifconfig tap0 192.168.2.1 up 宿主机需要为虚拟机开启IP数据包转发,即在192.168.1.*网段和192.168.2.*网段转发数据: echo 1 > /proc

虚拟化安全 sandbox 技术分析

夙愿已清 提交于 2020-10-29 07:23:08
原文链接: https://cloud.tencent.com/developer/news/215218 前言: libvirt-4.3搭配qemu-2.12使用,如果使用默认的编译选项,可能会让qemu无法正常启动虚拟机。会报出来“qemu-system-x86_64: -sandbox on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny: seccomp support is disabled”的错误。 1, seccomp support is disabled 在编译的时候,没有打开CONFIG_SECCOMP编译选项。 从configure文件上来看,如果安装了libseccomp就是默认打开的;再或者就是--enable-seccomp和--disable-seccomp来控制。 2,libvirt /etc/libvirt/qemu.conf中通过seccomp_sandbox来控制。 0是关闭,1是打开,-1是自动检测。注意,如果这里没有配置,libvirt则会自动检测。 那么就会出现上文的状况,libvirt的检测逻辑中,没有发现当前版本的qemu不支持sandbox,启动参数中带有了sandbox配置,导致qemu报错。 解决办法就是安装libseccomp

KVM——虚拟化

帅比萌擦擦* 提交于 2020-10-29 07:19:05
KVM——虚拟化 虚拟化是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机。 在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统, 并且应用程序都可以在相互独立的空间内运行而互相不影响,从而显著提高计算机的工作效率。 虚拟化使用软件的方法重新定义划分 IT 资源,可以实现 IT 资源的动态分配、灵活调度、跨域共享,提高 IT 资源利用率, 使 IT 资源能够真正成为社会基础设施,服务于各行各业中灵活多变的应用需求。 虚拟化层次种类 (1) 完全虚拟化 — 最流行的虚拟化方法使用名为 hypervisor 的一种软件,在虚拟服务器和底层硬件之间建立一个抽象层。 VMware 和微软的VirtualPC 是代表该方法的两个商用产品,而基于核心的虚拟机 (KVM) 是面向 Linux 系统的开源产品hypervisor 可以捕获 CPU 指令,为指令访问硬件控制器和外设充当中介。 因而,完全虚拟化技术几乎能让任何一款操作系统不用改动就能安装到虚拟服务器上,而它们不知道自己运行在虚拟化环境下。 主要缺点是, hypervisor 给处理器带来开销。 (2)准虚拟化 — 完全虚拟化是处理器密集型技术,因为它要求 hypervisor管理各个虚拟服务器,并让它们彼此独立。 减轻这种负担的一种方法就是,改动客户端操作系统,让它以为自己运行在虚拟环境下

kvm虚拟机迁移

。_饼干妹妹 提交于 2020-10-28 21:01:34
一、迁移简介 迁移: 系统的迁移是指把源主机上的操作系统和应用程序移动到目的主机,并且能够在目的主机上正常运行。在没有虚拟机的时代,物理机之间的迁移依靠的是系统备份和恢复技术。在源主机上实时备份操作系统和应用程序的状态,然后把存储介质连接到目标主机上,最后在目标主机上恢复系统。随着虚拟机技术的发展,系统的迁移更加灵活和多样化 最终我们迁移的目的就是:   简化系统维护管理   高系统负载均衡   增强系统错误容忍度   优化系统电源管理 二、热迁移 KVM 虚拟机的热迁移 ---Live Migration: 服务器虚拟化技术是当前的热点,而虚拟机的“热迁移( LiveMigration )”技术则是虚拟化技术当中的热点 热迁移(又叫动态迁移、实时迁移),即虚拟机保存( save ) / 恢复(restore) :将整个虚拟机的运行状态完整保存下来,同时可以快速的恢复到原有硬件平台甚至是不同硬件平台上。恢复以后,虚拟机仍旧平滑运行,用户不会察觉到任何差别 迁移的种类:   P2P :物理机之间的迁移   V2P :虚拟机迁到物理机   P2V :物理机迁到虚拟机   V2V :虚拟机迁到虚拟机 三、热迁移的应用      1. 虚拟机的热迁移技术最初是被用于双机容错或者负载均衡:当宿主机出现软硬件故障导致服务异常时,虚拟机可漂移到另外主机上,或者在集群中依据工作负载量的大小

kvm 搭建

可紊 提交于 2020-10-28 17:07:20
一,准备环境 物理机 虚拟机 操作系统 CentOS 6.8 x64 CentOS 6.8 x64 CPU/ 内存 10 核超线程 x2/64G 2 核 /4G 外网 IP -- 内网 IP eth1_192.168.0.85 eth0_192.168.0.91-100 硬盘 1T 100G 二,安装服务 1、 检查当前物理机是否支持虚拟化技术: # egrep 'vmx|svm' /proc/cpuinfo 如果输出的结果包含 VMX ,它是 Intel 处理器虚拟机技术标志:如果包含 SVM ,它是 AMD 处理器虚拟机技术的标志,如果你什么都没有得到,那应你的系统并没有支持虚拟化的处理,不能使用 KVM ,另处 linux 发行版本必须在 64bit 环境中才能使用 KVM 。 2、 准备相应程序包: # yum install kvm python-virtinst libvirt bridge-utils virt-manager qemu-kvm-tools virt-viewer virt-v2v tunctl tigervnc-server 3、 关闭 selinux : # vi /etc/selinux/config SELINUX=disabled 此处更改后需重新服务器。 4、 查看 libvirtd 虚拟化进程是否启动: # /etc/init.d

网易开源分布式存储系统 Curve,性能彪悍!

泄露秘密 提交于 2020-10-26 12:08:41
网易这回良心了: 7月16日,网易公司旗下云服务商网易数帆宣布开源一款名为 Curve 的高性能分布式存储系统, 官方称其性能可达 Ceph 的 1.84 倍。 据官方介绍,Curve 的定位是提供一个高性能、低延迟的存储底座,基于这个存储底座,企业可以打造适用于不同应用场景的存储系统,如块存储、对象存储、云原生数据库等。 CURVE 的设计开发始终围绕三个理念: 一是顺应当前存储硬件设施发展趋势,做到软硬件结合打造顶级的存储产品; 二是秉持 “Simple Can be harder than complex”,了解问题本质情况下选择最简单的方案解决问题; 三是拥抱开源,在充分调研的前提下使用优秀的开源项目组件,避免造轮子。 当前网易基于 CURVE 已经实现了高性能块存储系统,支持快照克隆和恢复 ,支持 QEMU 虚拟机和物理机 NBD 设备两种挂载方式, 在网易内部作为高性能云盘使用。 目前,网易数帆已经实现了高性能块存储系统。根据项目文档介绍,Curve 主要具有三大特性: 高性能、高可用和自治 。 1、高性能 Curve 团队参考了业界一些高效的开源存储系统,设计了一个新架构以实现高性能低延迟的核心能力。采用 brpc 保证网络数据流的高性能和低延迟,基于 braft 实现多副本一致性下的低延迟,并对 braft 的快照实现进行了进一步的优化。 磁盘 IO 方面

如何解决MinGW应用_ZNSt18condition_variable10notify_oneEv不存在的问题

 ̄綄美尐妖づ 提交于 2020-10-23 03:00:33
今天用MinGW的GCC在Windows里编了一个简单的命令行barcode识别程序: gcc -o demo ReadBarcode.cpp -L . -lDynamsoftBarcodeReader -lstdc++ 结果在运行的时候发生错误: 搜了一下发现这个接口是 libstdc++ 里的。通过Visual Studio命令行运行 dumpbin 来看下程序依赖的库: 这里看到有 libstdc++-6.dll 这个文件。在MinGW目录中找到这个文件,导出函数列表查看: dumpbin /exports C:mingw-w64x86_64-8.1.0-posix-seh-rt_v6-rev0mingw64binlibstdc++-6.dll 接口太多,存到文本里打开: MinGW的 libstdc++-6.dll 是包含 _ZNSt18condition_variable10notify_oneEv 的。所以问题可能就出在系统运行程序的时候,加载了另外一个不包含这个接口的DLL。 打开系统变量里的路径,查看相关的应用,这个应用路径肯定在MinGW的上面。最后定位到我安装的QEMU: 在QEMU的目录中也有一个 libstdc++-6.dll 文件。同样导出之后比较下,发现里面少了这个接口: 直接把QEMU里的DLL删除做一个快速验证,发现程序可以正常运行了。