在 OpenNebula 上创建 CentOS|Ubuntu|Debian VM 模板 |
如何在 OpenNebula 中创建 Ubuntu/CentOS/Debian 和任何其他 Linux 发行版 VM 模板?在 OpenNebula 中,如果没有定义的 VM 模板,则无法创建虚拟机。 VM 模板池允许 OpenNebula 管理员和用户在系统中注册虚拟机定义,以便稍后实例化为虚拟机实例。
VM模板可以多次实例化,也可以与OpenNebula云平台中的其他用户共享。模板存储在系统中,可以轻松浏览并从中实例化虚拟机。我们将展示一个在 OpenNebula 上定义 VM 模板的示例,相同的过程可以应用于任何其他模板。
在继续之前,OpenNebula 需要操作系统映像,请参阅下面的指南了解操作方法:
- 在 OpenNebula 上导入 CentOS Qcow2 镜像
在 OpenNebula 上创建 VM 模板
在 OpenNebula 系统上创建的虚拟机将包括:
- 内存和CPU容量
- 连接到一个或多个虚拟网络的一组 NIC
- 一组磁盘映像
- 可选属性,如 VNC 图形、启动顺序、上下文信息等。
第 1 步:开始创建 VM 模板
登录 OpenNebula Sunstone Web 控制台并导航至“模板”>“虚拟机”
点击“+”按钮并选择“创建”
步骤2:填写创建模板所需信息
在“常规”部分下输入:
- 模板名称
- 模板说明
- 选择虚拟机管理程序
- 模板徽标
- 内存和CPU详细信息
在“存储”部分下输入:
- 选择之前添加的VM镜像
在“网络”部分下输入:
- VM 模板的默认网络
- 适用于您的模板的任何其他网络选项
在“操作系统和CPU”下设置您要使用的选项。
- 开机
- 核心
- 内存盘
- 特征
- CPU型号
我添加了以下两个选项,用于禁用 IPv6 并更改网络接口的命名:
net.ifnames=0 ipv6.disable=1
请参阅下面的屏幕截图。
在“输入/输出”下,您可以设置图形和 PCI 选项
可以在“上下文”>“配置”部分下添加默认的 SSH 密钥。机器启动时要执行的脚本文本也是如此。
您可以在“计划”和“混合”部分中使用其他设置。完成后点击“创建”按钮。
该模板应出现在可用 OpenNebula VM 模板列表中。
单击名称会显示有关该模板的更多信息:
步骤 3:通过从模板创建 VM 进行测试
我们可以通过配置 VM 实例来测试我们的模板。这是通过“实例”>“虚拟机”>“+” >“创建 “
选择用于创建 VM 的 VM 模板。
为虚拟机指定名称、要创建的实例数,并根据需要自定义资源分配。
以及您想要设置的所有其他参数。
一旦您选择“创建”,虚拟机将处于待处理状态。
一旦准备好使用,它将处于“RUNNING”状态。
您可以通过单击实例名称来获取虚拟机详细信息,例如 IP 地址。
通过 ping IP 地址测试连接:
$ ping -c 1 172.20.20.100
PING 172.20.20.100 (172.20.20.100) 56(84) bytes of data.
64 bytes from 172.20.20.100: icmp_seq=1 ttl=64 time=0.611 ms
--- 172.20.20.100 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.611/0.611/0.611/0.000 ms
对 SSH 执行相同操作
$ ssh [email
The authenticity of host '172.20.20.100 (172.20.20.100)' can't be established.
ECDSA key fingerprint is SHA256:/k4pJX5pZiQHPMgnkPLAjtwqbBmNbuY6QP+5BiTEmHA.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '172.20.20.100' (ECDSA) to the list of known hosts.
Enter passphrase for key '/home/josphat/.ssh/id_rsa':
Activate the web console with: systemctl enable --now cockpit.socket
[centos@ip-172-20-20-100 ~]$
确认接口命名已更改为通过内核参数配置的配置:
$ ip ad
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: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 02:00:ac:14:14:64 brd ff:ff:ff:ff:ff:ff
inet 172.20.20.100/24 brd 172.20.20.255 scope global noprefixroute eth0
valid_lft forever preferred_lft forever
inet6 fe80::acff:fe14:1464/64 scope link
valid_lft forever preferred_lft forever
我们已确认已从模板成功创建虚拟机。我们还能够通过 ssh 进入该实例。
参考:
- OpenNebula 模板指南
- 在 OpenNebula VM 中创建和使用桥接网络
OpenNebula 的其他指南:
- 如何将 NFS 文件系统配置为 OpenNebula 数据存储