Red Hat Enterprise Linux 6 Оптимизация производительности



Pdf просмотр
страница1/7
Дата04.11.2016
Размер0.66 Mb.
Просмотров1316
Скачиваний1
  1   2   3   4   5   6   7

Red Hat. Отдел документации Hat Enterprise Linux 6

Оптимизация
производительности
Оптимизация пропускной способности в Red Hat Enterprise Linux Редакция 4.0

Red Hat Enterprise Linux 6 Оптимизация производительности
Оптимизация пропускной способности в Red Hat Enterprise Linux Редакция 4.0
Red Hat. Отдел документации bПод редакцией Юридическое уведомление distribute this document, or a modified version of it, you must provide attribution to Red
Hat, Inc. and provide a link to the original. If the document is modified, all Red Hat trademarks must be removed.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section
4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, JBoss, MetaMatrix, Fedora, the Infinity Logo,
and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux ® is the registered trademark of Linus Torvalds in the United States and other countries.
Java ® is a registered trademark of Oracle and/or its affiliates.
XFS ® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL ® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js ® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack ® Word Mark and OpenStack Logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.
Аннотация
В этом документе рассматриваются методы оптимизации производительности систем Red Hat
Enterprise Linux 6. Несмотря на то что большинство приведенных здесь процедур было тщательно протестировано, Red Hat рекомендует провести проверку проектируемых конфигураций, прежде чем приступить к их внедрению в рабочее окружение. Дополнительно следует создать резервные копии исходных настроек и данных
Содержание
Введ ение
1. Соглашения документа. Типографические соглашения. Выделение фрагментов. Примечания и предупреждения. Получение помощи и обратная связь. Нужна помощь. Нам нужны ваши отзывы!
Глава 1. Обзор. Целевая аудитория. Горизонтальное масштабирование. Параллельные вычисления. Распределенные системы. Взаимодействие. Хранение данных. Конвергенция сетей
Глава 2. Особенности производительности. разрядные процессоры. Спин-блокировка
2.3. Динамическая структура списков. Безтактовое ядро. Контрольные группы. Оптимизация файловой системы
Глава 3. Анализ производительности. Системные мониторы GNOME и KDE
3.3. Команды мониторинга. Tuned и ktune
3.5. Профилирование приложений. SystemTap
3.5.2. OProfile
3.5.3. Valgrind
3.5.4. Perf
3.6. Red Hat Enterprise Глава 4 . Процессор

Топология
Потоки
Прерывания
4.1. Топология процессоров. Топология NUMA
4.1.2. Коррекция производительности процессора. taskset
4.1.2.2. numactl
4.1.3. numastat
4.1.4. numad
4.1.4.1. Достоинства. Режимы работы. numad как служба. numad как исполняемый модуль 25
26
26 26 26 26 26 28 29 29 31 33 33 33 33 Содержание. Планирование занятости процессоров. Планирование в реальном времени. Стандартное планирование. Выбор стратегии. Обработка запросов прерываний. NUMA в Red Hat Enterprise Linux 6 4.4.1. Масштабирование. Топология. Синхронизация в многопроцессорном окружении. Виртуализация
Глава 5. Память. HugeTLB
5.2. Увеличение размера страниц. Профилирование памяти при помощи Valgrind
5.3.1. Memcheck
5.3.2. Cachegrind
5.3.3. Massif
5.4. Параметры производительности в /proc
5.5. Виртуальная память
Глава 6. Ввод -вывод. Характеристики. Анализ. Инструменты. Планировщики. CFQ
6.4.2. Deadline
6.4.3. Глава 7. Файловые системы. Характеристики производительности файловых систем. Параметры форматирования. Параметры монтирования. Обслуживание файловой системы. Производительность приложений. Профили производительности. Файловые системы. Ext4 7.3.2. XFS
7.3.2.1. Основы коррекции производительности. Дополнительные функции коррекции производительности. Кластеризация. GFS Глава 8. Сетевое окружение. Производительность сети (Receive Packet Steering)

