Страницы

Сохранить статью у себя в соцсети:

четверг, 8 ноября 2012 г.

§ Adaptec 6405 firmware update

Adaptec 6405 firmware update.

Процесс обновления прошивки для RAID контроллера Adaptec 6405.

суббота, 3 ноября 2012 г.

§ Немного оффтопа

Сегодня выходные, поэтому можно позволить себе небольшой оффтоп... В своей работе я часто используя мониторинг основанный на Zabbix, который мне очень нравится. Нравится он мне тем, что я могу достаточно быстро, прикрутить мониторинг практически всего, что отдает хоть какие-то данные. Так вот небольшая заметочка нацелена на тех, кто стоит перед выбором, какую же систему мониторинга выбрать.
Есть у меня доступ к системе хранения HP StorageWorks P2000 G3 iSCSI. Оборудование такого класса всегда подразумевает функции мониторинга и отслеживания состояния отдельных элементов устройства. Вот и недолго думая, я завел эту устройство в Zabbix, а по итогу сделал такую наглядную карту (map в терминологии Zabbix). 

Как видно, на карте отображены статусы дисков, контроллеров, блоков питания и портов. При сработке триггеров, состояние автоматически меняется и это будет видно на карте. В данном примере, контроллер B не подключен к сети. 
Единственный момент который меня огорчил, это отсутствие возможности центрировать подписи для элементов карты (это заметно по съехавшим меткам для центральных дисков 2/5/8/11). А так все вцелом хорошо и наглядно.

На главную "Virtualizing Linux"

четверг, 1 ноября 2012 г.

§ Zabbix troubleshoot

У меня все работает, а Zabbix пишет что нет!!!

При работе с Zabbix иногда приходится сталкиваться с такими проблемами, которые можно описать так "заббикс пишет что на сервере Х проблема, хотя я захожу туда и там все работает!". Особенно на начальном этапе знакомства с как с системой мониторинга, так и при реализации какого то нового мониторинга.

понедельник, 29 октября 2012 г.

§ HVM vs. Paravirt

Разница между полной виртуализацией и паравиртуальной.

Краткое объяснение чем паравиртуализация отличается от полной виртуализация.
Почему "паравиртуализация"? Просто разработчикам понадобился новый нигде неиспользуемый термин.

четверг, 25 октября 2012 г.

§ Linux kernel build.

Сборка Linux ядра.

Как часто вы собираете ядро? Не умеете? Тогда это статья для Вас.

среда, 24 октября 2012 г.

§ Proxmox VE 2.2 Release

Релиз системы виртуализации Proxmox VE 2.2

  • релиз версии 2.2
  • обновлено ядро vzkernel-2.6.32-042stab062.2.src.rpm;
  • обновлены драйвера сетевых карт (e1000e до 2.1.4, ixgbe до 3.11.33, igb до 4.0.17);
  • qemu-kvm обновлен до последней на данный момент версии 1.2.0;
  • vzctl обновлен до 4.0;
  • openvz теперь использует настоящую консоль вместо "vzctl enter";
  • добавлена возможность делать живые снимки с qcow2 (на запущенной машине);
  • kvm: новая опция выбора SCSI контроллеров;
  • kvm: поддержка до 32 сетевых устройств;
  • kvm: поддержка до 16 virtio устройств;
  • обновлены кластерные пакеты;
  • версия Debian обновлена до 6.0.6;
  • добавлена перевод для Словенского языка;
  • исправлено множество ошибок.
На главную "Virtualizing Linux"

понедельник, 22 октября 2012 г.

§ Install VirtIO in FreeBSD guest.

Установка VirtIO в FreeBSD.

Про паравиртуальные драйвера VirtIO я уже писал, поэтому повторно расписывать что это, не имеет смысла. Привожу пример установки virtio-драйверов в гостевую систему FreeBSD.

четверг, 18 октября 2012 г.

§ Using USB in Proxmox VE.

Проброс USB устройств в Proxmox VE.

Функция проброса USB устройств очень полезна и неограничивается одними флешками. Можно привести пример из собственного опыта, когда на однйо из виртуальных машин была размещена система мониторинга, когда появилась необходимость отправлять SMS уведомления, к хост системе через USB был подключен мобильный телефон и проброшен в виртуальную машину. Вот так вот.
Итак, смотрим что подключено из USB устройств, нам понадобятся номера шины и устройства
# lsusb 
Bus 001 Device 004: ID 0951:1642 Kingston Technology
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Теперь правим конфигурацию машины:
# vi /etc/pve/qemu-server/101.conf
args: -device usb-host,hostbus=1,hostport=4

