Многопроходный, virt-менеджер и запараллеленная сеть

Я только начинаю использовать Многопроходный, и я нашел, что часть документации редка (или я не знаю, как найти его правильно). Я работаю 19.10 с QEMU и установленным libvirt. Я создал соединенный мостом интерфейс Ethernet, названный br0 для Windows 10 VM, в котором я нуждаюсь на той же подсети как мои другие рабочие станции. Эта часть хорошо работает. Я выполнил команду "sudo многопроходный набор, локальный driver=libvirt", и затем создал мой первый многопроходный экземпляр.

Первая проблема, которую я имел, состояла в том, что я должен был использовать многопроходный метод подключения, чтобы войти в VM и создать пользователя (кроме пользователя "человечности" по умолчанию) и сделать нового пользователя членом sudo. Это было то, потому что я не мог выяснить, как войти в VM через консоль virt-менеджера как многопроходная sudo пользовательская человечность. После того как это было сделано, я смог войти в консоль virt-менеджера как новый пользователь и openssh-сервер установки. Я закрыл VM, изменил NIC в virt-менеджере к соединенному мостом интерфейсу Ethernet, перезапустил VM, и VM получил IP от моего сервера DHCP и был непосредственно доступен от любой другой рабочей станции или VM в сети через SSH.

К сожалению, делая это повреждает "многопроходное подключение vm01" метод соединения с VM (на самом деле, это повреждает любые многопроходные команды от CLI, которые направлены на экземпляр), и единственный способ соединиться теперь через SSH (или консоль virt-менеджера).

Существует ли конфигурационный файл где-нибудь для инструктирования многопроходному для поиска VM в новом мостовом интерфейсе? Я соглашаюсь на самом деле с ним действующий в качестве автономного VM под virt-менеджером (на самом деле, это - фантастический способ вращать VM Ubuntu, не создавая новый VM в virt-менеджере, присоединяя ISO, и т.д.). Но я могу предвидеть будущие проблемы с тем, что разорвал многопроходную связь CLI к экземпляру.

0
задан 25 February 2020 в 02:54

2 ответа

Спасибо за предоставление Многопроходного попытка. В Многопроходном мы используем облачные изображения Ubuntu по умолчанию, таким образом, существует несколько вещей знать. По умолчанию облачные изображения не имеют пользователя, который имеет включенный пароль. Однако, так как они - облачные изображения, можно использовать cloud-init настраивать Ваш Многопроходный экземпляр по-разному. cloud-init документация может быть найдена в https://cloudinit.readthedocs.io/en/latest/. Существует много примеров там для многих различных конфигураций. Кроме того, существует короткое сообщение в блоге в https://ubuntu.com/blog/using-cloud-init-with-multipass об использовании cloud-init с Многопроходным.

Относительно сетей и multipass соединения с экземпляром, да, мы требуем ssh соединение и как таковой, мы должны смочь легко обнаружить IP-адрес экземпляра. Лучший способ использовать соединенные мостом сети состоял бы в том, чтобы добавить второй интерфейс через cloud-init и затем укажите на libvirt на этот второй интерфейс для соединенных мостом сетей и оставьте сеть NAT'd неповрежденной так как multipass может соединиться с ним.

Я надеюсь, что это помогает и удачи!

0
ответ дан 17 March 2020 в 00:15

У меня был похожий вариант использования. В дополнение к использованию инструментов SSH я обнаружил, что для вариантов использования сервера очень полезно также использовать nginx, для случая использования хостинга. многопроходные виртуальные машины с безголового сервера ubuntu.

напр. Я запускаю веб-сервер rails в многопроходной виртуальной машине на порту 3000 и свяжу это с помощью ssh на порт 9000 на своем хосте и смогу подключиться к моему хосту из любого места по адресу :8080

. ]1. Связать мультипасс с хостом
sudo ssh -L 9000:localhost:3000 \ 
    -i /var/snap/multipass/common/data/multipassd/ssh-keys/id_rsa \
    ubuntu@<multipass instance ip> 
2. Включить доступ к многопроходному извне с хоста

Теперь, используя nginx, я собираюсь подключиться к порту 9000, используя IP-адрес хоста, и открыть порт 8080 для внешних подключений.

server {
    listen 8080;
    server_name development;
    location / {
        proxy_pass http://localhost:9000;
    }
}
1
ответ дан 19 June 2020 в 07:40

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

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