Руководство по системному администрированию: контейнеры в Solaris - управление ресурсами и зонами

Глава 24 Пакеты и исправления в системе Solaris с установленными зонами (обзор)

Solaris 10 1/06: Содержание этой главы было полностью пересмотрено.

В этой главе описывается поддержка операционной системы Solaris с установленными зонами. В ней представлена информация о добавлении пакетов и исправлений в операционную систему в глобальной зоне и во все установленные неглобальные зоны. Также в этой главе приводятся процедуры удаления пакетов и исправлений. Материалы этой главы дополняют существующую документацию по установке и исправлениям Solaris. Для получения дополнительной информации см. "Solaris 10 Release and Installation Collection" и руководство System Administration Guide: Basic Administration.

В этой главе рассматриваются следующие темы:

Новые функции и возможности использования пакетов и исправлений при установке зон

Solaris 10 1/06: Начиная с версии Solaris 10, эта глава была заменена и отражает текущее поведение команд пакетов и исправлений в системе с установленными неглобальными зонами.

Solaris 10 6/06: Информация о параметрах пакета SUNW_PKG_ALLZONES, SUNW_PKG_HOLLOW и SUNW_PKG_THISZONE была пересмотрена. См. Обзор средств пакетов и исправлений и Параметры пакетов.

Solaris 10 6/06 и более поздних версий: Для получения информации о регистрации системы или об использовании Sun Connection (ранее Sun Update Connection) для управления обновлениями программного обеспечения см. Sun Connection hub on BigAdmin.

Solaris 10 8/07 и более поздних версий:

Solaris 10 5/08 и более поздние версии обновления: EOF в PatchPro. Поддержка PatchPro, в котором использовалась база данных исправлений и средств установки исправлений для исправления программного обеспечения в глобальных и неглобальных зонах, прекращена в сентябре 2007 года. Для получения информации о текущем процессе см. Sun xVM Ops Center.

Solaris 10 5/08: Несмотря на то что эта информация добавлена в версии Solaris 10 5/08, она относится ко всем системам Solaris 10.

Для регистрации системы Solaris см. https://inventory.sun.com/inventory/. Чтобы получить информацию об использовании SunTM Inventory для регистрации оборудования, программного обеспечения и операционных систем, см. Sun Inventory Information Center.

Если Sun xVM Ops Center используется для организации, обновления и администрирования систем в вычислительном центре, для получения информации по регистрации программного обеспечения в Sun xVM Ops Center см. Sun xVM Information Center.

Solaris 10 10/09: Параллельное применение исправлений является дополнением к стандартным возможностям Solaris 10 для работы с исправлениями. Для выпусков ранее Solaris 10 10/09 исправления поставляются в виде пакета с уровнем изменений 119254-66 или выше (SPARC) и уровнем изменений 119255-66 или выше (x86). См. разделы Solaris 10 10/09: Уменьшение времени на применение исправлений в зонах посредством параллельной обработки и Solaris 10 10/09: Метод параллельного применения исправлений в неглобальных зонах..

Полный список новых функций Solaris 10 и описание версий Solaris приведены в Solaris 10 What’s New.

Обзор средств пакетов и исправлений

Средства пакетов Solaris используются при управлении средой зон. Глобальный администратор может обновить систему до новой версии Solaris. При этом обновляются как глобальные, так и неглобальные зоны.

Для обновления системы, включающей в себя неглобальные зоны, в глобальной зоне используется стандартная интерактивная программа установки Solaris Live Upgrade или собственная программа установки JumpStart. Для зон с zonepath на ZFS действуют следующие ограничения:

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

При установке зон применяются следующие общие принципы:


Примечание –

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


Пакеты и зоны

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

Параметры пакетов определяют распределение и видимость их содержимого в системе с установленными неглобальными зонами. Характеристики пакетов в системе с установленными зонами определяются параметрами пакетов SUNW_PKG_ALLZONES , SUNW_PKG_HOLLOW и SUNW_PKG_THISZONE. При необходимости системные администраторы могут проверить эти настройки пакета для проверки возможности его применения при использовании или удалении пакета в среде зоны. Для просмотра значений этих параметров используется командаpkgparam. Для получения дополнительной информации о параметрах см. Параметры пакетов. Инструкции по использованию приведены в Проверка параметров пакета в системе с установленными зонами.