В Proxmox VE версии 2 или более новых версиях можно использовать новый формат
# vi /etc/pve/qemu-server/101.conf
usb0: host=1-4

Теперь перезапускаем машину.
На этом все.
На главную "Virtualizing Linux"

вторник, 16 октября 2012 г.

§ Proxmox VE VLAN's.

Пример настройки VLAN в Proxmox VE.

Не всем известно что VLAN'ы это хорошее инженерное изобретение. Коротко говоря VLAN'ы позволяют разделять трафик, это может понадобиться чтобы отделить один трафик от другого. Например, один из самых частых способов применения: на сервере есть один физический интерфейс, на нем подняты используемые в production  белые IP-адреса, используя VLAN'ы мы можем на том же физическом интерфейсе поднять виртуальный интерфейсы с серыми адресами для management трафика, или других нужд. 
Привожу пример настройки VLAN в Proxmox VE. Настройка вобщем проста и требует всего лишь правки конфига interfaces
# vi /etc/network/interfaces
auto lo
iface lo inet loopback
iface eth0 inet manual
iface eth1 inet manual
# Создаем основной bridge-интерфейс
auto vmbr0
iface vmbr0 inet static
address  10.101.14.1
netmask  255.255.0.0
gateway  10.101.0.1
bridge_ports eth0
bridge_stp off
bridge_fd 0

# Создаем VLAN 110 (помечаем пакеты тегом с VLAN ID 110, на интерфейсе eth1)
auto vmbr110
iface vmbr110 inet manual
bridge_ports eth1.110
bridge_stp off
bridge_fd 0

# Создаем VLAN 120 (помечаем пакеты тегом с VLAN ID 120, на интерфейсе eth1)
auto vmbr120
iface vmbr120 inet manual
bridge_ports eth1.120
bridge_stp off
bridge_fd 0

После сохранения конфигурации, нужно перезапустить networking сервис.

На главную "Virtualizing Linux"

четверг, 11 октября 2012 г.

§ Who uses a swap?

Получение информации о том кто использует Swap.

Бывают ситуации когда нужно посмотреть кто использует Swap и в каком объеме. К сожалению, готовой программы ненашлось, а информацию получить нужно. На выручку как всегда приходит bash.

понедельник, 8 октября 2012 г.

§ PostgreSQL monitoring via Zabbix

Настройка мониторинга PostgreSQL в Zabbix или Постгрес под наблюдением.

В PostgreSQL есть ряд системных таблицы в которых хранится статистика работы кластера БД. Выполняя обычные SQL запросы в эти таблицы можно получать разнообразные данные о базах, таблицах, индексах. 
ATTENTION: Эта статья, скрипты и конфиги устарели. Новая статья здесь.

четверг, 4 октября 2012 г.

§ How to restore deleted LVM volume or group.

Восстановление удаленных LVM томов и групп.

Зашел тут как-то сервер разработки, с которым постоянно экспериментирую и заметил несколько LVM томов, оставшихся после каких-то экспериментов (так мне тогда показалось). Атрибута open на них не было, я укрепился с мыслью что это ошметки какого-то очередного эксперимента. Недолго думая, я их удалил. Спустя пару минут, я понял что это внутренние LVM тома, недавно запущенной виртуальной машины. 

понедельник, 1 октября 2012 г.

§ FlashCache: Monitoring

Мониторинг устройств FlashCache в Linux.

Третья, заключительная статья, из цикла про FlashCache. Здесь будет рассмотрено как настроить мониторинг FlashCache устройств в Zabbix.

четверг, 27 сентября 2012 г.

§ FlashCache: Installation.

установка FlashCache из исходных кодов под ядро 3.3.8.

Вторая статья из цикла серий о FlashCache о том как устанавливается и настраивается FlashCache.

понедельник, 24 сентября 2012 г.

§ FlashCache: Introduction

Статья открывает цикл из трех статей о FlashCache, в которых будет рассказано что такое FlashCache и какие у него преимущества, как настроить работу FlashCache и как эту работу замониторить. Сегодня вводная статья о том что такое FlashCache вообще.

четверг, 20 сентября 2012 г.

§ Skytools-3.0 Simple replication.

Настройка потабличной репликации в PostgreSQL с помощью Skytools.

В статье описывается процесс настройки потабличной репликации с помощью Skytools 3.0. Как известно встроенная потоковая репликация, реплицирует полностью кластер, в том числе и все базы входящие в кластер. Но иногда случается что среплицировать нужно всего одну базу или даже всего несколько таблиц. Здесь на помощь приходит Londiste из пакета Skytools.

понедельник, 17 сентября 2012 г.

§ PostgreSQL Streaming Replication

