❶ linux 純命令行模式 創建虛擬機
KVM就夠了。
virt-install --name centos --ram 1024 --vcpus=1 --disk path=/home/3158cdn/images/node92.img,size=100 --network network:default --os-variant=rhel6 -l http://tel.mirrors.163.com/centos/6/os/x86_64/ --extra-args='console=tty0 console=ttyS0,115200n8'
安裝完成後,virtsh console centos
剩下的象操作實體機一樣
另外
--name 名字 -ram 內存大小 --vcpus 虛擬CPU --disk 虛擬硬碟選項 --network 網路接入模式
--os-variant=系統類型,這個也可以先成default -l 安裝源,這里採用了網路安裝源,
--extra-args='console=tty0 console=ttyS0,115200n8' 比較重要,沒它,你安完了無法console
如果想安完了,就自動連入,可以再加上--connect qemu:///system
❷ kvm虛擬機啟動之後如何配置IP地址
和正常的伺服器一樣,進到虛擬機里去改就行,或者你的KVMserver設置了DHCP,在配置文件做mac與ip地址的綁定就可以了。。。
❸ linux添加網卡後restartnetwork失敗
Linux系統重啟network服務失敗
丹魚先生
2022-07-18 11:37
關注
問題描述
使用KVM通過修改配置文件配置好網卡IP,使用命令行service network restart 重啟網路服務失敗。
如圖:
使用圖形化管理工具配置IP,在系統界面右上角可以看到網卡狀態為未連接,配置好IP以後使用service network restart命令時報同樣的錯。
如圖:
告警信息
使用ping命令查看路由是否通暢,系統提示「network is unreachable」。
處理過程
解決的方法很簡單,直接將NetworkManager服務關閉即可。步驟描述如下:
步驟 1 查看NetworkManager服務是否開啟。
因系統版本各異,NetworkManager服務的具體名稱可以用chkconfig --list查看。
如圖所示:
從圖中,可以發現NetworkManager服務已經開啟了。
步驟 2 禁用NetworkManager服務。
將當前激活的服務關閉,使用下面的命令:
service NetworkManager stop
使用下面的命令禁止服務自啟動。
chkconfig NetworkManager off
步驟 3 使用腳本方式配置IP地址。
根因
使用/etc/network/interfaces腳本文件配置IP信息的時候,使用的是Network服務;使用圖形化界面配置IP地址的時候,使用的是NetworkManager服務。
Netwok服務和NetworkManager服務之間存在下面的關系:
當系統內無NetworkManager時,系統默認使用Netwok服務進行網路配置。
當系統內啟用了NetworkManager之後,NetworkManager默認接管了系統的網路配置。此時需要使用NetworkManager自己的網路配置參數來進行配置。適用於桌面環境,例如使用筆記本等。
Netwok服務和NetworkManager服務之間不能同時共存,兩者為了避免沖突,又能共享配置,就有下面的解決方案:
當Network-Manager發現/etc/network/interfaces被改動的時候,則關閉自己(顯示為未託管),除非NetworkManager的相關標志位設置成真。
當NetworkManager的相關標志位設置成真時,/etc/network/interfaces,則不生效。
從Red Hat 6開始,默認是開啟NetworkManager服務的,此時通過修改腳本的方式配置IP地址將無效,除非將相關標志位設置為假。例如,使用DHCP配置的IP地址,其格式如下:
[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
BOOTPROTO="dhcp"
HWADDR="00:1F:29:57:8B:A8"
NM_CONTROLLED="yes"
> TYPE="Ethernet"
不同的系統中,NetworkManager服務的標志位不同。例羨姿如Ubuntu中是存放在配置文件/etc/NetworkManager/nm-system-settings.conf中,名稱為managed。
配置文件修改後,需型褲要重啟NetworkManager服務。
本案例中,系統默認啟用了NetworkManager服務,詳細信息如下所示:
[root@localhost ~]# chkconfig|grep -i network
NetworkManager 0:off 1:off 2:on 3:on 4:on 5:on 6:off
network 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@localhost ~]#
此時再啟用Network服務時是不生效的。所以重啟Network服務會失敗。兄租絕
建議與總結
從Red Hat 6開始,默認是開啟NetworkManager服務的,此時通過修改腳本的方式配置IP地址將無效。
❹ 如何在Linux上使用GNOME Boxes創建KVM 虛擬機
在Linux中用命令行工具管理KVM虛擬環境的步驟: 第一步: 配置存儲池 Virsh命令行工具是一款管理virsh客戶域的用戶界面。virsh程序能在命令行中運行所給的命令以及它的參數。本節中,要用它給KVM環境創建存儲池。想知道關於這個工具的更多信息,用以下這條命令。 # man virsh 1、用virsh帶pool-define-as的命令來定義新的存儲池,需要指定名字、類型和類型參數。本例中,將名字取為Spool1,類型為目錄。默認情況下可以提供五個參數給該類型: source-host source-path source-dev source-name target 對於目錄類型,需要或螞用最後一個參數「target」來指定存儲池的路徑,其它參數項可以用「-」來填充。 # virsh pool-define-as Spool1 dir - - - - "/mnt/personal-data/SPool1/" ...在Linux中用命令行工具管理KVM虛擬環境的步驟: 第一步: 配置存儲池 Virsh命令行工具是沖團碧一款管理virsh客戶域的用戶界面。virsh程序能在命令行中運行所給的命令以及它的參數。本節中,要用它給KVM環境創建存儲池。想知道關於這個工具的更多信息,用以下這條命令。 # man virsh 1、用virsh帶pool-define-as的命令來定義新的存儲池,需要指定名字、類型和類型參數。本例中,將名字取為Spool1,類型為目錄。散舉默認情況下可以提供五個參數給該類型: source-host source-path source-dev source-name target 對於目錄類型,需要用最後一個參數「target」來指定存儲池的路徑,其它參數項可以用「-」來填充。 # virsh pool-define-as Spool1 dir - - - - "/mnt/personal-data/SPool1/" 2、 查看環境中所有的存儲池,用以下命令。 # virsh pool-list --all 3、現在來構造存儲池了,用以下命令來構造剛才定義的存儲池。 # virsh pool-build Spool1 4、用帶pool-start參數的virsh命令來激活並啟動剛才創建並構造完成的存儲池。 # virsh pool-start Spool1 5、查看環境中存儲池的狀態,用以下命令。 # virsh pool-list --all 會發現Spool1的狀態變成了已激活。 6、對Spool1進行配置,讓它每次都能被libvirtd服務自啟動。 # virsh pool-autostart Spool1 7、最後來看看新的存儲池的信息吧。 # virsh pool-info Spool1 恭喜,Spool1已經准備好待命,接下來試著創建存儲卷來使用它。 第二步: 配置存儲卷/磁碟映像 現在輪到磁碟映像了,用qemu-img命令在Spool1中創建一個新磁碟映像。獲取更多細節信息,可以查看man手冊。 # man qemu-img 8、應該在qemu-img命令之後指定「create, check,…」等等操作、磁碟映像格式、想要創建的磁碟映像的路徑和大小。 # qemu-img create -f raw /mnt/personal-data/SPool1/SVol1.img 10G 9、通過使用帶info的qemu-img命令,你可以獲取到你的新磁碟映像的一些信息。 查看存儲卷信息 警告: 不要用qemu-img命令來修改被運行中的虛擬機或任何其它進程所正在使用的映像,那樣映像會被破壞。 現在是時候來創建虛擬機了。 第三步: 創建虛擬機 10、現在到最後一個環節了,在最後一步中,將用virt-install命令來創建虛擬機。virt-install是一個用來創建新的KVM虛擬機命令行工具,它使用「libvirt」管理程序庫。想獲取更多細節,同樣可以查看man手冊。 # man virt-install 要創建新的KVM虛擬機,需要用到帶以下所有信息的命令。 Name: 虛擬機的名字。 Disk Location: 磁碟映像的位置。 Graphics : 怎樣連接VM,通常是SPICE。 vcpu : 虛擬CPU的數量。 ram : 以兆位元組計算的已分配內存大小。 Location : 指定安裝源路徑。 Network : 指定虛擬網路,通常是virbr0網橋。 virt-install --name=rhel7 --disk path=/mnt/personal-data/SPool1/SVol1.img --graphics spice --vcpu=1 --ram=1024 --location=/run/media/dos/9e6f605a-f502-4e98-826e-e6376caea288/rhel-server-7.0-x86_64-dvd.iso --network bridge=virbr0 創建新的虛擬機 11、會看到彈出一個virt-vierwer窗口,像是在通過它在與虛擬機通信。收起
❺ 怎樣更改 kvm 配置文件 從network pxe
Network Boot Protocol:無盤啟動協議,默認設置為「PXE」。 Boot Order:啟動優先順序
Int 19h:最高優先順序。系統始終優先從網卡無盤啟動
PnP/BEV(BBS):第二優先順序。系統優先從BBS BIOS啟動
ROM Disable:屏蔽BOOTROM。即不通過網卡啟動
Int 18h:啟動順序按BIOS設置。如果固定為通過網路無盤啟動,建議按默認值「Int 19h」,無須修改;如需在網路無盤啟動和本地硬碟啟動之間選擇,則建議設置「Int 18h」。
Show Config Message:是否顯示提示信息。默認設置為「Enable」。
Show Message Time:顯示提示信息停留的時間。建議修改為3 Seconds節省啟動時間。
設置好了開機重起
這屬於專業操作
自己不會設置,最好預設安裝。可以用預設的方法恢復以前的設置。
硬體安裝好,windows支持即插即用,自動安裝
參考資料只是一個廠家的提供的方法。供參考。不同的產品有不同的設置方法。購買產品,可以找廠家的技術支持或者看說明書
❻ 如何在Linux發行版上安裝和配置KVM和Open vSwitch
將Open vSwitch安裝在Ubuntu或Debian上
雖然OVS以程序包的方式出現在Ubuntu或Debian上,但我在此還是通過源代碼來構建OVS,這將擁有最新的功能特性和修正版。鋒彎
首先,安裝用於構建OVS的依賴項。
$ sudo apt-get install build-essential libssl-dev linux-headers-$(uname -r)
通過源代碼來構建OVS,如下所示。下列步驟將構建OVS內核模塊以及OVS用戶空間工具。
$ wget http://openvswitch.org/releases/openvswitch-1.9.3.tar.gz
$ tar xvfvz openvswitch-1.9.3.tar.gz
$ cd openvswitch-1.9.3
$ ./configure --with-linux=/lib/moles/`uname -r`/build
$ make
接下來,繼續在/usr/local/share/下安裝OVS用戶空間組件:
$ sudo make install
下一步是,測試OVS內核模塊(安裝該模塊之前)。為此,先在內核中裝入內核模塊。
$ sudo insmod ./datapath/linux/openvswitch.ko
證實OVS內核模塊已成功裝入。
$ lsmod | grep openvswitch
openvswitch 97934 0
一旦你證實openvswitch.ko已成功裝入到內核中,繼續安裝內核模塊,如下所示。
$ sudo make moles_install
配置和啟動Open vSwitch
創建一個框架式OVS配置資料庫。
$ sudo mkdir /etc/openvswitch
$ sudo ovsdb-tool create /etc/openvswitch/conf.db ./vswit
chd/vswitch.ovsschema
啟動OVS資料庫伺服器。
$ sudo ovsdb-server --remote=punix:/usr/local/var/run/ope
nvswitch/db.sock - remote=db:Open_vSwitch,manager_options
--pidfile --detach
OVS配置資料庫初始化。
$ sudo ovs-vsctl --no-wait init
最後,啟動OVS守護程序。
$ sudo ovs-vswitchd --pidfile --detach
將KVM安裝在Ubuntu或Debian上
使用apt-get命令,安裝KVM和必要的用戶空間工具。
$ sudo apt-get install qemu-kvm libvirt-bin bridge-utils
virt-manager
將一個普通的非根用戶(如alice)添加到libvirtd群組銀跡悶,那樣該用戶不需要根用戶許可權,就能啟動虛擬機。
$ sudo adser alice libvirtd
退出,重新以該用戶身份登錄,讓群組成員的變更生效。
運行下面這個命令。如果你看到空空如也的虛擬機列表,這意味著KVM已成功設置完畢。
$ virsh -c qemu:///system list
Id Name State
為KVM配置Open vSwitch
現在是時候創建OVS網橋啟動腳本了,那樣啟動或終止虛擬機時,OVS就能自動配置。
安裝依賴項(用戶模式Linux實用工具),這些依賴項將用於處理Linux網州鏈橋模式。
$ sudo apt-get install uml-utilities
創建網橋啟動腳本,如下所示。
$ sudo vi /etc/openvswitch/ovs-ifup
#!/bin/sh
switch='br0'
/sbin/ifconfig $1 0.0.0.0 up
ovs-vsctl add-port ${switch} $1
$ sudo vi /etc/openvswitch/ovs-ifdown
#!/bin/sh
switch='br0'
/sbin/ifconfig $1 0.0.0.0 down
ovs-vsctl del-port ${switch} $1
$ sudo chmod +x /etc/openvswitch/ovs-if*
然後,創建一個默認的網橋br0,並添加一個物理網路介面,虛擬機將通過這個介面與外部網路進行聯系。在該教程中,我假設這類網路介面是eth5。
$ sudo ovs-vsctl add-br br0
$ sudo ovs-vsctl add-port br0 eth5
藉助KVM啟動虛擬機
現在你可以准備啟動訪客虛擬機了。
我假設,你已經准備好了一個訪客虛擬機映像(比如ubuntu-client.img)。使用下面這個命令,啟動訪客虛擬機。
$ sudo kvm -m 1024 -net nic,macaddr=11:11:11:EE:EE:EE -ne
t tap,script=/etc/openvswitch/ovs-ifup,downscript=/etc/op
envswitch/ovs-ifdown -vnc :1 -drive file=/home/dev/images
/ubuntu-client.img,boot=on
這會創建並啟動一個訪客虛擬機;一旦訪客虛擬機啟動,其虛擬介面就自動添加到OVS網橋br0。
❼ KVM虛擬機安裝
安裝流程
KVM安裝流程
*鍵入 virt-manager 打開虛擬機管理界面,並進行虛擬系統安裝
*點擊create a new virtual machine按鈕,並輸入虛擬機名稱,其他默認設置即可,點擊forward按鈕岩高
*根據實際使用情況,選擇磁碟安裝或者鏡像文件(ISO)在下方OS Type請選擇實際系統分類,Version也根據實際情況選擇,點擊forward按鈕,粗改尺進行下一步操作
*分配RAM,以及分配CPU個數,如果對虛擬機運行速度有一定要求,請在限度內盡可能多分配CPU,以提高運行效率,點擊forward
*分配虛擬機內存(建議分配最高不超過主機2/3,超過則會影響主機效率),點擊forward
*點擊Finish,完成,進行虛擬系統安裝,安裝操作與實際系統安裝相同,再此不做贅述
*在 Linux 內核中啟用 PCI Pass-through添加 intel_iommu=on 到 /boot/grub/grub.cfg 文件中,重啟系統,使配置文件生效
*查找PCI設備:鍵入 lspci -nn
*使用 virsh nodedev-list --tree 命令查找上述設備的PCI編號
*將找到的設備在主機移除: virsh nodedev-dettach pci_0000_08_00_0
*在virt-manager管理界面中,選擇虛擬機名稱,點擊open按鈕 圖13 ,在虛擬機操作界面中選擇ADD Hardware ,點擊PCI Host Device 選擇之前移除的PCI
*進入系統後,安裝採集卡驅動,信號採集正常,至此安裝流程結束
備注
*安裝KVM前請確認主機是否支持KVM
*分配虛擬機內存,CPU時請根據實際情況設定,超過主機配置,則會出現未知錯誤
*停止使用虛擬機後,可執行上述命令,從虛擬機移除PCI,然後鍵入 virsh nodedev-reattach pci_0000_08_00_0 重殲頃新掛載主機
❽ 創建基於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之一: linux如何配置console
賀悉
The /usr/lib/systemd/system/[email protected] file is responsible for the virtual terminals (/dev/tty[X]). /usr/lib/systemd/system/[email protected] is responsible for all other terminals, such as a serial terminal on /dev/ttyS0 .
Systemd provides a template unit file for serial getty. Template file can be found here /lib/systemd/system/[email protected]
森畝There are many cloud platforms which are working in Linux virtualisation on back-end. In terms of connectivity we have better option in KVM, which connect it through serial console.
In this post we would see how we could connect Ubuntu17.04 KVM Virtual machine through serial console. I remember in earlier version and distributions, it need to configure serial console in grub file, but in Ubuntu its very easy and reliable as most of configurations and settings are already configured in OS.
let』s see how things happened here …
此拍森For this post, we are using Ubuntu-17.04 Guest Machine on Ubuntu-16.04 Host machine.
How to setup serial console, for same we have to connect machine and login on as root user.
We could connect on KVM Guest machine through SSH from Host Machine.
We could connect Guest machine through VNC Viewer and could setup Serial console from there. Configuring and connecting VNC viewer posted here . This could be best option to connect Guest machine in any troubleshooting because it could configure without any network connectivity, this also make it same control which we have in serial console with Graphical User Interface from remote host.
This is Graphical User interface on Host Machine. For this we should have access to Host Machine or Graphical desktop from remote through SSH or VNC.
Above package should installed for this command. Like in below image we could connect KVM Guest machine.
Configure a serial console in the Ubuntu guest
After getting login console we need to start serial console and enable it with below two commands.
Now we could connect serial console in easy way with virsh console command.
以下方法: 在centos6.5也適用