Для получения информации о характеристиках и параметрах пакетов см. справочную страницу pkginfo(4). Для получения информации о выводе значений параметров пакетов см. справочную страницу pkgparam(1).

Исправления, генерируемые для пакетов

При генерации исправления для какого-либо пакета параметры должны иметь те же значения, что и исходный пакет.

Интерактивные пакеты

Каждый пакет, который должен быть интерактивным, т. е. содержать сценарий запроса, добавляется только в текущую зону. Этот пакет не распространяется на другие зоны. При добавлении интерактивного пакета в глобальную зону этот пакет обрабатывается как в случае добавления с помощью команды pkgadd с параметром -G. Для получения дополнительной информации об этом параметре см. Добавление пакетов в зоны.

Обеспечение синхронизации зон

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

Для достижения этой цели при добавлении или удалении пакетов в глобальной зоне средства пакетов обеспечивают соблюдение следующих правил:

Операции с пакетами, допустимые в глобальной зоне

Если пакет в настоящее время не установлен ни в глобальной зоне, ни в какой-либо неглобальной зоне, то установка этого пакета возможна:

Если пакет в настоящее время установлен только в глобальной зоне:

Если пакет в настоящее время установлен в глобальной зоне и только в подмножестве неглобальных зон:

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

Эти правила обеспечивают следующее:

Операции с пакетами, допустимые в неглобальной зоне

В неглобальной зоне допустимы следующие операции с пакетами:

Влияние состояния зоны на операции с исправлениями и пакетами

В следующей таблице описываются последствия использования команд pkgadd, pkgrm, patchadd и patchrm в системе с неглобальными зонами в различных состояниях.

Следует отметить, что для версии Solaris 10 5/08 в описание установленного состояния, представленное в таблице, внесены некоторые изменения.

Состояние зоны 

Влияние на операции с пакетами и исправлениями 

Настроена 

Возможен запуск средств исправлений и пакетов. Программное обеспечение еще не установлено. 

Установлена 

Возможен запуск средств исправлений и пакетов. Во время операций применения исправлений или работы с пакетами зона переводится из установленного состояния в новое внутреннее состояние "смонтирована". После применения исправления зона возвращается в установленное состояние. 

Следует отметить, что сразу после завершения работы команды zoneadm -z имя_зоны install зона также переводится в установленное состояние. Для зоны в установленном состоянии, которая никогда не загружалась, невозможно применение исправлений или запуск команд работы с пакетами. Зона должна быть загружена в состояние выполнения по крайней мере однажды. После загрузки зоны в состояние выполнения и перевода обратно в установленное состояние командой zoneadm halt можно выполнять команды применения исправлений и работы с пакетами.

Готова 

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

Выполняется 

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

Неполная 

В этом состоянии находится зона, установленная или удаленная с помощью команды zoneadm. Использование средств исправлений и пакетов невозможно. Перевод зоны в состояние, допускающее использование этих средств, также невозможен.

Добавление пакетов в зоны

Для добавления пакетов в систему Solaris с установленными зонами используется системное средство pkgadd, описанное на справочной странице pkgadd(1M).

Использование pkgadd в глобальной зоне

Для добавления пакета только в глобальную зону используется средство pkgadd с параметром -G в глобальной зоне. Этот пакет не распространяется на какие-либо другие зоны. Следует отметить, что при SUNW_PKG_THISZONE=true указывать параметр -G не требуется. Если SUNW_PKG_THISZONE=false , то параметр -G переопределяет это значение.

При выполнении утилиты pkgadd в глобальной зоне применяются следующие правила.

Добавление пакета в глобальную зону и во все неглобальные зоны

Для добавления пакета в глобальную зону и во все неглобальные зоны следует выполнить утилиту pkgadd в глобальной зоне. Глобальный администратор выполняет утилиту pkgadd без параметра-G.

Пакет может быть добавлен в глобальную зону и во все неглобальные зоны безотносительно области, на которую оказывает влияние этот пакет.

Утилитой pkgadd выполняются следующие действия:

Добавление пакета только в глобальную зону