Настройка потоковой репликации в PostgreSQL.

Update: новая версия статьи доступна здесь.
Hot Standby это режим работы при котором существует возможность подключаться к серверу и выполнять запросы на чтение, в то время как выполняется восстановление из WAL-архивов или идет работа в standby-режиме. Это полезно в целях репликации или  восстановлении из резервной копии. Hot Standby так же означает возможность сервера переходить из режима восстановления в режим нормальной работы, в то время как пользователи выполняют запросы или держат открытые соединения.

четверг, 13 сентября 2012 г.

§ KSM monitoring via Zabbix

Мониторинг работы KSM  в Zabbix.

KSM это подсистема позволяющая объединять дублирующиеся страницы в памяти и тем самым экономить память. В KSM существует ряд показателей по которым можно оценить эффективность работы модуля. Если же выполнить мониторинг этих показателей, то можно оценить эффективность работы за определенные промежутки времени. Для этого воспользуемся мониторингом Zabbix.


вторник, 11 сентября 2012 г.

§ PgBouncer. Admin console cheatsheet.

список команд управления PgBouncer.

Консоль управления доступна в виде отдельной базы именуемой pgbouncer
Доступ к ней имеют пользователи прописанные в директивах admin_users и stats_users.  В нашем случае это будет postgres. Исключением является вариант настройки при auth_mode=any, в таком случае все пользователи имеют административные привилегии.

понедельник, 10 сентября 2012 г.

§ Pgbouncer. Quick setup.

Быстрая настройка PgBouncer.

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

пятница, 7 сентября 2012 г.

§ Long and interesting way to add LVM storage to Proxmox VE.

Организация LVM хранилища в Proxmox VE.

Эта статья описывает длинный и извращенный способ реализации хранения образов дисков в отдельном LVM в Proxmox VE в рамках одного физического диска. Способ интересен не результатом, а самим процессом. Рекомендую провернуть это на выходных.
Более легий и безопасный способ описан здесь.
Disclaimer: Материал описанный в статье носит чисто академический характер, и вся операция делается из чисто спортивного интереса. В ходе выполнения задачи есть риск порчи или потери данных. Все это не рекомендуется делать на критически важных серверах. Бэкапы никто не отменял.

четверг, 6 сентября 2012 г.

§ Qemu-1.2 Release.

релиз Qemu 1.2

Выпущен релиз эмулятора QEMU 1.2 в котором исправлено много мелких ошибок и есть несколько значительных улучшений.

§ pmxcfs - Proxmox cluster filesystem.

pmxcfs - proxmox cluster filesystem.

Если просмотреть список процессов в Proxmox VE, то можно увидеть такой процесс как pmxcfs. Как оказалось этот компонент Proxmox является кластерной файловой системой, использующийся для хранения и распространения конфигурации виртуальных окружений. 

понедельник, 3 сентября 2012 г.

§ Proxmox VE. Using system LVM storage for VM images.

Использование системного LVM хранилища для хранения образов виртуальных машин.

Известно что Proxmox в процессе установки создает LVM группу (именуется как pve). При этом создает там раздел для хранения данных на весь объем группы. Таким образом свободного места в PV уже не остается. Но LVM тем и хорошо что позволяет на лету (частично) менять размер томов. Таким образом уменьшив том для данных можно выкроить свободное место для образов виртуальных машин. Правда есть одно но, онлайн уменьшение недоступно в текущей версии Proxmox (а точнее в Debian), поэтому придется отмонтировать раздел с данными, и если там есть запущенные машины, то придется их остановить. Для уменьшения тома используем сразу lvreduce, для уменьшения файловой системы lvreduce будет использовать нативный resize2fs.

четверг, 30 августа 2012 г.

§ Intel RAID controllers monitoring via Zabbix.

Мониторинг контроллеров от Intel с помощью Zabbix.

Продолжая тему мониторинга контроллеров, опишу процесс настройки мониторинга для контроллеров Intel. Для работы с этими контроллерами используется весьма функциональная утилита megacli, которая позволяет творить более серъезные вещи чем просто мониторинг.

понедельник, 27 августа 2012 г.

§ LSI Logic monitoring via Zabbix.

Настройка мониторинга RAID контроллеров LSI в Zabbix.

Продолжаю тему настройки мониторинга RAID контроллеров в Linux, с помощью Zabbix. На этот раз будет выполнена настройка контроллера LSI, в частности LSI Logic SAS1064ET PCI-Express Fusion-MPT SAS.

пятница, 24 августа 2012 г.

§ HP Smart Array monitoring via Zabbix.

Настройка мониторинга контроллеров HP Smart Array в Zabbix.

