① 如何在vmware上安装kvm虚拟机
1 使用的是vmware workstation9,之前用vmware workstation8,但是好像不行,以后再试试。
2
vmware虚拟机安装rhel-server-5.4-x86_64-dvd.iso(安装rhel-server-6.2-x86_64-dvd.iso,如果安装了kvm,图形界面就会狂闪,无法使用)
3 虚拟机的processor选中Virtualize Intel VT-x/EPT or
AMD-V/RVI,前提是物理机的虚拟化选项开启(cpu支持全虚拟化)
4 egrep '(vmx|svm)' --color=always /proc/cpuinfo
(如果输出的结果包含 vmx,它是 Intel;如果包含 svm,它是
AMD。如果你甚么都得不到,那应你的系统并没有支持虚拟化的处理。)
5 yum install kvm kmod-kvm qemu libvirt
python-virtinst(用的是163的源)
6 然后重新启动系统:
Reboot
7使用下列命令检查KVM是否成功安装
virsh -c qemu:///system list
将会显示如下结果:
[root@server1 ~]# virsh -c qemu:///system list
Id
Name
State
----------------------------------
[root@server1 ~]#
我的是显示libvirtd没有启动,于是执行service libvirtd start,显示服务启动,但是执行service
libvirtd status,出现“libvirtd dead but subsys is locked”,解决如下:
yum install libdaemon avahi
service messagebus start
service avahi-daemon start
service libvirtd start
发现还是“libvirtd dead but subsys is
locked”,在/var/lock/subsys/下面还是有libvirtd这个锁,于是想到selinux还没有禁用,于是
vi /etc/sysconfig/selinux
SELINUX=disabled
重新启动虚拟机,
service messagebus start
service avahi-daemon start
service libvirtd start
service libvirtd status
libvirtd is running,ok了
[root@server1 ~]# virsh -c qemu:///system list
Id
Name
State
----------------------------------
正常了
8 虚拟机图形界面还没有,安装virt-manager
yum install virt-manager
9 通过图形界面创建了一台rhel5的虚拟机,可以克隆,迁移
10 还有个网络桥接要设置,还不太明白,TODO,至少现在kvm虚拟机可以上网
??opennebula和libvirt的api还要研究,至少可以克隆,迁移,监控,修改ip,设置vlan,获取虚拟机和主机的信息,扩展磁盘,挂载磁盘。
② 如何用web+kvm学习平台
web+kvm学习平台使用方法如下:
1、安装支持的软件源。[root@openstackops]#yum-yinstallhttp://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm。
2、安装相关软件。如果报错说没有下面安装的某些软件,将下载的yum.tar.gz解压后的文件替换到/etc/yum.repos.d目录下,然后执行yumcleanall&&yummakecache[root@openstackops]#yum-yinstallgitpython-piplibvirt-pythonlibxml2-pythonpython-websockifysupervisornginx(若是centos7系统,需要先执行"yum-yinstallepel-release")。
3、从git-hub中下载相关的webvirtmgr代码[root@openstackops]#cd/usr/local/src/[root@openstacksrc]#gitclonegit://github.com/retspen/webvirtmgr.git。
4、安装webvirtmgr[root@openstacksrc]#cdwebvirtmgr/[root@openstackwebvirtmgr]#pipinstall-rrequirements.txt。
5、安装数据库[root@openstackwebvirtmgr]#yuminstallpython-sqlite2//默认情况下,centos系统一般会自带sqlite软件(执行sqlite3命令,不报错就说明已经安装了)。
6、对django进行环境配置[root@openstackwebvirtmgr]#pwd/usr/local/src/webvirtmgr[root@openstackwebvirtmgr]#./manage.pysyncdb//默认是python执行,如果报错,换用其他版本的python。
③ openstack用的python什么框架
openstack是最近3年学习python的人最值得学习的一个云计算框架。
OpenStack 包含两个主要模块:Nova 和 Swift,前者是 NASA 开发的虚拟服务器部署和业务计算模块;后者是 Rackspace开发的分布式云存储模块,两者可以一起用,也可以分开单独用。
在ubuntu操作系统上,可以很轻松安装openstack这个私有云框架。而openstack就是用Python编程语言编写的。
整合Tornado 网页服务器(快速响应)、Nebula运算平台
使用Twisted软件框架(高并发)
遵循Open Virtualization Format、AMQP、SQLAlchemy等标准
虚拟机器软件支持包括:KVM、Xen、VirtualBox、QEMU、 LXC 等。
KVM相对速度要快些。xen比较新。virtualbox是以qemu为基础做的。LXC还没有用过。
python如果不喜欢,想做openstack也没有问题,毕竟它只是一个框架与语言本身相差很大的。
比如你不喜欢java,但不等于你不会在android上开发APP。这与JAVA语言本身关系不大。
④ 如何通过python创建kvm虚拟机
调用libvirt接口。可以参考下openstack中的libvirt驱动。
不过把openstack整透了也得下番功夫。
⑤ 大数据学习一般都学什么
您好,大数据学习一般分为6个阶段
第一阶段
JavaSE基础核心
第二阶段
数据库关键技术
第三阶段
大数据基础核心
第四阶段
Spark生态体系框架&大数据精选项目
第五阶段
Spark生态体系框架&企业无缝对接项目
第六阶段
Flink流式数据处理框架
大数据是最近几年新兴的专业,发展的前景是非常好的,选择大数据是没有错的!
⑥ 创建基于SRIOV的KVM虚拟机
本文来自微信公众号“ICT大融合”。
一、利用 iso 创建虚机
1. 安装环境:
适用于centos/redhat.
2. 安装准备:
yum -y install kvm
yum -y install qemu-kvmpython-virtinst libvirt libvirt-python virt-manager libguestfs-toolsbridge-utils virt-install
systemctl startlibvirtd.service
systemctl enablelibvirtd.service
3. 构建虚拟网络:
brctl addbr br0
brctl addif br0 ens6np0
注:ens6np0是netreonome CX-25G智能网卡,
[root@test4 vms]# ethtool -i ens6np0
driver: nfp
version: rev-2020.01.13.0820.a3cf8e9 (o-
firmware-version: 0.0.3.5 0.30 sriov-2.1.16.1nic
expansion-rom-version:
bus-info: 0000:02:00.0
4. 安装虚拟机
mkdir -p /home/vms/
virt-install --virt-type=kvm --name=centos88 --vcpus=2--memory=4096 --location=/home/CentOS-7-x86_64-DVD-1908.iso --diskpath=/home/vms/centos88.qcow2,size=40,format=qcow2 --network bridge=br0--graphics none --extra-args='console=ttyS0' –force
注:
安装镜像iso一定放在/home/或其他可访问目录,否则提示没有操作权限。
然后一路按照提示,设置相应参数,直到虚拟机构建完成。
安装完成之后,用virshlish查看虚拟机状态。
[root@test4 vms]# virsh list
Id Name State
----------------------------------------------------
2 centos88 running
以上是虚拟机的网卡是基于virtio并接入主机的bridge,用ps可以看到相应进程。
[root@test4 ~]# ps -e |grep kvm
15484 ? 00:00:38 qemu-kvm
15491 ? 00:00:00 kvm-pit/15484
18406 ? 00:00:14 qemu-kvm
18413 ? 00:00:00 kvm-pit/18406
[root@test4 ~]# ps -e |grep vhost
15486 ? 00:00:00 vhost-15484
18408 ? 00:00:00 vhost-18406
二、用通过镜像创建基于 SRIOV 虚拟机。
1. 创建vf :
echo 2 > /sys/class/net/ens6np0/device/sriov_numvfs
可以用如下命令查看,
lspci -kd 19ee:
lspci | grep -i ethernet
注意:19ee是netreonome的PCI vendor ID号。
2. 创建虚拟机镜像文件:
cp centos88.qcow2 centos7.200.qcow2
chown qemu:qemu centos7.200.qcow2
cp centos88.xml centos7.200.xml
3. 修改配置文件
vi centos7.200.xml
其中,uuid采用uuidgen 命令生成。
选项Interface进行修改,Mac地址随便改一个,不重复就行。关键是修改vf的PCI地址,用lspci获取。
virsh define centos7.200.xml
4. 创建磁盘:
qemu-img create /home/vms/centos200.img 40G
5. 启动虚机:
virsh start centos200
三、常见命令
virsh基本命令:
virsh list # 查看在运行的虚拟机
virsh mpxml vm-name # 查看kvm虚拟机配置文件
virsh start vm-name # 启动kvm虚拟机
virsh shutdown vm-name # 正常关机
virsh destroy vm-name # 非正常关机,强制关闭虚拟机(相当于物理机直接拔掉电源)
virsh undefine vm-name # 删除vm的配置文件
ls /etc/libvirt/qemu
# 查看删除结果,Centos-6.6的配置文件被删除,但磁盘文件不会被删除
virsh define file-name.xml # 根据配置文件定义虚拟机
virsh suspend vm-name # 挂起,终止
virsh resumed vm-name # 恢复被挂起的虚拟机
virsh autostart vm-name # 开机自启动vm
virsh console <虚拟机名称> # 连接虚拟机
virt-install参数:
–name指定虚拟机名称
–memory分配内存大小。
–vcpus分配CPU核心数,最大与实体机CPU核心数相同
–disk指定虚拟机镜像,size指定分配大小单位为G。
–network网络类型,此处用的是默认,一般用的应该是bridge桥接。
–accelerate加速
–cdrom指定安装镜像iso
–vnc启用VNC远程管理,一般安装系统都要启用。
–vncport指定VNC监控端口,默认端口为5900,端口不能重复。
–vnclisten指定VNC绑定IP,默认绑定127.0.0.1,这里改为0.0.0.0。
–os-type=linux,windows
–os-variant=rhel6
--name 指定虚拟机名称
--ram 虚拟机内存大小,以 MB 为单位
--vcpus 分配CPU核心数,最大与实体机CPU核心数相同
–-vnc 启用VNC远程管理,一般安装系统都要启用。
–-vncport 指定VNC监控端口,默认端口为5900,端口不能重复。
–-vnclisten 指定VNC绑定IP,默认绑定127.0.0.1,这里改为0.0.0.0。
--network 虚拟机网络配置
#其中子选项,bridge=br0 指定桥接网卡的名称。
–os-type=linux,windows
–os-variant=rhel7.2
--disk 指定虚拟机的磁盘存储位置
#size,初始磁盘大小,以 GB 为单位。
--location 指定安装介质路径,如光盘镜像的文件路径。
--graphics 图形化显示配置
#全新安装虚拟机过程中可能会有很多交互操作,比如设置语言,初始化 root 密码等等。
--extra-args 根据不同的安装方式设置不同的额外选项
⑦ kvm在ubuntu下怎么不能用
默认情况下,KVM是没有安装的,在安装之前,需要先检查一下,CPU是否支持VT技术
1. 切换到root模式
默认情况下,ubuntu的root帐号是没有启用的,要启用,需要做一些设置,为了安装方便,就启用root吧
sudo passwd root
输完密码后,su root进入高权限模式
2. 检查CPU信息
egrep '(vmx|svm)' --color=always /proc/cpuinfo
flags
: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat
pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm
constant_tsc arch_perfmon pebs bts rep_good nopl aperfmperf pni dtes64
monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm xsave lahf_lm dts
tpr_shadow vnmi flexpriority
flags
: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat
pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm
constant_tsc arch_perfmon pebs bts rep_good nopl aperfmperf pni dtes64
monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm xsave lahf_lm dts
tpr_shadow vnmi flexpriority
如果出现这个,就表示支持VT技术 www.linuxidc.com
还可以用这个命令
egrep -c '(vmx|svm)' --color=always /proc/cpuinfo
如果为0,表示符合的个数为0,那么肯定不支持了,如果大于0,那么可能有一个或两个符合结果,就支持vmx或svm
3. 安装kvm所需软件,ubuntu这个很方便
apt-get ubuntu-virt-server python-vm-builder kvm-pxe
4. 将用户加入到kvm管理组里面
adser “id -un” libvirtd
adser “id -un“ kvm
如果id -un无法加入,那么使用用户名替换
5. 检测安装是否成功
运行virsh -c qemu:///system list
如果出现
root@server1:~# virsh -c qemu:///system list
Id Name State
----------------------------------
6. KVM的桥接
默认情况下,启动kvm后,自带NAT模式,生成一个网卡virbr0,网段是192.168.122.0的,这个虽然可以联网,但是网络功能受限,毕竟,一些服务需要端口都要开,NAT模式不能满足需求,那么就需要使用桥接模式,使用这个模式需要单独下载安装桥接软件
apt-get install bridge-utils
7. 桥接配置
安装完成后,还需要配置一下桥接接口,在ubuntu下,桥接接口被定义为br0,需要手动配置一下,这个地方弄错了,配置的时候出现问题,导致无法上网,所以需要小心配置。这个无非就是配置ubuntu的网络设置,跟RHEL
里面的system-config-network是一样的。在ubuntu中,使用vim打开网络配置文件
/etc/network/interfaces
记得提前安装vim,ubuntu的vi难用至极
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
auto br0
iface br0 inet dhcp
bridge_ports eth0
这个配置文件定义了3个网卡设备,lo跟eth0不用说了,关键是br0,配置跟eth差不多,关键是bridge_ports eth0
指定要桥接到哪一块网卡,这个需要明确定义
说一下配置文件interfaces,跟RHEL还真不太一样
开机自动启动网卡
auto 网卡接口
获取IP的方式,dhcp或静态
iface eth0 inet dhcp(static)
如果是静态的话,还需要设置ip与网关
address 192.168.1.100
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
跟RHEL还真不太一样啊。
ok了,保存之后就开始下一步了
8. 启动网络服务
有两种方法
/etc/init.d/networking restart
或者
ifup br0
9. 查看配置结果
ifconfig
可以看到br0已经启动了
br0 Link encap:以太网 硬件地址 00:22:15:ca:59:2e
inet 地址:192.168.1.102 广播:192.168.1.255 掩码:255.255.255.0
inet6 地址: fe80::222:15ff:feca:592e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 跃点数:1
接收数据包:10 错误:0 丢弃:0 过载:0 帧数:0
发送数据包:47 错误:0 丢弃:0 过载:0 载波:0
碰撞:0 发送队列长度:0
接收字节:1920 (1.9 KB) 发送字节:10157 (10.1 KB)
10. 现在可以启动KVM管理器,通过图形界面安装虚拟机了
11. 其实还有命令行安装,这个比较cool,还没开始看,等下一篇。
12. 期望有snapshot功能,这个功能可方便了,特别是做实验的时候,相当方便,不知道kvm有这个功能不
⑧ 如何通过python创建kvm虚拟机
调用libvirt接口。可以参考下openstack中的libvirt驱动。 不过把openstack整透了也得下番功夫。