Ошибка подключения MAAS и Juju после загрузки

Ошибка подключения MAAS и Juju после загрузки

Я работаю с довольно странной проблемой с использованием MAAS и Juju, где после того, как bootstrap, машина "0" была успешно создана, я не могу развернуть ни одну службу, выдавая простой juju deploy mysql. Чтобы дать краткий обзор среды, я запускаю MAAS на Ubuntu Server 13.04 с IP 10.0.0.10 и jujuи juju-coreработают на одном сервере. Все это также выполняется в локализованной тестовой лаборатории. Выдача juju statusпоказывает следующее:

root@maas:~# juju status
2013-04-30 10:24:32,876 INFO Connecting to environment...
2013-04-30 10:24:33,439 INFO Connected to environment.
machines:
  0:
    agent-state: not-started
    dns-name: test4.master
    instance-id: /MAAS/api/1.0/nodes/node-ee044686-b100-11e2-9927-52540089abb8/
    instance-state: unknown
  5:
    instance-id: pending
services:
  mysql:
    charm: cs:precise/mysql-19
    relations: {}
    units:
      mysql/0:
        agent-state: pending
        machine: 5
        public-address: null
2013-04-30 10:24:33,496 INFO 'status' command finished successfully

Экземпляр остается в таком pendingсостоянии неограниченное время, и просмотр журнала отладки показывает, что соединение для подготовки экземпляра не устанавливается:

2013-04-30 10:27:26,562: juju.agents.provision@ERROR: Cannot get machine list
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/juju/agents/provision.py", line 175, in process_machines
    provider_machines = yield self.provider.get_machines()
ProviderInteractionError: Unexpected ConnectionRefusedError interacting with provider: Connection was refused by other side: 111: Connection refused.

Теперь, поскольку эта ошибка генерируется на машине "0" каждую минуту или около того, я посмотрел на tcpdump, чтобы попытаться выяснить, что происходит. После некоторых поисков я наткнулся на это в то самое время, когда ошибка была зарегистрирована:

10:27:26.561631 IP 127.0.0.1.33607 > 127.0.0.1.80: Flags [S], seq 1222093882, win 32792, options [mss 16396,sackOK,TS val 454628 ecr 0,nop,wscale 6], length 0
10:27:26.561651 IP 127.0.0.1.80 > 127.0.0.1.33607: Flags [R.], seq 0, ack 1222093883, win 0, length 0

Так как машина "0" была развернута с MAAS через Juju, я не думаю, что она также будет работать с MAAS. Чтобы устранить проблему, я создал SSH-туннель на машине "0", прослушивающий порт 80 (localhost) на порту 80 сервера MAAS, например 80:MAAS-Server-IP:80. После этого juju statusизменил, чтобы показать новую машину из состояния ожидания:

  5:
    agent-state: not-started
    dns-name: test5.master
    instance-id: /MAAS/api/1.0/nodes/node-fe882bb2-b100-11e2-ba1c-52540089abb8/
    instance-state: unknown

Все это к тому, что может кто-нибудь помочь мне понять, почему развернутая машина "0" пытается подключиться к localhost port 80, а не к серверу MAAS? Это связано с тем, что я запускаю Juju и MAAS на одном сервере?

решение1

Когда среда загружается, вы должны обратить внимание на имя хоста в environments.yaml, так как, похоже, именно оно передается на последующие машины. В моем случае я установил сервер на http://localhost:80/MAAS, что заставило машину "0" и любые другие машины попытаться подключиться к localhost, а не к IP/имени хоста сервера MAAS. После уничтожения моей среды и ее повторной загрузки с помощью сервера http://10.0.0.10:80/MAASвсе, похоже, развернулось правильно. Это полностью моя оплошность.

Связанный контент