Для работы с контроллерами HP существует утилита hpacucli. Ее возможности очень хорошо подходят для задач мониторинга. Процесс настройки проводится в Gentoo Linux. Вообще говоря процедура настройки универсальная, отличие между настройкой в разных дистрибутивах, сводится только к отличиям в установке программы пакетным менеджером. В моем случае не стандартный emerge, а paludis.

четверг, 23 августа 2012 г.

§ Proxmox VE: Proper VM shutdown.

Корректное выключение KVM окружений.

Во многих инструментах управления виртуальными машинами на основе KVM есть функция выключения. В Proxmox VE есть команда qm shutdown. При выполнении команды виртуальной машине отправляется ACPI сигнал о том что нужно выключить питание. Но эта функция будет работать только тогда когда в виртуальной машине установлен и запущен сервис acpid. В противном случае машина просто проигнорирует сигнал, а команда будет ждать ответа и в зависимости от внутреннего алгоритма, либо завершится с таймаутом, либо завершит машину сигналом TERM или KILL. 
Поэтому следует проверять есть ли в машинах acpid и запущен ли он.

среда, 22 августа 2012 г.

§ Assign additional params to KVM guests.

Передача дополнительных параметров KVM окружениям.

При запуске виртуальных машин в Proxmox VE есть возможность передать qemu-kvm дополнительные параметры, определение которых недоступно в графическом интерфейсе. Таким образом можно передавать параметры настройки VNC, указать загрузку с ядра находящегося вне образа гостевой системы, отладочные и экспертные опции и т.п. Для этого нужно открыть файл конфигурации виртуальной машины в /etc/pve/qemu-server/ и указать параметр args после которого указать все необходимые параметры qemu-kvm.
# grep args /etc/pve/qemu-server/101.conf 
args: -vnc 10.101.14.1:1
Это очень полезная возможность и было бы круто если в веб-интерфейсе появится поле в котором можно указать такие параметры для передачи в qemu.

понедельник, 20 августа 2012 г.

§ oVirt: Deep dive.

Установка и настройка oVirt в CentOS.

ВНИМАНИЕ: Статья морально устарела. Читайте новый вариант.

Как оказалось настройка oVirt не совсем очевидное занятие и не сразу можно сообразить что в какой последовательности делать и в каком месте находятся те или иные вещи. Разберем же поподробнее процесс настройки oVirt. Чтобы не повторяться, установка будет осуществляться в CentOS 6.3. Почему CentOS? Есть мнение что он стабильнее чем Fedora. Однако следует помнить что oVirt использует в качестве основной платформы именно Fedora. Для CentOS в свою очередь существует репозиторий oVirt с адаптированными пакетами. Таким образом есть два варианта:
  • Всегда свежая Fedora с родным oVirt
  • Стабильный CentOS c адаптированным oVirt

воскресенье, 19 августа 2012 г.

§ Redis replication.

Переключение между Redis'ами с помощью репликации.

Совсем недавно, появилась необходимость перенести инстанс Redis'а с одного узла на другой. Необходимо это было сделать без остановки работы, приложению никак нельзя терять хранилище. Выходом в такой ситуации стало использование встроенной в Redis репликации и смена ip-адресов в DNS именах.

пятница, 17 августа 2012 г.

§ Filesystem labels.

настройка использования меток при загрузке системы.

Заметил что в некоторых дистрибутивах используется схема монтирования файловых систем с использованием имен устройств в /dev. Примером такого дистрибутива является всеми известный CentOS. Так вот у такого подхода есть некоторые минусы, в частности если используется LVM и если переименовать том, то приходится править fstab или даже grub.conf. При добавлении дополнительного диска именование и нумерация томов может сдвинуться и тогда при перезагрузке загрузчик не сможет сообразить откуда ему грузиться. Чтобы избежать таких проблем можно использовать схему обращения к устройствам посредством UUID и меток. Метки мне нравятся больше, так как им можно давать человекопонятные имена. Ниже пример переделки CentOS 6.3 на использование меток.

§ PostgreSQL with HugePages.

Настройка PostgreSQL для работы с HugePages.

В статье описывается настройка PostgreSQL с использованием больших страниц HugePages. Установка выполнялась в Gentoo Linux, но учитывая что технология HugeTLB является дистронезависимой, описанный подход будет универсален для любых дистрибутивов, чьи ядра поддерживают HugePages.

среда, 15 августа 2012 г.

§ oVirt Node Installation.

Установка и настройка oVirt Node.

oVirt Node представляет собой узел который будет использоваться для запуска виртуальных машин.

понедельник, 13 августа 2012 г.

