国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Ubuntu 安裝 KVM 虛擬化

這篇具有很好參考價(jià)值的文章主要介紹了Ubuntu 安裝 KVM 虛擬化。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

1. Ubuntu 安裝 KVM 虛擬化

KVM 是 Linux 內(nèi)核中一個(gè)基于 hypervisor 的虛擬化模塊,它允許用戶在 Linux 操作系統(tǒng)上創(chuàng)建和管理虛擬機(jī)。
ubuntu kvm,OpenStack,ubuntu,linux,運(yùn)維,kvm,虛擬化,openstack

如果機(jī)器的CPU不支持硬件虛擬化擴(kuò)展,是無法使用KVM(基于內(nèi)核的虛擬機(jī))直接創(chuàng)建和運(yùn)行虛擬機(jī)的。此時(shí)最多只能使用QEMU的完全軟件仿真模式來運(yùn)行虛擬機(jī),但是性能會(huì)極度低下。

檢查您的 CPU 是否支持虛擬化:

運(yùn)行以下命令,輸出大于0,說明KVM與系統(tǒng)兼容,可以安裝。

egrep -c 'vmx|svm' /proc/cpuinfo

或者安裝cpu-checker工具。

apt install -y cpu-checker

它應(yīng)該輸出:

root@ubuntu:~# kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used

Vmware workstation可以通過編輯虛擬機(jī)處理器選項(xiàng),開啟嵌套虛擬化。
ubuntu kvm,OpenStack,ubuntu,linux,運(yùn)維,kvm,虛擬化,openstack

環(huán)境信息:

  • 安裝環(huán)境:vmware workstation
  • 操作系統(tǒng):ubuntu 22.04 LTS

安裝kvm軟件包

配置主機(jī)名

root@ubuntu:~# hostnamectl set-hostname kvm-host

更新系統(tǒng)

apt update -y

安裝必要的包:

## qemu+kvm
apt install -y qemu-kvm 
## libvirt
apt install -y virt-manager libvirt-daemon-system virtinst libvirt-clients
## bridge tool
apt install -y bridge-utils

安裝包說明:

  • qemu-kvm - 為 KVM 管理程序提供硬件模擬的軟件程序
  • libvirt-daemon-system - 將 libvirt 守護(hù)程序作為系統(tǒng)服務(wù)運(yùn)行的配置文件
  • libvirt-clients - 用來管理虛擬化平臺(tái)的軟件
  • bridge-utils - 用來配置網(wǎng)絡(luò)橋接的命令行工具
  • virtinst - 用來創(chuàng)建虛擬機(jī)的命令行工具

一旦軟件包被安裝好,libvirt 守護(hù)程序?qū)?huì)自動(dòng)啟動(dòng)。你可以通過運(yùn)行下面的命令驗(yàn)證:

root@kvm-host:~# systemctl is-active libvirtd
active

用戶添加到 KVM 和 Libvirt 組

想要?jiǎng)?chuàng)建和管理虛擬機(jī),你需要添加你的用戶到libvirtkvm用戶組。

sudo usermod -aG kvm $USER
sudo usermod -aG libvirt $USER

網(wǎng)絡(luò)設(shè)置

在libvirt 安裝過程中,一個(gè)被稱為 virbr0 的橋接設(shè)備默認(rèn)被創(chuàng)建。這個(gè)設(shè)備使用 NAT 來連接客戶機(jī)到外面的世界。

查看網(wǎng)卡變化,新增了一個(gè)virtbr0的網(wǎng)橋接口。

root@kvm-host:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:15:cb:54 brd ff:ff:ff:ff:ff:ff
    altname enp2s1
    inet 192.168.93.9/24 brd 192.168.93.255 scope global ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe15:cb54/64 scope link 
       valid_lft forever preferred_lft forever
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
    link/ether 52:54:00:93:99:53 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever

運(yùn)行 brctl 工具來列出當(dāng)前的網(wǎng)橋和它們連接的接口:

root@kvm-host:~# brctl show
bridge name     bridge id               STP enabled     interfaces
virbr0          8000.525400939953       yes

默認(rèn)網(wǎng)絡(luò)設(shè)置適合大部分 Ubuntu 用戶,但是有限制,由于虛擬機(jī)地址段為私有IP地址,你只能從虛擬機(jī)所在宿主機(jī)訪問虛擬機(jī)地址,無法從外部網(wǎng)絡(luò)訪問虛擬機(jī)地址。

Libvirt默認(rèn)NAT網(wǎng)絡(luò)模式原理圖:
ubuntu kvm,OpenStack,ubuntu,linux,運(yùn)維,kvm,虛擬化,openstack

