web-dev-qa-db-fra.com

Qu'est-ce que LXC et comment s'y prendre?

J'apprécierai si quelqu'un pouvait me présenter LXC et me dire comment utiliser cette technologie? Dans quels cas est-il judicieux d'utiliser et dans quels cas devrais-je rester à l'écart?

37
dhojgaard

_________________________________________________ L X C _________________________________________________________

                           Linux Containers ( Ubuntu )

Vue d'ensemble

Les conteneurs Linux (LXC) sont une technologie de virtualisation légère et fournissent un système de virtualisation de logiciel gratuit pour les ordinateurs fonctionnant sous GNU/Linux. Cette opération est réalisée grâce à l'isolation au niveau du noyau. Elle permet d'exécuter plusieurs unités virtuelles (conteneurs) simultanément sur le même hôte.

Un conteneur est un moyen d'isoler un groupe de processus des autres sur un système Linux en cours d'exécution. En utilisant des fonctionnalités existantes telles que les nouvelles fonctionnalités de gestion des ressources et d’isolation des ressources du noyau Linux (Cgroups et espaces de noms), ces processus peuvent disposer de leur propre vue privée sur le système d’exploitation, avec son propre espace PID (ID de processus), sa structure de système de fichiers et ses fonctions. Interfaces réseau.

Les conteneurs partagent le même noyau avec tout ce qui s’exécute, mais peuvent être contraints d’utiliser uniquement une quantité définie de ressources telles que le processeur, la mémoire ou les E/S. En combinant des conteneurs avec d'autres fonctionnalités telles que le système de fichiers Btrfs, il sera possible de configurer rapidement plusieurs instances Linux isolées et légères sur un même hôte. Par conséquent, les conteneurs sont mieux comparés aux zones Solaris ou aux jails BSD.

enter image description here

Installation

Rendre LXC plus facile

Un des objectifs principaux d’Ubuntu LTS était de rendre LXC mort facile à utiliser pour y parvenir. Créer un conteneur de base et le démarrer sur Ubuntu

 Sudo apt-get install lxc
 Sudo lxc-create -t ubuntu -n my-container
 Sudo lxc-start -n my-container

S'identifier

Sudo lxc-console -n my-container -t 1

Ceci utilisera par défaut la même version et la même architecture que votre ordinateur. Des options supplémentaires sont évidemment disponibles (l'aide les listera). Le nom d'utilisateur/mot de passe est ubuntu/ubuntu.

Pour la configuration détaillée de l'hôte


Pour en savoir plus sur LXC

Debian

Oracle

sourceforge


Panneau Web LXC

Pour les débutants, je recommanderais d'utiliser LXC Webpanel. Le bon côté est que si vous créez un conteneur en mode CLI, il apparaîtra dans le panneau Web LXC.

  Sudo apt-get install lxc debootstrap bridge-utils -y
  Sudo su
  wget https://lxc-webpanel.github.com/tools/install.sh -O - | bash

Ouvrir le navigateur Web et se connecter

                       http://your_ip_address:5000/
                Login with user admin and password admin

Vue d'ensemble

enter image description here

Vue d'ensemble des conteneurs

enter image description here

Réseau LXC

enter image description here

Paramètres du conteneur

enter image description here

Limitation des ressources

enter image description here

Modification de l'utilisateur (Créer, Supprimer, Modifier)

enter image description here

enter image description here

53
Qasim

LXC

LXC, qui est une manière abrégée de dire LinuX Containers est une méthode de virtualisation au niveau du système d'exploitation permettant d'exécuter plusieurs systèmes Linux isolés appelés conteneurs sur un seul hôte de contrôle. Etant donné que LXC fournit une virtualisation au niveau du système d'exploitation, il ne s'agit pas d'un ordinateur virtuel complet, mais d'un environnement virtuel disposant de son propre processus et de son propre espace réseau.

LXC s’appuie sur les groupes de contrôle du noyau Linux ( Groupes de contrôle ) développés dans le cadre de LXC, ce qui permet de limiter, compte et isoler l'utilisation des ressources (CPU, mémoire, E/S disque, etc.) des groupes de processus. Il s'appuie également sur d'autres types de fonctionnalités d'isolation d'espaces de noms, qui ont été développées et intégrées dans le noyau Linux principal.

Dans Ubuntu, vous pouvez trouver des outils tels que Juj qui sont utilisés avec LXC. Vous pouvez même trouver plusieurs tutoriels:

Pour utiliser LXC et ses avantages, je vous recommande de lire le Guide Ubuntu pour Juj

Site officiel - https://linuxcontainers.org/

Les listes de diffusion sont hébergées ici

11
Luis Alvarado

Je pense qu'une meilleure question est ce que vous voulez faire avec LXC?

Je commencerais par la documentation de la communauté et poserais des questions spécifiques sur des choses spécifiques que vous ne comprenez pas.

https://help.ubuntu.com/12.04/serverguide/lxc.html

https://help.ubuntu.com/community/LXC

LXC peut être utilisé pour isoler des services ou d'autres processus de l'hôte bien que l'isolation ne soit pas toujours parfaite.

LXC est, IMO, en développement rapide et cela peut aider si vous vous abonnez à la liste de diffusion.

http://lxc.sourceforge.net/index.php/about/lxc-development/

Distrowatch a également fait un bilan de Nice la semaine dernière

http://distrowatch.com/weekly.php?issue=20130429#qa

2
Panther