Для добавления пакета только в глобальную зону глобальный администратор в глобальной зоне выполняет утилиту pkgadd только с параметром - G.

Пакет может быть добавлен в глобальную зону при соблюдении следующих условий:

Утилитой pkgadd выполняются следующие действия:

Добавление пакета, установленного в глобальной зоне, во все неглобальные зоны

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

Для добавления пакета, уже установленного в глобальной зоне, во все неглобальные зоны используются следующие действия:

  1. В глобальной зоне удалите пакет с помощью утилиты pkgrm.

  2. Добавьте пакет без указания параметра -G.

Использование утилиты pkgadd в неглобальной зоне

Для добавления пакета в указанную неглобальную зону администратор зоны выполняет утилиту pkgadd без параметров. Применяются следующие условия:

Утилитой pkgadd выполняются следующие действия:

Удаление пакетов в зонах

Удаление пакетов в системе Solaris с установленными зонами осуществляется при помощи утилиты pkgrm, описанной на справочной странице pkgrm(1M).

Использование утилиты pkgrm в глобальной зоне

В случае использования утилиты pkgrm в глобальной зоне применяются следующие правила.

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

Удаление пакета из глобальной зоны и всех неглобальных зон

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

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

Утилитой pkgrm выполняются следующие действия.

Использование утилиты pkgrm в неглобальной зоне

Для удаления пакета администратор зоны выполняет утилиту pkgrm в неглобальной зоне. Применяются следующие ограничения:

Утилитой pkgrm выполняются следующие действия.

Параметры пакетов

Настройка параметров пакетов для зон

Характеристики пакетов в системе с установленными зонами определяются параметрами пакетов SUNW_PKG_ALLZONES , SUNW_PKG_HOLLOW и SUNW_PKG_THISZONE. Эти параметры необходимы для управления пакетами в системе с установленными неглобальными зонами.

В приведенной ниже таблице перечислены четыре допустимых сочетания для настройки параметров пакета. Комбинации настроек, не указанные в этой таблице, недопустимы, и в случае их выбора установка пакета невозможна.

Убедитесь в настройке всех трех параметров пакета. Значения всех трех параметров пакета указывать не обязательно. Средства пакетов интерпретируют отсутствие параметра пакета зоны как значение false, однако это значительно затрудняет установку пакета. Настройка всех трех параметров позволяет точно определить требуемое поведение средств при установке или удалении пакета.

Таблица 24–1 Допустимые значения параметров пакета

Параметр SUNW_PKG_ALLZONES

Параметр SUNW_PKG_HOLLOW

Параметр SUNW_PKG_THISZONE

Описание пакета 

false 

false 

false 

Это настройка для пакетов по умолчанию, не определяющая значения всех параметров пакета зоны. 

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

  • При выполнении команды pkgadd в глобальной зоне пакет устанавливается в глобальной зоне и во всех неглобальных зонах.

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

В обоих случаях все содержимое пакета является видимым во всех зонах, в которых устанавливается пакет. 

false 

false 

true 

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

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

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

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

true 

false 

false 

Пакет с такими параметрами может быть установлен только в глобальной зоне. При выполнении команды pkgadd пакет устанавливается в глобальной зоне и во всех неглобальных зонах. Все содержимое пакета является видимым во всех зонах.


Примечание –

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


true 

true 

false 

Пакет с такими параметрами может быть установлен только глобальным администратором в глобальной зоне. При выполнении команды pkgadd все содержимое пакета устанавливается в глобальной зоне. Если для параметров пакета заданы эти значения, то содержимое пакета не предоставляется ни для одной неглобальной зоны. В неглобальных зонах используется только информация по установке пакета, необходимая для отображения пакета как установленного. Это позволяет установить другие пакеты, зависящие от данного пакета.

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

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

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

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

    Например, неглобальная зона с унаследованными каталогами совместно использует определенные каталоги с глобальной зоной. Эти каталоги предназначены только для чтения. Неглобальные зоны с унаследованными каталогами совместно используют файловую систему /platform с другими зонами. В качестве другого примера можно привести пакеты, содержащие файлы, используемые только для аппаратных средств загрузки.


Примечание –

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


Параметр пакета SUNW_PKG_ALLZONES

