Tout en recherchant et en apprenant davantage sur les conteneurs, Docker semble disposer d’une excellente documentation et d’exemples de cas d’utilisation avec des guides étape par étape. D'autre part, LXD n'a qu'un simple guide de prise en main. Quelles sources auraient une bonne documentation sur LXD sur laquelle je pourrais me pencher?
La meilleure chose que je puisse trouver maintenant pour apprendre et acquérir de l'expérience avec LXD est d'utiliser la démonstration en ligne.
https://linuxcontainers.org/lxd/try-it/
La démonstration vous guide lors de la création, de la suppression et de la suppression d'un conteneur LXD. Vous pouvez également simplement installer LXD et l’exécuter localement, mais ils ont un nuage VM que vous pouvez utiliser directement à partir du site.
Autre que cela, creuser dans les pages de manuel et utiliser --help affichera des informations supplémentaires.
Peut-être qu'une fois que LXD sera développé et adopté plus largement, nous verrons une documentation riche publiée.
Les articles de blog sont sympas, instructifs et bons à lire pour commencer, mais ils ne constituent pas une bonne documentation une fois que vous avez commencé. Si vous êtes comme moi, vous constaterez peut-être assez la différence entre Docker et LXC/LXD après avoir lu seulement quelques articles de blog couramment trouvés à ce sujet. Mais la différence entre l'ancien projet LXC et le nouveau projet LXD n'était pas tout est clair pour moi, et la plupart des pages que j'ai trouvées ne font pas un bon travail en l'expliquant d'une manière que je puisse comprendre. La plupart du temps, ils essaient de dissiper la confusion entre un conteneur d'application (Docker) et un conteneur de système d'exploitation (LXC/LXD). Ensuite, j'ai trouvé cet article de blog: Où se situe lxd
Comme vous le savez peut-être maintenant, tous ces outils (Docker/LXC/LXD) utilisent des fonctionnalités communes du noyau telles que les espaces de noms et les groupes de contrôle, il s’agit simplement de savoir comment l’espace utilisateur décide de les utiliser. Un résumé du post ci-dessus s'est concentré sur l'évolution de LXC par rapport à LXD, basé sur ma compréhension:
Si quelqu'un (comme un responsable) voit quelques erreurs ci-dessus, n'hésitez pas à corriger ma réponse. :)
De même, si vous envisagez _libvirt-lxc
_ (par exemple, si vous utilisez déjà libvirt
avec KVM):
libvirt-lxc
_ a lxc
dans le nom, , il n’utilise pas réellement lxc
mais utilise directement le caractéristiques du noyau. Donc, ne confondez pas ce pilote libvirt
avec lxc
malgré la confusion des noms. Référence: http://libvirt.org/drvlxc.html (Notez que je pense que proxmox utilise utilise lxc
convenable, mais pas les plus récents lxd
outils).libvirt
avec des conteneurs est un piètre ajustement et que, bien que quelqu'un puisse éventuellement écrire un _libvirt-lxd
_, il le pense également. En résumé: libvirt
est conçu pour gérer les ordinateurs virtuels et les conteneurs ne sont pas des ordinateurs virtuels. Ainsi, les choses se compliquent et vous ne prenez en charge qu'un dénominateur commun de fonctionnalités. Référence: https://lists.linuxcontainers.org/pipermail/lxc-devel/2014-November/010820.htmllibvirt-lxc
_. Par exemple, vous devez lui donner un chemin d'accès à un rootfs EXISTANT pour un nouveau conteneur que vous souhaitez créer, et _libvirt-lxc
_ ne prend pas en charge le développement de ce dernier. Vous devez donc utiliser des outils externes tels que _lxc-create
_ pour créer un nouveau conteneur à partir d'un modèle, puis créer un nouveau conteneur _libvirt-lxc
_ en utilisant le répertoire existant que vous venez de créer, ce qui me laisse poser la question suivante: " pourquoi se mêler de _libvirt-lxc
_ au lieu d’utiliser lxd
directement? "Pour revenir à votre question, j'ai essayé de rassembler toute la documentation de référence sur LXD que j'ai pu trouver. Il y a une bonne documentation ici:
https://github.com/lxc/lxd/tree/master/doc
En particulier:
configuration.md
possède une liste de références Nice des options de configuration possibles.imagehandling.md
explique comment les images du système d'exploitation sont mises en cache localement.lxd-ssl-authentication.md
discute de l'API REST et de la façon dont elle est exposée à la fois sur un socket UNIX local et éventuellement sur HTTPS et sur la manière dont cela est sécurisé.storage-backends.md
explique les limites et la configuration de chaque système de stockage.userns-idmap.md
Par défaut, lxd utilise des conteneurs sans privilège, ce qui signifie que le conteneur UID/GID doit être mappé sur un hôte UID/GID. cela discute cela.Les liens ci-dessus proviennent de la branche principale de lxd
en amont. Vous pouvez donc consulter le répertoire doc
pour connaître les sources du paquet que vous avez réellement installé. Ainsi, vous n'utiliserez pas accidentellement une nouvelle fonctionnalité Je n'ai pas encore installé.
Il n'y a pas vraiment beaucoup de pages de manuel, mais voici ce que j'ai trouvé inclus dans les packages lxd
et _lxd-client
_:
LXC(1)
- programme client permettant de communiquer avec le démon du serveur. Actuellement (14/05/2016) plutôt inutile et peu informatif. Espérons qu'à l'avenir, une série de pages de manuel puisse être créée pour cet outil, un peu comme la page de manuel btrfs
.LXD(1)
- ligne de commande du démon de serveur.Bien sûr, il y a aussi la page du guide du serveur: https://help.ubuntu.com/lts/serverguide/lxd.html
Enfin, rappelez-vous que lxd est basé sur la bibliothèque lxc (mais pas sur les anciens outils de ligne de commande lxc). Cela signifie que la configuration de lxc peut toujours être effectuée directement, par exemple. en utilisant l'option de configuration _raw.lxc
_ dans lxd. Par conséquent, il est utile de faire référence à la configuration LXC sous-jacente, mais rappelez-vous que cela devrait être évité si possible pour éviter un conflit avec LXD (par exemple, si vous définissez le même élément de configuration dans LXD et LXC). Vous pouvez creuser dans les pages de manuel pour les trouver si nécessaire: https://linuxcontainers.org/lxc/manpages/
Stéphane Graber, le responsable technique de LXD chez Canonical Ltd, a également publié une série d'articles sur son blog:
https://www.stgraber.org/2016/03/11/lxd-2-0-blog-post-series-012/
et ici:
http://insights.ubuntu.com/2016/03/14/the-lxd-2-0-story-prologue/