上个月 LXD开发团队发布了最新的版本 LXD 4.7,LXD是一个系统级的容器,是对 LXC的基础打包和升级。和应用级别容器Docker类似,相比较LXD功能更全,包含完整的操作系统,可以当虚拟机使用的容器。
LXD 4.7本次更新包括OVN虚拟网络功能,改进USB和实时内存更新更、备份功能以及其他多项目的改进。
LXD 4.7新功能和亮点
备份(导出/导入)定制存储卷
新添加自己定义卷备份API功能,该功能可使用lxc storage volume export和lxc storage volume import管理。
lxc storage volume create default foo
Storage volume foo created
lxc storage volume export default foo
Backup exported successfully!
lxc storage volume delete default foo
Storage volume foo deleted
lxc storage volume import default backup.tar.gz
lxc storage volume list default
导入具有备用名称的实例
新版本中支持用其他名称来导入备份的实例,操作如下:
先备份a1容器
lxc init images:alpine/edge a1
Creating a1
lxc export a1
Backup exported successfully!
用备份包导入一个a2容器:
lxc import backup.tar.gz a2
导入后的容器列表
lxc list a
容器内存缩放
现在可以控制缩放虚拟机设备,暂时缩小内存,然后在将其增大到原先的内容大小(增加内存需要重新启动)。
一个2G内存的ubuntu-desktop容器:
lxc config show ubuntu-desktop | grep memory
limits.memory: 2GiB
free -m显示实例系统的内容使用情况:
lxc exec ubuntu-desktop -- free -m
total used free shared buff/cache available
Mem: 1983 437 822 7 722 1386
Swap: 448 0 448
缩放内存为1.5G
lxc config set ubuntu-desktop limits.memory 1500MiB
缩放后的实例系统内存使用情况:
lxc exec ubuntu-desktop -- free -m
total used free shared buff/cache available
Mem: 1435 436 276 7 722 840
Swap: 448 0 448
再把内存改回2G:
lxc config set ubuntu-desktop limits.memory 2GiB
最后实例系统内存使用情况:
lxc exec ubuntu-desktop -- free -m
total used free shared buff/cache available
Mem: 1983 437 822 7 722 1387
Swap: 448 0 448
虚拟机的USB设备直连
usb虚拟机现在支持该设备类型。它的工作方式与容器完全相同,只不过需要重新启动才能添加新设备。此外,三个虚拟端口还连接到LXD VM,可用于通过LXD VM lxc console --type=vga进行USB设备的远程重定向。
迁移时候启用rsync压缩
在存储池增加一个配置rsync.compression,可以配置布尔类型True或者False,用来设定迁移时候是否启用压缩。
对于网络足够快而不是瓶颈的情况,使用压缩可能会导致CPU占用较大的情况,这时可以通过在迁移操作期间禁用rsync压缩来提高性能。
限制项目网络的可用上行带宽
对启用了网络(OVN)功能的LXD项目时,新版本中支持限制虚拟网络可以使用哪些上行链路网络带宽。如果只有一个上行链路网络可用,LXD会自动使用它,而无需用户指定。
限制通过设置restricted.networks.uplinks键来配置。
添加新的物理托管网络类型
physical新版中支持新的网络类型,目前可以使用OVN网络的上行链路。其配置包括一组可用的IP地址,供OVN网络以及网关和DNS服务器使用。
lxc network create external parent=eth0 ipv4.gateway=172.17.0.1/24 ipv4.ovn.ranges=172.17.0.100-172.17.0.150 dns.nameservers=1.1.1.1 --type=physical
Network external created
lxc network list
支持OVN上的外部路由地址/子网
新的配置项ipv4.routes.external,ipv6.routes.external可用于将外部IP地址或子网路由到OVN网络上运行的实例。
这些配置项目可以与restricted.networks.subnets项目配置中的配置项一起使用,首先将一组外部IPv4 / IPv6子网委派给特定项目,然后在该项目中将这些地址路由到实例。
LXD 4.7 安装部署
发行包可以在我们的官方下载页上找到,可以使用包管理器用二进制版本安装:
Linux:
snap install lxd
MacOS:
brew install lxc
Windows:
choco install lxc
转载请注明链接地址:荐爱小站 » LXD 4.7 类似docker 但更强大的应用容器引擎