如果需要從外部連接虛擬機(jī),需要?jiǎng)?chuàng)建一個(gè)新的網(wǎng)橋,將該網(wǎng)橋橋接到物理網(wǎng)卡,以便虛擬機(jī)配置物理網(wǎng)段的IP地址,進(jìn)而實(shí)現(xiàn)通過外部網(wǎng)絡(luò)直連虛擬機(jī)。

下載 cloud image 鏡像

下面以默認(rèn)NAT網(wǎng)絡(luò)模式為例,介紹使用 ubuntu cloud image 快速啟動(dòng)虛擬機(jī)。

jammy(Ubuntu Server 22.04 LTS)為例

# 官方源
wget https://cloud-images.ubuntu.com/bionic/current/bionic-server-cloudimg-amd64.img

# 國內(nèi)源
wget https://mirrors.tuna.tsinghua.edu.cn/ubuntu-cloud-images/jammy/current/jammy-server-cloudimg-amd64.img

安裝guestfs-tools 鏡像定制工具

apt install -y guestfs-tools

創(chuàng)建鏡像模板目錄

mkdir -p /var/lib/libvirt/images/templates

復(fù)制鏡像到模板目錄

cp jammy-server-cloudimg-amd64.img /var/lib/libvirt/images/templates/

定制鏡像參數(shù)

export image=/var/lib/libvirt/images/templates/jammy-server-cloudimg-amd64.img
virt-customize -a $image --run-command 'adduser ubuntu'
virt-customize -a $image --run-command 'echo "ubuntu:ubuntu123" | chpasswd'
virt-customize -a $image --run-command 'adduser ubuntu sudo'
virt-customize -a $image --run-command 'apt update -y'
virt-customize -a $image --run-command 'apt install -y qemu-guest-agent'

參數(shù)說明:

  • 創(chuàng)建 ubuntu 用戶,密碼為 ubuntu123,并賦予sudo權(quán)限
  • 更新系統(tǒng)軟件索引(可選)
  • 安裝必要的軟件包(可選)

創(chuàng)建虛擬機(jī)

創(chuàng)建虛擬機(jī)存儲(chǔ)路徑并復(fù)制鏡像模板

mkdir -p /var/lib/libvirt/images/ubuntu01
cp /var/lib/libvirt/images/templates/jammy-server-cloudimg-amd64.img /var/lib/libvirt/images/ubuntu01/

使用virt-install命令創(chuàng)建虛擬機(jī)

virt-install \
  --name ubuntu01 \
  --vcpus 1 \
  --memory 2048 \
  --disk path=/var/lib/libvirt/images/ubuntu01/jammy-server-cloudimg-amd64.img \
  --os-variant ubuntu22.04 \
  --import \
  --autostart \
  --noautoconsole

參數(shù)說明:

  • --name:可選,指定虛擬機(jī)名稱
  • --vcps:可選,指定虛擬機(jī)cpu大小
  • --memory:可選,指定虛擬機(jī)內(nèi)存大小
  • --disk path:必選,指定虛擬機(jī)鏡像位置
  • --os-variant:必選,指定虛擬機(jī)操作系統(tǒng)類型
  • --import :必選,指定虛擬機(jī)安裝方式,安裝方式不同該參數(shù)不同
  • --autostart:可選,默認(rèn)虛擬機(jī)不會(huì)隨主機(jī)重啟后一起啟動(dòng),可通過添加該參數(shù)配置
  • --noautoconsole:可選,不指定該參數(shù)virt-install命令將始終處于掛起狀態(tài),需要另開窗口登錄虛擬機(jī)

說明:使用osinfo-query命令可以列出--os-variant選項(xiàng)支持的所有參數(shù)。

$ apt install -y libosinfo-bin
$ osinfo-query os

命令示例輸出如下

root@kvm-host:~# virt-install \
  --name ubuntu01 \
  --vcpus 1 \
  --memory 2048 \
  --disk path=/var/lib/libvirt/images/ubuntu01/jammy-server-cloudimg-amd64.img \
  --os-variant ubuntu22.04 \
  --import \
  --autostart \
  --noautoconsole

Starting install...
Creating domain...                                                                                                                                                                   |    0 B  00:00:00     
Domain creation completed.
root@kvm-host:~#

創(chuàng)建虛擬機(jī)后,查看網(wǎng)口及網(wǎng)橋變化,主機(jī)新增vnet0網(wǎng)卡,網(wǎng)橋新增vnet0接口,說明虛擬機(jī)連接到了網(wǎng)橋上。