Дополнительный параметр пакета SUNW_PKG_ALLZONES определяет область действия зоны пакета. Этот параметр определяет следующее:

Параметр пакета SUNW_PKG_ALLZONES имеет два допустимых значения. Это значения true и false. Значение по умолчанию – false. Если этот параметр не установлен или имеет значение, отличное от true или false, используется значение false.

Параметр SUNW_PKG_ALLZONES должен иметь значение true для пакетов, которые во всех зонах должны относиться к одной версии пакета и уровню изменений исправления. Для любого пакета, функциональность которого зависит от конкретного ядра Solaris, например Solaris 10, этот параметр должен иметь значение true. Для любого исправления пакета значение параметра SUNW_PKG_ALLZONES должно быть таким же, как и в установленном пакете, к которому применяется исправление. Уровень изменения исправления для любого пакета, для которого этот параметр имеет значение true, должен быть одинаковым во всех зонах.

Для пакетов, функциональность которых не зависит от конкретного ядра Solaris, например сторонних пакетов или компиляторов Sun, этот параметр должен иметь значение false. Любое исправление для пакета, для которого этот параметр имеет значение false, также должен иметь значение false для этого параметра. Версия пакета или уровень изменения исправления для любого пакета, для которого этот параметр имеет значение false, могут различаться в зависимости от зоны. Например, две неглобальные зоны имеют различные версии установленного веб-сервера.

Значения параметра пакета SUNW_PKG_ALLZONES описаны в следующей таблице.

Таблица 24–2 Значения параметра пакета SUNW_PKG_ALLZONES

Значение 

Описание 

false

Этот пакет можно установить из глобальной зоны только в глобальной зоне или в глобальной зоне и во всех неглобальных зонах. Этот пакет также можно установить из любой неглобальной зоны в той же неглобальной зоне. 

  • Глобальный администратор может установить пакет только в глобальной зоне.

  • Глобальный администратор может установить пакет в глобальной зоне и во всех неглобальных зонах.

  • Администратор зоны может установить пакет в неглобальной зоне.

При удалении из глобальной зоны пакет не удаляется из других зон. Пакет можно удалить из отдельных неглобальных зон. 

  • Пакет не обязательно должен быть установлен в глобальной зоне.

  • Пакет не обязательно должен быть установлен в какой-либо неглобальной зоне.

  • Пакет не обязательно должен быть идентичен во всех зонах. В отдельных зонах могут существовать различные версии пакета.

  • Пакет содержит программное обеспечение, которое не используется совместно всеми зонами неявным образом. Это означает, что пакет не является адаптированным для системы. К этой категории относится большая часть программного обеспечения уровня приложений. В качестве примеров можно привести продукты StarOfficeTM или веб-сервер.

true

При установке в глобальной зоне этот пакет также должен быть установлен во всех неглобальных зонах. При удалении из глобальной зоны пакет также должен быть удален из всех неглобальных зон. 

  • Пакет первоначально устанавливается в глобальной зоне. Затем он автоматически устанавливается во всех неглобальных зонах.

  • Версия пакета должна быть идентичной во всех зонах.

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

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

  • Установить пакет может только глобальный администратор. Администратор зоны не может установить пакет в неглобальной зоне.

Параметр пакета SUNW_PKG_HOLLOW

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

Параметр пакета SUNW_PKG_HOLLOW имеет два допустимых значения: true и false.

Значения параметра пакета SUNW_PKG_HOLLOW описаны в следующей таблице.

Таблица 24–3 Значения параметра пакета SUNW_PKG_HOLLOW

Значение 

Описание 

false

Этот пакет не является "полым": 

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

  • Пакет содержит программное обеспечение, которое должно быть видимым во всех неглобальных зонах. В качестве примера можно привести пакет с командой truss.

  • Помимо ограничений текущей параметра SUNW_PKG_ALLZONES, какие-либо дополнительные ограничения отсутствуют.

true

Этот пакет является "полым": 

  • Содержание пакета не распространяется ни на одну неглобальную зону. Однако информация об установке пакета необходима во всех неглобальных зонах.

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

  • Пакет распознается во всех зонах как устанавливаемый в целях проверки зависимостей другими пакетами, зависящими от устанавливаемого пакета.

  • Эта настройка включает все ограничения в случае установки для параметра SUNW_PKG_ALLZONES значения true.

  • В глобальной зоне пакет распознается как установленный, и все компоненты пакета устанавливаются. При установке пакета создаются каталоги, устанавливаются файлы, и действия классов и другие сценарии выполняются соответствующим образом.

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

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

Параметр пакета SUNW_PKG_THISZONE

Параметр пакета SUNW_PKG_THISZONE определяет необходимость установки пакета только в текущей, глобальной или неглобальной зоне. Параметр пакета SUNW_PKG_THISZONE имеет два допустимых значения. Это значения true и false. Значение по умолчанию – false.

Значения параметра пакета SUNW_PKG_THISZONE описаны в следующей таблице.

Таблица 24–4 Значения параметра пакета SUNW_PKG_THISZONE

Значение 

Описание 

false

  • При выполнении утилиты pkgadd в неглобальной зоне пакет устанавливается только в текущей зоне.

  • При выполнении утилиты pkgadd в глобальной зоне пакет устанавливается в глобальной зоне, а также во всех установленных в настоящее время неглобальных зонах. Кроме того, пакет распространяется на все устанавливаемые новые неглобальные зоны.

true

  • Пакет устанавливается только в текущей зоне.

  • При установке в глобальной зоне пакет не добавляется ни в одну из существующих в настоящее время или подлежащих созданию неглобальных зон. Это поведение аналогично поведению при указании параметра -G для команды pkgadd.

Запрос информации о пакете

Средство pkginfo, описанное на справочной странице pkginfo(1), поддерживает запросы базы данных программных пакетов в системе Solaris с установленными зонами. Для получения информации о базе данных см. База данных продуктов.

В глобальной зоне средство pkginfo может использоваться только для запроса базы данных программных пакетов в неглобальной зоне. Средство pkginfo может быть использовано в неглобальной зоне для выполнения запросов к базе данных программных пакетов только в этой неглобальной глобальной зоне.

Добавление исправлений в зонах

Как правило, исправление включает следующие компоненты.

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

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

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


Примечание –

Версии Solaris 10 3/05 – Solaris 10 11/06: Если пакет установлен с параметром pkgadd -G или с параметром pkginfo SUNW_PKG_THISZONE=true, применение исправления для пакета возможно только с использованием параметра patchadd - G. В версии Solaris 8/07 это ограничение отсутствует.


Solaris 10 8/07: Применение исправлений с отложенной активацией

Начиная с исправлений 119254-41 и 119255-41, утилиты установки исправлений patchadd и patchrm используют другой способ применения исправлений. Это изменение оказывает влияние на установку этих исправлений в любой системе Solaris 10. Эти исправления с отложенной активацией обеспечивают более качественную обработку большого объема изменений, возникающих в результате применения исправлений, например исправлений ядра, связанных с Solaris 10, начиная с версии Solaris 10 3/05.

Применение исправлений с отложенной активацией требует наличия файловой системы lofs для обеспечения стабильности работающей системы. При применении исправления к работающей системе система lofs обеспечивает стабильность в ходе выполнения процесса применения исправления. Эти объемные исправления ядра всегда требуют перезагрузки, однако теперь эта необходимость перезагрузки позволяет активировать изменения, внесенные lofs. Файл "Readme" исправления содержит инструкции с описанием требований по перезагрузке.

В случае использования неглобальных зон или отключенной "lofs" при установке или удалении исправлений с отложенной активацией необходимо учитывать следующее:


Примечание –

Использование Solaris Live Upgrade для управления исправлениями позволяет предотвратить проблемы, связанные с применением исправлений в работающей системе. Solaris Live Upgrade может уменьшить время простоя, вызванное применением исправления, и минимизировать риски за счет предоставления возможности нейтрализации ошибок в случае возникновения проблем. Исправление может быть применено для неактивной загрузочной среды при работающей системе, а если в новой загрузочной среде будут обнаружены проблемы, возможен возврат к исходной среде. См. раздел Upgrading a System With Packages or Patches в Solaris 10 Installation Guide: Solaris Live Upgrade and Upgrade Planning.


Solaris 10 10/09: Уменьшение времени на применение исправлений в зонах посредством параллельной обработки

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

