113 lines
3.0 KiB
Markdown
113 lines
3.0 KiB
Markdown
# Xen DomU 配置与使用
|
||
|
||
在 [Xen 安装与配置](Xen_安装与配置.md) 完成了 Xen 虚拟机的安装,以及 Dom0 的配置。接下来我们对 DomU 进行配置。Xen DomU 可工作在 PV(paravirtualized) 和 HVM(hardware virtualized) 两种模式下。HVM 需要硬件虚拟化支持,PV 不需要硬件虚拟化支持,但是需要修改 Guest 系统。
|
||
|
||
在 Linux 系统中可通过:
|
||
|
||
```bash
|
||
grep -E "(vmx|svm)" --color=always /proc/cpuinfo
|
||
```
|
||
|
||
命令检查系统是否支持 HVM 模式。
|
||
|
||
## 配置网络
|
||
|
||
本步骤不是必须的。但要进行虚拟机间网络通讯的话,就要对网络进行基本配置:
|
||
|
||
```bash
|
||
brctl addbr xenbr0
|
||
brctl addif xenbr0 eth0
|
||
```
|
||
|
||
注意要将 eth0 替换成实际的网卡名。
|
||
|
||
## 开启 Xen 服务
|
||
|
||
必须在 Dom0 中开启以下服务才能启动 DomU:
|
||
|
||
```bash
|
||
systemctl start xenstored
|
||
systemctl enable xenstored
|
||
systemctl start xenconsoled
|
||
systemctl enable xenconsoled
|
||
systemctl start xendomains
|
||
systemctl enable xendomains
|
||
systemctl start xen-init-dom0
|
||
systemctl enable xen-init-dom0
|
||
```
|
||
|
||
## 管理 DomU
|
||
|
||
Xen 通过以下命令对 DomU 进行管理
|
||
|
||
```bash
|
||
# 创建 domU
|
||
xl create <domU config file>
|
||
# 查看各虚拟机使用的资源情况
|
||
xl top
|
||
# 查看虚拟机列表
|
||
xl list
|
||
# 切换到 domU 的命令行
|
||
xl console <domU name>
|
||
# 关闭 domU
|
||
xl shutdown <domU name>
|
||
# 销毁 domU 的虚拟机
|
||
xl destroy <domU name>
|
||
```
|
||
|
||
Xen 通过 xl create 命令创建虚拟机。该命令需要输入一个 domU 配置文件,下文用于介绍如何创建 domU 配置文件。
|
||
|
||
## 基本的 domU 配置文件
|
||
|
||
Xen 支持将磁盘文件、物理磁盘和物理分区、ISO镜像文件等挂载为磁盘设备。通过以下命令可以创建一个 10G 的磁盘文件
|
||
|
||
```bash
|
||
truncate -s 10G domU.img
|
||
```
|
||
|
||
以下是一个使用不同类别磁盘创建虚拟机的基本配置参考:
|
||
|
||
```ini
|
||
name = "domU"
|
||
vcpus = 2
|
||
memory = 512
|
||
disk = [ "file:/path/to/domU.img,xvda,w", file:/path/to/ISO,sdc,r", "phy:/path/to/partition,sdb1,w" ]
|
||
vif = [ 'mac=00:16:3e:XX:XX:XX,bridge=xenbr0' ]
|
||
```
|
||
|
||
vcpus 用于指定虚拟 cpu 数量;name 用于指定 domU 名称;vif 用于指定网络界面,如果前面没有配置网络,就不要配置 vif。
|
||
|
||
## HVM domU 配置文件
|
||
|
||
HVM 模式通过 builder = 'hvm' 参数进行指定。通过 VNC 连接虚拟机的显示器。
|
||
|
||
```ini
|
||
name = 'HVM_domU'
|
||
builder = 'hvm'
|
||
memory = 512
|
||
vcpus = 2
|
||
disk = [ 'phy:/dev/vg0/hvm_arch,xvda,w', 'file:/path/to/ISO,hdc:cdrom,r' ]
|
||
vif = [ 'mac=00:16:3e:00:00:00,bridge=xenbr0' ]
|
||
vnc = 1
|
||
vnclisten = '0.0.0.0'
|
||
vncdisplay = 1
|
||
```
|
||
|
||
以上配置,使用 vncviewer 连接到 Dom0:1(默认是 5901 端口),可获得 DomU 的显示。
|
||
|
||
## PV domU 配置文件
|
||
|
||
PV 模式必须指定 kernel,参考配置如下:
|
||
|
||
```ini
|
||
name = "PV_domU"
|
||
kernel = "/mnt/arch/boot/x86_64/vmlinuz"
|
||
ramdisk = "/mnt/arch/boot/x86_64/archiso.img"
|
||
extra = "archisobasedir=arch archisolabel=ARCH_201301"
|
||
memory = 512
|
||
disk = [ "phy:/path/to/partition,sda1,w", "file:/path/to/ISO,sdb,r" ]
|
||
vif = [ 'mac=00:16:3e:XX:XX:XX,bridge=xenbr0' ]
|
||
```
|
||
|
||
extra 用于指定 kernel 参数。
|