§ oVirt Engine Installation

Установка oVirt Engine.

oVirt Engine предоставляет web-интерфейс для управления oVirt окружением. Также предоставляется консольный интерфейс для настройки опции которых нет в web-интерфейсе.

суббота, 11 августа 2012 г.

§ oVirt 3.1 Released

Выпущен oVirt 3.1.

Выпущен новый релиз oVirt 3.1 в котором появилось много новых и действительно хороших вещей.

вторник, 7 августа 2012 г.

§ Pgpool2: PCP control.

Управление pgpool2 через PCP.

Для управления pgpool2 реализован управляющий интерфейс PCP. С помощью него можно определять статус работы pgpool2 и дочерних процессов, состояние бэкендов, проводить работы по отключению и включению бэкендов, также доступно проведение процедуры восстановления при сбое мастера.

воскресенье, 5 августа 2012 г.

§ Pgpool2: memory caching.

Настройка кэширования в памяти для pgpool2.

Как известно в pgpool2 есть возможность кэшировать результаты запросов. Существует возможность кэширования данных в таблицах postgresql. В релиз-кандидатах pgpool2-3.2 появилась возможность кэширования результатов запросов в память. Местом хранения в зависимости от настройки может служить разделяемая память или memcached.

пятница, 3 августа 2012 г.

§ Pgpool2: Caching SELECT's.

Настройка кэширования в Pgpool2

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

среда, 1 августа 2012 г.

§ Pgpool2: Load balancing

Настройка pgpool2 в режиме балансировки запросов.

В случае когда используется репликация баз данных, выполнение SELECT'ов в разных сереверах возвращает всегда одинаковый результат. Pgpool2 в режиме балансировки позволяет снизить нагрузку на каждый сервер PostgreSQL. Это делается за счет распределения запросов между всеми серверами в кластере баз данных, тем самым увеличивая общую пропускную способность. Балансировка работает лучше всего в случаях когда в БД выполняется множество одновременных запросов на чтение.

понедельник, 30 июля 2012 г.

§ Что быстрее qemu64 или host.

Просматривая статистику, увидел запрос по которому заходили из гугла: что быстрее "-cpu host" или "-cpu qemu64"
Так вот, ответ кроется в сути параметров. При указании qemu64, виртуальный процессор эмулирует определенный набор флагов, это такой универсальный набор подходящий для большинства конфигураций. При указании host, виртуальная машина эмулирует процессор со всеми возможными флагами доступными от аппаратного процессора. Таким образом qemu64 будет по возможностям беднее чем host и в каких то операциях соответственно медленнее. 
Но не стоит забывать про живую миграцию. Параметр host очень сильно привязывает виртуальную машину к процессору хост-системы, и поэтому миграцию следует выполнять только на оборудование с таким же процессором.

§ Отпуск.

С сегодняшнего дня ухожу в отпуск до 10 августа.
Сделал публикацию по расписанию, так что следите за обновлениями.

§ Pgfouine: PostgreSQL reports.

Настройка логгирования в PostgreSQL и создание отчетов в Pgfouine.

Один из вариантов настройки логгирования в PostgreSQL посредством Rsyslog. В результате такие логи будут пригодны для построения отчетов в Pgfouine.

суббота, 28 июля 2012 г.

§ QED - Qemu Enchanced Disk.

QED - формат блочных устройств.

QED это один из форматов для образов блочных устройств, наподобие QCOW или VMDK. Разработка формата началась с оcени 2010 года. В процессе разработки учитывались недостатки, ранее разработанного формата QCOW2. Таким образом новый формат получился более производительным и с продвинутой поддержкой целостности. Поддержка QED доступна в QEMU с версии 0.14.

среда, 25 июля 2012 г.

§ Proxmox VE: VNC tcp bind.

Настройка VNC консолей на работу с TCP в Proxmox VE.

В Proxmox VE версии 2 консоль VNC открывается через unix сокет. С точки зрения безопасности это хорошо, но иногда в угоду удобству или еще ради чего, хочется повесить консоли на tcp-порту. Описываю легкий способ как это сделать.

вторник, 24 июля 2012 г.

§ Proxmox VE: qm basics.

Основы работы с qm в Proxmox VE.

Описание процесса запуска виртуальной машины в Proxmox VE из консоли, для случая когда web-интерфейс недоступен по каким-то причинам. Способ универсален и позволяет заглянуть внутрь продукта Proxmox VE. Для создания и управления используется связка скриптов на perl. 

суббота, 21 июля 2012 г.

§ Amazon EC2: Device management.