RFS (Receive Flow Поддержка тонких потоков TCP в Поддержка прозрачного прокси
8.2. Оптимизация параметров сети 35 35 36 36 37 37 37 38 38
4 0
40 40 41 41 42 43 44 47
4 9
49 49 51 53 54 56 56
59
59 59 59 61 61 61 62 62 63 63 63 65 66
68
68
68
68
69
69
69
Red Hat Enterprise Linux 6 Оптимизация производительности Размер буфера сокета

8.3. Обзор получения пакетов
Привязка процессоров и кэша
8.4. Диагностика потерь пакетов. Буфер сетевой карты. Очередь сокета
8.5. Многоадресная рассылка
История переиздания Содержание Оптимизация производительности Введение. Соглашения документа
В этом руководстве используются различные стили для выделения текста.
В PDF и печатной версии документа используются шрифты
Liberation
. Эти же шрифты используются для отображения HTML, если они установлены в системе. В противном случае вместо них используются похожие шрифты. Red Hat Enterprise Linux 5 и более поздние версии включают в свой состав комплект шрифтов Liberation по умолчанию. Типографические соглашения

Д ля выделения текста используются четыре стиля, которые будут перечислены д алее.
Монош иринный жирный шрифт Используется для выделения вводимого текста, включая команды оболочки, имена файлов, пути доступа, а также клавиши и их комбинации. Например:
Чтобы просмотреть содержимое файла расположенного в текущем каталоге, в строке приглашения оболочки введите и нажмите Enter для выполнения этой команд ы.
Привед енный выше текст содержит имя файла, команду оболочки и название клавиши,
выд еленные моноширинным жирным шрифтом. Все они различаются по контексту.
Комбинации клавиш отличаются от отдельных клавиш с помощью знака плюс, который соединяет все клавиши, входящие в комбинацию. Например:
Нажмите Enter для исполнения команд ы.
Нажмите Ctrl+Alt+F2 для перехода в виртуальный терминал.
В первом примере выделена отдельная клавиша, которую надо нажать. Во втором примере выделена комбинация клавиш — три клавиши, которые надо нажать од новременно.
Если при описании исходных кодов программы внутри параграфа встречаются имена классов,
метод ов, функций, переменных и возвращаемые ими значения, то они тоже выделяются моноширинным жирным шрифтом. Например:
В состав классов, имеющих отношение к обработке файлов, входят классы
filesystem для работы с файловыми системами, file для работы с файлами, для работы с каталогами. Каждый класс имеет свой собственных набор правд оступа.
Пропорциональный жирный шрифт
Выд еляет слова и фразы, встречающиеся в системе, такие как имена приложений, тексты диалоговых окон, надписи на кнопках, метки флажков и переключателей, названия меню и других элементов графического интерфейса. Например:
Выберите Система → Параметры → Мышь для запуска приложения Настройка
мыши. На вкладке Кнопки установите флажок Настроить мышь под левую руку

и нажмите Закрыть, чтобы правая кнопка мыши стала работать как главная (что делает мышь удобной для левши).
Введ ение
5
Чтобы вставить специальный символ в файл, отрытый вред акторе gedit, выберите из главного меню Приложения → Стандартные Таблица символов. Затем вменю приложения Таблица символов выберите Поиск → Найти, введите название символа в поле Найти и нажмите кнопку Найти следующее. Найденный символ будет выделен на закладке Таблица символов. Дважды щелкните на этом символе, чтобы вставить его в поле Текст для копирования, после чего нажмите кнопку Копировать. Теперь вернитесь в ваш документ ив меню редактора выберите Правка → Вставить.
В приведенном выше тексте имена приложений, названия общесистемных пунктов меню и меню приложений, названия кнопок и текст, относящийся к элементам графического интерфейса,
выд елены пропорциональным жирным шрифтом.
Моноширинный жирный курсив или пропорциональный жирный курсив
Оба типа выделения указывают на изменчивость текста. Использование курсива означает, что текст не следует вводить буквально, или что он может меняться при выводе в зависимости от обстоятельств. Например:
Д ля подключения к удаленной машине с помощью SSH введите
имя_пользователя@ имя_домена. Скажем, если имя удаленной машины —
exam ple.com , а имя пользователя — john, то команда будет выглядеть так ssh
john@ exam ple.com Команда файловая_система перемонтирует указанную файловую систему. Например, для файловой системы /home команда будет выглядеть так mount -o remount Чтобы просмотреть версию установленного пакета, выполните команду пакет. Результат команды будет представлен в формате пакет-версия-выпуск.
Обратите внимание на слова, выделенные жирным курсивом имя_пользователя, имя_д омена,
файловая_система, пакет, версия, выпуск. Каждое из них обозначает место, куда нужно подставить значение, или текст, подставляемый системой при вывод е.
Также курсивом выделяются важные термины, встречаемые в тексте документа впервые.
Например:
Publican — система публикации DocBook.
1.2. Выделение фрагментов
Вывод на терминал и фрагменты исходного кода программ визуально отделяются от окружающего текста.
Д ля отображения текста, выводимого на терминал, используется прямой моноширинный шрифт Исходный код программ тоже показывается с помощью прямого моноширинного шрифта, нос выделением синтаксических конструкций Hat Enterprise Linux 6 Оптимизация производительности = kvm_find_assigned_dev(&kvm->arch.assigned_dev_head,
assigned_dev->assigned_dev_id);
if
(!match) {
printk(KERN_INFO
"%s: device hasn't been assigned before, "
"so cannot be deassigned
\n
"
, __func__);
r = -EINVAL;
goto out;
}
kvm_deassign_device(kvm, match);
kvm_free_assigned_device(kvm, match);
out:
mutex_unlock(&kvm->lock);
return r;
}
1.3. Примечания и предупреждения
Наконец, в документе используются три стиля для привлечения внимания к информации,
которую легко упустить.
Примечание
Примечания обычно содержат советы, описания приемов или альтернативных подходов к решению задач. Игнорирование примечаний не несет негативных последствий, но при этом можно не узнать о существовании какого-то способа, который существенно облегчает выполнение работы.
Важно
Важные замечания выделяют то, что легко не заметить изменения настроек, касающиеся только текущего сеанса, или перечень служб, которые надо перезапустить для применения обновлений. Игнорирование замечаний с пометкой Важно не приводит к потере д анных,
но может вызвать раздражение и д осад у.
Предупреждение
Не стоит игнорировать предупреждения, так как они содержат важную информацию,
которая позволит избежать потери д анных.
Введ ение
7

