Семантика контейнеров, которая используется для развертывания сервисных модулей, не ясна

Если мы посмотрим на состояние среды Juju, то увидим набор машин и сервисов. В рамках услуг мы можем увидеть набор сервисных единиц.

environment: local
machines:
  "0":
    agent-state: started
    agent-version: 1.18.1.1
    dns-name: localhost
    instance-id: localhost
    series: trusty
  "1":
    agent-state: started
    agent-version: 1.18.1.1
    dns-name: 10.0.3.154
    instance-id: atech-local-machine-1
    series: trusty
    hardware: arch=i386

services:
  juju-gui:
    charm: cs:trusty/juju-gui-3
    exposed: true
    units:
      juju-gui/0:
        agent-state: started
        agent-version: 1.18.1.1
        machine: "1"
        open-ports:
        - 80/tcp
        - 443/tcp
        public-address: 10.0.3.154
  mysql:
    charm: cs:precise/mysql-46
    exposed: true
    relations:
      cluster:
      - mysql
    units:
      mysql/0:
        agent-state: pending
        machine: "4"

Но https://jujucharms.com/docs/stable/charms-constraints говорит, что существует ограничение, называемое "контейнер", в котором указывается тип контейнера, внутри которого должен выполняться сервисный модуль. Но в приведенном выше журнале состояния отсутствуют подробные сведения о контейнере.

С другой стороны, в https://jujucharms.com/docs/stable/authors-subordinate-services говорится: "Сервисные блоки обычно запускаются в изолированном контейнере на машине без знания или доступа к другим службам, развернутым на та же машина ".

Означает ли это, что при создании новых сервисных модулей среда выполнения Juju создает новый контейнер на существующей машине и развертывает сервисный модуль? или создать новый контейнер на новом компьютере и развернуть сервисный блок? или использовать один контейнер для развертывания всех сервисных единиц?

1 ответ

Решение

Есть много разных способов, которыми Juju может развернуть юнит на машине, но по умолчанию он развернет юнит на голом железе нового экземпляра. В зависимости от того, как вы указали свою команду развертывания, Juju может развернуть ее:

  • на голый металл машины.
  • в контейнер LXC на машине.
  • в контейнер KVM на машине.
  • и так далее...

В частности, если вы ищете дополнительную информацию о развертывании служб в контейнерах, вам следует ознакомиться с документами здесь: https://jujucharms.com/docs/stable/charms-deploying ищу строки:

juju deploy mysql --to 24/lxc/3
juju deploy mysql --to lxc:25
Другие вопросы по тегам