Переключение Juju lxc bridge

Я настроил Juju на работу в LXC и пытаюсь открыть его для внутренней сети. Я обычно следую этому вопросу, чтобы указать lxc на мой существующий мост (eth-br0).

Я отредактировал /etc/default/lxc и /etc/lxc/default.conf в соответствии с постом, но когда я пытаюсь начать загрузку, я получаю:

2013-09-26 19:47:05 INFO juju.provider.local environprovider.go:32 opening environment "local"
2013-09-26 19:47:05 ERROR juju.utils network.go:37 cannot find network interface "lxcbr0": net: no such interface
2013-09-26 19:47:05 ERROR juju.provider.local environprovider.go:48 failure setting config: net: no such interface
2013-09-26 19:47:05 ERROR juju supercommand.go:282 command failed: net: no such interface
error: net: no such interface

Очевидно, что что-то все еще пытается указать на lxcbr0, а не существующий мост. Если я просто хочу показать lxc juju в сети, это лучший способ сделать это и как мне правильно его настроить.

Я могу прикрепить свой ifconfig при необходимости.

5
задан 13 April 2017 в 15:24

4 ответа

Вы правы, что-то пытается указать lxcbr0 .

Используйте lxcbr0 в этих файлах

  1. / etc / default / lxc
  2. /etc/lxc/default.conf
  3. / etc / network / interfaces

Я пытался br0 , это выдает мне ту же ошибку. После изменения существующего моста на lxcbr0 , чтобы я работал нормально.

0
ответ дан 13 April 2017 в 15:24

Последняя версия juju включает в себя окружение yaml для указания сетевого моста:

# network-bridge holds the name of the LXC network bridge to use.
# Override if the default LXC network bridge is different.
#
#
network-bridge: br0

Надеюсь, это поможет?

0
ответ дан 13 April 2017 в 15:24

Посмотрите, какой у вас интерфейс:

ifconfig

мой результат такой:

lo        Link encap:Local Loopback  
      inet addr:127.0.0.1  Mask:255.0.0.0
      inet6 addr: ::1/128 Scope:Host
      UP LOOPBACK RUNNING  MTU:16436  Metric:1
      RX packets:12 errors:0 dropped:0 overruns:0 frame:0
      TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:0 
      RX bytes:600 (600.0 B)  TX bytes:600 (600.0 B)

venet0    Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
      inet addr:127.0.0.2  P-t-P:127.0.0.2  Bcast:0.0.0.0  Mask:255.255.255.255
      UP BROADCAST POINTOPOINT RUNNING NOARP  MTU:1500  Metric:1
      RX packets:7239 errors:0 dropped:0 overruns:0 frame:0
      TX packets:8727 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:0 
      RX bytes:931464 (931.4 KB)  TX bytes:1701016 (1.7 MB)

venet0:0  Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
      inet addr:198.46.159.94  P-t-P:198.46.159.94  Bcast:198.46.159.94  Mask:255.255.255.255
      UP BROADCAST POINTOPOINT RUNNING NOARP  MTU:1500  Metric:1

Итак, мой сетевой интерфейс venet0 . Я редактирую свой .juju / environment.yaml , как показано ниже:

local:
    type: local
    network-bridge: venet0

и после сохранения запускаю:

juju bootstrap

Вы можете увидеть, работает ли он, по:

статус juju

Это мой результат:

environment: local
machines:
  "0":
    agent-state: started
    agent-version: 1.20.14.1
    dns-name: localhost
    instance-id: localhost
    series: trusty
    state-server-member-status: has-vote
services: {}
0
ответ дан 13 April 2017 в 15:24

Опция сетевого моста реализована только для местного провайдера.

Похоже, вы используете провайдера вручную.

К сожалению, для провайдера вручную единственное работающее устройство сетевого моста lxc - это lxcbr0. Это жестко закодированное значение.

Я запустил ветку, чтобы добавить поддержку сетевого моста для провайдера вручную: https://github.com/jrwren/juju/commit/3ee84a3881e43181b16099d8649f879fc68f089c

Но я не достаточно знать о внутренней работе juju и поэтому, хотя он запускает экземпляры lxc, сервер состояний перестает слушать порт 17070, и вся система не работает.

0
ответ дан 13 April 2017 в 15:24

Другие вопросы по тегам:

Похожие вопросы: