Solaris 10 8/07: Типизированные зоны доступны, начиная с текущей версии.
Технология BrandZ формирует структуру для создания неглобальных типизированных зон, содержащих не собственные рабочие среды. Типизированные зоны используются в операционной системе Solaris для выполнения приложений.
Первым доступным типом являлся тип lx – контейнеры Solaris для приложений Linux. Тип зоны lx обеспечивает среду Linux для приложений на компьютерах с архитектурой x86 и x64.
Типизированные зоны доступны начиная с версии Solaris 10 8/07. Для функций, которые были добавлены в более поздних версиях, указана соответствующая версия.
Компонент типизированных зон в операционной системе SolarisTM представляет собой простое расширение зон Solaris. В этой главе рассматривается концепция типизированных зон, а также тип зоны lx, реализующий функциональные возможности типизированных зон Linux. Типизированные зоны Linux также называются контейнерами Solaris для приложений Linux.
Хотя типизированные зоны можно настроить и установить в системе Trusted SolarisTM с включенными метками, загрузка типизированных зон в подобной конфигурации системы невозможна.
Операционная система Solaris поддерживает дополнительные типы зон.
На компьютерах SPARC с операционной системой Solaris 10 8/07 или выше версии Solaris 10 поддерживаются следующие два типа зон:
Тип зоны solaris8, контейнеры Solaris 8, описанные в документе System Administration Guide: Solaris 8 Containers
Тип зоны solaris9, контейнеры Solaris 9, описанные в документе System Administration Guide: Solaris 9 Containers
В Solaris версии 10 также поддерживается тип зоны cluster описанный в документе Sun Cluster 3.2 1/09 Software Collection for Solaris OS по адресу docs.sun.com.
Общую информацию по использованию зон в системе Solaris приведены в разделе Глава 16Введение в технологию зон Solaris.
Необходимо ознакомиться со следующими понятиями, связанными с зонами и управлением ресурсами:
Глобальные и неглобальные зоны описаны в разделе Принципы функционирования зон
Роли глобального администратора и администратора зоны описаны в разделах Администрирование неглобальных зон и Создание неглобальных зон.
Модель состояний зоны рассматривается в Модель состояний неглобальной зоны.
Характеристики изоляции зоны рассмотрены в Характеристики неглобальной зоны.
Полномочия описаны в Полномочия в неглобальных зонах.
Сетевые подключения описаны в Сетевые подключения в неглобальных зонах с общим IP
Концепция контейнера Solaris, которая заключается в использовании функций управления ресурсами, например пулов ресурсов, совместно с зонами. Использование и взаимодействие зон и функций управления ресурсами описаны в разделах Использование функций управления ресурсами для неглобальных зон, Установка элементов управления ресурсами всей зоны, Глава 26Администрирование зон Solaris (обзор), а также в отдельных главах в Части 1, "Управление ресурсами" настоящего руководства, где рассматриваются все функции управления ресурсами в отдельности. Например, пулы ресурсов рассматриваются в Глава 12Пулы ресурсов (обзор) и Глава 13Создание и администрирование пулов ресурсов (задачи)
Планировщик долевого распределения (FSS) – класс планирования, позволяющий выделять процессорное время на основе долей, – рассмотрен в Глава 8Планировщик долевого распределения (обзор) и Глава 9Администрирование планировщика долевого распределения (задачи).
Демон ограниченного выделения ресурсов (rcapd), используемый в глобальной зоне для управления размером резидентного набора (RSS) типизированных зон. Свойство ресурса zonecfg capped-memory задает для зоны значение max-rss. Это значение воплощается демоном rcapd, выполняющимся в глобальной зоне. Для получения дополнительной информации см. Глава 10Управление физической памятью с помощью демона ограниченного выделения ресурсов (обзор), Глава 11Администрирование демона ограниченного выделения ресурсов (задачи) и справочную страницу rcapd(1M).
В Глоссарий собраны определения терминов, используемых в отношении зон и функций управления ресурсами.
В этой части руководства содержится вся дополнительная информация, необходимая для использования типизированных зон в системе.
Следующие главы этого руководства неприменимы к типизированным зонам:
Архитектура типизированных зон (BrandZ) расширяет инфраструктуру SolarisTM Zones, описанную в этом руководстве в разделе Часть II, Зоны, путем предоставления возможности создания типов зон. Термин тип зоны может относиться к широкому спектру рабочих сред. BrandZ позволяет создавать неглобальные зоны, содержащие несобственные рабочие среды, используемые для выполнения приложений. Тип зоны используется для определения сценариев, выполняемых в ходе установки и начальной загрузки зоны. Кроме того, тип зоны используется для правильной идентификации типа приложения при его запуске. Все управление типами зон выполняется через расширения текущей структуры зон.
Среда, формируемая типом зоны, может быть простой или сложной. Например, в простой среде стандартные утилиты Solaris могут заменяться их GNU-эквивалентами. В сложной среде может предоставляться полное пространство пользователя Linux, поддерживающее выполнение приложений Linux.
Для каждой зоны настраивается связанный тип. По умолчанию используется тип зоны native, т. е. Solaris. В типизированной зоне поддерживается ровно один тип несобственных двоичных файлов, т.е. организуется единая рабочая среда.
BrandZ расширяет средства управления зонами:
команда zonecfg используется для указания типа зоны при ее настройке;
команда zoneadm используется для получения информации о типе зоны, а также для администрирования зоны.
Тип зоны можно изменить для зон, которые находятся в настроенном состоянии. После установки типизированной зоны смена или удаление типа становится невозможным.
Типизированные зоны обеспечивают ряд точек вставки в ядре, которые применяются только к процессам, выполняющимся в типизированной зоне.
Эти точки находятся по путям, в число которых входят путь syscall, путь загрузки процессов и путь создания потока.
В каждой из этих точек для типа зоны может быть выбрано дополнение или замещение стандартного поведения Solaris.
Тип зоны также может предоставлять подключаемую библиотеку для librtld_db. Подключаемая библиотека позволяет средствам Solaris, например отладчику, описанному в mdb(1), и DTrace, описанному в dtrace(1M), получать доступ к информации о символах в процессах, выполняющихся в типизированной зоне.
Устройства, поддерживаемые в каждой зоне, описаны на справочных страницах и в прочей документации данного типа зоны. Поддержка устройств определяется типом зоны. Тип зоны может запрещать добавление неподдерживаемых или нераспознаваемых устройств.
Файловые системы, требуемые для типизированной зоны, определяются типом зоны.
Полномочия, доступные в типизированной зоне, определяются типом зоны. Для получения дополнительной информации о полномочиях см. Полномочия в неглобальных зонах и Настраиваемые полномочия в типизированной зоне lx.
Тип зоны lx используется в рамках архитектуры типизированных зон и позволяет выполнять приложения Linux без изменений на компьютере с дампом оперативной памяти операционной системы Solaris.
Компьютер должен быть оборудован процессором i686 одного из следующих типов:
Intel
Pentium Pro
Pentium II
Pentium III
Celeron
Xeon
Pentium 4
Pentium M
Pentium D
Pentium Extreme Edition
Core
Core 2
AMD
Opteron
Athlon XP
Athlon 64
Athlon 64 X2
Athlon FX
Duron
Sempron
Turion 64
Turion 64 X2
В тип зоны lx входят средства, необходимые для установки в неглобальной зоне CentOS 3.x или Red Hat Enterprise Linux 3.x. Поддерживаются версии обоих дистрибутивов с 3.5 по 3.8. Этот тип зоны поддерживает выполнение 32-разрядных приложений Linux на компьютерах x86 и x64 под управлением операционной системы Solaris в 32-разрядном или в 64-разрядном режиме.
Тип lx эмулирует интерфейсы системных вызовов, предоставляемые дампом оперативной памяти Linux 2.4.21 с модификациями Red Hat из дистрибутива RHEL 3. x. Это ядро обеспечивает интерфейсы системных вызовов для glibc версии 2.3.2, выпущенной Red Hat.
Кроме того, тип lx частично эмулирует интерфейсы Linux /dev и /proc.
Следует отметить, что при добавлении пакетов к типизированной зоне lx следует придерживаться поддерживаемой конфигурации. Для получения дополнительной информации см. О сохранении поддерживаемости настройки.
В системе Solaris не предусмотрено ограничение количества приложений Linux, выполняющихся в типизированной зоне lx. Однако требуется достаточный объем памяти. См. также Требования к системе и необходимое дисковое пространство.
Независимо от используемого ядра, поддерживается выполнение только 32-разрядных приложений Linux.
В зоне lx поддерживаются только приложения Linux пользовательского уровня. Использовать драйверы устройств Linux, модули ядра Linux или файловые системы Linux внутри зоны lx невозможно.
Список приложений, успешно запускаемых в типе зоны lx, приведены в http://opensolaris.org/os/community/brandz/applications. Пример установки приложения приведены в Установка приложений в типизированной зоне lx.
Выполнение приложений Solaris в зоне lx невозможно. Однако зона lx позволяет использовать систему Solaris для разработки, тестирования и развертывания приложений Linux. Например, приложение Linux можно поместить в зону lxи проанализировать его с помощью средств Solaris из глобальной зоны. После этого можно усовершенствовать и развернуть настроенные приложения в собственной системе Linux.
Средства отладки Solaris, например DTrace и mdb, можно применять для процессов Linux, выполняющихся внутри зоны, но сами средства должны выполняться в глобальной зоне. Все сгенерированные файлы дампа оперативной памяти создаются в формате Solaris, и их отладка может осуществляться только средствами Solaris.
DTrace для приложений Linux включается поставщиком динамической трассировки DTrace lxsyscall. Этот провайдер действует подобно провайдеру DTracesyscall. Поставщик lxsyscall предоставляет датчики, срабатывающие при каждом входе или выходе потока из точки входа системного вызова Linux.
Для получения дополнительной информации по параметрам отладки см. руководство Solaris Dynamic Tracing Guide, а также справочные страницы dtrace(1M) и mdb(1). В руководстве Solaris Dynamic Tracing Guide описаны открытые документированные интерфейсы, доступные для средства DTrace. Документация по поставщику syscall также относится и к поставщику lxsyscall .
Поскольку NFS зависит от служб имен, которые являются специфичными для зоны, доступ к файловым системам NFS, установленным вне текущей зоны, невозможен. Таким образом, отладка процессов Linux, основанных на NFS, из глобальной зоны невозможна.
Команды, указанные в следующей таблице, обеспечивают главный административный интерфейс для зон.
Таблица 30–1 Команды и другие интерфейсы, используемые с типизированными зонами lx
Справочная информация по командам |
Описание |
---|---|
Регистрация в неглобальной зоне. |
|
Администрирование зон в системе. |
|
Создание конфигурации зоны. |
|
Установление соответствия между идентификатором и именем зоны. |
|
brands(5) |
Описание механизма типизированных зон |
lx(5) |
Описание типизированных зон Linux |
Описание механизма зон. |
|
lx_systrace(7D) |
Провайдер трассировки системных вызовов Linux DTrace |
Драйвер устройства консоли зоны. |
Демон zoneadmd – главный процесс, ответственный за управление виртуальной платформой зоны. Справочная страница демона zoneadmd – zoneadmd(1M). Демон не связан с программным интерфейсом.
В Таблица 26–5 перечислены команды, которые могут использоваться в глобальной зоне для отображения информации по всем неглобальным зонам, включая типизированные. В Таблица 26–4 перечислены команды, используемые демоном ограниченного выделения ресурсов.
В следующей таблице содержится обзор задач по первоначальному созданию зон lx в системе.
Задача |
Описание |
Инструкции |
---|---|---|
Определение всех 32-разрядных приложений Linux, которые требуется выполнять в зоне |
Оцените системные требования приложения. |
При необходимости обратитесь к бизнес-целям и к документации по системе. |
Определение количества настраиваемых зон |
Оцените следующие характеристики:
|
См. Поддержка приложений, Требования к системе и необходимое дисковое пространство, Анализ текущей настройки системы и Сценарий для настройки нескольких типизированных зон lx. |
Определение того, будут ли в зоне использоваться пулы ресурсов для создания контейнера |
Если используются пулы ресурсов, их следует настроить до настройки зоны. Следует отметить, что можно быстро добавить элементы управления ресурсами и функциональные возможности пулов для всей зоны с помощью параметров zonecfg. |
См. Настройка типизированной зоны lx и Глава 13Создание и администрирование пулов ресурсов (задачи). |
Выполнение задач предварительной настройки |
Определите имя и путь для каждой зоны. Если требуются сетевые подключения, получите IP-адреса. Определите класс планирования для зоны. Определите набор полномочий, ограничивающий процессы внутри зоны, если стандартного набора полномочий по умолчанию недостаточно. |
Для получения информации относительно имени зоны, пути зоны, IP-адреса и класса планирования см. Компоненты конфигурации типизированной зоны lx. Список стандартных полномочий и полномочий, которые можно настроить в неглобальной зоне, приведены в Полномочия в неглобальных зонах. Информацию относительно связывания пула ресурсов приведены в Принципы функционирования зон и Настройка типизированной зоны lx. |
Разработка конфигураций |
Настройте неглобальные зоны. |
См. Настройка, проверка и сохранение параметров зоны и справочную страницу zonecfg(1M). |
Проверка и установка настроенных зон в роли глобального администратора |
Зоны необходимо проверить и установить перед их загрузкой. Перед установкой типизированной зоны Linux необходимо получить дистрибутив Linux. |
См. Глава 33Установка, загрузка, остановка, клонирование и удаление файлов типизированных зон lx (обзор) и Глава 34Установка, загрузка, остановка, деинсталляция и клонирование типизированных зон lx (задачи). |
Загрузка неглобальных зон от имени глобального администратора |
Загрузите каждую зону для ее перевода в состояние выполнения. |
См. Глава 34Установка, загрузка, остановка, деинсталляция и клонирование типизированных зон lx (задачи). |
Подготовка новой зоны к продуктивному использованию |
Создайте учетные записи пользователей, добавьте дополнительное программное обеспечение и настройте конфигурацию зоны с помощью стандартных средств и методов системного администрирования Linux изнутри зоны. |
Обратитесь к документации по настройке недавно установленного компьютера и установки приложений. Особые аспекты, относящиеся к системе с установленными зонами, будут рассмотрены в этом руководстве. |
В этой главе описываются действия, которые необходимо выполнить перед настройкой типизированной зоны lx на компьютере с архитектурой x64 или x86. Также в этой главе рассматривается использование команды zonecfg.
С использованием типизированных зон lx связаны следующие основные требования к компьютеру.
необходим компьютер с архитектурой x64 или x86;
необходим достаточный объем дискового пространства для хранения файлов, уникальных для каждой зоны lx; требования к дисковому пространству для зоны lx определяются размером и количеством установленных RPM или пакетов Linux;
Для типа lx поддерживается только модель зоны без унаследованных каталогов, так что в каждой установленной зоне содержится собственная копия каждого файла.
На дисковое пространство, потребляемое зоной, не накладываются ограничения. Ограничение пространства входит в сферу ответственности глобального администратора. Глобальный администратор должен убедиться в достаточности локального пространства для размещения корневой файловой системы неглобальной зоны. При достаточном размере пространства даже в небольшой однопроцессорной системе может поддерживаться несколько одновременно работающих зон.
Для ограничения размера зоны можно воспользоваться следующими способами.
Зону можно поместить на lofi-смонтированный раздел. При этом объем пространства, потребляемого зоной, сводится к размеру файла, используемого lofi. Для получения дополнительной информации см. справочные страницы lofiadm(1M) и lofi(7D).
Дисковые разделы или логические тома можно разделить на виртуальные разделы. Эти разделы затем можно использовать в качестве корней зон и ограничить таким образом потребление дискового пространства каждой зоной. Предел программного разбиения на разделы – 8192 раздела. Для получения дополнительной информации см. раздел Глава 12, Soft Partitions (Overview), в Solaris Volume Manager Administration Guide.
Для корней зон можно использовать стандартные разделы диска, в результате чего можно ограничить предельное потребление дискового пространства каждой зоной.
Каждая зона, требующая сетевых подключений, имеет один или несколько уникальных IP-адресов. Поддерживаются адреса IPv4. Зоне необходимо назначить адрес IPv4. Для получения дополнительной информации см. Сетевой адрес типизированной зоны. Кроме того, для сетевого интерфейса можно указать адрес маршрутизатора по умолчанию, как описано в разделе Настройка типизированной зоны lx.
Команда zonecfg используется в следующих целях.
Настройка типа зоны.
Создание конфигурации для зоны lx
Проверка конфигурации для определения того, являются ли указанные ресурсы и свойства допустимыми и внутренне непротиворечивыми в гипотетической системе на базе x86 или x64.
Выполнение проверки, зависящей от типа зоны. Верификация обеспечивает следующее:
В зоне не может быть унаследованных каталогов пакетов, наборов данных ZFS или добавленных устройств.
Если для зоны настроено использование звука, указанные устройства (если таковые имеются) должны быть определены как none, default или состоять из одной цифры.
В ходе проверки, выполняемой для заданной конфигурации командой zonecfg verify, проверяется следующее:
указан ли путь зоны;
указаны ли все требуемые свойства для каждого ресурса.
выполнены ли требования типа.
Для получения дополнительной информации о команде zonecfg см. справочную страницу zonecfg(1M).
В этом разделе рассматриваются следующие компоненты:
ресурсы и свойства зон, которые настраиваются командой zonecfg;
ресурсы, включенные в конфигурацию по умолчанию.
Для зоны необходимо выбрать имя и путь.
Свойство autoboot определяет, загружается ли данная зона автоматически при загрузке глобальной зоны.
Если в системе настроены пулы ресурсов в соответствии с Глава 13Создание и администрирование пулов ресурсов (задачи), для зоны можно настроить привязку к одному из пулов ресурсов с помощью свойства pool.
Если пулы ресурсов не настраивались, можно указать подмножество процессоров системы, которые должны выделяться для неглобальной зоны во время ее работы, с помощью ресурса dedicated-cpu. При этом в системе автоматически создается временный пул, используемый во время работы зоны.
Конфигурация зоны, созданная с использованием сохраняемого набора пулов при помощи свойства pool, не совместима с временным пулом, настроенным через ресурс dedicated-cpu. Допускается установка только одного из этих двух свойств.
Ресурс dedicated-cpu указывает, что для работающей неглобальной зоны необходимо выделить подмножество процессоров компьютера. При загрузке зоны динамически создается временный пул, используемый при работе зоны.
Ресурс dedicated-cpu позволяет задать ограничения для ncpus и, дополнительно, importance.
Здесь указывается количество процессоров или диапазон, например 2-4 процессора. Если диапазон указывается вследствие необходимости реализации динамического поведения пула ресурсов, также необходимо выполнить следующее:
установить свойство importance;
активировать службу динамического пула ресурсов, как описано в разделе Включение и отключение механизма пулов.
Если для реализации динамического поведения используется диапазон процессоров, также следует настроить свойство importance. Свойство importance является необязательным и определяет относительную важность пула. Это свойство требуется только в случае указания диапазона для ncpus и при использовании динамических пулов ресурсов, управляемых демоном poold. Если демон poold не запущен, свойство importance игнорируется. Если демон poold не запущен, а свойство importance не задано, значение importance по умолчанию принимается равным 1. Для получения дополнительной информации см. Ограничения посредством свойства pool.importance.
Элемент управления ресурсами cpu-shares и ресурс dedicated-cpu являются несовместимыми.
Ресурс capped-cpu обеспечивает абсолютное ограничение по количеству процессорных ресурсов, потребляемых проектом или зоной. Ресурс capped-cpu имеет единственное свойство ncpus, представляющее собой положительное десятичное число с двумя дробными разрядами. Это свойство соответствует количеству ЦП. Ввести диапазон для этого ресурса невозможно. Также нельзя задать число в десятичном представлении. При настройке свойства ncpus значение 1 означает 100% одного ЦП. Значение 1,25 соответствует 125%, поскольку 100% – это один полностью загруженный ЦП в системе.
Ресурсы capped-cpu и dedicated-cpu являются несовместимыми.
Планировщик долевого распределения (FSS) предназначен для управления распределением доступных процессорных ресурсов по зонам в зависимости от их важности. Важность при этом выражается количеством долей процессорных ресурсов, назначенных каждой зоне.
При явном указании свойства cpu-shares в качестве класса планирования для такой зоны используется планировщик долевого распределения (FSS). Однако в этом случае рекомендуется задать FSS как общесистемный класс планирования по умолчанию с помощью команды dispadmin. При этом процессорные ресурсы системы справедливо распределяются по всем зонам. Если свойство cpu-shares для зоны не задано, то в зоне используется класс планирования, заданный в системе по умолчанию. Следующие действия позволяют настроить для зоны класс планирования:
Для установки класса планирования зоны можно воспользоваться свойством scheduling-class команды zonecfg.
Класс планирования для зоны можно установить и при помощи инструмента управления пулами ресурсов. Если зона связана с пулом, свойство pool.scheduler которого представляет действительный класс планирования, то процессы, выполняющиеся в этой зоне, по умолчанию работают в этом классе планирования. См. Введение в пулы ресурсов и Связывание пула с классом планирования.
Если задан элемент управления ресурсами cpu-shares, а FSS не определен в качестве класса планирования для зоны другим способом, при загрузке зоны командой zoneadmd в качестве класса планирования выбирается FSS.
Если класс планирования не настроен другим способом, в зоне наследуется системный класс планирования по умолчанию.
Следует отметить, что для перевода работающих процессов в другой класс планирования без изменения класса планирования по умолчанию и перезагрузки можно использовать команду priocntl, описанную на справочной странице priocntl(1).
Ресурс capped-memory устанавливает ограничения для следующих видов памяти: physical (физическая), swap (подкачка) и locked (блокированная). Все ограничения являются необязательными, однако должно быть задано по крайней мере одно из них.
Значения для этого ресурса задаются в случае, если планируется ограничить память для зоны командой rcapd в глобальной зоне. Свойство physical ресурса capped-memory используется командой rcapd как значение max-rss для данной зоны.
Свойство swap ресурса capped-memory является рекомендуемым способом настройки элемента управления ресурсами zone.max-swap.
Свойство locked ресурса capped-memory является рекомендуемым способом настройки элемента управления ресурсами zone.max-locked-memory .
Как правило, блокирование памяти для приложений в значительном объеме не требуется, однако настройка блокирования памяти может оказаться необходимой, если известно, что приложения зоны выполняют блокирование памяти. Если доверительный статус зоны неоднозначен, рекомендуется установить ограничение памяти в размере 10 процентов физической памяти системы или 10 процентов ограничения физической памяти зоны.
Для получения дополнительной информации см. Глава 10Управление физической памятью с помощью демона ограниченного выделения ресурсов (обзор), Глава 11Администрирование демона ограниченного выделения ресурсов (задачи) и Настройка типизированной зоны lx.
В типизированной зоне lx поддерживаются только конфигурации сети с совместным использованием IP.
Каждой зоне, для которой требуются сетевые подключения, необходимо назначить один или несколько выделенных IP-адресов. Эти адреса связаны с логическими сетевыми интерфейсами. Сетевые интерфейсы, настроенные командой zonecfg, автоматически настраиваются и размещаются в зоне при ее начальной загрузке. Начиная с версии Solaris 10 10/08, для сетевого интерфейса можно указать адрес маршрутизатора по умолчанию с помощью свойства defrouter.
Как правило, в зоне монтируются следующие группы файловых систем:
набор файловых систем, монтируемых при инициализации виртуальной платформы;
набор файловых систем, монтируемых изнутри самой зоны.
Сюда могут входить, например, следующие файловые системы:
файловые системы, монтирование которых инициируется посредством automount;
файловые системы, явным образом монтируемые администратором зоны.
На монтирование файловых систем изнутри прикладной среды накладываются определенные ограничения. Эти ограничения не позволяют администратору зоны вызвать отказ обслуживания остальной системы или иным образом отрицательно воздействовать на функционирование других зон.
С монтированием некоторых файловых систем изнутри зоны связан ряд ограничений по безопасности. Другие файловые системы при монтировании в зоне следуют особой модели поведения. Для получения дополнительной информации см. Файловые системы и неглобальные зоны.
Наиболее простой и удобный способ настройки элемента управления ресурсами для всей зоны заключается в использовании имени свойства вместо ресурса rctl. Эти пределы указываются как для глобальных, так и для неглобальных зон.
С помощью ресурса rctl глобальный администратор также может устанавливать привилегированные элементы управления ресурсами всей зоны.
Элементы управления ресурсами всей зоны позволяют ограничить суммарное потребление ресурсов всеми экземплярами процессов внутри зоны. Эти ограничения задаются как для глобальных, так и для неглобальных зон командой zonecfg. См. инструкции в разделе Настройка типизированной зоны lx.
В настоящее время доступны следующие элементы управления ресурсами:
Таблица 31–1 Элементы управления ресурсами всей зоны
Имя элемента управления |
Глобальное имя свойства |
Описание |
Единица по умолчанию |
Использование значения |
---|---|---|---|---|
zone.cpu-cap |
В Solaris 10 5/08 этот элемент управления задает абсолютное ограничение по количеству ресурсов ЦП для зоны. Значение 100 означает, что в качестве project.cpu-cap задано 100% одного ЦП. Значение 125 соответствует 125%, т. к. 100% – это один полностью загруженный ЦП в системе при использовании ограничений по ЦП. |
Количество (число ЦП) | ||
zone.cpu-shares |
cpu-shares |
Количество процессорных долей в соответствии с планировщиком долевого распределения (FSS) для этой зоны. |
Количество (доли) | |
zone.max-locked-memory |
|
Общее количество доступной зоне физической блокированной памяти. |
Размер (байты) |
Свойство locked ресурса capped-memory |
zone.max-lwps |
max-lwps |
Максимальное количество LWP, одновременно доступных этой зоне. |
Количество (LWP) | |
zone.max-msg-ids |
max-msg-ids |
Максимальное количество идентификаторов очередей сообщений, разрешенное для этой зоны. |
Количество (идентификаторы очередей сообщений) | |
zone.max-sem-ids |
max-sem-ids |
Максимальное количество идентификаторов семафоров, разрешенных для этой зоны. |
Количество (идентифика- торы семафоров) | |
zone.max-shm-ids |
max-shm-ids |
Максимальное количество идентификаторов совместно используемой памяти, разрешенных для этой зоны. |
Количество (идентифика- торы совместно используемой памяти) | |
zone.max-shm-memory |
max-shm-memory |
Общий объем совместно используемой памяти System V, разрешенный для этой зоны. |
Размер (байты) | |
zone.max-swap |
|
Общий объем подкачки, доступный для потребления при отображении адресного пространства пользовательских процессов и файловых систем tmpfs в этой зоне. |
Размер (байты) |
Свойство swap ресурса capped-memory |
Свойство limitpriv используется для указания маски полномочий, отличной от установленной по умолчанию. При загрузке зоны в конфигурацию типа зоны включается набор полномочий по умолчанию. Использование этих полномочий считается безопасным, поскольку таким образом предотвращается воздействие привилегированного процесса в зоне на процессы в других неглобальных зонах системы или в глобальной зоне. Свойство limitpriv можно использовать для выполнения следующих действий:
дополнение набора полномочий по умолчанию с учетом того, что такие изменения могут позволить процессам в одной зоне воздействовать на процессы в других зонах по причине получения возможности управления глобальным ресурсом;
удаление из набора полномочий по умолчанию с учетом того, что подобные изменения могут воспрепятствовать корректной работе некоторых процессов, для выполнения которых требуются эти полномочия.
Некоторые полномочия невозможно удалить из набора полномочий зоны; кроме того, некоторые полномочия невозможно добавить к этому набору.
Для получения дополнительной информации см. Полномочия, определенные в типизированных зонах lx, Полномочия в неглобальных зонах и privileges(5).
Тип ресурса attr может использоваться для разрешения доступа к звуковому устройству из глобальной зоны. Инструкции приведены на этапе 12 процедуры Настройка, проверка и сохранение параметров типизированной зоны lx.
С помощью типа ресурса attr зону можно снабдить комментарием.
Устройства, поддерживаемые в каждой зоне, описаны на справочных страницах и в прочей документации по данному типу зоны. В зонах lx не допускается добавление неподдерживаемых или нераспознаваемых устройств. Архитектура позволяет обнаруживать попытки добавления неподдерживаемых устройств. Выдается сообщение об ошибке, указывающее на то, что проверка конфигурации зоны невозможна.
Следует отметить, что доступ к звуковому устройству, работающему в глобальной зоне, можно разрешить через свойство ресурса attr, как показано на этапе 12 процедуры Настройка, проверка и сохранение параметров типизированной зоны lx.
Файловые системы, требуемые для типизированной зоны, определены в типе зоны. Дополнительные файловые системы Solaris добавляются к типизированной зоне lx с помощью свойства ресурса fs, как показано на этапе 9 процедуры Настройка, проверка и сохранение параметров типизированной зоны lx.
Добавление локальных файловых систем Linux не поддерживается. Файловые системы можно смонтировать по NFS с сервера под управлением Linux.
Процессы ограничены подмножеством полномочий. Ограничение полномочий не позволяет зоне выполнять операции, которые могут воздействовать на другие зоны. Набор полномочий ограничивает возможности привилегированных пользователей внутри зоны.
Полномочия по умолчанию, обязательные, дополнительные и запрещенные полномочия определяются для каждого типа зоны. Также полномочия можно добавлять или удалять с помощью свойства limitpriv , как показано на этапе 8 процедуры Настройка, проверка и сохранение параметров типизированной зоны lx. В Таблица 26–1 приведен список всех полномочий Solaris и указан статус каждого полномочия по отношению к зонам.
Для получения дополнительной информации о полномочиях см. справочную страницу ppriv(1) и руководство Руководство по системному администрированию: службы безопасности.
Для настройки зоны используется команда zonecfg, описанная на справочной странице zonecfg(1M). Эта команда также позволяет сохраняемым образом определить параметры управления ресурсами для глобальной зоны.
Команда zonecfg может использоваться в интерактивном режиме, в режиме командной строки или в режиме командного файла. С помощью этой команды можно выполнить следующие операции:
создание или удаление (уничтожение) конфигурации зоны;
добавление ресурсов к определенной конфигурации;
настройка свойств ресурсов, добавляемых в конфигурацию;
удаление ресурсов из определенной конфигурации;
запрос или проверка конфигурации;
Сохранение параметров конфигурации;
возврат к предыдущей конфигурации;
переименование зоны;
выход из сеанса zonecfg.
Запрос команды zonecfg имеет следующую форму:
zonecfg:zonename> |
При настройке определенного типа ресурса, например файловой системы, в запрос также включается этот тип ресурса:
zonecfg:zonename:fs> |
Для получения дополнительной информации, в том числе процедур, демонстрирующих использование различных компонентов команды zonecfg, описанных в этой главе, см. Настройка типизированной зоны lx.
В отношении пользовательского интерфейса используется понятиеобласти действия. Область действия может быть либо глобальным, либо специфичным для ресурса. По умолчанию используется глобальная область действия.
В глобальной области действия для выбора определенного ресурса используются подкоманды add и select. Область действия при этом изменяется в соответствии с этим типом ресурса.
Для подкоманды add используются подкоманды end или cancel, позволяющие завершить определение ресурса.
Для подкоманды select используются подкоманды end или cancel, позволяющие завершить определение ресурса.
При этом снова возвращается глобальная область действия.
Некоторые подкоманды, например add, remove и set, в разных областях действия обладают разной семантикой.
В интерактивном режиме поддерживаются следующие подкоманды. Для получения дополнительной информации о семантике и параметрах, используемых с этими подкомандами, см. справочную страницу zonecfg(1M). Для всех подкоманд, которые могут повлечь за собой разрушительные действия или потерю данных, перед продолжением выводится запрос на подтверждение пользователем. Для подавления подтверждения можно использовать параметр -F (принудительное исполнение).
Вывод общей справки либо справки о данном ресурсе.
zonecfg:lx-zone:net> help |
Запуск процесса заполнения настройки, хранящейся в памяти для указанной новой типизированной зоны.
Параметр -t шаблона позволяет создать конфигурацию, идентичную указанному шаблону. Имя зоны изменяется с имени шаблона на новое. Для создания типизированной зоны Linux используется следующая команда:
zonecfg:lx-zone> create -t SUNWlx |
Параметр -b используется для создания пустой конфигурации, в которой можно задать тип зоны.
zonecfg:lx-zone> create -b zonecfg:lx-zone> set brand=lx |
Параметр -F используется для перезаписи существующей конфигурации.
Вывод конфигурации на стандартный вывод либо в указанный выходной файл в форме, пригодной для использования в командном файле.
Добавление к конфигурации указанного типа ресурса в глобальной области действия.
Добавление свойства с данным именем и данным значением в области действия ресурса.
Для получения дополнительной информации см. инструкцию по настройке типизированной зоны lx и справочную страницу zonecfg(1M).
Установка значения для данного свойства. Следует отметить, что некоторые свойства, например zonepath, являются глобальными, в то время как другие – специфичными для ресурса. Таким образом, эта команда применима и в глобальной области действия, и в области действия ресурса.
Используется только в глобальной области действия. Выбор ресурса указанного типа, совпадающего с данной парой критериев имени и значения свойства, для изменения. Область действия изменяется на тип данного ресурса. Для однозначной идентификации ресурса необходимо указать достаточное количество пар "имя-значение свойства".
Очистка значений необязательных свойств. Значения обязательных свойств удалить невозможно. Однако некоторые из обязательных свойств можно изменить путем назначения нового значения.
Удаление указанного типа ресурса в глобальной области действия. Для однозначной идентификации типа ресурса необходимо указать достаточное количество пар "имя-значение свойства". Если пары "имя-значение" не указываются, удаляются все экземпляры. Если существует несколько экземпляров, то требуется подтверждение, за исключением случаев использования параметра -F.
В области действия ресурса из текущего ресурса удаляется указанная пара "имя свойства-значение свойства".
Имеет смысл только в области действия ресурса. и указывает на завершение процедуры определения ресурса.
После этого командаzonecfg проверяет, определен ли текущий ресурс полностью.
Если ресурс задан полностью, он добавляется к конфигурации в памяти, а область действия снова становится глобальной.
Если определение является неполным, отображается сообщение об ошибке с описанием необходимых действий.
Имеет смысл только в области действия ресурса. и указывает на завершение определения ресурса и возврат к глобальной области действия. Частично определенные ресурсы не сохраняются.
Уничтожение указанной конфигурации. Конфигурация удаляется из памяти и из постоянного хранилища. Для команды delete следует использовать параметр -F (принудительное выполнение) .
Это действие выполняется мгновенно. Сохранение параметров не требуется, и вернуть удаленную зону невозможно.
Отображение информации о текущей конфигурации или глобальных свойствах ресурса zonepath, autoboot и pool. Если указан тип ресурса, отображается информация только о ресурсах данного типа. В области действия ресурса эта подкоманда применяется только к добавляемому или изменяемому ресурсу.
Проверка текущей конфигурации на допустимость. Подтверждение наличия всех требуемых свойств по всем ресурсам.
Сохранение параметров текущей конфигурации из памяти в сохраняемое хранилище. До момента сохранения параметров конфигурации изменения можно отменить с помощью подкоманды revert. Сохранение параметров конфигурации необходимо для последующей работы команды zoneadm. При завершении сеанса zonecfg автоматически предпринимается попытка выполнения этой операции. Так как возможно сохранение параметров только корректной конфигурации, в ходе операции сохранения параметров автоматически выполняется проверка.
Возврат конфигурации к последнему зафиксированному состоянию.
Выход из сеанса zonecfg. С командой exit можно использовать параметр -F (принудительное выполнение) .
В случае необходимости автоматически предпринимается попытка выполнения команды commit. Следует отметить, что для выхода из сеанса также может использоваться символ EOF.
В режиме командного файла входные данные берутся из файла. Для создания этого файла используется подкоманда export, описанная при рассмотрении интерактивного режима команды zonecfg. Конфигурацию можно вывести на стандартный вывод или в выходной файл, указанный с помощью параметра -f.
Конфигурационные данные зоны включают в себя два вида сущностей: ресурсы и свойства. Каждый ресурс имеет тип, а также может обладать набором из одного или нескольких свойств. Свойства имеют имена и значения. Набор свойств зависит от типа ресурса.
Выделяют следующие типы ресурсов и свойств:
Имя зоны идентифицирует зону для служебной программы настройки. К именам зон применяются следующие правила:
Каждая зона должна иметь уникальное имя.
Имя зоны задается с учетом регистра.
Имя зоны должно начинаться с алфавитно-цифрового символа.
В имя могут входить алфавитно-цифровые символы, знаки подчеркивания (_), дефисы (-) и точки (.).
Имя не должно быть длиннее 64 символов.
Имя global и все имена, начинающиеся с SUNW, зарезервированы, и их использовать невозможно.
Свойство zonepath определяет путь к корню зоны. Каждой зоне соответствует путь к ее корневому каталогу относительно корневого каталога глобальной зоны. При установке для каталога глобальной зоны должна быть ограничена видимость. Владельцем этого каталога должен быть пользовательroot с режимом 700.
Путь к корню неглобальной зоны находится на один уровень ниже. Корневой каталог зоны имеет того же владельца и такие же полномочия, что и корневой каталог ( /) в глобальной зоне. Каталог зоны должен принадлежать пользователю root с режимом 755. Эти каталоги автоматически создаются с правильными полномочиями, и проверка администратором зоны не требуется. Подобная иерархия позволяет не допустить пользователей из глобальной зоны с недостаточными полномочиями в файловую систему неглобальной зоны.
Путь |
Описание |
---|---|
/home/export/lx-zone |
zonecfg zonepath |
/home/export/lx-zone/root |
Корень зоны |
/home/export/lx-zone/root/dev |
Устройства, создаваемые для зоны |
См. дальнейшее рассмотрение этого вопроса в разделе Прохождение файловых систем.
Зону можно переместить в другое местоположение в той же системе путем указания нового полного пути zonepathв подкоманде move команды zoneadm. Инструкции приведены в Solaris 10 11/06: перемещение неглобальной зоны.
Если для этого свойства установлено значение “истина”, зона автоматически загружается при загрузке глобальной зоны. Следует отметить, что если служба зон svc:/system/zones:default отключена, автоматической загрузки зоны не происходит, вне зависимости от значения этого свойства. Служба зон включается командой svcadm, описанной на справочной странице svcadm(1M):
global# svcadm enable zones |
Это свойство используется для указания загрузочного аргумента для зоны. Загрузочный аргумент применяется всегда, если иное не указано командой reboot, zoneadm boot или zoneadm reboot. См. Загрузочные аргументы типизированной зоны.
Это свойство используется для связывания зоны с определенным пулом ресурсов в системе. Ресурсы одного пула могут использоваться несколькими зонами. См. также Настройка ресурса dedicated-cpu .
Этот параметр используется для указания нестандартной маски полномочий. См. Полномочия в неглобальных зонах.
Полномочия добавляются путем указания имени полномочий с префиксом priv_ или без него. Для исключения полномочий перед именем указывается дефис (-) или восклицательный знак (!). Значения полномочий разделяются запятыми и заключаются в кавычки (“).
Как описано в priv_str_to_set(3C), особые наборы полномочий none, all и basic разворачиваются в свои нормальные определения. Поскольку настройка зоны выполняется из глобальной зоны, особый набор полномочий zone использовать невозможно. Поскольку обычно изменение стандартного набора полномочий проводится путем добавления или удаления определенных полномочий, стандартному набору полномочий соответствует особый набор default. Набор default, указанный в начале свойства limitpriv, разворачивается в стандартный набор.
Следующая запись добавляет возможность настройки системных часов и запрещает передачу необработанных пакетов протокола ICMP (Internet Control Message Protocol):
global# zonecfg -z userzone zonecfg:userzone> set limitpriv="default,sys_time,!net_icmpaccess" |
Если в набор полномочий зоны входят запрещенные полномочия, отсутствуют необходимые требуемые полномочия, либо входят неизвестные полномочия, то попытка проверки, подготовки или загрузки зоны повлечет за собой вывод сообщения об ошибке.
Это свойство устанавливает для зоны класса планирования. См. дополнительную информацию и рекомендации в разделе Класс планирования в зоне.
Этот ресурс позволяет выделить для работающей зоны подмножество процессоров компьютера. Ресурс dedicated-cpu позволяет задать ограничения для ncpus и, дополнительно, importance . Для получения дополнительной информации см. Настройка ресурса dedicated-cpu .
В этом ресурсе группируются свойства, используемые при ограничении потребления памяти для зоны. Ресурс capped-memory позволяет задать ограничения для областей памяти physical (физическая память), swap (подкачка) и locked (блокированная память). Необходимо указать по крайней мере одно из этих свойств.
В каждой зоне может быть несколько различных файловых систем, монтируемых при переводе зоны из установленного состояния в состояние готовности. Ресурс файловой системы задает путь к точке монтирования файловой системы. Для получения дополнительной информации об использовании файловых систем в зонах см. Файловые системы и неглобальные зоны.
Ресурс сетевого интерфейса – это имя виртуального интерфейса. В каждой зоне могут присутствовать сетевые интерфейсы, которые необходимо настроить при переводе зоны из установленного состояния в состояние готовности.
В типизированной зоне lx поддерживаются только конфигурации сети с совместным использованием IP
Ресурс rctl используется для элементов управления ресурсами всей зоны. Элементы управления включаются при переходе зоны из установленного состояния в состояние готовности.
Инструкции по настройке элементов управления всей зоны с помощью подкоманды set имя_глобального_свойства команды zonefig вместо ресурса rctl приведены в Настройка типизированной зоны lx.
Этот стандартный атрибут используется для комментариев пользователя или для других подсистем. Имя свойства ресурса attr должно начинаться с алфавитно-цифрового символа. Имя свойства может содержать алфавитно-цифровые символы, а также символы дефиса (-) и точки (.). Имена атрибутов, начинающиеся с zone., зарезервированы для системного использования.
Ресурсы также обладают настраиваемыми свойствами. С перечисленными типами ресурсов связаны следующие свойства.
ncpus, importance
Указывается количество процессоров и, дополнительно, относительная важность пула. В следующем примере задается диапазон процессоров для использования зоной my-zone. Также указывается значение importance.
zonecfg:my-zone> add dedicated-cpu zonecfg:my-zone:dedicated-cpu> set ncpus=1-3 zonecfg:my-zone:dedicated-cpu> set importance=2 zonecfg:my-zone:dedicated-cpu> end |
ncpus
Определяет количество ЦП. В следующем примере задается ограничение в 3,5 ЦП для зоны lx-zone.
zonecfg:lx-zone> add capped-cpu zonecfg:lx-zone:capped-cpu> set ncpus=3.5 zonecfg:lx-zone:capped-cpu> end |
physical, swap, locked
В этом ресурсе группируются свойства, используемые при ограничении потребления памяти для зоны. В следующем примере задается ограничение памяти для зоны my-zone . Все ограничения являются необязательными, однако должно быть задано по крайней мере одно из них.
zonecfg:my-zone> add capped-memory zonecfg:my-zone:capped-memory> set physical=50m zonecfg:my-zone:capped-memory> set swap=100m zonecfg:my-zone:capped-memory> set locked=30m zonecfg:my-zone:capped-memory> end |
dir, special, raw, type, options
Строки в следующем примере служат для добавления доступа только для чтения к компакт-диску или диску DVD в неглобальной зоне. Файловая система монтируется в петлевом режиме с параметрами ro,nodevices (только для чтения и без устройств) в неглобальной зоне.
zonecfg:lx-zone> add fs zonecfg:lx-zone:fs> set dir=/cdrom zonecfg:lx-zone:fs> set special=/cdrom zonecfg:lx-zone:fs> set type=lofs zonecfg:lx-zone:fs> add options [ro,nodevices] zonecfg:lx-zone:fs> end |
Следует отметить, что по особым параметрам монтирования для конкретной файловой системы имеются справочные страницы из раздела 1M. Имена этих справочных страниц имеют форму mount_файловая_система.
address, physical, defrouter,
В следующем примере к зоне добавляется IP-адрес 192.168.0.1. В качестве физического интерфейса выбирается плата bge0, и указывается маршрутизатор по умолчанию.
zonecfg:lx-zone> add net zonecfg:lx-zone:net> set address=192.168.0.1 zonecfg:lx-zone:net> set physical=bge0 zonecfg:lx-zone:net> set defrouter=10.0.0.1 zonecfg:lx-zone:net> end |
Для определения используемого физического интерфейса служит команда ifconfig - a. Каждая строка выходных данных, за исключением строк драйвера петлевого интерфейса, начинается с имени платы, установленной в компьютере. Строки, содержащие в описаниях LOOPBACK, не относятся к платам.
name, value
Доступные элементы управления ресурсами всей зоны описаны в разделе Элементы управления ресурсами всей зоны в типизированной зоне lx.
zonecfg:lx-zone> add rctl zonecfg:lx-zone:rctl> set name=zone.cpu-shares zonecfg:lx-zone:rctl> add value (priv=privileged,limit=10,action=none) zonecfg:lx-zone:rctl> end |
zonecfg:lx-zone> add rctl zonecfg:lx-zone:rctl> set name=zone.max-lwps zonecfg:lx-zone:rctl> add value (priv=privileged,limit=100,action=deny) zonecfg:lx-zone:rctl> end |
name, type, value
В следующем примере к зоне добавляется комментарий.
zonecfg:lx-zone> add attr zonecfg:lx-zone:attr> set name=comment zonecfg:lx-zone:attr> set type=string zonecfg:lx-zone:attr> set value="Production zone" zonecfg:lx-zone:attr> end |
Для вывода конфигурации зоны на стандартный вывод можно использовать подкоманду export. Конфигурация сохраняется в форме, позволяющей использовать эти данные в командном файле.
В этой главе описывается настройка типизированной зоны lx в системе с архитектурой x64 или x86. Процесс в основном совпадает с процедурой настройки зоны Solaris. Для настройки типизированной зоны не требуется ряд свойств.
Перед настройкой зон в системе необходимо собрать информацию и принять решения относительно конфигурации зон. На следующей карте задач обобщен процесс планирования и настройки зоны lx.
Задача |
Описание |
Инструкции |
---|---|---|
Планирование стратегии зоны |
|
См. Требования к системе и необходимое дисковое пространство и Использование пулов ресурсов в зонах. |
Определение имени и пути для зоны. |
Определение наименования зоны исходя из соглашений по присвоению имен. Рекомендуется использовать путь в файловой системе ZFS. Если и исходный путь zonepath , и целевой путь zonepath располагаются в ZFS и находятся в одном пуле, команда zoneadm clone позволяет автоматически клонировать зону с помощью ZFS. |
См. Типы ресурсов и свойств и Руководство по администрированию файловых систем ZFS Solaris . |
Получение и настройка IP-адресов для зоны. |
В зависимости от конфигурации для каждой неглобальной зоны, в которой требуется сетевой доступ, необходимо получить как минимум один IP-адрес. |
См. Определение имени узла зоны и получение сетевого адреса и System Administration Guide: IP Services. |
Определение необходимости монтирования файловых систем в зоне. |
Рассмотрение требований приложений. |
Для получения дополнительной информации см. Файловые системы, монтируемые в зонах. |
Определение сетевых интерфейсов, которые должны быть доступны в зоне |
Рассмотрение требований приложений. |
Для получения дополнительной информации см. раздел Сетевые интерфейсы с общим IP. |
Определение необходимости изменения набора полномочий глобальной зоны по умолчанию |
Проверка набора полномочий: полномочия по умолчанию, которые можно добавлять и удалять, а также полномочия, использовать которые в данный момент невозможно. |
См. Типы ресурсов и свойств и Полномочия в неглобальных зонах. |
Настройка зоны |
Создание конфигурации для зоны с помощью команды zonecfg. |
См. Настройка, проверка и сохранение параметров типизированной зоны lx. |
Проверка и сохранение параметров сконфигурированной зоны |
Определение корректности указанных ресурсов и параметров в гипотетической системе. |
См. Настройка, проверка и сохранение параметров типизированной зоны lx. |
Команда zonecfg, описанная на справочной странице zonecfg(1M), позволяет выполнять следующие действия:
создание конфигурации зоны;
проверка наличия всей требуемой информации;
сохранение параметров конфигурации неглобальной зоны.
Если заранее известно, что для установки приложений в типизированной зоне lx будут использоваться компакт-диски или диски DVD, при начальной настройке типизированной зоны в глобальной зоне необходимо установить для компакт-дисков или дисков DVD доступ только для чтения при помощи команды add fs. После этого в типизированной зоне можно будет установить продукт с компакт-диска или диска DVD.
При настройке зоны с помощью служебной программы zonecfg можно воспользоваться подкомандой revert, позволяющей отменить настройку ресурса. См. Откат конфигурации зоны.
Сценарий, позволяющий настраивать множественные зоны в системе, представлен в разделе Сценарий для настройки нескольких типизированных зон lx.
Процедуру просмотра конфигурации неглобальной зоны приведены в разделе Просмотр конфигурации типизированной зоны.
После успешной настройки типизированной зоны рекомендуется создать копию конфигурации зоны. В будущем зону можно будет восстановить с этой резервной копии. Ниже показан вывод конфигурации зоны lx-zone в файл от имени суперпользователя или главного администратора. В этом примере используется файл с названием lx-zone.config.
global# zonecfg -z lx-zone export > lx-zone.config |
Для получения дополнительной информации см. Восстановление отдельной неглобальной зоны.
Следует отметить, что использование типизированных зон lx в системе Trusted Solaris с включенными метками невозможно. Конфигурация не будет принята командой zoneadm.
Для выполнения этой процедуры необходимо иметь роль глобального администратора в глобальной зоне.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Создайте конфигурацию зоны с использованием выбранного имени зоны.
В этом примере используется имя lx-zone.
global# zonecfg -z lx-zone |
Если эта зона настраивается впервые, выводится следующее системное сообщение:
lx-zone: No such zone configured Use 'create' to begin configuring a new zone. |
Создайте новую конфигурацию зоны lx с использованием шаблона SUNWlx.
zonecfg:lx-zone> create -t SUNWlx |
В качестве альтернативы можно создать пустую зону и явно указать ее тип:
zonecfg:lx-zone> create -b zonecfg:lx-zone> set brand=lx |
Задайте путь зоны (в данной процедуре — /export/home/lx-zone).
zonecfg:lx-zone> set zonepath=/export/home/lx-zone |
Установите значение автоматической загрузки.
Если установлено значение true , зона автоматически загружается при загрузке глобальной зоны. Следует отметить, что для автоматической загрузки зон также необходимо включить службу зон svc:/system/zones:default . Значение по умолчанию – false.
zonecfg:lx-zone> set autoboot=true |
Установите сохраняемые загрузочные аргументы для зоны.
zonecfg:lx-zone> set bootargs="-i=altinit" |
Если в системе включены пулы ресурсов, с зоной необходимо связать пул.
В этом примере используется пул по умолчанию с названием pool_default.
zonecfg:lx-zone> set pool=pool_default |
Поскольку пул ресурсов может обладать дополнительным назначенным классом планирования, для неглобальной зоны можно задать планировщика по умолчанию, отличного от системного, при помощи средств управления пулами. Инструкции приведены в Связывание пула с классом планирования и Создание конфигурации.
Проверьте стандартный набор полномочий.
zonecfg:lx-zone> set limitpriv="default,proc_priocntl" |
Для запуска процессов в классе реального времени используются полномочия proc_priocntl.
Укажите пять долей ЦП.
zonecfg:lx-zone> set cpu-shares=5 |
Добавьте ограничение памяти.
zonecfg:lx-zone> add capped-memory |
Установите значение для ограничения памяти.
zonecfg:lx-zone:capped-memory> set physical=50m |
Установите ограничение подкачки.
zonecfg:lx-zone:capped-memory> set swap=100m |
Установите ограничение по блокированной памяти.
zonecfg:lx-zone:capped-memory> set locked=30m |
Завершите определение.
zonecfg:lx-zone:capped-memory> end |
Добавьте файловую систему.
zonecfg:lx-zone> add fs |
Задайте точку монтирования для файловой системы (в этой процедуре используется /export/linux/local ).
zonecfg:lx-zone:fs> set dir=/export/linux/local |
Эта команда определяет, что /opt/local из глобальной зоны монтируется в настраиваемой зоне как /export/linux/local.
zonecfg:lx-zone:fs> set special=/opt/local |
Файловая система/export/linux/local будет доступна для чтения и записи в неглобальной зоне.
Укажите тип файловой системы (в этой процедуре используется lofs).
zonecfg:lx-zone:fs> set type=lofs |
Типом определяется способ взаимодействия ядра с файловой системой.
Завершите определение файловой системы.
zonecfg:lx-zone:fs> end |
При добавлении нескольких файловых систем повторите этот этап.
Добавьте виртуальный сетевой интерфейс.
zonecfg:lx-zone> add net |
Задайте IP-адрес в форме IP-адрес_зоны/маска. В этой процедуре используется адрес 10.6.10.233/24.
zonecfg:lx-zone:net> set address=10.6.10.233/24 |
Укажите тип физического устройства для сетевого интерфейса. В этой процедуре используется устройство bge.
zonecfg:lx-zone:net> set physical=bge0 |
Завершите определение.
zonecfg:lx-zone:net> end |
При добавлении нескольких сетевых интерфейсов повторите этот этап.
Включите в этой зоне звуковое устройство из глобальной зоны с помощью типа ресурса attr.
zonecfg:lx-zone> add attr |
Проверьте конфигурацию зоны "zone".
zonecfg:lx-zone> verify |
Зафиксируйте конфигурацию зоны.
zonecfg:lx-zone> commit |
Выйдите из команды zonecfg.
zonecfg:lx-zone> exit |
Следует отметить, что даже в том случае, если в запросе явно не вводится commit, операция commit автоматически выполняется при вводе exit или при обнаружении EOF.
Команда zonecfg также позволяет использовать несколько подкоманд, заключенных в кавычки и разделенных символом точки с запятой, в одной команде интерпретатора команд.
global# zonecfg -z lx-zone "create -t SUNWlx; set zonepath=/export/home/lx-zone" |
Для получения информации об установке фиксированной конфигурации зоны см. Установка и загрузка типизированных зон lx.
Этот сценарий можно использовать для настройки и загрузки нескольких зон в имеющейся системе. Сценарий принимает следующие параметры:
количество создаваемых зон;
префикс zonename;
каталог, используемый в качестве базового каталога.
Для выполнения сценария необходимо обладать полномочиями глобального администратора в глобальной зоне. Глобальный администратор в глобальной зоне имеет полномочия суперпользователя или роль главного администратора (Primary Administrator).
#!/bin/ksh # # Copyright 2006 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # #ident "%Z%%M% %I% %E% SMI" if [[ -z "$1" || -z "$2" || -z "$3" || -z "$4" ]]; then echo "usage: $0 <#-of-zones> <zonename-prefix> <basedir> <template zone>" exit 2 fi if [[ ! -d $3 ]]; then echo "$3 is not a directory" exit 1 fi state=`zoneadm -z $4 list -p 2>/dev/null | cut -f 3 -d ":"` if [[ -z "$state" || $state != "installed" ]]; then echo "$4 must be an installed, halted zone" exit 1 fi template_zone=$4 nprocs=`psrinfo | wc -l` nzones=$1 prefix=$2 dir=$3 ip_addrs_per_if=`ndd /dev/ip ip_addrs_per_if` if [ $ip_addrs_per_if -lt $nzones ]; then echo "ndd parameter ip_addrs_per_if is too low ($ip_addrs_per_if)" echo "set it higher with 'ndd -set /dev/ip ip_addrs_per_if <num>" exit 1 fi i=1 while [ $i -le $nzones ]; do zoneadm -z $prefix$i clone $template_zone > /dev/null 2>&1 if [ $? != 0 ]; then echo configuring $prefix$i F=$dir/$prefix$i.config rm -f $F echo "create -t SUNWlx" > $F echo "set zonepath=$dir/$prefix$i" >> $F zonecfg -z $prefix$i -f $dir/$prefix$i.config 2>&1 | \ sed 's/^/ /g' else echo "skipping $prefix$i, already configured" fi i=`expr $i + 1` done i=1 while [ $i -le $nzones ]; do j=1 while [ $j -le $nprocs ]; do if [ $i -le $nzones ]; then if [ `zoneadm -z $prefix$i list -p | \ cut -d':' -f 3` != "configured" ]; then echo "skipping $prefix$i, already installed" else echo installing $prefix$i mkdir -pm 0700 $dir/$prefix$i chmod 700 $dir/$prefix$i zoneadm -z $prefix$i install -s -d /path/to/ISOs > /dev/null 2>&1 & sleep 1 # spread things out just a tad fi fi i=`expr $i + 1` j=`expr $j + 1` done wait done i=1 para=`expr $nprocs \* 2` while [ $i -le $nzones ]; do date j=1 while [ $j -le $para ]; do if [ $i -le $nzones ]; then echo booting $prefix$i zoneadm -z $prefix$i boot & fi j=`expr $j + 1` i=`expr $i + 1` done wait done |
Для выполнения этой процедуры необходимо иметь роль глобального администратора в глобальной зоне.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Проверьте конфигурацию зоны.
global# zonecfg -z zonename info |
В следующих разделах содержатся процедуры по изменению, откату или удалению конфигураций зон.
В этой главе рассматриваются следующие вопросы:
установка зоны lx в системе;
остановка, перезагрузка и деинсталляция зон;
клонирование зон в системе.
Команда zoneadm, описанная на справочной странице zoneadm(1M), представляет собой основное средство, используемое при установке и администрировании неглобальных зон. Операции с использованием команды zoneadm выполняются из глобальной зоны. Команда zoneadmпозволяет выполнять следующие задачи:
проверка зоны;
Установка зоны
Загрузка зоны
вывод информации о работающей зоне;
остановка зоны;
перезагрузка зоны;
деинсталляция зоны;
перемещение зоны из одной точки системы в другую точку этой же системы;
Подготовка новой зоны на основе конфигурации существующей зоны в этой же системе.
Перенос зоны с помощью команды zonecfg
См. процедуры установки и проверки зоны в Глава 34Установка, загрузка, остановка, деинсталляция и клонирование типизированных зон lx (задачи) и на справочной странице zoneadm(1M). Также см. описание поддерживаемых параметров команды zoneadm(1M) на справочной странице zoneadm list. Процедуры настройки зоны приведены в Глава 32Настройка типизированной зоны lx (задачи) и на справочной странице zonecfg(1M). Описание состояний зон приведены в Модель состояний неглобальной зоны.
Если планируется вести для зоны записи аудита Solaris, перед установкой неглобальных зон ознакомьтесь с инструкцией Использование аудита в зонах Solaris.
После установки зоны вся настройка программного обеспечения и задачи по администрированию выполняются администратором зоны с помощью средств Linux изнутри зоны.
Типизированную зону lxможно установить с помощью архива tar, с компакт-дисков или дисков DVD, либо с образа ISO.. Если установка проводится с дисков или с образа ISO, можно указать категории кластеров пакетов Sun. Категории являются накопительными. Если кластер не указывается, по умолчанию используется desktop.
Таблица 33–1 Категории кластеров пакетов
Категория Sun |
Содержание |
---|---|
core |
Минимальный набор пакетов, необходимых для создания зоны. |
server |
core плюс пакеты серверной ориентации, такие как httpd , mailman, imapd и spam-assassin . |
desktop |
server плюс ориентированные на пользователя пакеты, например evolution , gimp, mozilla и openoffice |
developer |
desktop плюс пакеты для разработчиков, например bison, emacs, gcc, vim-X11 и множество пакетов библиотек для разработки |
all |
Все пакеты на носителях, которые не мешают работе зоны. Некоторые пакеты могут не работать в зоне Linux. |
Инструкции по установке настроенных типизированных зон lx приведены в разделе Установка типизированной зоны lx.
Этот раздел относится только к начальному построению зон, а не к клонированию существующих зон.
После успешной настройки неглобальной зоны следует убедиться в возможности корректной установки зоны в системной конфигурации. После этого можно приступить к установке зоны. Файлы, требуемые для корневой файловой системы зоны, устанавливаются в системе по корневому пути зоны. Зона Linux заполняется с компакт-дисков, образов ISO или архивов tar, как описано в разделе Установка типизированной зоны lx.
Ресурсы, указанные в файле конфигурации, добавляются при переходе из установленного состояния в состояние готовности. В системе назначается уникальный идентификатор зоны. Монтируются файловые системы, настраиваются сетевые интерфейсы и устройства. При переходе в состояние готовности подготавливается виртуальная платформа для запуска пользовательских процессов.
В зоне в состоянии готовности не выполняются какие-либо пользовательские процессы. Главное различие между готовой зоной и работающей зоной состоит в том, что в работающей зоне выполняется по крайней мере один процесс. Для получения дополнительной информации см. справочную страницу init(1M).
В состоянии готовности запускаются процессы zsched и zoneadmd, предназначенные для управления виртуальной платформой.
Демон администрирования зон – zoneadmd – является главным процессом управления виртуальной платформой зоны. Для получения дополнительной информации см. Демон zoneadmd.
Процесс zsched, управляющий прикладной средой, описан в разделе Планировщик зоныzsched.
Для создания прикладной среды зоны используется команда zoneadm.
Все дополнительные настройки выполняются администратором зоны с помощью средств Linux изнутри зоны.
Следует отметить, что для пароля root (суперпользователя) при установке зоны из архива tar Sun задается значение root. Пароль root (суперпользователя) при установке с образов ISO или с компакт-диска не задается (остается пустым).
В этом разделе содержится обзор процедур остановки, перезагрузки, деинсталляции и клонирования зон.
Команда zoneadm halt служит для удаления прикладной среды и виртуальной платформы зоны. Затем зона возвращается в установленное состояние. Завершаются (командой kill) все процессы, отменяется настройка устройств, уничтожаются сетевые интерфейсы, размонтируются файловые системы, и уничтожаются структуры данных ядра.
Команда halt не запускает внутри зоны какие-либо сценарии завершения работы системы. Инструкции по завершению работы зоны приведены в разделе Завершение работы зоны командой zlogin.
Если операция остановки зоны завершается неуспешно, см. Невозможность остановки зоны.
Для перезагрузки зоны используется команда zoneadm reboot. Зона останавливается и загружается снова. При перезагрузке зоны изменяется ее идентификатор.
Для зон поддерживаются следующие загрузочные аргументы, используемые совместно с командами zoneadm boot и reboot.
-i altinit
-s
Применяются следующие определения:
Выбор альтернативной исполняемой программы в качестве первого процесса. Параметр altinit должен содержать действительный путь к исполняемой программе. Первый процесс по умолчанию описан в init(1M).
Загрузка зоны с режимом работы (уровнем inits.
Примеры использования приведены в Загрузка типизированной зоны lx и Загрузка типизированной зоны lx в однопользовательском режиме.
Для получения информации о команде init см. init(1M).
Если в конфигурации зоны задано свойство ресурса autoboot true, эта зона автоматически загружается при загрузке глобальной зоны. Значение по умолчанию – false.
Следует отметить, что для автоматической загрузки зон также необходимо включить службу зон svc:/system/zones:default .
Команда zoneadm uninstall удаляет все файлы в корневой файловой системе зоны. Перед продолжением появляется запрос на подтверждение действия, за исключением случаев, когда указан параметр -F (принудительно). Команду uninstall следует использовать с осторожностью, поскольку это действие необратимо.
Клонирование позволяет скопировать существующую настроенную и установленную зону в системе для быстрой подготовки новой зоны в той же системе. Для получения дополнительной информации о процессе клонирования см. Клонирование типизированной зоны lx в той же системе.
Информацию о загрузке и перезагрузке зон приведены в разделах Загрузка типизированной зоны lx и Перезагрузка типизированной зоны lx
В этой главе описывается процедура установки и запуска типизированной зоны lx. Также рассматриваются следующие задачи:
использование клонирования в целях установки зоны в той же системе;
остановка, перезагрузка и деинсталляция зон;
удаление зоны из системы.
Задача |
Описание |
Инструкции |
---|---|---|
Получение архивов Linux. |
Перед установкой типизированной зоны lx необходимо получить архивы Linux. | |
Установка настроенной типизированной зоны lx. |
Установка зоны в настроенном состоянии. | |
(Дополнительно) Установка подмножества доступных пакетов. |
При установке с компакт-дисков или образов ISO можно выполнить установку подмножества пакетов с установочных носителей. | |
(Дополнительно) Активация сетевых подключений в зоне. |
Сетевые подключения по умолчанию отключены и при необходимости должны быть активированы. | |
Получение универсального уникального идентификатора (UUID) для зоны |
Этот отдельный идентификатор, назначаемый при установке зоны, является альтернативным способом идентификации зоны. | |
(Дополнительно) Перевод установленной зоны в состояние готовности |
Если требуется загрузить зону и немедленно приступить к ее использованию, эту процедуру можно пропустить. |
(Дополнительно) Перевод установленной типизированной зоны lx в состояние готовности |
Загрузка типизированной зоны lx. |
При загрузке зона переводится в состояние выполнения. Зону можно загрузить из состояния готовности или из установленного состояния. | |
Загрузка зоны в однопользовательском режиме |
Начальная загрузка только до этапа svc:/milestone/single-user:default. Этот этап эквивалентен init-уровню s. См. справочные страницы init(1M) и svc.startd(1M). |
Для выполнения задач установки неглобальной зоны используется команда zoneadm, описанная на справочной странице zoneadm(1M).
Перед установкой типизированной зоны lx необходимо получить архивы Linux. Архивы распространяются в следующих формах:
сжатый архив tar (tarball);
набор компакт-дисков или дисков DVD;
набор образов ISO.
Для получения дистрибутива Linux можно воспользоваться одним из следующих методов.
Архив tar (tarball) можно загрузить по адресу http://opensolaris.org/os/community/brandz/downloads. Следуйте инструкциям на сайте загрузки.
Для получения набора компакт-дисков или дисков DVD посетите сайт CentOS по адресу http://www.centos.org или сайт Red Hat по адресу http://www.redhat.com.
Для получения образа ISO посетите сайт CentOS по адресу http://www.centos.org или сайт Red Hat по адресу http://www.redhat.com.
Эта процедура используется для установки настроенной типизированной зоны lx. После установки зоны вся настройка программного обеспечения и задачи по администрированию выполняются администратором зоны с помощью средств Linux изнутри зоны.
См. примеры команд установки зоны с учетом различных способов распространения в Пример 34–1, Пример 34–2 и Пример 34–3. Если установка проводится с дисков или с образа ISO, можно задать категории кластера пакетов Sun. См. информацию относительно категорий кластеров пакетов в Методы установки типизированной зоны lx.
Следует отметить, что перед установкой зоны ее можно проверить. Если пропустить эту процедуру, проверка выполняется автоматически при установке зоны. Эта процедура описана в (Дополнительно) Проверка настроенной зоны до установки.
Для выполнения этой процедуры необходимо иметь роль глобального администратора в глобальной зоне.
На этапе 3, если zonepath находится на ZFS, команда zoneadm install позволяет автоматически создать для zonepath при установке зоны файловую систему ZFS (набор данных). Это действие можно заблокировать параметром -x nodataset.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
(Дополнительно) Если предполагается установка с диска DVD или компакт-диска, в системе следует включитьvolfs и убедиться в его функционировании.
global# svcadm enable svc:/system/filesystem/volfs:default |
global# svcs | grep volfs |
Появится экран, подобный следующему:
online 17:30 svc:/system/filesystem/volfs:default |
Установите настроенную зону lx-zone командой zoneadm с параметром install и путем к архиву.
Установите зону с автоматическим созданием файловой системы ZFS, если zonepath расположен на ZFS.
global# zoneadm -z lx-zone install -d archive_path |
Будет выведено системное сообщение:
A ZFS file system has been created for this zone. |
Установите зону с zonepath на ZFS, но без автоматического создания файловой системы ZFS.
global# zoneadm -z lx-zone install -x nodataset -d archive_path |
По мере установки в корневой путь зоны файлов и каталогов, требуемых для корневой файловой системы, а также файлов пакетов, будет выведен ряд сообщений.
Если не указывается archive_path, по умолчанию используется компакт-диск.
(Дополнительно) Если выводится сообщение об ошибке и установка зоны прерывается, состояние зоны можно выяснить следующей командой:
global# zoneadm -z lx-zone list -iv |
Если для зоны отображается настроенное состояние, внесите коррективы, указанные в сообщении, и снова попытайтесь выполнить команду zoneadm install.
Если зона находится в незавершенном состоянии, сначала необходимо выполнить следующую команду:
global# zoneadm -z lx-zone uninstall |
Затем необходимо внести исправления, указанные в сообщении, и снова попытаться выполнить командуzoneadm install.
После завершения установки можно воспользоваться подкомандой list с параметрами -i и -v для вывода списка установленных зон и проверки состояния.
global# zoneadm list -iv |
Появится экран, подобный следующему:
ID NAME STATUS PATH BRAND IP 0 global running / native shared - lx-zone installed /export/home/lx-zone lx shared |
global# zoneadm -z lx-zone install -d /export/centos_fs_image.tar.bz2 |
Для выполнения установки с компакт-диска или диска DVD в системе необходимо включить volfs. Обязательно необходимо указать пакет кластера программ. Например, пакет development используется для установки полной среды. Можно также ввести имена определенных кластеров. Если пакет кластеров не задан, по умолчанию используется desktop. Устройство CD – /cdrom/cdrom0 .
global# zoneadm -z lx-zone install -d /cdrom/cdrom0 development |
Обязательно необходимо указать пакет кластера программ. Для установки полной среды используется development; можно также указать отдельные кластеры вручную. Если пакет кластеров не задан, по умолчанию используется desktop. Образы ISO CentOS находятся в каталоге /export/centos_3.7.
global# zoneadm -z lx-zone install -d /export/centos_3.7 development |
Для получения дополнительной информации о наборах данных см. Руководство по администрированию файловых систем ZFS Solaris
Если установка зоны прерывается или завершается неуспешно, зона остается в незавершенном состоянии. Для возврата зоны в настроенное состояние следует воспользоваться командой uninstall -F.
При установке с компакт-дисков или образов ISO можно выполнить установку подмножества пакетов с установочных носителей. Доступные подмножества: core, server, desktop, developer и all.
Для выполнения этой процедуры необходимо иметь роль глобального администратора в глобальной зоне.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Установка только серверного пакета:
global# zoneadm -z lx-zone install -d archive_path server |
При установке типизированной зоны lx сетевые подключения деактивированы. Для их включения выполните приведенную ниже процедуру.
Для выполнения этой процедуры необходимо иметь роль администратора зоны.
Отредактируйте файл /etc/sysconfig/network в зоне.
NETWORKING=yes HOSTNAME=your.hostname |
Для настройки домена NIS добавьте строку, подобную следующей:
NISDOMAIN=domain.Sun.COM |
Для получения дополнительной информации о настройке сетевых соединений или служб имен обратитесь к документации по дистрибутиву Linux.
Универсальный уникальный идентификатор (UUID) назначается зоне при установке. UUID можно получить командой zoneadm с подкомандой list и параметром -p. UUID – пятое поле на экране.
Выведите UUID для установленных зон.
global# zoneadm list -p |
Появится экран, подобный следующему:
0:global:running:/::native 1:centos38:running:/zones/centos38:27fabdc8-d8ce-e8aa-9921-ad1ea23ab063:lx |
global# zoneadm -z lx-zone -u 61901255-35cf-40d6-d501-f37dc84eb504 list -v |
Если присутствует как -u uuid-match, так и - z zonename, приоритет при сопоставлении имеет UUID. Если обнаруживается зона с указанным UUID, используется эта зона, а параметр -z игнорируется. Если зона с указанным UUID не обнаруживается, то в системе выполняется поиск по имени зоны.
Возможна деинсталляция и повторная установка зон с одинаковыми именами и разным содержимым. Зоны также можно переименовывать без изменения содержимого. Поэтому UUID является более надежным идентификатором, чем имя зоны.
Для получения дополнительной информации см. zoneadm(1M) и libuuid(3LIB).
Если в результате административных изменений в системе зона оказалась неработоспособной или противоречивой, для такой установленной зоны можно установить состояние "неполная".
Для выполнения этой процедуры необходимо иметь роль глобального администратора в глобальной зоне.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Отметьте зону testzone как неполную.
global# zoneadm -z testzone mark incomplete |
Проверьте состояние подкомандой list с параметрами -i и - v.
global# zoneadm list -iv |
Появится экран, подобный следующему:
ID NAME STATUS PATH BRAND IP 0 global running / native shared - testzone incomplete /export/home/testzone lx shared |
Отметка зоны как неполной необратима. Единственное действие, возможное в отношении зоны, отмеченной как неполная, – это деинсталляция зоны с возвратом в настроенное состояние. См. Деинсталляция типизированной зоны.
При переходе в состояние готовности подготавливается виртуальная платформа для запуска пользовательских процессов. В зонах в состоянии готовности какие-либо пользовательские процессы не выполняются.
Если требуется загрузить зону и немедленно приступить к ее использованию, эту процедуру можно пропустить. Переход через состояние готовности выполняется автоматически при загрузке зоны.
См. (Дополнительно) Перевод установленной зоны в состояние готовности
При загрузке зона переводится в состояние выполнения. Зону можно загрузить из состояния готовности или из установленного состояния. Загруженная зона в установленном состоянии прозрачным образом переходит в состояние выполнения через состояние готовности. Регистрация в зоне допускается для зон в состоянии выполнения.
Для выполнения этой процедуры необходимо иметь роль глобального администратора в глобальной зоне.
Следует отметить, что загрузка типизированных зон в системе Trusted Solaris с включенными метками невозможна.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Для загрузки зоны используется команда zoneadm с параметром - z, именем зоны lx-zone и подкомандой boot.
global# zoneadm -z lx-zone boot |
По завершении загрузки следует проверить состояние подкомандой list с параметром -v.
global# zoneadm list -v |
Появится экран, подобный следующему:
ID NAME STATUS PATH BRAND IP 0 global running / native shared 1 lx-zone running /export/home/lx-zone lx shared |
Загрузка зоны с параметром -i altinit.
global# zoneadm -z lx-zone boot -- -i /path/to/process |
Если появляется сообщение, указывающее, что системой не найдена маска сети для использования с IP-адресом, заданным на экранах настройки зоны, см. Отображение предупреждения netmasks при загрузке зоны. Следует отметить, что сообщение является всего лишь предупреждением, и команда была выполнена успешно.
Для выполнения этой процедуры необходимо иметь роль глобального администратора в глобальной зоне.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Загрузите зону в однопользовательском режиме.
global# zoneadm -z lx-zone boot -- -s |
Для регистрации в зоне необходимо обратиться к настройкам, как описано в Регистрация в типизированной зоне lx.
Задача |
Описание |
Инструкции |
---|---|---|
Остановка зоны |
Процедура остановки служит для удаления прикладной среды и виртуальной платформы зоны. Процедура переводит зону из состояния готовности обратно в установленное состояние. Инструкции по штатному завершению работы зоны приведены в описании Использование команды zlogin для завершения работы типизированной зоны lx. | |
Перезагрузка зоны |
В ходе процедуры перезагрузки зона останавливается и загружается снова. | |
Деинсталляция зоны |
Эта процедура позволяет удалить все файлы в корневой файловой системе зоны. При использовании этой процедуры следует соблюдать осторожность. Это действие необратимо. | |
Подготовка новой неглобальной зоны на основе конфигурации существующей зоны в этой же системе. |
Клонирование зоны – альтернативный, ускоренный метод установки зоны. Тем не менее, новую зону по-прежнему потребуется настроить перед установкой. | |
Удаление неглобальной зоны из системы. |
Эта процедура позволяет полностью удалить зону из системы. |
Процедура остановки предназначена для удаления прикладной среды и виртуальной платформы типизированной зоны lx. Инструкции по штатному завершению работы зоны приведены в описании применения zlogin для завершения работы типизированной зоны lx.
Для выполнения этой процедуры необходимо иметь роль глобального администратора в глобальной зоне.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Выведите список зон, работающих в системе.
global# zoneadm list -v |
Появится экран, подобный следующему:
ID NAME STATUS PATH BRAND IP 0 global running / native shared 1 lx-zone running /export/home/lx-zone lx shared |
Для остановки указанной зоны используется команда zoneadm с параметром - z, именем зоны, например lx-zone, и подкомандой halt.
global# zoneadm -z lx-zone halt |
Снова отобразите список зон в системе для проверки успешности остановки зоны lx-zone.
global# zoneadm list -iv |
Появится экран, подобный следующему:
ID NAME STATUS PATH BRAND IP 0 global running / native shared - lx-zone installed /export/home/lx-zone lx shared |
Загрузите зону, если требуется ее перезапуск.
global# zoneadm -z lx-zone boot |
Если правильной остановки зоны не происходит, см. рекомендации по поиску неисправностей в Невозможность остановки зоны.
Для выполнения этой процедуры необходимо иметь роль глобального администратора в глобальной зоне.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Выведите список зон, работающих в системе.
global# zoneadm list -v |
Появится экран, подобный следующему:
ID NAME STATUS PATH BRAND IP 0 global running / native shared 1 lx-zone running /export/home/lx-zone lx shared |
Для перезагрузки зоны lx-zone используется команда zoneadm с параметром - z reboot.
global# zoneadm -z lx-zone reboot |
Повторно отобразите список зон в системе, чтобы убедиться, что зона lx-zone перезагружена.
global# zoneadm list -v |
Появится экран, подобный следующему:
ID NAME STATUS PATH BRAND IP 0 global running / native shared 2 lx-zone running /export/home/lx-zone lx shared |
Обратите внимание, что идентификатор зоны lx-zone изменился. В общем случае идентификатор зоны изменяется после перезагрузки.
Эта процедура позволяет удалить все файлы в корневой файловой системе зоны. Это действие необратимо.
Зона не должна находиться в состоянии выполнения. Операция uninstall является недопустимой для работающих зон.
Для выполнения этой процедуры необходимо иметь роль глобального администратора в глобальной зоне.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Выведите список зон в системе.
global# zoneadm list -v |
Появится экран, подобный следующему:
ID NAME STATUS PATH BRAND IP 0 global running / native shared - lx-zone installed /export/home/lx-zone lx shared |
Для удаления зоны lx-zone используется команда zoneadm с параметром - z uninstall.
Кроме того, для принудительного выполнения операции можно использовать параметр -F. Если этот параметр не указан, выдается запрос подтверждения.
global# zoneadm -z lx-zone uninstall -F |
Следует отметить, что при деинсталляции зоны с собственной файловой системой ZFS в качестве zonepath, файловая система ZFS уничтожается.
Снова выведите список зон в системе, чтобы убедиться, что в нем отсутствует lx-zone.
global# zoneadm list -v |
Появится экран, подобный следующему:
ID NAME STATUS PATH BRAND IP 0 global running / native shared |
Если деинсталляция зоны не доходит до конца, зона остается в неполном состоянии. Для возврата зоны в настроенное состояние используется команда zoneadm uninstall.
Команду uninstall следует использовать с осторожностью, поскольку ее действие необратимо.
Клонирование позволяет подготовить в системе новую зону путем копирования данных из исходного zonepath в целевой zonepath.
Перед установкой новой зоны ее следует настроить. Параметр, передаваемый в подкоманду zoneadm create, – имя клонируемой зоны. Эта исходная зона должна быть остановлена.
Для выполнения этой процедуры необходимо иметь роль глобального администратора в глобальной зоне.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Остановите клонируемую исходную зону (в этой процедуре – lx-zone).
global# zoneadm -z lx-zone halt |
Начните настройку новой зоны с экспорта конфигурации исходной зоны lx-zoneв файл, например master .
global# zonecfg -z lx-zone export -f /export/zones/master |
Также вместо изменения существующей конфигурации можно создать новую конфигурацию зоны с помощью процедуры Настройка зоны. Если используется этот метод, после создания зоны следует немедленно перейти к этапу 6.
Отредактируйте файл master. Как минимум, следует установить для новой зоны другой zonepath и IP-адрес.
Создайте новую зону zone1 с помощью команд в файле master.
global# zonecfg -z zone1 -f /export/zones/master |
Установите новую зонуzone1 клонированием lx-zone .
global# zoneadm -z zone1 clone lx-zone |
Будет выведена следующая информация:
Cloning zonepath /export/home/lx-zone... |
Выведите список зон в системе.
global# zoneadm list -iv ID NAME STATUS PATH BRAND IP 0 global running / native shared - lx-zone installed /export/home/lx-zone lx shared - zone1 installed /export/home/zone1 lx shared |
Исходную зону можно клонировать несколько раз из существующего снимка, созданного при первоначальном клонировании зоны.
Для выполнения этой процедуры необходимо иметь роль глобального администратора в глобальной зоне.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Настройте зону zone2.
Укажите, что для создания зоны new-zone2 должен использоваться существующий снимок.
global# zoneadm -z zone2 clone -s zeepool/zones/lx-zone@SUNWzone1 lx-zone |
Будет выведена следующая информация:
Cloning snapshot zeepool/zones/lx-zone@SUNWzone1 |
Команда zoneadm проверяет допустимость программного обеспечения из снимка SUNWzone1 и выполняет клонирование снимка
Выведите список зон в системе.
global# zoneadm list -iv ID NAME STATUS PATH BRAND IP 0 global running / native shared - lx-zone installed /zeepool/zones/lx-zone lx shared - zone1 installed /zeepool/zones/zone1 lx shared - zone2 installed /zeepool/zones/zone1 lx shared |
Эта процедура используется для предотвращения автоматического клонирования зоны в файловой системе ZFS путем определения необходимости копирования zonepath.
Для выполнения этой процедуры необходимо иметь роль глобального администратора в глобальной зоне.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Выберите режим копирования zonepath на ZFS вместо клонирования ZFS.
global# zoneadm -z zone1 clone -m copy lx-zone |
Процедура, описанная в этом разделе, приводит к полному удалению зоны из системы.
Завершите работу зоны lx-zone.
global# zlogin lx-zone shutdown |
Удалите корневую файловую систему lx-zone.
global# zoneadm -z lx-zone uninstall -F |
Удалите конфигурацию для lx-zone.
global# zonecfg -z lx-zone delete -F |
Выведите список зон в системе и убедитесь, что lx-zone в нем отсутствует.
global# zoneadm list -iv |
Появится экран, подобный следующему:
ID NAME STATUS PATH BRAND IP 0 global running / native shared |
В этой главе содержится следующая информация:
Вводная информация по регистрации в зоне
завершение внутренней настройки установленной типизированной зоны lx ;
регистрация в зоне из глобальной зоны;
Завершение работы зоны
Отображение имени текущей зоны командой zonename.
Команда zlogin используется для регистрации из глобальной зоны в любой зоне, находящейся в состоянии выполнения или готовности.
Для регистрации в зоне, не находящейся в состоянии выполнения, может использоваться только команда zlogin с параметром -C.
Если для подключения к консоли зоны не используется параметр -C, при регистрации в зоне командой zloginзапускается новая задача. Задача не может распространяться на две зоны.
В соответствии с описанием, приведенным в разделе Обращение к типизированной зоне lx в неинтерактивном режиме команду zlogin можно использовать в неинтерактивном режиме путем добавления команды, которую требуется выполнить в зоне. Следует отметить, однако, что команда или файлы, обрабатываемые командой, не могут находиться в NFS. Если какие-либо из файлов, открытых командой, либо какая-либо часть ее адресного пространства находится в NFS, команда завершается неуспешно. В адресное пространство входит сам исполняемый код команды, а также библиотеки, связанные с командой.
Команда zlogin может использоваться только глобальным администратором, работающим в глобальной зоне. Для получения дополнительной информации см. справочную страницу zlogin(1).
Обзор консоли зоны и способов регистрации пользователя приведены в Способы регистрации в неглобальной зоне.
В случае возникновения проблем, не позволяющих использовать для доступа к зоне команду zlogin или команду zlogin с параметром -C, можно воспользоваться безопасным режимом. Этот режим описан в разделе Безопасный режим
Информация по удаленной регистрации в зоне содержится в Удаленная регистрация
В интерактивном режиме выделяется новый псевдотерминал для использования внутри зоны. Неинтерактивный режим используется для выполнения сценариев интерпретатора команд в целях администрирования зоны. Для получения дополнительной информации см. Интерактивные и неинтерактивные режимы.
Задача |
Описание |
Инструкции |
---|---|---|
Регистрация в зоне |
Регистрацию в зоне можно выполнить через консоль, в интерактивном режиме с выделением псевдотерминала, либо путем передачи команды, которую требуется выполнить в зоне. При передаче команды для выполнения псевдотерминал не выделяется. К регистрации в безопасном режиме также можно прибегнуть, если в подключении к зоне отказано. | |
Выход из типизированной зоны |
Отключение от типизированной зоны. | |
Завершение работы типизированной зоны |
Завершение работы типизированной зоны выполняется служебной программой shutdown или сценарием. |
Использование команды zlogin для завершения работы типизированной зоны lx |
Для регистрации из глобальной зоны в зоне, находящейся в состоянии выполнения или готовности, используется команда zlogin. Для получения дополнительной информации см. справочную страницу zlogin(1).
Регистрацию в зоне можно выполнить разными способами, в соответствии с процедурами, приведенными ниже. Можно также выполнить удаленную регистрацию, как описано в Удаленная регистрация.
Для выполнения этой процедуры необходимо иметь роль глобального администратора в глобальной зоне.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Введите команду zlogin с параметром - C и именем зоны, например lx-zone.
global# zlogin -C lx-zone [Connected to zone 'lx-zone' console] |
Если сеанс zlogin запускается сразу после ввода команды zoneadm boot, появляются следующие сообщения начальной загрузки зоны:
INIT: version 2.85 booting Welcome to CentOS Press 'I' to enter interactive startup. Configuring kernel parameters: [ OK ] Setting hostname lx-zone: [ OK ] [...] CentOS release 3.6 (Final) Kernel 2.4.21 on an i686 |
После отображения консоли зоны зарегистрируйтесь под именем root, нажмите клавишу Return и введите пароль пользователя root в ответ на соответствующий запрос.
lx-zone console login: root Password: |
Напомним, что для пароля root (суперпользователя) при установке зоны из архива tar Sun задается значение root. Пароль root (суперпользователя) при установке с образов ISO или с компакт-диска не задается (остается пустым).
В интерактивном режиме для использования внутри зоны выделяется новый псевдотерминал.
Для выполнения этой процедуры необходимо иметь роль глобального администратора в глобальной зоне.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Зарегистрируйтесь в зоне, например lx-zone, из глобальной зоны.
global# zlogin lx-zone |
Будет выведена информация, подобная следующей:
[Connected to zone 'lx-zone' pts/2] Last login: Wed Jul 3 16:25:00 on console Sun Microsystems Inc. SunOS 5.10 Generic July 2006 |
Введите exit для закрытия соединения.
Появится сообщение, подобное следующему:
[Connection to zone 'lx-zone' pts/2 closed] |
Для выполнения этой процедуры необходимо иметь роль глобального администратора в глобальной зоне.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Зарегистрируйтесь в зоне, например lx-zone.
global# zlogin lx-zone |
Убедитесь в том, что выполнен переход в среду Linux в операционной системе Solaris.
[root@lx-zone root]# uname -a |
Появится экран, подобный следующему:
Linux lx-zone 2.4.21 BrandZ fake linux i686 i686 i386 GNU/Linux |
Неинтерактивный режим включается при вводе пользователем команды, которую требуется выполнить внутри зоны. В неинтерактивном режиме новый псевдотерминал не выделяется.
Следует отметить, что команда или файлы, над которыми команда выполняет действия, не могут располагаться в NFS.
Для выполнения этой процедуры необходимо иметь роль глобального администратора в глобальной зоне.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Выполните из глобальной зоны регистрацию в зоне lx-zone и укажите имя команды.
В качестве имени команды следует указать команду, которую требуется выполнить внутри зоны.
global# zlogin lx-zone command |
global# zlogin lx_master uptime 21:16:01 up 2:39, 0 users, load average: 0.19, 0.13, 0.11 fireball# |
Для получения дополнительной информации о параметрах команды zlogin см. справочную страницу zlogin(1).
Если в подключении к зоне отказано, для входа в минимальную среду зоны можно воспользоваться командой zlogin с параметром -S.
Для выполнения этой процедуры необходимо иметь роль глобального администратора в глобальной зоне.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Для доступа к зоне, например lx-zone, из глобальной зоны используется команда zlogin с параметром -S.
global# zlogin -S lx-zone |
Выполнение команды init 0 в глобальной зоне для штатного завершения работы системы Solaris также влечет за собой выдачу команды init 0 в каждой из неглобальных зон системы. Следует отметить, что команда init 0 не предполагает предупреждения локальных и удаленных пользователей о выходе из системы перед выключением системы.
Эта процедура используется для штатного завершения работы зоны. Инструкции по остановке зоны без выполнения сценариев завершения работы системы приведены в Остановка зоны.
Для выполнения этой процедуры необходимо иметь роль глобального администратора в глобальной зоне.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Выполните регистрацию в зоне, работу которой требуется завершить, например lx-zone, и укажите shutdown в качестве имени служебной программы и init 0 в качестве состояния.
global# zlogin lx-zone shutdown -i 0 |
В конкретной системе могут применяться собственные сценарии завершения работы, отвечающие особым требованиям.
Использовать команду shutdown в неинтерактивном режиме для перевода зоны в однопользовательский режим в настоящее время невозможно. Для получения дополнительной информации см. 6214427.
Для этого можно воспользоваться регистрацией в интерактивном режиме, как описано в Обращение к типизированной зоне в интерактивном режиме.
В этой главе описывается выполнение следующих действий:
перемещение существующей типизированной зоны lx на новое место на том же компьютере;
проверка изменений в типизированной зоне lx, возникающих в результате переноса перед выполнением фактической переноса;
Перенос существующей типизированной зоны lx на новый компьютер.
Эта процедура используется для перемещения зоны в новое расположение на той же системе посредством изменения zonepath. Зону необходимо остановить. Новый zonepath должен располагаться в локальной файловой системе. Применяются стандартные критерии zonepath, описанные в Типы ресурсов и свойств.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Роли описаны в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Остановите перемещаемую зону (в этой процедуре – db-zone).
global# zoneadm -z db-zone halt |
Переместите зону в новый zonepath – /export/zones/db-zone – командой zoneadm с подкомандой move.
global# zoneadm -z db-zone move /export/zones/db-zone |
Проверьте путь.
global# zoneadm list -iv ID NAME STATUS PATH BRAND IP 0 global running / native shared - lx-zone installed /export/home/lx-zone lx shared - db-zone installed /export/zones/db-zone lx shared |
Команды zonecfg и zoneadm можно использовать для переноса существующих неглобальных зон из одной системы в другую. Зона останавливается и отсоединяется от текущего размещения. zonepath перемещается на целевой узел, где происходит его присоединение.
К переноса типизированной зоны lx предъявляются следующие требования.
В глобальной зоне целевой системы должна выполняться та же версия Solaris, что и на исходном узле.
Для обеспечения правильного функционирования зоны в целевой системе должны быть установлены те же версии требуемых пакетов операционной системы и исправления, что были установлены на исходном узле.
Тип зоны в целевой системе должен быть таким же, как и на исходном узле.
Целевая система должна быть оборудована процессором i686 одного из следующих типов:
В результате работы команды zoneadm detach генерируется информация, необходимая для присоединения зоны к другой системе. Процесс zoneadm attach проверяет возможность размещения зоны на новом компьютере в соответствии с его конфигурацией. Поскольку существует несколько способов активации zonepath на новом узле, фактическое перемещение zonepath из одной системы в другую выполняется глобальным администратором вручную.
После прикрепления к новой системе зона считается установленной.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Остановите перемещаемую зону (в этой процедуре – lx-zone).
host1# zoneadm -z lx-zone halt |
Отсоедините зону.
host1# zoneadm -z lx-zone detach |
Отсоединенная зона теперь находится в настроенном состоянии.
Переместите zonepath для lx-zone на новый узел.
Для получения дополнительной информации см. Перемещение zonepath на новый узел.
Настройте зону на новом узле.
host2# zonecfg -z lx-zone |
Появится следующее системное сообщение:
lx-zone: No such zone configured Use 'create' to begin configuring a new zone. |
Для создания зоны lx-zone на новом узле используется команда zonecfg с параметром -a и zonepathна новом узле.
zonecfg:lx-zone> create -a /export/zones/lx-zone |
Проверьте конфигурацию.
zonecfg:lx-zone> info zonename: lx-zone zonepath: /export/zones/lx-zone brand: lx autoboot: false bootargs: pool: limitpriv: net: address: 192.168.0.90 physical: bge0 |
(Дополнительно) Внесите в конфигурацию необходимые изменения.
Например, физическое сетевое устройство на новом узле может быть другим, либо устройства, входящие в конфигурацию, могут иметь на новом узле другие имена.
zonecfg:lx-zone> select net physical=bge0 zonecfg:lx-zone:net> set physical=e1000g0 zonecfg:lx-zone:net> end |
Зафиксируйте конфигурацию и выполните выход.
zonecfg:lx-zone> commit zonecfg:lx-zone> exit |
Присоедините зону к новому узлу.
Присоедините зону с проверкой допустимости.
host2# zoneadm -z lx-zone attach |
Системный администратор уведомляется о требуемых действиях, если выполняется по крайней мере одно из следующих условий:
На новом компьютере отсутствуют требуемые пакеты и исправления
программные уровни компьютеров различаются.
Выполните операцию присоединения принудительно без проверки допустимости.
host2# zoneadm -z lx-zone attach -F |
Параметр -F позволяет принудительно выполнить операцию attach без проверки допустимости. Это удобно в ряде случаев, например в кластерной среде или при операциях резервного копирования и восстановления, однако важна правильная настройка системы для поддержки зоны. Неправильная настройка может впоследствии привести к непредвиденному поведению.
Существует множество способов создания архива zonepath. Например, можно использовать команды cpio и pax, описанные на справочных страницах cpio(1)) и pax(1).
Также существует несколько способов перемещения архива на новый узел. Механизм, используемый для перемещения zonepath с исходного узла на целевой, зависит от локальной конфигурации. В некоторых случаях, например в SAN, данные zonepath могут вовсе не перемещаться. SAN можно просто перенастроить, обеспечив видимость zonepath для нового узла. В других случаях zonepath может потребоваться записать на ленту и переслать эту ленту по почте в новое местоположение.
Этими соображениями обусловливается отсутствие автоматизации данного этапа. Системному администратору следует выбрать наиболее адекватный метод перемещения zonepath на новый узел.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Переместите zonepath на новый узел. Можно использовать метод, описанный в этой процедуре, либо другой метод по выбору.
Создайте файл tar из zonepath на host1 и передайте его на host2 командой sftp.
host1# cd /export/zones host1# tar cf lx-zone.tar lx-zone host1# sftp host2 Connecting to host2... Password: sftp> cd /export/zones sftp> put lx-zone.tar Uploading lx-zone.tar to /export/zones/lx-zone.tar sftp> quit |
Распакуйте файл tar на host2.
host2# cd /export/zones host2# tar xf lx-zone.tar |
Для получения дополнительной информации см. sftp(1) и tar(1).
В Решение проблем, связанных с операцией zoneadm attach содержится информация относительно поиска и устранения ошибок в следующих случаях:
не совпадают исправления и пакеты;
не совпадают версии операционной системы.
Пользователь должен убедиться в наличии поддержки типа процессора нового компьютера. Для получения дополнительной информации см. Перенос типизированной зоны lx.
Перед переносом зоны на новую машину можно выполнить пробный перенос при помощи параметра "не выполнять" — -n.
Выполните подкоманду zoneadm detach с параметром -n для генерации манифеста по работающей зоне без ее фактического отсоединения. Состояние зоны в исходной системе при этом не изменяется. Манифест зоны передается в stdout. Глобальный администратор может перенаправить вывод в файл или, через канал, в удаленную команду для немедленной проверки на целевом узле. Затем с помощью подкоманды zoneadm attach с параметром -n можно будет считать этот манифест и удостовериться, что конфигурация целевой машины позволяет разместить на ней зону без фактического присоединения.
В случае пробного присоединения предварительно настраивать зону в целевой системе не требуется.
Для выполнения этой процедуры необходимо иметь роль глобального администратора в глобальной зоне.
Перейдите в режим суперпользователя или воспользуйтесь ролью главного администратора (Primary Administrator).
Инструкции по созданию роли и ее назначению пользователю приведены в разделе Using the Solaris Management Tools With RBAC (Task Map) в System Administration Guide: Basic Administration.
Выберите один из следующих методов:
Сгенерируйте манифест lx-zone на исходном узле и передайте его в удаленную команду, которая немедленно проверит целевой узел:
global# zoneadm -z lx-zone detach -n | ssh remotehost zoneadm attach -n - |
Дефис (-) в конце строки указывает stdin в качестве пути.
Сгенерируйте манифест lx-zone на исходном узле и передайте его в файл:
global# zoneadm -z lx-zone detach -n |
Скопируйте манифест в систему на новом узле согласно описанию в разделе Перемещение zonepath на новый узел и выполните проверку:
global# zoneadm attach -n path_to_manifest |
Для указания stdin в качестве пути можно использовать дефис (—).
В этой главе содержится информация по выполнению приложений в типизированной зоне lx.
При установке зоны, содержащей поддерживаемый дистрибутив CentOS или Red Hat Enterprise Linux, создается поддерживаемая зона. При добавлении в эту зону пакетов из других версий возможно создание типизированной зоны, которая не будет поддерживаемой.
Для выполнения этой процедуры необходимо иметь роль администратора зоны для типизированной зоны lx.
Обновите дистрибутив CentOS 3.x до другой версии с помощью yum update или up2date.
Инструкции приведены в документации по адресу http://www.centos.org.
Для выполнения этой процедуры необходимо иметь роль администратора зоны для типизированной зоны lx.
Обновите дистрибутив Red Hat Enterprise Linux 3.x до другой версии с помощью up2date.
Инструкции приведены в документации по адресу http://www.redhat.com.
Для выполнения этой процедуры необходимо иметь роль администратора зоны для типизированной зоны lx.
yum:
В документ Управление программным обеспечением с помощью Yum включена глава по установке программного обеспечения из отдельного пакета. См. http://fedora.redhat.com/docs/yum.
yum.conf(5 )
yum(8)
rpm:
См. How do I install or upgrade an RPM package? по адресу http://kbase.redhat.com/faq/FAQ_35_198.shtm.
rpm(8)
Приложения устанавливаются так же, как и в системе Linux – путем монтирования компакт-диска и запуска программы установки. В этом разделе описывается установка типичного приложения в типизированной зоне lx.
Если заранее известно, что для установки приложений в типизированной зоне lx будут использоваться компакт-диски или диски DVD, при начальной настройке типизированной зоны в глобальной зоне необходимо установить для компакт-дисков или дисков DVD доступ только для чтения. См. этап 7 в процедуре Установка MATLAB 7.2 с компакт-дисков.
MATLAB представляет собой язык высокого уровня и интерактивную среду, позволяющую быстро выполнять трудоемкие вычислительные задачи. Продукт является разработкой MathWorks. Для получения дополнительной информации см. http://www.mathworks.com.
Получите компакт-диски MATLAB 7.2.
В пакет MATLAB/Simulink входят три компакт-диска. Для простой установки MATLAB требуются только диски 1 и 3.
Создайте и установите типизированную зону lx в соответствии с указаниями в разделах Настройка, проверка и сохранение параметров типизированной зоны lx и Установка и загрузка типизированных зон lx.
Если в глобальной зоне не запущена файловая система управления томами, запустите ее.
global# svcadm volfs enable |
Вставьте носитель.
Проверьте наличие носителя в приводе.
global# volcheck |
Проверьте успешность автоматического монтирования компакт-диска.
global# ls /cdrom |
Появится экран, подобный следующему:
cdrom cdrom1 mathworks_2006a1 |
Выполните петлевое монтирование файловой системы с параметрами ro,nodevices (только для чтения и без устройств) в неглобальной зоне.
global# zonecfg -z lx-zone zonecfg:lx-zone> add fs zonecfg:lx-zone:fs> set dir=/cdrom zonecfg:lx-zone:fs> set special=/cdrom zonecfg:lx-zone:fs> set type=lofs zonecfg:lx-zone:fs> add options [ro,nodevices] zonecfg:lx-zone:fs> end zonecfg:lx-zone> commit zonecfg:lx-zone> exit |
Перезагрузите неглобальную зону.
global# zoneadm -z lx-zone reboot |
Проверьте состояние командой zoneadm list с параметрами -v.
global# zoneadm list -v |
Появится экран, подобный следующему:
ID NAME STATUS PATH BRAND IP 0 global running / native shared 1 lx-zone running /export/home/lx-zone lx shared |
Зарегистрируйтесь в зоне lx.
global# zlogin lx-zone |
Проверьте успешность монтирования устройства чтения компакт-дисков.
lx-zone# ls /cdrom |
Появится экран, подобный следующему:
cdrom cdrom1 mathworks_2006a1 |
Создайте файл лицензии в соответствии с описанием в документации MATLAB.
Установите продукт в соответствии с указаниями в руководстве по установке.
lx-zone# /mnt/install |
Выйдите из зоны.
lx-zone# exit |
В неглобальной зоне может быть удобно сохранить файловую систему /cdrom. Эта точка монтирования всегда будет отражать текущее содержимое привода для компакт-дисков или пустой каталог, если привод пуст.
(Дополнительно) Для удаления файловой системы /cdrom из глобальной зоны используется следующая процедура.
global# zonecfg -z lx-zone zonecfg:lx-zone> remove fs dir=/cdrom zonecfg:lx-zone> commit zonecfg:lx-zone> exit |
Следует отметить, что этот метод связан со значительным расходом дискового пространства.
Получите компакт-диски MATLAB 7.2.
В пакет MATLAB/Simulink входят три компакт-диска. Для простой установки MATLAB требуются только диски 1 и 3.
Создайте и установите типизированную зону lx в соответствии с инструкциями в Настройка, проверка и сохранение параметров типизированной зоны lx и Установка и загрузка типизированных зон lx.
Скопируйте данные с каждого компакт-диска в файл .iso.
global# /usr/bin/dd if=/dev/rdsk/c1d0s2 of=disk1.iso |
Эта команда копирует данные с первого компакт-диска в файл disk1.iso. Повторите действие с указанием нового имени файла для третьего компакт-диска, например disk3.iso.
Выполните из глобальной зоны lofi-монтирование первого файла .iso в зоне lx.
global# lofiadm -a /zpool/local/disk1.iso global# mount -F hsfs /dev/lofi/1 /zones/lx-zone/root/mnt |
Зарегистрируйтесь в зоне lx.
global# zlogin lx-zone |
Настройте перенаправление вывода на рабочий стол посредством перенаправления сеанса Х:
lx-zone# ssh -X root@lx-zone |
Создайте файл лицензии в соответствии с описанием в документации MATLAB.
Установите продукт в соответствии с указаниями в руководстве по установке.
lx-zone# /mnt/install |
Когда появится запрос на вставку компакт-диска 3, возвратитесь к окну терминала глобальной зоны и смонтируйте файл disk3.iso вместо первого.
global# umount /zones/lx-zone/root/mnt global# lofiadm -d /dev/lofi/1 global# lofiadm -a /zpool/local/disk3.iso global# mount -F hsfs /dev/lofi/1 /zones/lx-zone/root/mnt |
Установка должна завершиться.
Для получения информации о резервном копировании зон см. Резервное копирование системы Solaris с установленными зонами, Определение данных для резервного копирования в неглобальных зонах, Восстановление неглобальных зон и Восстановление неглобальной зоны.
В типизированной зоне lx поддерживается только конфигурация сети с совместным использованием IP.
Команда chroot в зонах Linux не поддерживается. Если эта команда применяется к процессу, такой процесс теряет возможность обращаться к библиотекам Solaris, необходимым ему для выполнения.
Хотя типизированные зоны lx можно настроить и установить в системе Trusted Solaris с включенными метками, загрузка типизированных зон lx в подобной конфигурации системы невозможна.
Локальные файловые системы Linux невозможно добавить с помощью свойства ресурса fs команды zonecfg.