Для выпусков ранее Solaris 10 10/09 данная функция поставляется в виде пакета исправлений уровня изменений 119254-66 или выше revision (SPARC) и уровня изменений 119255-66 или выше (x86).

Максимальное число неглобальных зон для применения исправлений в параллельном режиме указывается в новом файле настройки для patchadd/etc/patch/pdo.conf . Уровень изменений 66 или выше данного исправления работоспособен для всех инструментов автоматизации уровня исправлений систем Solaris 10 и выше, например Sun xVM Ops Center.

Сначала исправления применяются в глобальной зоне. При завершении ввода исправлений в глобальной зоне производится одновременное применение исправлений для неглобальных зон, количество которых указывается в параметре num_proc=. Максимально возможное число может быть в 1,5 раза больше количества активных процессоров , но не больше действительного числа неглобальных зон в системе.

Пример:

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

Использование Solaris Live Upgrade, а также новых исправлений для управления применением исправлений обеспечивает возврат к исходному состоянию при возникновении проблем. Исправление может быть применено для неактивной загрузочной среды при работающей системе, а если в новой загрузочной среде будут обнаружены проблемы, возможен возврат к исходной среде.

См. раздел Solaris 10 10/09: Метод параллельного применения исправлений в неглобальных зонах..

Применение исправлений в системе Solaris с установленными зонами

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

Для добавления исправлений в систему с установленными зонами используется системное средство patchadd, описанное на справочной странице patchadd(1M).

Использование утилиты patchadd в глобальной зоне

Для добавления исправления в глобальную зону и во все неглобальные зоны глобальный администратор выполняет утилиту patchadd в глобальной зоне.

При использовании утилиты patchadd в глобальной зоне необходимо учитывать следующее.

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

Утилитой patchadd выполняются следующие действия.

Использование утилиты patchadd в неглобальной зоне

При запуске администратором зоны в неглобальной зоне средство patchadd позволяет добавлять исправления только в эту зону. Исправление можно добавить в неглобальную зону в следующих случаях:

Утилитой patchadd выполняются следующие действия.

Совместное использование команды patchadd -G и переменной pkginfo в системе с установленными зонами

В следующем списке определяется взаимодействие между параметром -G и переменной SUNW_PKG_ALLZONES при добавлении исправления в глобальные и неглобальные зоны.

Глобальная зона, указан параметр -G

Если для каких-либо пакетов установлено значение SUNW_PKG_ALLZONES=TRUE, это приводит к возникновению ошибки, и никакие действия не выполняются.

Если значение SUNW_PKG_ALLZONES=TRUE не задано ни для одного пакета, то исправление применяется только к пакетам в глобальной зоне.

Глобальная зона, параметр -G не указан

Если для каких-либо пакетов установлено значение SUNW_PKG_ALLZONES=TRUE, исправление применяется к этим пакетам во всех зонах.

Если для каких-либо пакетов значение SUNW_PKG_ALLZONES=TRUE не задано, то исправление применяется к пакетам во всех соответствующих зонах. Пакеты глобальной зоны устанавливаются только в глобальной зоне.

Неглобальная зона, параметр -G задан или не задан

Если для каких-либо пакетов установлено значение SUNW_PKG_ALLZONES=TRUE, это приводит к возникновению ошибки, и никакие действия не выполняются.

Если значение SUNW_PKG_ALLZONES=TRUE не задано ни для одного пакета, то исправление применяется только по отношению к пакетам в неглобальной зоне.

Удаление исправлений в системе Solaris с установленными зонами

Системное средство patchrm, описанное на справочной странице patchrm(1M), используется для удаления исправлений в системе с установленными зонами.

Использование утилиты patchrm в глобальной зоне

Глобальный администратор может использовать утилиту patchrm в глобальной зоне для удаления исправлений. Средство patchrm не позволяет удалять исправления только из глобальной зоны или только из некоторых неглобальных зон.

Использование утилиты patchrm в неглобальной зоне

Администратор зоны может использовать утилиту patchrm в неглобальной зоне для удаления исправлений только из этой зоны. Исправления не могут оказывать влияние на совместно используемые области.

База данных продуктов

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

Для получения дополнительной информации о базе данных см. справочную страницу pkgadm(1M).