Управление устройствами в Amazon EC2 CLI.
В Amazon EC2 есть возможность управления блочными устройствами и сетевыми контроллерами. Привожу описание консольных команд для управления устройствами.

пятница, 20 июля 2012 г.

§ Amazon EC2: Launch instances from CLI.

Запуск инстанса в Amazon EC2.

Описание запуска инстансов в Amazon EC2 через интерфейс командной строки.

среда, 18 июля 2012 г.

§ Amazon EC2: Elastic IP

Введение в использование Elastic IP в Amazon EC2.

Elastic IP это внешние IP адреса предназначенные для использования в Amazon EC2. Такие IP адреса могут быть назначены учетной записи и в дальнейшем назначаться на любой из инстансов принадлежащий этой учетной записи. В отличие от обычных статических адресов, ElasticIP может быть в любое время переназначен на другой инстанс в другой зоне.

вторник, 17 июля 2012 г.

§ Amazon EC2 CLI Introduction.

Введение в Amazon EC2 CLI.

Небольшая инструкция как настроить и начать использовать утилиты Amazon EC2 в Gentoo Linux. Консольные утилиты предоставляют весь необходимый функционал для работы с Amazon EC2. Набор утилит предоставляет не только создание и управление инстансами, но и управление группами безопасности, доступна работа с блочными и сетевыми устройствами, управление правилами доступа и многое другое.

понедельник, 16 июля 2012 г.

§ QEMU-1.1 USB 3.0 Experimental support


В qemu-1.1 появилась экспериментальная поддержка эмуляции USB 3.0. 

Для использования нужно в командной строке передать два параметра.
Сначала создаем контроллер через "-device nec-usb-xhci,id=xhci
Затем добавляем устройство к контроллеру "-device usb-storage,bus=xhci.0,drive=usbstick"
Учитывая что поддержка предоставляется в экспериментальных целях, множество функций еще не реализовано.

воскресенье, 15 июля 2012 г.

§ Assessment of KSM/UltraKSM

Оценка эффективности KSM и UKSM. Сравнение между KSM и UKSM.

Ранее я уже писал о KSM и альтернативной реализации UltraKSM. Прошло уже некоторое время с момента запуска сервера с UKSM и накопилась некоторая статистика. Также для начала я опишу как оценивать эффективность использования, т.к. не всегда может быть понятно, есть выгода или нет.

четверг, 12 июля 2012 г.

§ A little bit about FlexPriority.

Немного о FlexPriority.

Когда речь заходит об аппаратных технологиях касающихся виртуализации, все вспоминают VT-x и AMD-V. Но помимо них существуют и другие технологии оптимизирующие аппаратные функции виртуализации. Одна из них Intel FlexPriority.

среда, 11 июля 2012 г.

§ Proxmox VE: for those who know, but have not seen.

Легкий обзор Proxmox VE 2.1.

Обзор рассчитан на людей которые слышали про Proxmox VE, но руки не дотянулись до того чтобы потрогать его. Постараюсь рассказать с чем столкнулся я когда установил proxmox-ve_2.1-f9b0f63a-26.

вторник, 10 июля 2012 г.

§ CGROUPS memory controller monitoring via Zabbix.

Мониторинг за подсистемой memory для CGROUPS в Zabbix.

Рассмотрев тему о контроллере memory в CGROUPS предложу решение по мониторингу контрольных групп в Zabbix. Мониторинг осуществляется посредством скрипта на Bash и следовательно не требует специфичных зависимостей. Скрипт написан с учетом использования файловой системы /sys - родного интерфейса взаимодействия с контрольными группами. Поэтому устанавливать какие-либо дополнительные библиотеки (libcgroup) тоже необязательно.

понедельник, 9 июля 2012 г.

§ Multiple IPs in Amazon VPC.

Дополнительные IP адреса внутри VPC.

В Amazon VPC у каждого инстанса есть основной приватный IP адрес. При запуске машины можно указать конкретный адрес, если же он не указан, он назначается автоматически посредством DHCP из диапазона адресов сети. Назначенный адрес ассоциируется с инстансом до тех пор пока машина не будет уничтожена (terminated). При остановках и перезагрузках адрес сохраняется. 

суббота, 7 июля 2012 г.

§ CGROUP Memory controller.

Информация о контроллере ограничения памяти CGROUPS.

Контроллер memory используется в целях ограничения использования памяти для приложения или группы приложений. Описываю особенности контроллера, краткое описание ключей и способ применения без использования libcgroup, способ хорош своей универсальностью, также расскажу как проверить и убедиться что ограничение в силе.

четверг, 5 июля 2012 г.

§ Transparent Hugepages: Practice.

Как быстро начать использовать KVM c HugePages.

