14.3.17

Установка и настройка OpenVSwich



Бывает необходимо, что бы виртуальная машина KVM присутствовала в нескольких подсетях с разными VLAN. Что бы автоматизировать данный процесс я использую openvswich, в котором создаю необходимые мне vlan подсети. Давайте создадим такую конфигурацию:

Есть две подсети одна имеет VLAN100 другая VLAN101  данные сети доступны с хостовой машины по кабелю, который воткнут в транковый порт свича, протегированный в соответствующих вланах. В Fedora в стандартных репозиториях есть пакет openvswitch. Установим его командой:

$ sudo dnf install openvswitch -y

После установки следует запустить сервиc openvswitch
$ sudo systemctl enable  openvswitch.service
$ sudo systemctl  start openvswitch.service
При запуске сервис создает базу в файле /etc/openvswitch/conf.db в котором и будет содержать все свои настройки. Для управления конфигурациями служит утилита ovs-vsctl. Структура будущей сети такова



Такая структура необходима из-за некоторых особенностей работы libvirt, например невозможно указать какой конкретно интерфейс и в каком vlan следует создать для определенной машины. Проще всего заранее сделать несколько свичей протегированных в различных vlan,  средствами libvirt добавлять туда интерфейс не задумываясь об их тегах. Свич root-sw это наш корневой свич в который мы подключаем все остальные свичи. Итак создаем root-sw
$ sudo ovs-vsctl add-br root-sw
В данный свич нужно добавить  реальный интерфейс хостовой машины, смотрящий в реальный свич. Осторожно, сетка в этот момент пропадет. О том как сделать хостовую машину доступной из вне ниже. Добавим наш интерфейс
$ sudo ovs-vsctl add-port root-sw eth0
Теперь нужно создать свичи sw-vlan100 и sw-vlan101 укажем что они протегированны во vlan 100 и 101
$ sudo ovs-vsctl add-br sw-vlan100 100
$ sudo ovs-vscrl add-br sw-vlan101 101
Что бы наши машинки сами подцепляли нужные порты в свичах настроим виртуальные сети libvirt. Используем для этого утилиту virsh, входящую в состав пакета libvirt-client.
$ sudo virsh
 Дальнейшие команды выполняем в ней:
virsh # net-list
Name                 State      Autostart     Persistent
--------------------------------------------------
default              active     yes           yes
 Как видно у нас есть только одна дефолтная сеть default используем ее как шаблон.
virsh # net-edit default
В результате выполнения команды видим xml конфиг default сети, приведем ее к виду
<network>
  <name>sw-vlan100</name>
  <forward mode='bridge'/>
  <bridge name='sw-vlan100' />
  <virtualport type='openvswitch'/>
</network>
После чего выходим из редактора соответствующей командой с сохранением файла. Кстати установить редактор по умолчанию поможет системная переменная
$ export EDITOR="/usr/bin/vim"
так же создаем конфиг второй сети, еще раз запускаем редактирование default сети
virsh # net-edit default
Приводим к виду
<network>
  <name>sw-vlan101</name>
  <forward mode='bridge'/>
  <bridge name='sw-vlan101' />
  <virtualport type='openvswitch'/>
</network>
Делаем службы сетей активными и включаем автостарт
virsh # net-autostart sw-vlan100

virsh # net-start sw-vlan100

virsh # net-autostart sw-vlan101

virsh # net-start sw-vlan101
  Теперь при создании виртуальной машины следует выбрать нужную сеть в virt-manager и порт автоматически будет создаваться в свиче тегированном в нужном vlan.
  Теперь если у вас есть необходимость управлять хостовой машиной по ssh, то создайте интерфейс в нужном vlan и назначьте на него IP адрес
$ sudo ovs-vsctl add-port man0 sw-vlan100
Делаем интерфейс внутренним
$ sudo ovs-vsctl set interface man0 type=internal
 Видим интерфейс в системе
$ ip link show  man0
Тепрь можете назначит ему интерфейс вручную:
$ sudo ip addr add 192.168.1.1/24  dev man0
 Или установить его по DHCP
$ sudo dhclient man0 -pf /run/dhclient.pid
 Спасибо за внимание.

5.8.11

Sparkleshare действительно свободный аналог Dropbox на своем сервере.

  Существует такой проект sparkleshare, созданный с целью создать аналог Dropbox на полностью свободной основе. Программа написана на mono поэтому кросплатформеная, и в отличии от Dropbox позволяет создать свой сервер для синхронизации папок на различных устройствах. В своей основе она использует GIT, и SSH для шифрованного соединения клиентов.
  Программа устанавливается очень просто, для начала на сервере нужно установть git на вашем устройстве которое будет выполнять роль сервера, для этого выполняем команды:
  # yum install git-core openssh-server
  После установки данных сервисов нужно создать git репозитарий на устройстве-сервере:
  # git init --bare /patch/to/repo.git
  Созданный репозитарий должен находится на устройстве с достаточным количеством места (ибо места он будет занимать столь же, сколько будет весить файло которое будет сброшено в синхронизируемые папки плюс еще полстолько же на версификацию), также он должен быть доступен для пользователя от имени которого вы собираетесь синхронизировать устройства.
  Теперь на устройстве клиенте следует сгенерировать ssh ключ доступа к нашему серверу:
