当时那边生成密码串时候因为看到别人博客上写的是hello,说这个是key,没想到用户名,也跟着别人写了,下面是那边项目当初生成密码串参考的文档截图
通过文件管理可以直接查看、修改、复制虚拟机的内部文件。例如,当系统因为配置文件无法启动时,可以直接修改虚拟机的文件。虚拟机磁盘文件主要有raw和qcow2格式。raw格式性能最好,速度最快,它的缺点就是不支持一些新的功能,如支持镜像,zlib磁盘压缩,AES加密等。要使用镜像功能,磁盘格式必须为qcow2。 raw格式的话,速度稍微快点,在高版本的qemu-kvm中,几乎不比qcow2的格式快,而qcow2格式节省空间,可动态增长,在公有云中广泛使用,建议使用qcow2。所有
注意:默认状态下virsh工具不能对linux虚拟机进行关机操作,linux操作系统需要开启acpid服务,在KVM linux虚拟机必须配置此服务。
1、冷迁移 通常我们存放虚拟机磁盘的目录都是挂在的一个nfs文件系统的磁盘,而这个磁盘通常是LVM文件系统。所以需要进行冷迁移时,只要在目标主机上挂载这个nfs文件系统,就可以看到要迁移的那个虚拟机的磁盘文件,通常以.qcow2或.raw结尾的,然后,只需将虚拟机的.xml配置文件发送到目标服务器上,然后重新定义一下即可通过“virsh list --all”命令查看到迁移过来的虚拟机。 2、热迁移 如果源宿主机和目的宿主机共享存储系统,则只需要通过网络发送客户机的 vCPU 执行状 态、内存中的内容、虚机设备的状态到目的主机上。否则,还需要将客户机的磁盘存储发到目的主 机上。共享存储系统指的是源和目的虚机的镜像文件目录是在一个共享的存储上的。 在基于 共享存储系统 时,KVM 动态迁移的具体过程为: 1、迁移开始时,客户机依然在宿主机上运行,与此同时,客户机的内存页被传输到目的主机上。 2、QEMU/KVM 会监控并记录下迁移过程中所有已被传输的内页的任何修改,并在所有内存页都传输完成后即开始传输在前面过程中内存页的更改内容。 3、QEMU/KVM 会估计迁移过程中的传输速度,当剩余的内存数据量能够在一个可以设定的时间周期(默认 30 毫秒)内传输完成时,QEMU/KVM 会关闭源宿主机上的客户机,再将剩余的数据量传输到目的主机上,最后传输过来的内存内容在目的宿主机上恢复客户机的运行状态。 4、至此,KVM 的动态迁移操作就完成了。迁移后的客户机尽可能与迁移前一致,除非目的主机上缺少一些配置,比如网桥等。注意,当客户机中内存使用率非常大而且修改频繁时,内存中数据不断被修改的速度大于KVM能够传输的内存速度时,动态迁移的过程是完成不了的,这时候只能静态迁移。 3、迁移的注意事项 无论是冷迁移还是热迁移,注意事项大都差不多
其中,KVM 全称是 基于内核的虚拟机(Kernel-based Virtual Machine),它是一个 Linux 的一个内核模块,该内核模块使得 Linux 变成了一个 Hypervisor:
迁移后的主机kvm-host-2虚机环境必须具备,具体环境部署参考002.KVM环境部署。
继上一篇kvm虚拟化管理平台WebVirtMgr部署-完整记录(1),接下来说说WebVirtMgr的日常配置:添加宿主机,创建虚机,磁盘扩容,快照等 具体操作记录如下: 一、配置宿主机 1、登录We
一 环境准备 1.1 查看是否支持虚拟化 1 [root@kvm-host ~]# grep -E 'vmx|svm' /proc/cpuinfo 注意:intel为vmx,amd为svm。 1.
KVM(Kernel-based Virtual Machine) ,基于内核的虚拟机,配合QEMU(处理器虚拟软件),需要CPU支持虚拟化技术(并且在BIOS里打开虚拟化选项),效率可达到物理机的80%以上。此外,它对SMP的支持很好。
一 安装管理工具 1 [root@kvm-host ~]# rpm -qa|grep libguestfs-tools #查看相关管理工具,若没安装,可使用yum安装。 二 日常管理 2.1 命令格式 1 virt-df [--options] -d domname 2 virt-df [--options] -a disk.img [-a disk.img ...] 通常两种方式:-d是采用域名称方式,-a是直接获取的磁盘文件方式。 2.2 读取虚机系统文件 1 [root@kvm-h
CentOS 7的KVM虚拟机推荐使用qcow2磁盘格式,本实验在KVM中安装CentOS 6.8 64虚拟机。
注意:若没有virt-v2v命令,可使用yum -y install virt-v2v安装。
2:Mac地址需要和kvm的xml配置文件中一直,全局唯一,查看地址为<mac address='52:54:00:b0:6b:dc'/>。
1.快照实际上做的是虚拟机的XML配置文件,默认快照XML文件在/var/lib/libvirt/qemu/snapshot/虚拟机名/下
调用 kvm 的 go-libvirt 工具库方法 DomainDefineXMLFlags 实现对虚机的创建
一、首先我们来看看传统数据中心的架构。一般外围是路由器、Firewall,核心是三层交换机(旁挂安全设备),底层是二层交换机、服务器、存储设备。服务器一般是专机专用,不具备弹性。同时整个系统架构一般只为一个单位、公司服务,
一 VNC管理 1.1 修改配置 1 [root@kvm-host ~]# vi /etc/libvirt/qemu.conf 2 …… 3 vnc_listen = "0.0.0.0" 说明: vnclisten:默认绑定127.0.0.1 在配置文件里指定VNC绑定0.0.0.0IP,就不用在安装kvm虚拟机时指定vnclisten参数了。 在虚拟主机上有很多个虚拟机的时候,需要指定每个虚拟机为不同端口。 1.2 修改虚拟机配置文件 1 [root@kvm-host ~]# virsh
查看状态操作结果,如Active: active (running),说明运行情况良好
KVM的发展路线就是逐步从软件模拟到硬件辅助,内存虚拟化的本质就是实现客户机虚拟地址 (Guest Virtual Address, GVA) 到宿主机物理地址之间的转换, 其主要发展历程就是从最初的影子页表到硬件辅助实现的EPT/NPT页表,对于影子页表KVM需要为每个客户机的每个进程的页表都要维护一套相应的影子页表, 这会带来较大内存上的额外开销,此外,客户机页表和和影子页表的同步也比较复杂。 因此,Intel 的 EPT(Extent Page Table) 技术和 AMD 的 NPT(Nest Page Table) 技术都对内存虚拟化提供了硬件支持。
KVM 全称是 基于内核的虚拟机(Kernel-based Virtual Machine),它是一个 Linux 的一个内核模块,该内核模块使得 Linux 变成了一个 Hypervisor,KVM 是基于虚拟化扩展(Intel VT 或者 AMD-V)的 X86 硬件的开源的 Linux 原生的全虚拟化解决方案。KVM 中,虚拟机被实现为常规的 Linux 进程,由标准 Linux 调度程序进行调度;虚机的每个虚拟 CPU 被实现为一个常规的 Linux 进程。这使得 KMV 能够使用 Linux 内核的已有功能。但是,KVM 本身不执行任何硬件模拟,需要客户空间程序通过 /dev/kvm 接口设置一个客户机虚拟服务器的地址空间,向它提供模拟的 I/O,并将它的视频显示映射回宿主的显示屏。
静态迁移又称为离线迁移(Offline Migration)。在虚拟机关机或暂停的情况下从一台宿主机迁移到另一台宿主机。
教你如何在ESXI上开虚机玩KVM,首先在物理机上开启VT-d虚拟化支持,其次开启ssh功能,远程连接上之后修改/etc/vmware/config/配置文件。在ESXI 5.0上面只需添加vhv.allow = "TRUE"即可,而在ESXi 5.1上面得将“vhv.allow”改成“vhv.enable”才行,对于桌面版的系统,估计还要跑一下modprobe kvm_intel加载一下kvm模块才能支持,做完这些操作之后,在vsphere界面、编辑虚机配置CPU打开VT-d虚拟化支持就可以玩KVM了。
KVM虚拟机的管理主要是通过virsh命令对虚拟机进行管理。废话不多说,下面列出kvm日常管理中的命令 1)查看KVM虚拟机配置文件及运行状态 KVM虚拟机默认配置文件位置: /etc/libvirt/qemu/ autostart目录是配置kvm虚拟机开机自启动目录。 virsh命令帮助 # virsh -help 或直接virsh命令和,再执行子命令。如下所示。 # virsh 欢迎使用 virsh,虚拟化的交互式终端。 输入:'help' 来获得命令的帮助信息 'quit' 退出 virsh #
前面几篇文章介绍了 tap/tun、veth-pair,今天这篇来看看 Bridge。
虚拟机静态迁移: 静态迁移也叫做常规迁移、离线迁移(Offline Migration)。是在虚拟机关机或暂停的情况下,拷贝虚拟机磁盘文件与配置文件到目标虚拟主机中,实现的从一台物理机到另一台物理机的迁移。因为虚拟机的文件系统建立在虚拟机镜像文件上面,所以在虚拟机关机的情况下,只需要简单的迁移虚拟机镜像和相应的配置文件到另外一台物理主机上即可。如果需要保存虚拟机迁移之前的状态,那么应该在迁移之前将虚拟机暂停,然后拷贝状态至目的主机,最后在目的主机重建虚拟机状态,恢复执行。这种方式的迁移过程需要显式的停止虚拟机的运行。从用户角度看,有明确的一段停机时间,虚拟机上的服务不可用。这种迁移方式简单易行,适用于对服务可用性要求不严格的场合。
和普通的 VPS 相比,裸金属服务器属于物理服务器,我的数据和其他用户数据做到了物理隔离,同时服务器本身是支持二次虚拟化的。
虚拟化技术是指在x86的系统中,一个或以上的客操作系统(Guest Operating System,简称:Guest OS)在一个主操作系统(Host Operating System,简称:Host OS)下运行的一种技术。这种技术只要求对客操作系统有很少的修改或甚至根本没有修改。x86处理器架构起先并不满足波佩克与戈德堡虚拟化需求(Popek and Goldberg virtualization requirements),这使得在x86处理器下对普通虚拟机的操作变得十分复杂。在2005年与2006年,英特尔与AMD分别在它们的x86架构上解决了这个问题以及其他的虚拟化困难。
注意:qcow2磁盘格式必须采用此方式进行扩展,不要采用dd方式,dd方式适用于raw格式。
实验要求: 1、安装KVM所需软件,验证。 2、设置KVM网络,将网络设置为桥接模式。 3、使用virt-manager安装linux系统。 4、学会基本kvm管理的命令 (1)查看虚拟机的状态 (2)虚拟机的关机,强制关机和开机 (3)虚拟机的挂起和恢复 (4)配置虚拟机实例伴随宿主机自动启动 (5)导出虚拟机配置 5、kvm文件管理 (1)将raw格式磁盘转换为qcow2格式 (2)转换后,修改xml配置文件 (3)查看虚拟机磁盘信息 6、虚拟机克隆 7、虚拟机快照管理 步骤: 1、搭建yum,安装KV
当面对KVM集群的时候,我们对KVM的管理以及宿主机的管理就会遇到很大的难度,例如:
OpenStack 是一个伟大的开源云平软件,对于 OpenStack 的管理和编排我们有很多种方式,比如官方的 SDK、原生的 API、官方的 Client、Terraform、pulumi 等。今天我们来介绍一款相对冷门的但是挺好用的库,它就是 Apache 的 LibCloud。
对于静态迁移,你可以在宿主机上保存一个完整的客户机镜像快照,然后在宿主机中关闭或者暂停该客户机,然后将该客户机的镜像文件复制到另一台宿主机中,使用在源主机中启动该客户机时的命令来启动复制过来的镜像。
Minikube是一种可以在本地轻松运行Kubernetes的工具。Minikube在笔记本电脑的VM中运行单节点Kubernetes集群,供希望尝试Kubernetes或日常开发的用户测试使用。特点是不能启动生产集群,没有高可用性的单节点机器。
" 如果你怀念 SDN 领域丰富的网络能力却在云原生领域苦苦追寻而不得,那么 Kube-OVN 将是你的最佳选择。本系列我们将逐个介绍Kube-OVN高级功能的工作原理及使用路径,帮你尽快征服容器网络难题!"
这几天惊爆毒液漏洞,是虚拟化上一个非常严重的漏洞,影响全线的基于KVM/XEN的虚拟化产品。
翻译过程也是一个近距离和技术对话的过程,从字里行间理解、揣摩技术的精髓,在翻译成中文的时候斟酌,是一个反复理解的过程,最终的收获是知识。
新建KVM虚拟机时,可以指定另一磁盘文件作为BackingFile。BackingFile是一个只读的虚拟磁盘基础映像,可以在多个虚拟机间进行共享。基于BackingFile创建和运行虚拟机时,只会在自己的磁盘文件中增量地写入文件,从而提高效率、节省磁盘和维护成本。
CloudStack是一个功能强大、UI友好的开源云(IaaS)计算解决方案。自Ctrix将CloudStack捐献给 apache 后,一直持续高速发展,其社区活跃度已经渐渐赶上风头一时无两的另一开源云OpenStack平台。 CloudStack拥有所有开源云平台中最为友善的管理界面,而且其天生的多语种支持会使中文用户感觉很爽。 今天我们来详细介绍一下CloudStack最新版本 4.1.0 在 CentOS 6.4 下的安装部署的步骤。鉴于网上文章一大抄,很多内容都是装来装去一大堆东西,看官们一会就晕了,根本不了解为什么装这些程序,装来是干什么的。这回呢,我会把每一步说明尽可能详细一些,外加我的经验和理解(不少心得是重装了10次以上后得出的),希望能让后来者可以少走些弯路。 CloudStack可分为管理节点安装和受控节点安装。 管理节点安装无特殊要求,完全可以安装到虚拟机环境下。 受控节点因要创建虚拟机,故需要硬件虚拟化支持,推荐使用独立主机安装。CloudStack支持多种虚拟化方案,包括:KVM、Xen、XenServer、VMware。因XenServer、VMware已包含有强大的虚拟机管理功能,CloudStack可以直接与其通信调用其管理接口,因此这两种受控机环境下,无需安装任何软件。但KVM、Xen的受控机必须安装 CloudStack-Agent 之后,才能被CloudStack管理。 本篇我们主要来讲解管理节点搭建步骤: 一、前期准备 1、配置网卡,确保主机能上网 因我们要使用网络安装方式,所以要首先保证你的服务器可以正常联网。 1 pingwww.baidu.com 2、设置主机名称 CloudStack运行时需要获取本机名称,如无法正确获取可能导致服务无法正常启动并报一大堆的错。 运行以下命令检查: 1 hostname--fqdn 如无正常返回,请编辑 /etc/hosts 文件,添加主机ip对应的名称。 1 如: 2 192.168.19.135 manage.cloudstack.com vi /etc/sysconfig/network 将 HOSTNAME= 改为同你刚设置的一样。 编辑完后立即生效。如果还不成的话,重启下服务器应该就会好了。 3、配置时间同步 管理节点会通过各种协议与受控节点通讯,为了确保安全,受控节点接到命令后会进行一系列的校验,如果两机的时间不同步的话,会导致命令拒绝执行。 最简单的办法就是,所有服务器都安装 ntp实现时间的自动同步。 1 yuminstallntp 4、修改Linux安全设置 服务器上的SELinux会拦截CloudStack的一些命令,导致CloudStack操作失败,因此启动CloudStack前需要对SELinux进行设置。 vi /etc/selinux/config 1 SELINUX=permissive 以上修改需重启服务器才能生效,为使设置立即生效可使用下边的命令 1 setenforce permissive 二、更新 yum 仓库 默认情况下,CentOS的软件源中没有收录最新版本CloudStack,为了能顺利安装,我们需要手工指定软件源。 新建 /etc/yum.repos.d/cloudstack.repo 文件,内容为: 1 [cloudstack] 2 name=cloudstack 3 baseurl=http://cloudstack.apt-get.eu/rhel/4.1/ 4 enabled=1 5 gpgcheck=0 三、安装管理节点 设置好源以后,我们就可以直接使用 yum安装了,非常简单方便。 安装管理节点的命令为: 1 yuminstallcloud-client 如果你的CentOS 是最小化安装的话,将需要安装 160 兆以上的东东,请耐心等待哈... 四、配置数据库 CloudStack使用mysql管理数据,但安装cloud-client时没有包含mysql,这时需要我们手工安装,并导入数据。这是可以理解的,因为数据库可以被安装到其它机器上。 1 yuminstallmysql-server 默认的,mysql有连接数限制,无法满足CloudStack管理节点的要求,需要手工设定。 vi /etc/my.cnf 增加以下内容: 1 innodb_rollback_on_timeout=1 2 innodb_lock_wait_timeout=600 3 max_connections=350 4 log-bin=mysql-bin 5 binlog-format='ROW' 注:如果没改的话会发生什么现象我没有尝试,不
从ftp,http,nfs启动,如ftp://192.168.10.7/dvd;nfs:192.168.10.7:/dvd
1、libvirt架构概述: libvirt是用来管理虚拟机或虚拟化功能的软件集合,主要包括:libvirtAPI, libvirtd进程和virsh工具集三部分。最初的目的是为不同的hypervisor提供统一的管理接口。 libvirtd该后台进程主要实现以下功能: (1)远程代理 所有remoteclient发送来的命令,由该进程监测执行 (2)本地环境初始化 libvirt服务的启停,用户connection的响应等 (3)根据环境注册各种Driver(qemu,xen,stora
p2v,就是physical machine to virtual machine,物理机转换成虚拟机,物理机有硬件和
场景介绍:在我们的IDC中,存在着运行了3-6年的Ceph集群的服务器,这些服务器性能和容量等都已经无法满足当前业务的需求,在购入一批高性能机器后,希望将旧机器上的集群整体迁移到新机器上,当然,是保证业务不中断的前提下,再将旧机器下架回收。本文就介绍了一种实现业务不中断的数据迁移方案,并已经在多个生产环境执行。 本文的环境均为:Openstack+Ceph 运行虚拟机的场景,即主要使用RBD,不包含RGW,MDS。虚机的系统盘(Nova),云硬盘(Cinder),镜像盘(Glance)的块均保存在共享存储C
本文就介绍了一种实现业务不中断的数据迁移方案,并已经在多个生产环境执行。
最近一段时间一直在试用各种KVM虚拟化管理平台,主要试用了ovirt、openstack、WebVirtMgr。最后发现针对我目前的工作场景(不超过10台物理机),WebVirtMgr是最适合的场景,这里将WebVirtMgr的安装部署简单写下来备忘。 安装 安装WebVirtMgr 我是在CentOS6上进行安装,官方给出的文档还是比较详细的,照做就可以了。 # 启用epel的源,我一般是使用阿里云的centos源及epel源,见`http://mirrors.aliyun.com/help/centos
宿主机物理内存 - 系统保留内存4GB - N个虚拟机物理内存 - (N个虚拟机 * 2GB虚拟机管理内存)
虚拟机的迁移是指在源物理主机上运行的虚拟机操作系统及应用程序移动到目标物理主机上或虚拟机上,并且在目标主机上能够正常运行。在openstack中,openstack自带虚拟机的迁移功能,允许一个正在running的虚拟机实例从一个compute node迁移到另一个compute node。下面给大家推荐一篇相关的实战案例,作者是用友公有云技术总监,中国计算机学会高级会员,大数据专委会委员,前中科院副研究员。
关于virtio: kvm因为使用了硬件虚拟化,所以其cpu方面的运行效率是很高的。不过,kvm在I/O虚拟化方面,传统的方式是利用QEMU纯软件的方式来模拟I/O设备, 这样每次虚机发起I/O请求的时候,KVM内核模块会捕获这次请求,然后处理后将其放入I/O共享页,并通知用户空间中运行的QEMU程序。 QEMU获得I/O操作,交由硬件模拟代码(Emulation)来模拟出本次I/O操作之后,将结果放回I/O共享页,同时通知KVM内核模块读取I/O共享页的操作结果,把结果返回给虚机。 由于这种方式每次I/O操作经过的路径很复杂,其效率很低。所以就提出了virtio这种方案,virtio其实就是一个运行于Hypervisor之上的api接口, 让客户机知道自己运行于虚拟化环境中,进行I/O操作的时候通过virtio与Hypervisor通信,从而是虚机有更好的性能。
除了 CPU 虚拟化,另一个关键是内存虚拟化,通过内存虚拟化共享物理系统内存,动态分配给虚拟机。虚拟机的内存虚拟化很象现在的操作系统支持的虚拟内存方式,应用程序看到邻近的内存地址空间,这个地址空间无需和下面的物理机器内存直接对应,操作系统保持着虚拟页到物理页的映射。
领取专属 10元无门槛券
手把手带您无忧上云