root@kvm-host:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:15:cb:54 brd ff:ff:ff:ff:ff:ff
    altname enp2s1
    inet 192.168.93.9/24 brd 192.168.93.255 scope global ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe15:cb54/64 scope link 
       valid_lft forever preferred_lft forever
3: virbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 52:54:00:93:99:53 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever
4: vnet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master virbr0 state UNKNOWN group default qlen 1000
    link/ether fe:54:00:fc:fe:df brd ff:ff:ff:ff:ff:ff
    inet6 fe80::fc54:ff:fefc:fedf/64 scope link 
       valid_lft forever preferred_lft forever

root@kvm-host:~# brctl show
bridge name     bridge id               STP enabled     interfaces
virbr0          8000.525400939953       yes             vnet0

查看虛擬機(jī)運(yùn)行狀態(tài)

root@kvm-host:~# virsh list
 Id   Name       State
--------------------------
 1    ubuntu01   running

root@kvm-host:~# 

使用virsh console命令連接到虛擬機(jī),使用上面定義的用戶密碼ubuntu/ubuntu123登錄到虛擬機(jī)

virsh console ubuntu01

示例命令輸出如下:

root@kvm-host:~# virsh console ubuntu01 
Connected to domain 'ubuntu01'
Escape character is ^] (Ctrl + ])

ubuntu login: ubuntu
Password: 
Welcome to Ubuntu 22.04.4 LTS (GNU/Linux 5.15.0-100-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

  System information as of Fri Mar 15 11:31:43 UTC 2024

  System load: 0.0458984375      Memory usage: 8%   Processes:       114
  Usage of /:  81.3% of 1.96GB   Swap usage:   0%   Users logged in: 0

Expanded Security Maintenance for Applications is not enabled.

1 update can be applied immediately.
1 of these updates is a standard security update.
To see these additional updates run: apt list --upgradable

Enable ESM Apps to receive additional future security updates.
See https://ubuntu.com/esm or run: sudo pro status



The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.

To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.

ubuntu@ubuntu:~$ 
ubuntu@ubuntu:~$ cat /etc/os-release 
PRETTY_NAME="Ubuntu 22.04.4 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.4 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy
ubuntu@ubuntu:~$ 

切換到root用戶,輸入ubuntu用戶的密碼ubuntu123

ubuntu@ubuntu:~$ sudo -i
[sudo] password for ubuntu: 
root@ubuntu:~# 
root@ubuntu:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp1s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 52:54:00:fc:fe:df brd ff:ff:ff:ff:ff:ff
root@ubuntu:~# 

可以看到網(wǎng)卡未獲取任何IP地址,通過主機(jī)上的網(wǎng)橋接口virbr0可以確認(rèn)網(wǎng)橋地址段默認(rèn)為192.168.122.0/24,網(wǎng)關(guān)地址為192.168.122.1/24,該地址段和網(wǎng)關(guān)就是虛擬機(jī)可用的地址段和網(wǎng)關(guān)。

確認(rèn)虛擬機(jī)網(wǎng)卡名稱為enp1s0,虛擬機(jī)中創(chuàng)建網(wǎng)卡配置文件

cat >/etc/netplan/00-installer-config.yaml<<EOF
network:
  version: 2
  ethernets:
    enp1s0:
      dhcp4: false
      addresses:
        - 192.168.122.10/24
      nameservers:
        addresses:
          - 223.5.5.5
          - 223.6.6.6
      routes:
        - to: default
          via: 192.168.122.1
EOF

啟用網(wǎng)卡配置

root@ubuntu:~# chmod 600 /etc/netplan/00-installer-config.yaml
root@ubuntu:~# netplan apply 

查看虛擬機(jī)網(wǎng)口狀態(tài)為UP,并且配置了IP地址:

root@ubuntu:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 52:54:00:fc:fe:df brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.10/24 brd 192.168.122.255 scope global enp1s0
       valid_lft forever preferred_lft forever
    inet6 fe80::5054:ff:fefc:fedf/64 scope link 
       valid_lft forever preferred_lft forever

測(cè)試虛擬機(jī)訪問外部網(wǎng)絡(luò)

root@ubuntu:~# ping www.baidu.com -c 4
PING www.a.shifen.com (183.2.172.42) 56(84) bytes of data.
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=1 ttl=127 time=7.56 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=2 ttl=127 time=8.46 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=3 ttl=127 time=8.63 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=4 ttl=127 time=8.40 ms

--- www.a.shifen.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3007ms
rtt min/avg/max/mdev = 7.556/8.262/8.627/0.416 ms
root@ubuntu:~# 

退出虛擬機(jī)執(zhí)行exit命令,然后按鍵盤快捷鍵ctrl + ]。