В первой и второй части я писал что такое HugePages и какая есть польза от использования больших страниц. Теперь опишу сам процесс настройки HugePages и запуск виртуальной машины с их использованием.

вторник, 3 июля 2012 г.

§ Ultra KSM.

Альтернативаная реализация KSM.

UKSM является расширенной реализацией технологии KSM (Kernel Shared Memory). Напомню что KSM позволяет исключить дублирование данных в памяти через совместное использование процессами одинаковых страниц памяти. UKSM, также как и стандартный KSM, автоматически выявляет дубликаты данных находящихся в памяти и физически сохранять только одну копию, привязывая остальные копии через ссылки. Но существуют особенности которые отличают UKSM от KSM:

понедельник, 2 июля 2012 г.

§ Amazon EC2: Security groups.

Коротко о группах безопасности в Amazon EC2

Группы безопасности (Security Groups) выступают в качестве фаерволов, которые контролируют трафик идущий к группам хостов.  Группы безопасности указываются при запуске инстанса. Можно указать как одну группу так и несколько. Для каждой группы, можно добавлять правила которые регулируют входящий трафик. Остальной трафик не соответствующий правилам отбрасывается. Правила можно редактировать и после изменения они вступают в силу для всех существующих и будущих хостов. 

суббота, 30 июня 2012 г.

§ File exchange between host and VM.

Использование Plan 9 для обмена файлами между хост-системой и виртуальными машинами.

Рассказ о том как настроить общий каталог между виртуальной машиной и хост-системой посредством VirtFS. VirtFS это реализация Plan 9 поверх VirtIO.
Общий каталог удобен в случае обмена файлами между виртуальным окружением и хост-системой, тем более что работа обеспечивается быстрым virtio-транспортом.

пятница, 29 июня 2012 г.

§ Gentoo Linux EC2 from the Scratch.

Собираем Gentoo Linux в Amazon EC2.

Описывается способ как создать Instance-store образ, а затем и EBS AMI, содержащий собственный образ операционной системы в Amazon EC2. Машины запущенные на EBS (Elastic block storage) имеют преимущества перед машинами запущенными с Instance-store. Устанавливать будем Gentoo Linux x86_64. Вообще приличных Gentoo-образов в хранилище Amazon я не нашел, поэтому возникло желание создать свой образ. Начинать придется с Instance-store, затем уже и на EBS перейти несложно.  

четверг, 28 июня 2012 г.

§ Paravirtualized network devices

Конфигурирование паравиртуальных сетевых устройств.

В QEMU как и в других платформах виртуализации также есть поддержка паравиртуальных устройств. При выборе сетевого устройства для виртуальной машины следует обратить внимание на паравиртуальные устройства. Паравиртуальные сетевые карты обеспечивают лучшую производительность и меньшие сетевые задержки.

среда, 27 июня 2012 г.

§ QEMU VLAN

QEMU VLAN

Сетевая подсистема QEMU может использовать технологию VLAN. VLAN в QEMU это совсем не то что подразумевается под VLAN'ами 802.1q. В общем случае технология  используются для перенаправления трафика к виртуальным машинам в определенных VLAN. 

четверг, 21 июня 2012 г.

§ Nginx+Testcookie: yet another L7 firewall.

Еще один вариант защиты от DDoS посредством nginx­-модуля testcookie.

Существует сторонний nginx­-модуль testcookie-nginx-module.
Модуль умеет ставить cookies стандартным способом через HTTP-заголовок Set-Cookie, после установки перенаправляет пользователя, используя код ответа 301 и заголовок Location или используя код ответа 200 и HTML тег Meta «refresh». Он также может считать количество попыток поставить cookies и отправлять пользователя по заданному URL после превышения максимального количества неудачных попыток. 

среда, 20 июня 2012 г.

§ Starting VM? There is nothing easier!

Пример запуска виртуальной машины.

Описываю способ как запустить машину без использования вспомогательных средств-прослоек (libvirt, virt-manager, virsh). Это универсальный способ и работает везде. Консоль наше всё!

вторник, 19 июня 2012 г.

§ Guests networking.

Cоздание сети для виртуальных машин.

Приведу описание как создать общую универсальную схему для двух вариантов сетевого доступа:
  • виртуальные машины изолированы в частной сети принадлежащей хост-системе с возможностью доступа к внешним сетям;
  • виртуальные машины имеют выделенный интерфейс для общения с внешними сетями.
Операционная система Gentoo Linux.

понедельник, 18 июня 2012 г.

§ Guest vCPU.

Выбор модели процессора для виртуального окружения.

