① 如何在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整透了也得下番功夫。