在kvm主機(jī)上查看虛擬機(jī)網(wǎng)卡IP地址(依賴虛擬機(jī)中的qemu-guest-agent

root@kvm-host:~# virsh domifaddr ubuntu01 --source agent
 Name       MAC address          Protocol     Address
-------------------------------------------------------------------------------
 lo         00:00:00:00:00:00    ipv4         127.0.0.1/8
 -          -                    ipv6         ::1/128
 enp1s0     52:54:00:fc:fe:df    ipv4         192.168.122.10/24
 -          -                    ipv6         fe80::5054:ff:fefc:fedf/64

默認(rèn)虛擬機(jī)不會(huì)隨主機(jī)開機(jī)自動(dòng)啟動(dòng),可以使用以下命令配置隨宿主機(jī)自動(dòng)啟動(dòng),或在創(chuàng)建虛擬機(jī)時(shí)指定--autostart參數(shù)。

root@kvm-host:~# virsh autostart ubuntu01

如果需要?jiǎng)h除虛擬機(jī),需要先將虛擬機(jī)關(guān)機(jī)

root@kvm-host:~# virsh shutdown ubuntu01

確認(rèn)虛擬機(jī)已關(guān)機(jī)

root@kvm-host:~# virsh list --all
 Id   Name       State
---------------------------
 -    ubuntu01   shut off

然后執(zhí)行以下命令刪除虛擬機(jī)

root@kvm-host:~# virsh undefine ubuntu01

如果需要徹底刪除虛擬機(jī),則進(jìn)一步刪除虛擬機(jī)磁盤文件

root@kvm-host:~# rm -rf /var/lib/libvirt/images/ubuntu01/

2. 配置網(wǎng)橋共享物理網(wǎng)卡

橋接網(wǎng)絡(luò)與其他虛擬機(jī)共享主機(jī)的真實(shí)網(wǎng)絡(luò)接口,以連接到外部網(wǎng)絡(luò)。因此,每個(gè) VM 都可以直接綁定到任何可用的 IPv4 或 IPv6 地址,就像一臺(tái)物理計(jì)算機(jī)一樣。

默認(rèn)情況下,KVM 設(shè)置了一個(gè)專用虛擬網(wǎng)橋,以便所有 VM 都可以在主機(jī)內(nèi)相互通信。它提供自己的子網(wǎng)和 DHCP 來配置虛擬機(jī)的網(wǎng)絡(luò),并使用 NAT 訪問主機(jī)網(wǎng)絡(luò)。

查看 KVM 默認(rèn)虛擬接口的 IP 地址:

root@kvm-host:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:15:cb:54 brd ff:ff:ff:ff:ff:ff
    altname enp2s1
    inet 192.168.93.9/24 brd 192.168.93.255 scope global ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe15:cb54/64 scope link 
       valid_lft forever preferred_lft forever
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
    link/ether 52:54:00:93:99:53 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever

可以看到,KVM默認(rèn)網(wǎng)絡(luò)virbr0使用192.168.122.1/24 IP地址。所有虛擬機(jī)都將使用192.168.122.0/24 IP 范圍內(nèi)的 IP 地址,主機(jī)操作系統(tǒng)可通過192.168.122.1訪問。應(yīng)該能夠從虛擬機(jī)操作系統(tǒng)內(nèi)部通過 ssh 進(jìn)入主機(jī)操作系統(tǒng)(位于 192.168.122.1)并使用 scp 來回復(fù)制文件。

如果您只從主機(jī)本身訪問內(nèi)部的 VM 就可以了。但是,無法從網(wǎng)絡(luò)中的其他遠(yuǎn)程系統(tǒng)訪問虛擬機(jī)。

為了從其他遠(yuǎn)程主機(jī)訪問虛擬機(jī),必須設(shè)置一個(gè)在主機(jī)網(wǎng)絡(luò)上運(yùn)行的公共網(wǎng)橋,并使用主機(jī)網(wǎng)絡(luò)上的任何外部 DHCP 服務(wù)器。通俗地說,我們將使所有虛擬機(jī)使用主機(jī)系統(tǒng)使用的相同 IP 系列。

如果你打算從本機(jī)(Ubuntu 22.04)之外訪問 KVM 虛擬機(jī),你必須將虛擬機(jī)的網(wǎng)卡映射至網(wǎng)橋。virbr0 網(wǎng)橋是 KVM 安裝完成后自動(dòng)創(chuàng)建的,僅做測(cè)試用途。