2. Получение помощи и обратная связь. Нужна помощь?
Если вы столкнулись с проблемами при выполнении инструкций, описанных в этом д окументе,
помощь можно получить через портал пользователей Red Hat (
http://access.redhat.com
). Там вы сможете:
выполнить поиск или просмотреть технические статьи в базе знаний продуктов отправить запрос в службу глобальной поддержки получить доступ к другой официальной д окументации.
Существует множество почтовых рассылок Red Hat на разные темы, включая программное обеспечение и обсуждение технологий. Полный список можно найти по адресу. Чтобы просмотреть информацию об интересующей рассылке и подписаться на нее, нажмите на ее названии. Нам нужны ваши отзывы!

Если вы нашли опечатку в этом руководстве или у вас есть предложения по его усовершенствованию, мы хотели бы об этом узнать. Создайте запрос в Bugzilla по адресу, выбрав компонент Red Hat Enterprise Linux Не забудьте указать в запросе идентификатор данного руководства Если у вас есть предложения по улучшению этого руководства, постарайтесь описать их как можно подробнее. Если же вы нашли ошибку, пожалуйста, укажите номер раздела и окружающий текст для облегчения ее идентификации Оптимизация производительности Глава 1. Обзор
В руководстве по оптимизации производительности рассматривается конфигурация и оптимизация Red Hat Enterprise Linux. Несмотря на то, что документ содержит информацию о Hat Enterprise Linux 5, в основном, инструкции рассчитаны на Red Hat Enterprise Linux Документ разбит на разделы, в которых обсуждаются отдельные подсистемы. Для каждой подсистемы рассматривается след ующее:
Функции
Описание подсистем начинается с обзора их функций в Red Hat Enterprise Linux 6, а также обновлений Red Hat Enterprise Linux 6, которые способствовали повышению их производ ительности.
Анализ
В секциях анализа обсуждаются основные характеристики производительности отдельных подсистем, что поможет оценить их значимость в реальных окружениях.
Д ополнительно будут рассмотрены способы сбора статистики подсистем (что известно как профилирование. Инструменты профилирования могут подробно рассматриваться в других д окументах.
Конфигурация
Возможно, наиболее важная информация приведена в секциях, посвященных изменению конфигурации с целью повышения производительности подсистем Оптимизация одной подсистемы может отрицательно сказаться на работе другой под системы.
Станд артная конфигурация Red Hat Enterprise Linux 6 является оптимальной для большинства
служб с умеренной нагрузкой
.
Привед енные в этом документе процедуры были тщательно протестированы инженерами Red
Hat в экспериментальных и рабочих окружениях. Тем не менее, рекомендуется провести тщательную проверку проектируемых конфигураций, прежде чем приступить к их развертыванию в рабочем окружении. Также следует создать резервные копии исходных настроек и данных. Целевая аудитория
Этот документ рассчитан наследующих специалистов:
Системные и бизнес-аналитики
Д окумент предоставляет общую информацию о производительности и отдельных подсистем дои после оптимизации. Такого уровня детализации достаточно, чтобы помочь потенциальным клиентам оценить пригодность платформы для работы в условиях интенсивной нагрузки.
Руковод ство содержит ссылки на специализированные документы, после ознакомления с которыми у читателя будет достаточно знаний для формирования высокоуровневой стратегии развертывания и оптимизации Red Hat Enterprise Linux 6. Это позволит не только разрабатывать новые схемы инфраструктур, но и выполнять анализ предлагаемых проектов.
Глава 1. Обзор
9
Такая структура документа рассчитана на читателей с общими знаниями подсистем и сетей уровня пред приятия.
Системные администраторы Материал рассчитан на специалистов уровня и системных администраторов с аналогичным опытом работы слет. Результаты каждой схемы конфигурации и их влияние на производительность будут рассматриваться более под робно.
Зад ача администратора заключается в подборе стратегии оптимизации в соответствии с требованиями нагрузки. Это означает необходимость понимания рисков и компромиссов, которые нужно будет учесть при выборе конфигурации, призванной повысить производительность той или иной подсистемы. Горизонтальное масштабирование

Основным критерием при улучшении производительности является возможность дальнейшего. Функции производительности оцениваются сточки зрения их эффективности для разных объемов нагрузки — от уровня простого веб-сервера до крупной серверной фермы.
Масштабирование позволяет быстро адаптироваться в зависимости от степени нагрузки и корректировать инфраструктуру растущей организации.
Увеличение производительности осуществляется за счет
горизонтального и вертикального масштабирования. Горизонтальное масштабирование более распространено и заключается в распределении нагрузки между несколькими стандартными компьютерами.
Обычно компьютеры, входящие в состав серверной фермы, представляют собой компактные серверы или серверы высотой 1U. Некоторые фермы допускают использование больших систем с множеством сокетов, а крупные сети уровня предприятия могут включать комбинации разных типов — большие системы выполняют роль высокопроизводительных серверов
(серверов баз данных, а небольшие выступают в качестве выделенных программных серверов
(почтовых и веб-серверов).
Горизонтальное масштабирование значительно упрощает управление растущей IT- инфраструктурой. Так, например, организации среднего размера изначально может быть достаточно двух серверов. С ростом бизнеса, объемов продажи увеличением штата требования будут усложняться, но горизонтальное масштабирование позволит наращивать инфраструктуру посредством добавления компьютеров с аналогичной конфигурацией.
Таким образом, горизонтальное масштабирование добавляет дополнительный уровень абстракции, значительно облегчая управление оборудованием и наращивание инфраструктуры. Параллельные вычисления
Горизонтальное масштабирование не только упрощает администрирование аппаратных ресурсов, но и является предпочтительной стратегией развития с учетом постоянных изменений на рынке оборуд ования.
Комплексные приложения уровня предприятия одновременно обрабатывают тысячи зад ач.
Раньше это выполнялось компьютерами с одним ядром, в то время как на сегодняшний день практически все процессоры являются многоядерными. Поддержка нескольких ядер водном Оптимизация производительности сокете позволяет достичь многопроцессорности даже в обычных настольных компьютерах и ноутбуках.
Начиная с 2010 года стандартные процессоры Intel и AMD стали включать отд о 16 ядер. Эти процессоры популярны в плоских 1U и серверах, которые теперь могут содержать до ядер. Такие решения получили широкое распространение в силу экономичности и высокой производ ительности.
Оптимальная производительность достигается при максимальной занятости всех ядер. Это означает, что 32 ядра сервера должны обрабатывать 32 задачи. Если серверная стойка содержит серверов, вся группа может одновременно обрабатывать минимум 320 задач. Если задачи являются составляющими одного большого задания, их обработку надо будет координировать легко адаптируется к изменяющимся требованиями обновлению оборудования. Раздел, Распределенные системы рассматривает технологии горизонтального масштабирования. Распределенные системы
Горизонтальное масштабирование Red Hat Enterprise Linux реализуется посредством вычислений. Технологии распределенных вычислений строятся на трех уровнях:
Взаимод ействие
Горизонтальное масштабирование достигается за счет параллельного выполнения задач. Для их координации необходимо обеспечить возможность взаимодействия между процессами и системами.
Хранение данных Размещения данных на локальных дисках может быть недостаточно для эффективного масштабирования надо добавить дополнительный уровень абстракции для распределенного пространства хранения, что позволит его наращивать, добавляя необходимое оборуд ование.
Управление
В распределенных схемах уровень управления является наиболее важным, так как именно на этом уровне осуществляется координация программных и аппаратных компонентов, их взаимодействия, размещения данных и использования общих ресурсов.
Д алее каждый уровень будет рассмотрен подробно. Взаимодействие

Этот уровень контролирует передачу данных и охватывает:
оборуд ование,
программное обеспечение.
Самый простой способ установки связи между системами состоит в использовании общей
памяти. Ключевыми характеристиками общей памяти являются скорость полосы пропускания и низкая задержка при обработке запросов чтения и записи.
Глава 1. Обзор
11

Ethernet
Ethernet является наиболее распространенным способом передачи данных между компьютерами. На сегодняшний день по умолчанию используется Gigabit Ethernet (GbE), и серверы обычно имеют 2-4 порта Gigabit Ethernet. Именно GbE чаще всего используется для организации распределенных схем. Даже если карты поддерживают более высокую скорость передачи может по-прежнему использоваться для выделенного управляющего интерфейса.
10GbE
Станд арт 10GbE (10 Gigabit Ethernet) становится все более популярным при проектировании мощных серверов, так как его скорость враз превышает скорость GbE. Его основным преимуществом является обеспечение баланса между скоростью передачи и вычислений для многоядерных процессоров. 10GbE позволяет поддерживать оптимальный уровень производительности системы без ограничения скорости связи.
К сожалению, технология 10GbE является довольно дорогой. В то время как цена карт падает, стоимость линий связи (особенно оптоволоконных) и сетевых коммутаторов остается высокой. Возможно, в будущем их стоимость снизится, нона сегодняшний день этот стандарт используется лишь для критических приложений и серверных структур.
Infiniband
Скорость Infiniband значительно выше по сравнению с 10GbE. Помимо соединений и используемых с Ethernet, Infiniband поддерживает взаимодействие с общей памятью, что позволяет использовать этот стандарт протоколами удаленного прямого доступа к памяти, Remote Direct Memory Access).
RDMA позволяет передавать данные между системами напрямую без обмена TCP/IP и участия сокетов, тем самым исключая излишнюю задержку, что может оказаться критическим фактором для некоторых приложений обычно используется для высокопроизводительных вычислений (HPTC, High
Performance Technical Computing), где скорость работы и отсутствие задержек имеют критическое значение. Для достижения необходимого уровня производительности иногда имеет смысл инвестировать в Infiniband, а не в процессоры и память (RDMA over Ethernet) объединяет соединения с прямым доступом к памяти и инфраструктуру 10GbE. Рынок продукции постоянно расширяется, поэтому вполне можно ожидать, что со временем RDMA и RoCCE будут использоваться более широко.
Все перечисленные стандарты полностью поддерживаются в Red Hat Enterprise Linux 6.
1.3.2. Хранение данных
Схемы распределенных вычислений используют разные экземпляры общего хранилища. Это возможно за счет след ующего:
Разные системы хранят данные водном месте.
Пространство хранения состоит из разных устройств хранения.
Типичным примером хранилища служит локальный диск, что идеально подходит, если все операции выполняются на одном узле. Нос ростом инфраструктуры и увеличением числа компьютеров управление дисками значительно усложняется Hat Enterprise Linux 6 Оптимизация производительности Распределенное хранение данных упрощает и автоматизирует администрирование накопителей приросте инфраструктуры. Совместное использование такого пространства хранения множеством систем также существенно облегчает работу ад министратора.
Объед инение наборов накопителей вод ин том выгодно и администраторами пользователям.
Это добавляет новый уровень абстракции — пользователи видят единственный ресурс, размер которого администратор может с легкостью нарастить, добавив дополнительное оборуд ование.
Д ругие достоинства включают отказоустойчивость и многопутевые возможности (Network File System) позволяет серверами пользователям обращаться к файловым системам через TCP или UDP. Эта файловая система используется для хранения данных, к которым обращаются разные приложения, и подходит для хранения больших объемов информации.

Каталог: documentation -> ru-RU -> Red Hat Enterprise Linux
Red Hat Enterprise Linux -> Руководство по установке Установка Red Hat Enterprise Linux 7 на разных платформах
Red Hat Enterprise Linux -> Red Hat Enterprise Linux 6 Примечания к выпуску
Red Hat Enterprise Linux -> Red Hat Enterprise Linux 6 Администрирование виртуального сервера
Red Hat Enterprise Linux -> Red Hat Enterprise Linux 5 Обзор Cluster Suite
Red Hat Enterprise Linux -> Руководство по установке Установка Red Hat Enterprise Linux 6 на разных платформах Редакция 0
Red Hat Enterprise Linux -> Red Hat Enterprise Linux 6 Администрирование кластера
Red Hat Enterprise Linux -> Red Hat Enterprise Linux 6 Управление энергопотреблением


Поделитесь с Вашими друзьями:
  1   2   3   4   5   6   7


База данных защищена авторским правом ©nethash.ru 2019
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал