鉴于lxc容器特别像虚拟机的特点,rackspace,都有把openstack部署到lxc容器里的实践,恰好lxc也有类似教程,打算自己跑一遍,看看是怎样一种体验

how to run a full OpenStack, using LXD containers instead of VMs and running all of this inside a LXD container (nesting!).

阅读全文 »

刚创出来的虚拟机,要如何设置初始密码?如何添加环境变量?如何进行一系列的预置操作?
答案就是cloud-init。
当前正在搞openstack+lxc,也需要在创容器的时候注入一些信息,比如初始密码,开启SSH密码登录,允许root等等,就顺手记录cloud-init一下。

阅读全文 »

docker偏向于应用,LXC偏向于资源,其产品形态更像是一台虚拟机,所以其有个名字叫系统容器/机器容器。
然而,在当前docker大势已成,虚拟机经久不衰的形势下,lxc的优势和劣势都有哪些?

阅读全文 »

分析一下lxc, lxd, nova-lxd的关系以及源码

  • nova-lxd,An OpenStack Compute driver for LXD
  • lxd,lxd daemon和lxd client
  • lxc,liblxc和lxc-tools

关系

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
                              +---------------+
+----------+ | |
| lxc | | nova-lxd |
| lxd-client+---+ +------+ |
+----------+ | | | |
| | +---------------+
| |
| |
+--v------v---------+
| lxd |
| |
|Daemon based on |
|liblxc offering |
|a REST API | +-------------------------+
|to manage containers | |
+--------+----------+ | lxc/lxc |
| | tools to |
| | manage containers |
| | |
+--------v----------+ | |
| | | |
| go-lxc./v2 | +--------+----------------+
| | |
| | |
| | |
+----------+--------+ |
| |
| |
| |
| |
+---------v------------------------------------v---------+
| |
| |
| liblxc.so |
| |
+-------------------------+------------------------------+
|
|
|
+-------------------------v------------------------------+
| |
| |
| kernel |
| namespace, cgroups |
| |
| |
| |
+--------------------------------------------------------+
阅读全文 »