Question Machines et unités JuJu


Je veux poser des questions sur les principales différences entre les machines de juju et les unités de juju.

De plus, la relation entre un charme et une machine (LXD ou une VM entière) est un à un, rig?

Il n'y a pas de possibilité de nidification de LXD (et donc de charmes de nidification), non?

Merci


0
2018-01-20 17:45


origine




Réponses:


1) machines de juju vs unités de juju

  • Les machines juju font référence aux machines réelles de votre environnement cloud. Quelques exemples:
    • Lorsque vous utilisez AWS et que vous ajoutez une machine juju à votre modèle, vous verrez dans le tableau de bord AWS qu'une nouvelle machine est créée dans votre cloud. Cela compte également pour Google Cloud Environment.
    • Lorsque vous avez une configuration Maas qui prend en charge les conteneurs LXD, vous verrez dans votre juju status que vous avez des machines comme la machine 1, 2, 3 etc. et des conteneurs de ce modèle comme 1 / lxd / 0, 1 / lxd / 2 etc ... Ces machines sont des machines fonctionnant dans votre configuration Maas et ces conteneurs sont en cours d'exécution sur ces machines. C'est ce que sont ces machines de juju.
  • Les unités Juju sont des instances d'un service exécuté sur ces machines ou conteneurs. Lorsque vous déployez un charme comme mysql sur une machine, une nouvelle unité de cette application sera ajoutée dans votre modèle et sera déployée et exécutée sur la machine spécifiée.

2) relation charme - machine

  • Je n'appellerais pas vraiment cela une relation puisque la machine n'est pas vraiment liée à ce charme. La machine est créée et les services s'exécutent sur cette machine en déployant des charmes. Il est possible que plusieurs charmes puissent être déployés sur une machine. Cela arrive tout le temps avec des charmes subordonnés. Donc, si vous voulez regarder de manière relationnelle, c'est un n:1 relation (où n sont les charmes)

3) LXD imbriqué

  • Si vous utilisez un environnement juju dans lequel vous utilisez des conteneurs LXD, il est impossible par défaut d'imbriquer des conteneurs. La meilleure façon d’expérimenter cela est de lancer un contrôleur LXD local et d’essayer de déployer des charmes sur un conteneur LXD de votre modèle en utilisant le --to lxd:1 drapeau. Il semble y avoir une option dans LXD pour le configurer afin que l’imbrication soit possible dans les conatiners LXD. Il y a des informations sur ce sujet ici.

2
2018-01-21 15:54



Merci encore, juste un commentaire. J'utilise des machines LXD Juju sur mon PC pour déployer des charmes et pour mon exemple, après le statut juju: mysql / 0 * et wordpress / 0 *. Quelle est la signification de "star"? Et pourquoi est-ce que je vois "0 *" pour les deux unités? (en statut juju, j'ai 2 machines et je m'attendais à voir mysql / 0 * et wordpress / 1) - Damiano Manicone
J'ai remarqué que le «*» apparaît lorsque le charme est «en cours d'exécution» et que le charme est donc en cours de maintenance. Pas sûr que ce soit la raison mais c'est ce que j'ai découvert. La raison pour laquelle vous voyez mysql / 0 et wordpress / 0 est parce que c'est la première unité (n ° 0) du charme de mysql dans votre modèle => mysql / 0. Cela compte aussi pour wordpress. Le nombre d'unités n'est augmenté que lorsque le même charme est de nouveau déployé ou qu'une unité de ce charme est ajoutée. Vous ne verrez par exemple jamais mysql / 0 et un autre mysql / 0 dans votre modèle. - SebastienPattyn
J'ai regardé plus loin l'étoile et maintenant, quand mes unités sont actives / prêtes, l'étoile est toujours là. Je pense que l'étoile apparaît lorsque la machine est prête pour le déploiement. - SebastienPattyn


La dernière fois que je travaillais avec Ubuntu MaaS et que j'utilisais Juju, les exemples originaux et la documentation suggéraient que vous aviez besoin de cinq nœuds minimum pour lancer OpenStack, si je me souviens bien. Ce que je voulais faire, c’était de mettre plusieurs services sur un plus grand ordinateur, puis d’utiliser les nombreux ordinateurs plus petits pour obtenir d’autres choses.

Je travaillais à travers cette documentation, pour ce que ça vaut.

J'ai été en mesure de recréer un peu les étapes pour cibler LXC plutôt que d'utiliser le nœud entier pour un seul service.

// Start deploying to node 0 * juju deploy --to lxc:0 mysql Added charm "cs:trusty/mysql-28" to the environment * juju deploy --to lxc:0 rabbitmq-server Added charm "cs:trusty/rabbitmq-server-34" to the environment * juju deploy --config=openstack.cfg --to lxc:0 keystone Added charm "cs:trusty/keystone-28" to the environment * juju deploy --config=openstack.cfg --to lxc:0 nova-cloud-controller Added charm "cs:trusty/nova-cloud-controller-60" to the environment ...

En faisant cela, j'ai été capable de séparer le levage lourd sur un ou deux des plus gros nœuds, puis de laisser le reste pour nova-compute si je me souviens bien.


2
2018-01-20 22:42