物理橋接網(wǎng)絡(luò)示意圖:
ubuntu kvm,OpenStack,ubuntu,linux,運(yùn)維,kvm,虛擬化,openstack

禁用 KVM默認(rèn)網(wǎng)絡(luò)

接下來,我們應(yīng)該禁用 KVM 為自己安裝的默認(rèn)網(wǎng)絡(luò)。查看默認(rèn)網(wǎng)絡(luò)

root@kvm-host:~# virsh net-list 
 Name      State    Autostart   Persistent
--------------------------------------------
 default   active   yes         yes

使用命令刪除默認(rèn)的 KVM 網(wǎng)絡(luò):

virsh net-destroy default
virsh net-undefine default

查看網(wǎng)橋及網(wǎng)橋接口都已經(jīng)被刪除

root@kvm-host:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:15:cb:54 brd ff:ff:ff:ff:ff:ff
    altname enp2s1
    inet 192.168.93.9/24 brd 192.168.93.255 scope global ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe15:cb54/64 scope link 
       valid_lft forever preferred_lft forever
root@kvm-host:~# brctl show
root@kvm-host:~# 

設(shè)置 KVM 公共網(wǎng)橋

現(xiàn)在,讓我們?cè)O(shè)置 KVM 公共網(wǎng)橋以在創(chuàng)建新 VM 時(shí)使用。查找網(wǎng)絡(luò)接口ens33的MAC地址:

root@kvm-host:~# ip a show 

或者你可以運(yùn)行命令,它將在 serial: 條目中輸出 MAC 地址。

lshw -C network

為 VM(虛擬機(jī))創(chuàng)建橋接網(wǎng)絡(luò)。首先查看主機(jī)網(wǎng)卡默認(rèn)配置

root@kvm-host:~# cat /etc/netplan/00-installer-config.yaml 
# This is the network config written by 'subiquity'
network:
  ethernets:
    ens33:
      addresses:
      - 192.168.93.9/24
      gateway4: 192.168.93.2
      nameservers:
        addresses:
        - 114.114.114.114
        - 8.8.8.8
        search: []
  version: 2

修改后如下,清除主機(jī)網(wǎng)卡ens33上的IP信息,轉(zhuǎn)移到br0網(wǎng)橋上

$ sudo nano /etc/netplan/00-installer-config.yaml
network:
  ethernets:
    ens33:
      dhcp4: false
      dhcp6: false
  bridges:
    br0:
      interfaces: [ ens33 ]
      dhcp4: false
      dhcp6: false
      addresses: [192.168.93.9/24]
      macaddress: 00:0c:29:15:cb:54
      routes:
        - to: default
          via: 192.168.93.2
      nameservers:
        addresses: ["223.5.5.5","223.6.6.6"]
      parameters:
        stp: false
        forward-delay: 4
  version: 2

請(qǐng)注意:需要將 br0macaddress 設(shè)置為在上面找到的 ens33 的 MAC 地址。

測(cè)試網(wǎng)卡配置是否正確

netplan generate

確認(rèn)檢查無報(bào)錯(cuò),使用 Netplan 應(yīng)用更改

netplan apply

使用 ip addr 命令查看更改,如下所示:

root@kvm-host:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br0 state UP group default qlen 1000
    link/ether 00:0c:29:15:cb:54 brd ff:ff:ff:ff:ff:ff
    altname enp2s1
6: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 00:0c:29:15:cb:54 brd ff:ff:ff:ff:ff:ff
    inet 192.168.93.9/24 brd 192.168.93.255 scope global br0
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe15:cb54/64 scope link 
       valid_lft forever preferred_lft forever
root@kvm-host:~# 

查看netplan創(chuàng)建的網(wǎng)橋及網(wǎng)橋上的接口

root@kvm-host:~# brctl show
bridge name     bridge id               STP enabled     interfaces
br0             8000.000c2915cb54       no              ens33

添加網(wǎng)橋到KVM

使用以下內(nèi)容創(chuàng)建文件 br0.xml

mkdir -p /etc/kvm/
cat >/etc/kvm/host-bridge.xml<<EOF
<network>
  <name>host-bridge</name>
  <forward mode="bridge"/>
  <bridge name="br0"/>
</network>
EOF

