Установить Windows 2008 на основе KVM удаленно через SSH на безголовый сервер Ubuntu 10.04 без графики?

У меня есть сервер Dell в удаленном центре обработки данных с Ubuntu 10.04 в качестве хоста. Это минимальная установка с необходимыми пакетами виртуализации. Там нет X и машина без головы.

У меня в машине DVD win2008 и я хочу удаленно установить его. Я старался:

virt-install --connect qemu:///system -n vmwin2k8 -r 1024 --disk path=server2k8.qcow2,size=50 --cdrom /dev/sr0 --vnc --noautoconsole --os-type windows --os-variant win2k8
  • Образ qcow2 будет создан; Тем не менее, я не понимаю, как подключиться, чтобы увидеть установку через VNC.

Я делаю это впервые, так что это может быть тривиально или невозможно.

Удаленно у меня есть машина Win 7 с Putty и RealVNC viewer.

Куда идет графический вывод VNC? Нужно ли иметь VNC-сервер, работающий на хосте или каком-либо другом компьютере, и затем подключаться к нему с моего VNC-клиента?

Пожалуйста, дайте мне знать или укажите мне правильное направление. Я искал в Интернете несколько дней, чтобы выяснить, как это должно работать.

Спасибо!

2 ответа

Решение

У меня также есть автономный сервер, работающий в удаленном центре обработки данных в качестве хоста KVM. Я быстро разозлился, пытаясь отследить постоянно меняющиеся VNC-порты гостей. Моим решением было настроить vncserver со средой рабочего стола (в моем случае это Gnome) и установить virt-manager для обработки виртуальных машин. Это гораздо более простой способ администрирования гостей ИМХО. Я использовал это руководство из CentOS Wiki для настройки VNC-сервера, подход должен быть аналогичным в Ubuntu.

Если вы не хотите делать это и просто хотите, чтобы это работало с virt-install Для начала нужно выяснить, на каком порту работает гостевой VNC-сервер. Nmap - это быстрый способ найти порт на вашем сервере:

$ nmap -p 5900-5910 localhost

Вы также можете указать порт, как сказал Joris, но если у вас работают другие гости, убедитесь, что вы выбрали свободный порт.

Как только вы узнаете номер порта, вы можете создать SSH-туннель от вашей настольной системы к серверу с помощью чего-то вроде:

$ ssh -c blowfish-cbc -N -L 5905:localhost:5905 User@HostIP

Теперь у вас есть туннель, который сопоставляет порт 5905 на настольном компьютере с портом 5905 на вашем сервере. Теперь вы сможете использовать любой VNC-клиент для подключения к localhost:5 (или localhost:5905) в настольной системе и получить доступ к гостю на: 5 на сервере.

Я не знаю, что случится, если вы не укажете отображение после vnc. Наверное лучше бегать -vnc 127.0.0.1:0

Тогда дисплей VNC будет ждать вас на порте по умолчанию (5900) на 127.0.0.1 IP.

Вы можете либо указать публичный IP-адрес, но затем вам нужно его настроить, либо связать с localhost и выполнить туннельное ssh-волшебство. Во-первых, соединения vnc не аутентифицированы, и происходит много сканирования фонового трафика, сценаристы, вероятно, найдут его в течение нескольких минут.

Изменить: также, libvirt сделает это за вас, вы должны проверить некоторые из отличных инструментов управления.

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