Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 12 лет назад пользователемrit2011
1 Использование Solaris Zones Антон Павленко
2 Виртуализация Виртуальный сервер не привязан к конкретному железу высокая доступность динамическое увеличение ресурсов простота миграции легкость распространения
3 Консолидация Объединение нескольких виртуальных серверов в рамках одного сервера повышение утилизации ресурсов рост производительности системы значительная экономия
4 Почему Solaris Zones?
6 Что такое Solaris Zones? виртуальное окружение, которое выглядит и управляется как обыкновенный Solaris зоны работают на базе одного ядра Solaris с ограниченными привилегиями минимальные накладные расходы
7 Типы зон Каждый образ Solaris сам по себе уже зона. Глобальная зона управляет ресурсами сервера, позволяет распределять ресурсы локальным зонам, администрировать сами зоны. Локальные зоны : Sparse : наследует ряд файлов от глобальной зоны Whole-root : полная копия всех файлов с возможностью модификации
8 Одно приложение одна зона? Не стоит применять когда приложения используют shared memory. Во всех остальных случаях стоит изоляция приложений – позволяет запускать на одном сервере даже конфликтующие между собой приложения – сбой одного приложения не приведет сбою или к остановке остальных безопасность – в случае проблем с одним приложением это никак не скажется на других – возможно дополнительно защитить данные от изменений унификация – виртуализация IP позволяет приложению в каждой зоне использовать стандартные порты
9 Существующая схема Производительность оборудования постоянно растёт Часто утилизация серверов ниже 50% Значительная часть общего времени отклика системы составляет взаимодействие подсистем Неоднозначность планирования загрузки ресурсов для расширения
10 Всё в одном консолидация позволяет значительно снизить накладные расходы на передачу данных Все сетевое взаимодействие между зонами реализуется на уровне ядра Solaris уменьшить общее количество компонент И унифицировать оставшиеся повысить безопасность
11 Всё в одном консолидация позволяет значительно снизить накладные расходы на передачу данных Все сетевое взаимодействие между зонами реализуется на уровне ядра Solaris уменьшить общее количество компонент И унифицировать оставшиеся повысить безопасность Подключать данные только для чтения Не делать доступными по сети внутренние службы
12 Мало одного сервера? zfs clone позволяет легко дублировать существующие зоны zoneadm -z zone1 clone template real 0.42 user 0.06 sys 0.09 zfs send/recv позволяет легко переносить зоны между серверами zfs send | ssh server2 zfs recv
13 Мало одного сервера? централизованное хранилище снимает проблемы с гранулярностью репликации повышает доступность серверов - время поднятия зоны на другом сервере минимально упрощает масштабируемость
14 Простота тестирования и внесения изменений при возникновении проблемы можно сделать точный слепок, для последующего воспроизведения и анализа легкость тестирования при внесении изменений простота отката в случае возникновения проблем быстрое распостранение внесенных изменений
15 Управление ресурсами По умолчанию все зоны видят все процессора – а также все утилиты ( vmstat, prstat ) считают % на основе всех CPU Два различных способа разделения ресурсов процессора : – FSS (Fair Share Scheduling ) – CPU pool Два различных способа подключения сети – Exclusive : в зону передается целиком интерфейс. Сеть настраивается на уровне зоны – Shared : параметры сети задаются в конфигурации зоны. Возможность разделения памяти между зонами
16 CPU pool гарантированное кол-во CPU CPU жестко закреплены за зоной – если зона не использует часть выделенных CPU то они будут простаивать утилиты ( vmstat, prstat ) знают о poolах и показывают загрузку именно poolа неравномерная загрузка процессоров в рамках одного сервера
17 Dynamic CPU pool можно задавать не точное кол-во процессоров а диапазон – в случае высокой загрузки процессоры будут перераспределены автоматически в рамках выбранных диапазонов различные варианты настроек – wt-load – Locality (tight, loose, none ) – Utilization ( ~ ) poolcfg -dc modify pset large (string pset.poold.objectives="utilization
18 Dynamic CPU pool можно задавать не точное кол-во процессоров а диапазон – в случае высокой загрузки процессоры будут перераспределены автоматически в рамках выбранных диапазонов различные варианты настроек – wt-load – Locality (tight, loose, none ) – Utilization ( ~ ) poolcfg -dc modify pset large (string pset.poold.objectives="utilization
19 Fair Share Scheduling тип schedulerа контролирует выделение CPU на основе долей загрузка всех CPU равномерна в случае если зона не использует выделенные ей ресурсы, их могут использовать другие зоне доступны все CPU
20 Fair Share Scheduling возможно online перераспределение долей при добавлении новой зоны все доли необходимо пересчитывать нет простого способа мониторинга и анализа загрузки
22 Выводы по возможности используйте sparse зоны – совместное использование компонент – минимальные накладные расходы на память ( shared libs, бинарные файлы ) используйте whole root зоны только когда это действительно необходимо – необходимость постоянно писать в /usr – тестирование патчевания основных компонент группируйте приложения в зоны – при возможности использования shared memory при разграничении прав доступа используйте LOFS для предоставления общих данных зонам
23 Выводы используйте все возможности ZFS – клонирование для deploymentа и тестирования – snapshotы для резервного копирования и анализа изменений – компрессию для экономии дискового пространства в зависимости от требований используйте либо FSS либо CPU pools FSS лучше утилизирует CPU но затрудняет анализ на основе dynamic pool легко строить (само)масштабируемые системы по возможности ограничение по памяти лучше не использовать
24 Спасибо!
Еще похожие презентации в нашем архиве:
© 2023 MyShared Inc.
All rights reserved.