例如,該文件可能位于Linux 用戶主目錄中。如果在 root 下,它可能是/root/br0.xml

  • name – 虛擬網(wǎng)絡(luò)的簡稱。它可以是任何字母數(shù)字字符串
  • forward – 表示虛擬網(wǎng)絡(luò)必須連接到物理網(wǎng)絡(luò)。 mode=“bridge” 在我們的例子中意味著正在連接到在 libvirt 之外創(chuàng)建的網(wǎng)橋。
  • bridge – 確定要連接的網(wǎng)橋的名稱。
virsh net-define /etc/kvm/host-bridge.xml
virsh net-start host-bridge
virsh net-autostart host-bridge

查看新增的網(wǎng)絡(luò)

root@kvm-host:~# virsh net-list
 Name          State    Autostart   Persistent
------------------------------------------------
 host-bridge   active   yes         yes

現(xiàn)在,安裝 KVM 后,您可以繼續(xù)在 KVM 上創(chuàng)建 Ubuntu 22.04 虛擬機(jī)。

測(cè)試創(chuàng)建虛擬機(jī)

新建虛擬機(jī)ubuntu02,創(chuàng)建存儲(chǔ)路徑并復(fù)制鏡像模板

mkdir -p /var/lib/libvirt/images/ubuntu02
cp /var/lib/libvirt/images/templates/jammy-server-cloudimg-amd64.img /var/lib/libvirt/images/ubuntu02/

運(yùn)行同樣命令創(chuàng)建虛擬機(jī)

virt-install \
  --name ubuntu02 \
  --vcpus 1 \
  --memory 2048 \
  --disk path=/var/lib/libvirt/images/ubuntu02/jammy-server-cloudimg-amd64.img \
  --os-variant ubuntu22.04 \
  --import \
  --autostart \
  --noautoconsole

連接到ubuntu02虛擬機(jī)

root@kvm-host:~# virsh console ubuntu02

確認(rèn)虛擬機(jī)網(wǎng)卡名稱為enp1s0,虛擬機(jī)中創(chuàng)建網(wǎng)卡配置文件,注意這次配置的虛擬機(jī)IP與主機(jī)同一個(gè)網(wǎng)段。

cat >/etc/netplan/00-installer-config.yaml<<EOF
network:
  version: 2
  ethernets:
    enp1s0:
      dhcp4: false
      addresses:
        - 192.168.93.100/24
      nameservers:
        addresses:
          - 223.5.5.5
          - 223.6.6.6
      routes:
        - to: default
          via: 192.168.93.2
EOF

啟用網(wǎng)卡配置

root@ubuntu:~# chmod 600 /etc/netplan/00-installer-config.yaml
root@ubuntu:~# netplan apply 

查看虛擬機(jī)網(wǎng)口狀態(tài)為UP,并且配置了IP地址:

root@ubuntu:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 52:54:00:d0:fd:76 brd ff:ff:ff:ff:ff:ff
    inet 192.168.93.100/24 brd 192.168.93.255 scope global enp1s0
       valid_lft forever preferred_lft forever
    inet6 fe80::5054:ff:fed0:fd76/64 scope link 
       valid_lft forever preferred_lft forever

測(cè)試虛擬機(jī)訪問外部網(wǎng)絡(luò)

root@ubuntu:~# ping www.baidu.com -c 4
PING www.a.shifen.com (183.2.172.185) 56(84) bytes of data.
64 bytes from 183.2.172.185 (183.2.172.185): icmp_seq=1 ttl=128 time=7.60 ms
64 bytes from 183.2.172.185 (183.2.172.185): icmp_seq=2 ttl=128 time=7.66 ms
64 bytes from 183.2.172.185 (183.2.172.185): icmp_seq=3 ttl=128 time=7.32 ms
64 bytes from 183.2.172.185 (183.2.172.185): icmp_seq=4 ttl=128 time=7.35 ms

--- www.a.shifen.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3006ms
rtt min/avg/max/mdev = 7.321/7.484/7.662/0.148 ms
root@ubuntu:~# 

測(cè)試外網(wǎng)訪問虛擬機(jī)

C:\Users\pc>ping 192.168.93.100

正在 Ping 192.168.93.100 具有 32 字節(jié)的數(shù)據(jù):
來自 192.168.93.100 的回復(fù): 字節(jié)=32 時(shí)間=1ms TTL=64
來自 192.168.93.100 的回復(fù): 字節(jié)=32 時(shí)間<1ms TTL=64
來自 192.168.93.100 的回復(fù): 字節(jié)=32 時(shí)間<1ms TTL=64
來自 192.168.93.100 的回復(fù): 字節(jié)=32 時(shí)間<1ms TTL=64

192.168.93.100 的 Ping 統(tǒng)計(jì)信息:
    數(shù)據(jù)包: 已發(fā)送 = 4,已接收 = 4,丟失 = 0 (0% 丟失),