# ssh-keygen
  И передать его на сервер:
# ssh-copy-id username@servername
  попробуйте войти на сервер указав выбранные параметры:
# ssh username@servername
  Если сервер вас пустил можно продолжать настройки, если же нет проверьте настройки сервиса sshd на сервере в папке /etc/ssh, возможно запрещен вход на сервер с помощью ключа.
  Установка самого сервиса происходит следующим образом, сначала  нужно скачать конфиг для репозитария Fedora или для своего дистрибютива (для Windows просто качаем инсталятор):
#wget http://repos.fedorapeople.org/repos/alexh/sparkleshare/fedora-sparkleshare.repo
  И скопировать его в директорию конфигов репозитариев yum:
#sudo mv fedora-sparkleshare.repo /etc/yum.repos.d/

  Потом следует установить саму программу:
#sudo yum install sparkleshare

  Теперь следует запустить sparkleshare на клиенте, выберите иконку программы в главном меню в разделе интернет или введите название программы, если вы используете GNOME 3. Запустится мастер в полях которого следует указать наши данные:
  Нажимаем на кнопку Sync и если все хорошо то мы увидим надпись что синхронизация успешно выполнена. По умолчанию синхронизируется каталог в домашней директории клиента ~/SparkleShare/, все что вы положите сюда будет синхронизировано с остальными клиентами подключенными к репозитарию подобным образом.
 Существенный минус данного решения то что git плохо работает с большими файлами (больше 1G).

5.6.11

Возвращаем к жизни GNOME

  Установив новую Fedora 15, я подумал что все же разработчики немного перегнули палку в нескольких местах, поэтому стал искать способы ее выпрямить, и кое что мне удалось. Оказывается в репозитариях появилась утилита Tweak Tool, позволяющая вернуть часть удаленных возможностей в Gnome 3.
  Устанавливается утилита командой:
yum install gnome-tweak-tool
  В первом разделе утилиты можно изменить шрифты системы, настройки антиалиасинга, размера и прочего.

  Во втором разделе можно включить отображение даты в календарике на панели вернуть все кнопки на декоратор окна (свернуть, развернуть, закрыть) или перекомбинировать их, и так же изменить опции питания для ноутбука.
 На третьей вкладке присутствует только одна опция, но зато какая это опция, Она позволяет вернуть отображение значков на рабочем столе!
 На четвертой вкладке можно изменить параметры интерфейса, типа использования иконок в меню, или темы для GTK и иконок Nautilus, а на пятой вкладке можно поменять темы декоратора, и реакцию на щелчки по нему.
  В итоге получается вернуть практически все нужные вещи, удаленные по какой то причине из нового гнома.



25.5.11

Релиз Fedora 15

Итак, сегодня вышел релиз Fedora 15, в котором было проведено очень много существенных изменений:
  • Интеграция графического окуржения Gbome 3 с оболочкой по умолчанию Gnome Shell, так же в релизе сборик KDE 4.6 и Xfce 4.8
  • Старт системы осуществляется с помощью быстрой системы systemd.
  • В комплекте браузер нового поколения Firefox 4, и офисный пакет Libre Office 3.3.2
  • Измены наименования сетевых интерфейсов, теперь они привязываются с положением сетвых карт на материнской плате, например для интегрированной сетевой карты название будет em{port_number}, а для подключеных pci{port_number}
  • Перенос "/run" из директории "/var" в корень для решения проблем с недоступным "/var/run"
  • Интеграция поддержки файловой системы Btrfs в инсталлятор системы, теперь можно выбрать в списке.
  • Использование ядра 2.6.38
Паралельно выходу основного дистрибютива, вышел релиз русского респина Russian Fedora, с включенными в поставку допольнительных компонент не вошедших в основной дистрибутив по причинам патентных ограничений в США.

3.2.11

Тестовая сборка Fedora 15 с Gnome 3

 Сегодня в рамках дня тестирования Gnome 3 на Fedora, загрузил данную сборку Fedora 15, что бы посмотреть до какого состояния удалось доделать Gnome 3. Был приятно удивлен стабильностью работы и готовностью продукта, думаю осталось доделать некоторые мелочи и релиз Gnome 3 будет полностью готов. Что еще более радует, переход на него не будет столь жестким как на KDE 4, и всегда останется возможность включить стандартный рабочий стол если не понравится новый интерфейс.
 В общем ждем релиза Fedora 15 с Gnome 3 в комплекте. Вот тройка скриншотов:


  Так же в комплекте есть Firefox 4, вполне работоспособного состояния.

Популярные сообщения