Удаляем старые ядра в Linux

Debian:

 Centos:

Монтирование LVM разделов DomU внутри Dom0

Иногда возникает необходимость примонтировать LVM раздел выделенный для гостевой виртуальной машины внутри хоста. Делается это просто, при помощи утилиты kpartx. Для начала делаем листинг разделов внутри LVM раздела выделенного для виртуальной машины:

Далее, добавляем разделы внутри хоста и монтируем третий раздел, который по сути корневой раздел внутри виртуалки:

После завершения необходимых действий, размонтируем раздел и отключаем разделы из хостовой машины:

Aufs и неправильная очередность загрузки разделов

При использовании Aufs в ОС Ubuntu возникает проблема, а именно – при загрузке ОС разделы с aufs монтируется самыми первыми, что в итоге приводит к проблемам, так как aufs разделы собираются из других разделов, а так как на момент сборки aufs раздела их нет, так как они монтируются позже или параллельно с aufs разделами, то в итоге либо сервер не загружаются, либо из aufs раздела выпадают некоторые подразделы.

В итоге проблема решается путем добавления параметра noauto в /etc/fstab и команд mount в файл /etc/rc.local для aufs разделов.

Переезд сайта в flops.ru

Сайт переехал на новую виртуальную машину в flops.ru. Старый хостинг в selectel.ru ломался стабильно раз в неделю, виртуальная облачная машина просто ломалась с kernel exception, разбираться в этом желания нет.
Скоро размещу какой-нибудь счетчик uptime, посмотрим насколько новый хостинг будет лучше.

Эндрю Таненбаум: Компьютерные сети

Еще одна классическая книга в ИТ, но по компьютерным сетям: Эндрю Таненбаум: Компьютерные сети.

Читал ее после книги Олифера, она помогла мне раскрыть некоторые дополнительные моменты и более широко изучить вопрос работы сетей.

Эндрю Таненбаум: Компьютерные сети

От автора:

Перед вами – очередное, пятое издание самой авторитетной книги по современным сетевым технологиям, написанной признанным экспертом в этой области Эндрю Таненбаумом в соавторстве с профессором Вашингтонского университета Дэвидом Уэзероллом. Первая версия этого классического труда появилась на свет в далеком 1980 году, и с тех пор каждое издание книги неизменно становилось бестселлером и использовалось в качестве базового учебника в ведущих технических вузах.
В книге последовательно изложены основные концепции, определяющие современное состояние и тенденции развития компьютерных сетей. Авторы подробнейшим образом объясняют устройство и принципы работы аппаратного и программного обеспечения, рассматривают все аспекты и уровни организации сетей – от физического до уровня прикладных программ. Изложение теоретических принципов дополняется яркими, показательными примерами функционирования Интернета и компьютерных сетей различного типа. Пятое издание полностью переработано с учетом изменений, происшедших в сфере сетевых технологий за последние годы и, в частности, освещает такие аспекты, как беспроводные сети стандарта 802.12 и 802.16, сети 3G, технология RFID, инфраструктура доставки контента CDN, пиринговые сети, потоковое вещание, интернет-телефония и многое другое.

Эндрю Таненбаум: Современные операционные системы

Эндрю Таненбаум: Современные операционные системы

Еще одна классическая книга в ИТ: Эндрю Таненбаум: Современные операционные системы.

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

 

Эндрю Таненбаум: Архитектура компьютера

Классика компьютерной литературы, читал ее долго и частично с интересом: Эндрю Таненбаум: Архитектура компьютера.

Эндрю Таненбаум: Архитектура компьютера

От автора:

Книга Эндрю Таненбаума, всемирно известного специалиста в области информационных технологий, писателя и преподавателя, выходящая уже в шестом издании, посвящена структурной организации компьютера. В ее основе лежит идея иерархической структуры, в которой каждый уровень выполняет вполне определенную функцию. В рамках этого нетрадиционного подхода подробно описываются цифровой логический уровень, уровень архитектуры команд, уровень операционной системы и уровень языка ассемблера. В шестое издание внесены многочисленные изменения, которые приводят книгу в соответствие со стремительным развитием компьютерной отрасли. В частности, была обновлена информация о машинах, представленных в качестве примеров: Intel Core i7, Texas Instrument OMAP4430 и Atmel ATmega168.

