Я получаю следующую ошибку, когда я пытаюсь развернуть сервис на вручную настроенную машину с помощью амулета:
juju deploy juju-gui --show-log
2014-05-20 13:42:31 INFO juju.cmd supercommand.go:302 running juju-1.18.3-unknown-amd64 [gc]
2014-05-20 13:42:31 INFO juju api.go:242 connecting to API addresses [j93716.servers.jiffybox.net:17070]
2014-05-20 13:42:31 INFO juju apiclient.go:114 state/api: dialing "wss://xxx.xxx.net:17070/"
2014-05-20 13:42:31 INFO juju apiclient.go:124 state/api: connection established
Added charm "cs:trusty/juju-gui-2" to the environment.
2014-05-20 13:42:46 ERROR juju.cmd supercommand.go:305 cannot assign unit "juju-gui/0" to machine: cannot assign unit "juju-gui/0" to new machine or container: cannot assign unit "juju-gui/0" to new machine: use "juju add-machine ssh:[user@]<host>" to provision machines
состояние амулета производит следующее:
environment: manual
machines:
"0":
agent-state: started
agent-version: 1.18.3
dns-name: xxx.xxx.xxx.xxx
instance-id: 'manual:'
series: precise
hardware: arch=amd64 cpu-cores=1 mem=1996M
"1":
agent-state: started
agent-version: 1.18.3
dns-name: xxx.xxx.xxx.yyy
instance-id: manual:xxx.xxx.xxx.net
series: precise
hardware: arch=amd64 cpu-cores=1 mem=1996M
services:
juju-gui:
charm: cs:trusty/juju-gui-2
exposed: true
units:
juju-gui/0:
agent-state: pending
Я пропускал что-то?
Судя выводом состояния амулета, Вы загрузили ручную среду (использующий juju bootstrap
, который отличается от настройки руководства, сделанного использования juju add-machine ssh:[user@]host
).
Ручные среды являются особенными - они состоят только из единственной машины, и она не может запустить или остановить дополнительные машины автоматически , включая на juju deploy
. Для добавления другой машины используйте juju add-machine ssh:[user@]host
первый, тогда juju deploy juju-gui --to #
, где # является идентификатором машины амулета машины, Вы только что добавили (работайте juju status
для наблюдения его). Можно также использовать juju deploy juju-gui --to 0
для развертывания GUI Амулета на машине начальной загрузки.
juju add-machine ssh:[user@]host
может использоваться в любой загруженной среде, чтобы вручную настроить внешнюю машину и добавить его к среде. Но с вручную загруженной средой, это - единственный способ добавить машины, и необходимо определить размещение для сервисов и единиц при развертывании, с --to <machine-id>
явно.
я надеюсь, что это разрешает любой беспорядок. Нам определенно нужна лучшая документация относительно этого, я предполагаю.