Как я выполняю Амулет на локальном сервере?

Я хотел бы использовать амулет на своем сервере дома, чтобы узнать амулет и играть с ним. Я имею несколько компьютеров и хотел бы получить доступ к тому, что находится на сервере от какого-либо из них. Когда я прошел учебное руководство, оно устанавливает амулет хорошо, но только подвергло сервисы локальной машине. Я хочу выставить их целой сети. Как я могу сделать это?

Примечание: мой сервер уже существует и работает 12.04, я не хочу переустанавливать его с помощью Мааса только для получения работы амулета. Я также не хочу выполнять это "" в облаке на ec2 или любом другом поставщике, потому что я хочу испытать это на своей собственной машине под моим управлением в моей сети.

Править:-

  • Никакой брандмауэр
  • Никакое блокирование, все открытые порты
  • Да. Все компьютеры на LAN (192.168.1.0/24) видят сервер (homeserver.local) на 192.168.1.2
  • Довольно стандартный соединенный проводом и Wi-Fi с одним сервером DHCP dishing IP-адреса в вышеупомянутом диапазоне
  • Установите правильно (только что запустился снова с нуля), и следовал учебному руководству, к которому Luis направил меня, вот являются результаты:-http://paste.ubuntu.com/5714640/
  • состояние амулета показало выше.

Так, все выполнение хорошо, но основной вопрос состоит в том, что контейнерам присвоили IP-адреса локально на сервере, которые только доступны на самом сервере. В то время как я мог обойти установку ssh перенаправление портов повсеместно к доступу 10.x IP-адреса от диапазона 192.168.1.0/24, это кажется сверхсложным и ненужным. Я хотел бы контейнеры, выставленные по моей LAN.

16
задан 25 October 2013 в 03:04

2 ответа

Хорошо, решено!

Настройте мостовую сеть br0 в / etc / network / interfaces.

auto eth1
iface eth1 inet manual

auto br0
iface br0 inet static
bridge_ports eth1
address 192.168.1.2
broadcast 192.168.1.255
netmask 255.255.255.0
gateway 192.168.1.1
bridge_stp off
bridge_fd 0
bridge_maxwait 0

Отредактируйте /etc/lxc/lxc.conf и установите lxc.network.link = br0

lxc.network.type=veth
lxc.network.link=br0
lxc.network.flags=up

Измените / etc / default / lxc и установите LXC_BRIDGE, LXC_ADDR, LXC_NETMASK , LXC_NETWORK, LXC_DHCP_RANGE & amp; LXC_DHCP_MAX, соответственно для моей локальной сети (настройки типа 192.168.1.0/24), теперь статус juju показывает 192.168.1.0/24 адреса для моих устройств, и я могу получить к ним доступ через локальную сеть с другого компьютера

LXC_BRIDGE="br0"
LXC_ADDR="192.168.1.2"
LXC_NETMASK="255.255.255.0"
LXC_NETWORK="192.168.1.0/24"
LXC_DHCP_RANGE="192.168.1.50,192.168.1.99"
LXC_DHCP_MAX="49"
0
ответ дан 25 October 2013 в 03:04

Поскольку, что я могу понять, Вам установили Амулет и работу, но Вы хотите подвергнуть сервис другим компьютерам в Вашей сети. Я предположу, что все компьютеры в Вашей сети видят друг друга и имеют их корректные IP-адреса.

Я также предполагаю учебное руководство, о котором Вы говорите, одно из этого:

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

juju expose SERVICE

Используя то, Как установить Hadoop? как пример я был бы:

juju expose hadoop-master

Амулет Выставляет - https://jujucharms.com/docs/stable/charms-exposing

juju status SERVICE также помогает в выяснении, как сервис работает.

Конечно, существует несколько вещей, которые я должен был бы знать о сети и сервере, например:

  • Делает сервер, имеют установку брандмауэра (iptables, ufw...)
  • Сети настраивали маршрутизатор, чтобы сделать что-то связанное с блокированием, передавая и таким образом, который создал бы проблему, пытающуюся получить доступ к серверу?
  • Компьютеры на LAN видят сервер?
  • Есть ли какое-либо специальное соединение, которое не является общим (Беспроводная связь или Проводным), или безопасность в используемом, который мог создать проблему с клиентами и сервером?
  • Все шаги должны установить Амулет, правильно сделанный (В соответствии с упомянутыми учебными руководствами, особенно часть о environments.yaml который я склонен забывать или понимать превратно).
  • Делает juju status дайте Вам некоторое понимание того, какова проблема могла быть?
  • У Вас есть несколько сред настроенными в environments.yaml файл?

В случае, если сервис не показывают внешней стороне из-за LXC, сделайте следующее (Обеспеченный ответом popey, дал и большое исследование):

  • Установите запараллеленную сеть br0 в/etc/network/interfaces
  • Править /etc/lxc/lxc.conf и набор lxc.network.link=br0
  • Править /etc/default/lxc и набор LXC_BRIDGE, LXC_ADDR, LXC_NETMASK, LXC_NETWORK, LXC_DHCP_RANGE и LXC_DHCP_MAX соответственно к LAN (192.168.1.0/24 вводят настройки),

    Теперь juju status должен показать адреса 192.168.1.0/24 для моих единиц и может быть доступ по LAN от другой машины.

5
ответ дан 25 October 2013 в 03:04

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

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