User Tools

Site Tools


docs:lxc

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
docs:lxc [2014-05-13 18:33]
glen Links to thinfo changed to th
docs:lxc [2015-10-05 11:15]
glen
Line 20: Line 20:
   * 3.8+ kernel [[http://​docs.docker.io/​en/​latest/​installation/​kernel/​|according]] to docker devs   * 3.8+ kernel [[http://​docs.docker.io/​en/​latest/​installation/​kernel/​|according]] to docker devs
   * [[package>​lxc]] package   * [[package>​lxc]] package
-  * cgroups mounted, use [[package>​systemd]] or [[package>​libcgroup]] for that.+  * cgroups mounted, use [[package>​systemd]] or [[package>​libcgroup]] for that (edit and enable most groups in ///​etc/​cgconfig.conf// except debug) 
 + 
 +<note warning>​Kernels with vserver support compiled in, do not work correctly with LXC 
 + 
 +  * [[http://​lists.pld-linux.org/​mailman/​pipermail/​pld-devel-en/​2014-January/​thread.html#​23786]] 
 +  * http://​www.paul.sladen.org/​vserver/​archives/​201402/​0015.html 
 +</​note>​
  
 ===== Guest creation ===== ===== Guest creation =====
Line 33: Line 39:
 '​test'​ created '​test'​ created
  
-# lxc-ls --fancy ​+# lxc-ls --fancy ​           ​(install python3-lxc for lxc-ls) ​
 NAME   ​STATE ​   IPV4           ​IPV6  ​ NAME   ​STATE ​   IPV4           ​IPV6  ​
 ----------------------------------- -----------------------------------
Line 53: Line 59:
 There are two versions of PLD available for guest systems: ​ There are two versions of PLD available for guest systems: ​
  
-  * ac - [[:AcInfo|PLD 2.0 (Ac)]] ​+  * ac - [[:ac|PLD 2.0 (Ac)]] ​
   * th - [[:th|PLD 3.0 (Th)]] ​   * th - [[:th|PLD 3.0 (Th)]] ​
  
Line 65: Line 71:
  
 ===== Common problems / Useful tricks ===== ===== Common problems / Useful tricks =====
 +
 +==== lxc-start has no output ====
 +
 +In case ''​lxc-start -n test''​ produces no output, ensure /​dev/​console is present in guest filesystem.
  
 ==== lxc-stop is not graceful ==== ==== lxc-stop is not graceful ====
Line 121: Line 131:
 | vserver test stop | lxc-stop -n test | | vserver test stop | lxc-stop -n test |
 | vserver-stat | %%lxc-ls --fancy --running%% | you need ''​python3-lxc''​ installed for this tool | | vserver-stat | %%lxc-ls --fancy --running%% | you need ''​python3-lxc''​ installed for this tool |
-===== Sample configs ===== 
  
-==== config for network ==== 
  
-static networking, set ''​VSERVER=yes''​ and ''​VSERVER_ISOLATION_NET=yes''​ in guest ''/​etc/​sysconfig/​system''​ to disable all network configuration by guest.+===== Network configs ===== 
 +==== general ====
  
-  - uses ''​macvlan''​ +static networking, set ''​VSERVER=yes'' ​and ''​VSERVER_ISOLATION_NET=yes''​ in guest ''/​etc/​sysconfig/​system''​ to disable all network configuration by guest, ​set RC_PROMPT=no to avoid hanging startup scripts, ​in general it'​s ​good idea to turn off there most of things
-  - that interface is NOT visible on host  +
-  - you can't filter it from host's firewall +
-  - you HAVE to set mac. If not - on every container start you'll have different one (your router will not pass the traffic). +
-  - iptables is initialized from lxc.hook.pre-mount hook (ran in the container'​s ​namespace and having macvlan interface visible)+
  
 +==== network using macvlan in bridge mode ====
 +  - traffic from host to guest (and vice-versa) is NOT passed. external trafic works
 +  - guest interface is NOT visible on host 
 +  - you can't filter guest straffic ​ from host's firewall
 +  - host can use seme default interface with and without guests running.
 +  - one have better to set static MAC address. If not - on every container start you'll have different MAC generated and your router may have problems with passing ​ traffic.
 +  - iptables is initialized from lxc.hook.pre-mount hook (ran in the container'​s namespace and having guest macvlan interface visible)
  
 first boot with ''​hwaddr''​ line disabled, look what the random address was assigned, set it in config. first boot with ''​hwaddr''​ line disabled, look what the random address was assigned, set it in config.
Line 157: Line 169:
  
  
 +==== network using bridged veth interfaces ​ ====
 +
 +==== More raeding about network ====
 +
 +[[http://​containerops.org/​2013/​11/​19/​lxc-networking/​|Elaborate article about configuring different types of network ]]
 +===== Sample configs =====
 ==== full config ==== ==== full config ====
  
docs/lxc.txt · Last modified: 2016-08-21 00:36 by glen