什么是LXD?
想象一下,你可以在不到一秒钟的时间内启动一台新机器,而且你可以在一台服务器上启动数百台。现在,想象一下硬件保证的安全性,以确保这些机器不会互相监视。想象一下,您可以将它们分别安全地连接到网络。想象一下,您可以在单个节点或一百万个节点之间的实时迁移机器上运行它,并通过一个干净、可扩展的REST API与所有机器对话。
通过将容器的速度和密度与传统虚拟机的安全性相结合,Canonical的LXD是Linux的下一代容器管理程序。
Ubuntu是最流行的容器工程平台,包括Docker和LXC。我们热衷于让这种创新走得更远更快。
开发人员喜欢LXC,因为它为他们提供了一个几乎即时的、完整的系统容器,他们可以在其中运行各种Linux操作环境。
他们可以在所有想要创建和拆除这些环境的机器上运行LXD,使用LXC从网络上的任何地方驱动进程。
对比Docker,只需要确定一点Docker是应用程序级别的容器,而LXD是系统基本的容器。
Docker是一种令人惊叹的应用程序交付机制,它可能会永远改变devops的世界。
在Ubuntu上运行的Docker容器是其他操作系统的七倍。对于将二进制文件交付到平台执行的最有效方式,Docker是我们的舞蹈。
LXD和Docker共享一些底层内核功能,我们的目标是将LXD的许多令人敬畏的安全性和隔离性也带到Docker中。
使用Ubuntu 16.04 LTS,您可以在LXD容器中运行Docker容器。
在Ubuntu上安装
$ sudo apt-get install lxd
LXD容器网络和存储配置
输入下面的命令来配置LXD容器的网络和存储:
$ sudo lxd init
LXC 命令
LXC是当前的ubuntu linux 系统 和LXD 服务器通信的主要命令。
LXD在配置的时候会自动创建一个名为”lxd”的用户组,当前用户也会被加到该组里。
$ sudo cat /etc/group|grep lxd
查看当前可用的Linux镜像文件
$ sudo lxc image list images:
这个命令会去linuxcontainers.org 官方查看当前可用的不同Linux发行版本的镜像文件。
LXd 支持的镜像模板查看官方链接:https://uk.images.linuxcontainers.org/
在LXD容器上创建CentOS 7 虚机
输入下面的命令:
$ sudo lxc launch images:centos/7/amd64 centos-vm1
在LXD容器上创建ubuntu 16.04 LTS 版本虚机
输入下面的命令:
$ sudo lxc launch images:ubuntu/xenial/amd64 ubuntu-vm1
在LXD容器上创建DebianLinux 7.x Wheezy虚机
输入下面的命令:
$ sudo lxc launch images:debian/wheezy/amd64 debian-vm1
在LXD容器上创建Fedora 25版本的虚机
输入下面的命令:
$ sudo lxc launch images:fedora/25/amd64 fedora-vm1
在LXD容器上创建Fedora 26版本的虚机
输入下面的命令:
$ sudo lxc launch images:fedora/26/amd64 fedora-vm2
在LXD容器上创建oracle7版本的虚机
输入下面的命令:
$ sudo lxc launch images:oracle/7/amd64 oracle-vm1
在LXD容器上创建OpenSuSe Linux 42.3版本的虚机
输入下面的命令:
$ sudo lxc launch images:opensuse/42.3/amd64 opensuse-vm1
列出当前LXD容器创建的虚机
输入下面的命令:
$ sudo lxc list
命令输出如下:
root@ubuntutest:~# lxc list
+------+-------+------+------+------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+------+-------+------+------+------+-----------+
启动容器里某个虚机
执行下面命令:
$ sudo lxc start 虚机名
$ sudo lxc start centos-vm1
关闭容器里某个虚机
执行下面命令:
$ sudo lxc stop 虚机名
$ sudo lxc stop centos-vm1
重启LXD容器里虚机
命令如下:
$ sudo lxc restart 虚机名
$ sudo lxc restart centos-vm1
删除LXD容器下的虚机
执行下面的命令:
$ sudo lxc delete 虚机名
$ sudo lxc delete centos-vm1
查看LXD容器下虚机的相关信息
如果想查看某个虚机的网络,内存,CPU等使用信息,可以执行下面的命令:
$ sudo lxc info 虚机名
$ sudo lxc info centos-vm1