В QEMU, при запуске виртуальной машины, существует возможность указать модель процессора (qemu vcpu). Такая возможность позволяет предопределить виртуальный процессор с набором возможностей (cpu flags). Варьируя набор функций процессора в виртуальной машине можно обеспечить максимальную производительность и функциональность от процессора хост-системы либо обеспечить возможность безопасной миграции (флаги vcpu должны совпадать с флагами хост-системы куда выполняется миграция).

суббота, 16 июня 2012 г.

§ Доступ к данным виртуальной машины.

Доступ к данным виртуального окружения размещенного на LVM-томе.

Вариант как получить read/write доступ к данным виртуальной машины если в качестве блочных устройств используются LVM-тома. Сторонние инструменты наподобие guestfish нам не понадобятся, обойдемся утилитами входящими в пакет sys-fs/lvm2.

пятница, 15 июня 2012 г.

§ Флаги /proc/cpuinfo

Linux's /proc/cpuinfo flags.

Флаги /proc/cpuinfo и их описание.

четверг, 14 июня 2012 г.

§ Кэширование в Qemu-KVM.

KVM guest caching.

Управляя режимом кэширования, можно влиять на производительность виртуальных окружений. В KVM и QEMU реализовано несколько режимов кэширования.

вторник, 12 июня 2012 г.

§ Linux ядро для KVM.

Linux ядро для виртуальных окружений KVM.

Продолжаем тему опций ядра Linux для KVM. На этот раз опции для ядер виртуальных окружений.

понедельник, 11 июня 2012 г.

§ Linux ядро для KVM.

Ядерная оптимизация для KVM хост-систем. 

Приведу необходимые и прочие полезные опции ядра Linux для работы KVM хост-систем . Статья подразумевает что Вы умеете конфигурировать и выполнять сборку и установку ядер.

воскресенье, 10 июня 2012 г.

§ QEMU virtual CPU

vCPU performance.

Во всех современных процессорах существует разнообразный набор функций которые в разной степени улучшают производительность и вычислительные мощности. Примером может служить тот же набор инструкций SSE. Причем набор этих функций может варьироваться от процессора к процессору.

суббота, 9 июня 2012 г.

§ Vhost-net: все быстрее и быстрее

Vhost-net - реактивная сеть

vhost-net - подсистема ядра linux, позволяющая уменьшить задержки и увеличить производительность сетевой подсистемы.
vhost-net доступна в QEMU с версии 0.13. Ниже о том что это и почему это надо использовать.

пятница, 8 июня 2012 г.

§ KSM - экономим память

Kernel Samepage Merging - когда мало памяти или хочется больше машин

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

четверг, 7 июня 2012 г.

§ Transparent Hugepages: продолжение

Transparent Hugepages: детали

В первой части "Введение в Transparent Hugepages" я коротко рассказал что такое Transparent Hugepages, сейчас расскажу почему нужно использовать большие страницы

среда, 6 июня 2012 г.

§ Введение в Transparent Hugepages

Transparent Hugepages: Введение

Transparent Hugepages - это технология использования страниц размером 2MB вместо стандартных 4KB. Поддержка таких страниц появилась в linux ядре версии 2.6.38. В общем случае использование больших страниц позволят добиться увеличения производительности без существенных затрат на внедрение.

вторник, 5 июня 2012 г.

§ Аппаратные расширения для виртуализации.

Улучшения аппаратной виртуализации.

Приведу ка я описание различных аппаратных расширений (исключительно от Intel, т.к. не работал с AMD) которые улучшают работу виртуальных окружений.

понедельник, 4 июня 2012 г.

§ Virtio-SCSI - лучшее враг хорошего

Virtio-SCSI: еще один блочный драйвер для KVM.

Еще до релиза QEMU 1.1 появились патчи для реализации virtio-scsi, нового интерфейса для блочных устройств. Чтобы понять зачем он  нужен, и нужен ли вообще, обратим внимание на реализацию virtio-blk и посмотрим что предлагает virtio-scsi.

§ Релиз QEMU 1.1

Релиз эмулятора QEMU 1.1


1 июня 2012 года означился релизом эмулятора QEMU. Ниже список интересных нововведений и изменений

воскресенье, 3 июня 2012 г.

§ Паравиртуальные драйвера Virtio.

Virtio: как проверить и включить.



Virtio (паравиртуальные драйвера) - это технология с помощью которой реализуется работа основных устройств в виртуальном окружении. Драйвера Virtio реализованы для блочных, сетевых и других устройств. В общем случае использование паравиртуальных драйверов позволяет достичь большей производительности и отзывчивости в работе виртуальных окружений. 







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

Профиль в Google+ Яндекс цитирования Яндекс.Метрика