往返行程的估計(jì)時(shí)間(以毫秒為單位):
    最短 = 0ms,最長 = 1ms,平均 = 0ms

C:\Users\pc>

配置SSH遠(yuǎn)程登錄,修改以下兩項(xiàng)

# vim /etc/ssh/sshd_config
PermitRootLogin yes
PasswordAuthentication yes

刪除其他ssh配置,為root用戶設(shè)置密碼。

# rm -rf /etc/ssh/sshd_config.d/60-cloudimg-settings.conf
# ssh-keygen -A
# passwd root

重啟sshd服務(wù)

systemctl restart sshd

測(cè)試通過SSH連接到虛擬機(jī)

C:\Users\pc>ssh root@192.168.93.100
root@192.168.93.100's password:
Welcome to Ubuntu 22.04.4 LTS (GNU/Linux 5.15.0-100-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

  System information as of Fri Mar 15 12:28:35 UTC 2024

  System load:  0.0048828125      Processes:               116
  Usage of /:   81.7% of 1.96GB   Users logged in:         1
  Memory usage: 9%                IPv4 address for enp1s0: 192.168.93.100
  Swap usage:   0%


Expanded Security Maintenance for Applications is not enabled.

1 update can be applied immediately.
1 of these updates is a standard security update.
To see these additional updates run: apt list --upgradable

Enable ESM Apps to receive additional future security updates.
See https://ubuntu.com/esm or run: sudo pro status

Failed to connect to https://changelogs.ubuntu.com/meta-release-lts. Check your Internet connection or proxy settings


Last login: Fri Mar 15 12:28:35 2024 from 192.168.93.1
root@ubuntu:~#

參考:https://docs.nvidia.com/dgx/bp-dgx/dgx2-kvm-networking.html文章來源地址http://www.zghlxwxcb.cn/news/detail-861707.html

到了這里,關(guān)于Ubuntu 安裝 KVM 虛擬化的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【KVM虛擬化】· 圖形化KVM安裝linux

    【KVM虛擬化】· 圖形化KVM安裝linux

    目錄 ??虛擬化技術(shù) ??KVM的整體結(jié)構(gòu) ??KVM 的功能列表 ??KVM 工具集合 ??安裝kvm虛擬化功能 ??創(chuàng)建虛擬機(jī) ?????博客主頁:大蝦好吃嗎的博客 ? ???專欄地址:KVM虛擬化專欄 全虛擬化 半虛擬化 硬件輔助的虛擬化 從GUI到Linux內(nèi)核,包括以下五個(gè)組件: virt-manager一個(gè)用來

    2024年02月01日
    瀏覽(22)
  • KVM虛擬化介紹和安裝使用方法

    KVM虛擬化介紹和安裝使用方法

    虛擬化:在一臺(tái)計(jì)算機(jī)上虛擬出多個(gè)邏輯的計(jì)算機(jī),而且每個(gè)邏輯計(jì)算機(jī) 它可以是不同操作系統(tǒng) 虛擬化技術(shù):可以擴(kuò)大硬件容量,單個(gè)cpu模擬出多個(gè)cpu并行, 允許一個(gè)平臺(tái)上同時(shí)運(yùn)行多個(gè)操作系統(tǒng),應(yīng)用程序都可以在相互獨(dú)立 的空間內(nèi)運(yùn)行,而且互不影響。 為什么企業(yè)使

    2023年04月09日
    瀏覽(39)
  • 【KVM虛擬化】· KVM中的網(wǎng)絡(luò)

    【KVM虛擬化】· KVM中的網(wǎng)絡(luò)

    ? 目錄 ??虛擬機(jī)的網(wǎng)絡(luò)模式 ??網(wǎng)絡(luò)配置文件 ??virsh查看命令 ??基于NAT的虛擬網(wǎng)絡(luò) ??基于網(wǎng)橋的虛擬網(wǎng)絡(luò) ??基于隔離的虛擬網(wǎng)絡(luò) ??????博客主頁:大蝦好吃嗎的博客 ? ? ??專欄地址:KVM虛擬化專欄 基于NAT(Network Address Translation)的虛擬網(wǎng)絡(luò) 基于網(wǎng)橋(Bridge)的虛擬

    2024年02月06日
    瀏覽(20)
  • 01 openEuler虛擬化-KVM虛擬化簡介

    01 openEuler虛擬化-KVM虛擬化簡介

    1.1 簡介 在計(jì)算機(jī)技術(shù)中,虛擬化是一種資源管理技術(shù),它將計(jì)算機(jī)的各種實(shí)體資源(處理器、內(nèi)存、磁盤、網(wǎng)絡(luò)適配器等)予以抽象、轉(zhuǎn)換后呈現(xiàn),并可分割、組合為一個(gè)或多個(gè)計(jì)算機(jī)配置環(huán)境。這種資源管理技術(shù)打破了實(shí)體結(jié)構(gòu)不可分割的障礙,使這些資源在虛擬化后不

    2023年04月26日
    瀏覽(25)
  • kvm虛擬化

    kvm虛擬化

    虛擬化是云計(jì)算的基礎(chǔ)。簡單的說,虛擬化使得在一臺(tái)物理的服務(wù)器上可以跑多臺(tái)虛擬機(jī),虛擬機(jī)共享物理機(jī)的 CPU、內(nèi)存、IO 硬件資源,但邏輯上虛擬機(jī)之間是相互隔離的。 物理機(jī)我們一般稱為宿主機(jī)(Host),宿主機(jī)上面的虛擬機(jī)稱為客戶機(jī)(Guest)。 那么 Host 是如何將自

    2024年01月17日
    瀏覽(28)
  • KVM虛擬化解決方案系列之KVM架構(gòu)篇

    KVM虛擬化解決方案系列之KVM架構(gòu)篇

    虛擬化是云計(jì)算的基礎(chǔ),在有虛擬化之前,一個(gè)物理主機(jī)上只能安裝一個(gè)操作系統(tǒng)和運(yùn)行一個(gè)核心業(yè)務(wù)程序。在有了虛擬化之后,一個(gè)物理主機(jī)上可以運(yùn)行多臺(tái)虛擬機(jī),虛擬機(jī)上可以安裝不同的操作系統(tǒng)和運(yùn)行不同的核心業(yè)務(wù)程序,虛擬機(jī)共享物理主機(jī)的CPU、內(nèi)存、I/O硬件資

    2024年02月09日
    瀏覽(18)
  • kvm網(wǎng)絡(luò)虛擬化介紹

    kvm網(wǎng)絡(luò)虛擬化介紹

    在QEMU中,主要給出了客戶機(jī)提供了4種不同的網(wǎng)絡(luò)配置方案: 1、基于網(wǎng)橋(Bridge)的虛擬化網(wǎng)卡模式 2、基于NAT的虛擬網(wǎng)絡(luò)模式 3、QEMU內(nèi)置的用戶網(wǎng)絡(luò)模式 4、直接分配網(wǎng)絡(luò)設(shè)置模式 網(wǎng)橋和NAT是基于linux-bridge實(shí)現(xiàn)的軟件虛擬網(wǎng)絡(luò)模式,QEMU是QEMU軟件虛擬的網(wǎng)絡(luò)模式,第四種網(wǎng)絡(luò)模

    2024年02月14日
    瀏覽(19)
  • 【KVM虛擬化環(huán)境部署】

    【KVM虛擬化環(huán)境部署】

    1、裝系統(tǒng)時(shí)手動(dòng)選擇安裝 2、CentOS 7 最小化安裝 安裝好CentOS 7后,去設(shè)置里面點(diǎn)擊處理器,將右邊虛擬化引擎勾上 添加一塊硬盤 分區(qū)并格式化 創(chuàng)建虛擬機(jī),本例使用iso鏡像 選擇鏡像路徑

    2024年02月12日
    瀏覽(28)
  • 什么是KVM虛擬化

    維基百科關(guān)于虛擬化的定義是:“In computing,virtualization refers to the act of creating a virtual(rather than actual)version of something,including virtual computer hardware platforms,storage devices,and computer network resources?!保ㄔ谟?jì)算機(jī)領(lǐng)域,虛擬化指 創(chuàng)建某事物的虛擬(而非實(shí)際)版本,包括虛擬的

    2023年04月08日
    瀏覽(20)
  • VirtualBox 部署 KVM 虛擬化

    VirtualBox 部署 KVM 虛擬化

    KVM(Kernel-based Virtual Machine)是一種開源的虛擬化技術(shù),它是Linux內(nèi)核的一部分。KVM通過將Linux內(nèi)核轉(zhuǎn)換為Hypervisor,允許在同一物理主機(jī)上運(yùn)行多個(gè)虛擬機(jī)實(shí)例,每個(gè)實(shí)例可以獨(dú)享一部分系統(tǒng)資源。 KVM的工作原理是將Linux內(nèi)核擴(kuò)展為虛擬化管理程序,它直接在硬件上運(yùn)行,并提

    2024年02月11日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包