Parted: The resulting partition is not properly aligned for best performance

Тем кто сталкивался с разметкой емких дисковых подсистем знакома утилита parted. Для тех кто читает про нее впервые поясню – утилита fdisk или cfdisk не умеют работать с дисковыми подсистемами емкостью >2Tb, о чем честно и пишут:

Соответственно при помощи утилиты parted мы можем сделать 2-е базовые вещи:

  • Изменить тип таблицы разделов с MBR на GPT
  • Разметить дисковую подсистему на нужное количество разделов

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

Но вернемся к сообщению указанному в заголовке заметки. Это сообщение выводится в случае если при разметке parted считает что вы указали неправильные значения для начала и конца раздела, например:

И из-за этого данные, которые будут записываться или читаться с диска, будут размещены не самым оптимальным способом. Данная проблема возникла в связи с переходом производителей жестких дисков на другой размер секторов, а именно с 512B на 4KB, и в связи с этим, если при разметке диск указать неправильный стартовый сектор для раздела, то может получиться ситуация, когда один логический блок данных в 512B будет записан сразу на два 4KB сектора, которые будут прочитаны контроллером жесткого диска при запросе на выборку данных, что в итоге приводит к снижению производительности всей дисковой подсистемы. Более подробно очень детально описана данная ситуация на сайте Seagate.

Так чем же нам может помочь утилита parted для решения описанной проблемы – у ней есть встроенный функционал для расчета оптимального начального смещения для корректного выравнивания границ разделов. Настроить логику работы данного функционала можно при помощи ключа “-a”, более подробно можно прочитать в документации.

Данный функционал работает по следующей логике:

Где указанные параметры – это значения в sysfs привязанные к дисковой подсистеме или конкретному разделу, например:

Поэтому для решения указанной в заголовке проблемы, вы можете посчитать номер стартового сектора в ручном режиме по формуле и указать его в parted:

Либо довериться аналогичному алгоритму встроенному в утилиту:

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

Виктор Олифер, Наталия Олифер: Компьютерные сети. Принципы, технологии, протоколы

Одна из моих первых книг по ИТ и компьютерным сетям в частности – Виктор Олифер, Наталия Олифер: Компьютерные сети. Принципы, технологии, протоколы. Книга позволяет детально понять как работают локальные и глобальные сети, вобщем рекомендую к прочтению.

Виктор Олифер, Наталия Олифер: Компьютерные сети. Принципы, технологии, протоколы

От автора:

Новое издание одного из лучших российских учебников по сетевым технологиям можно считать юбилейным. Прошло ровно 10 лет с момента первой публикации книги “Компьютерные сети. Принципы, технологии, протоколы”. За это время книга приобрела широкую популярность в России, была издана на английском, испанском, португальском и китайском языках, и с каждым новым изданием она существенно обновлялась. Не стало исключением и это, четвертое издание, в котором появилось много новых разделов, посвященных самым актуальным направлениям сетевых технологий.
Издание предназначено для студентов, аспирантов и технических специалистов, которые хотели бы получить базовые знания о принципах построения компьютерных сетей, понять особенности традиционных и перспективных технологий локальных и глобальных сетей, изучить способы создания крупных составных сетей и управления такими сетями.

Tengine или Nginx на стероидах

Хочу познакомить вас с WEB сервером реализованным на кодовой базе Nginx и используемым на серверах крупнейшего проекта в Азии taobao.com – Tengine.

Сервер активно развивается с 2011 года, есть публично доступный репозиторий git, и по описанным ниже возможностям он становится моим претендентом № 1 для ближайшего тестирования функционала балансировки HTTP трафика.

Список возможностей (выделил особенно интересный для меня функционал):

Для меня указанного функционала критически не хватало в бесплатной версии Nginx, да интеллектуальные алгоритмы балансировки HTTP трафика есть в Nginx Plus Standard, но цена в 1350$ неподъемна для небольших проектов, которые уже понимают ценность обеспечения высокой доступности и производительности WEB подсистемы.

На первый взгляд отличие Tengine от Nginx Plus Standard пока заключается в отсутствии в первом механизмов:

Возможно скоро разработчики реализуют и этот функционал.

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