Las zonas con marca están disponibles a partir de la versión 10 8/07 de Solaris. Las funciones que se incorporan en versiones posteriores se identifican correspondientemente.
La función de zonas con marca del sistema operativo Solaris es una ampliación de las Zonas de Solaris. En este capítulo se describe el concepto de zonas con marca y la marca lx, que implementa la funcionalidad de las zonas con marca Linux. Las zonas con marca Linux también se conocen como contenedores de Solaris para las aplicaciones Linux.
Aunque puede configurar e instalar zonas con marca en un sistema Trusted Solaris con etiquetas activas, no puede iniciar las zonas con marca con esta configuración del sistema.
Se admiten marcas adicionales en el sistema operativo Solaris.
Las siguientes dos marcas son compatibles en máquinas SPARC que utilizan el sistema operativo Solaris 10 8/07 o una versión posterior de Solaris 10:
La marca de solaris8, Solaris 8 Containers, que se describe en System Administration Guide: Solaris 8 Containers
La marca de solaris9, Solaris 9 Containers, que se describe en System Administration Guide: Solaris 9 Containers
La marca cluster, que se describe en el Sun Cluster 3.2 1/09 Software Collection for Solaris OS en docs.sun.com también se admite en la versión Solaris 10.
Consulte el Capítulo 16Introducción a Solaris Zones para obtener información general sobre el uso de las zonas en un sistema Solaris.
Debe estar familiarizado con las zonas y los conceptos de administración de recursos siguientes:
La zona global y la zona no global, descritas en Funcionamiento de las zonas
El administrador global y el administrador de zona, descritos en Administración de las zonas no globales y Creación de zonas no globales.
El modelo de estado de zona, que se describe en Modelo de estado de zona no global.
Las características de aislamiento de la zona, que se abordan en Características de las zonas no globales.
Los privilegios, descritos en Privilegios en una zona no global.
Las redes, descritas en Redes en zonas no globales de IP compartida
El concepto de contenedor de Solaris, que es el uso de las funciones de administración de recursos, como las agrupaciones de recursos, con zonas. El uso y la interacción de las zonas y las funciones de administración de recursos se describen en Uso de las funciones de administración de recursos con las zonas no globales, Configuración de controles de recursos de zonas, el Capítulo 27Administración de zonas de Solaris (descripción general) y los capítulos de la parte 1 sobre administración de recursos de esta guía que describen cada función de administración de recursos. Por ejemplo, las agrupaciones de recursos se tratan en el Capítulo 12Agrupaciones de recursos (descripción general) y el Capítulo 13Creación y administración de agrupaciones de recursos (tareas).
El programador de reparto justo (FSS), una clase de planificación que permite asignar tiempo de la CPU basándose en los recursos compartidos, se describe en el Capítulo 8Programador de reparto justo (descripción general) y el Capítulo 9Administración del programador de reparto justo (tareas).
El daemon de limitación de recursos (rcapd), que se puede utilizar desde la zona global para controlar el uso del tamaño del conjunto residente (RSS) de las zonas con marca. La propiedad del recurso zonecfg capped-memory define max-rss para una zona. Este valor lo aplica rcapd ejecutándose en la zona global. Para más información, consulte el Capítulo 10Control de memoria física utilizando el daemon de límite de recursos (descripción general), el Capítulo 11Administración del daemon de límite de recursos (tareas) y la página del comando man rcapd(1M).
El Glosario incluye las definiciones de los términos que se utilizan con las zonas y las funciones de administración de recursos.
En esta parte de la guía se incluye cualquier información adicional necesaria para utilizar las zonas con marca en el sistema.
Los siguientes capítulos de esta guía no se aplican a las zonas con marca:
La estructura de zonas con marca (BrandZ) amplía la infraestructura de Zonas de Solaris, que se describe en la Parte II, Zonas de esta guía, para incluir la creación de marcas. El término marca puede hacer referencia a una amplia variedad de entornos operativos. BrandZ permite crear zonas no globales que contengan entornos operativos no nativos utilizados para la ejecución de aplicaciones. El tipo de marca se utiliza para determinar las secuencias que se ejecutan cuando se instala e inicia una zona. Asimismo, la marca de zona se utiliza para identificar correctamente el tipo de aplicación en el momento de su inicio. Todas las tareas de administración de marcas se llevan a cabo mediante ampliaciones de la estructura de zonas actual.
Una marca puede proporcionar un entorno simple o complejo. Por ejemplo, un entorno simple puede sustituir las utilidades estándar de Solaris con sus equivalentes GNU. Un entorno complejo puede proporcionar un espacio de usuario de Linux completo que admita la ejecución de aplicaciones de Linux.
Cada zona se configura con una marca asociada. La marca predeterminada es la marca native (Solaris). Una zona con marca admite exactamente una marca de un binario no nativo, lo que significa que una zona con marca proporciona un único entorno operativo.
BrandZ amplía las herramientas de zonas de los modos siguientes:
El comando zonecfg se utiliza para configurar el tipo de marca de una zona cuando se configura la zona.
El comando zoneadm se utiliza para registrar el tipo de marca de una zona, así como para administrarla.
Puede cambiar la marca de una zona en el estado de configurada. Una vez instalada una zona con marca, no se puede cambiar ni eliminar dicha marca.
Las zonas con marca proporcionan un conjunto de puntos de interposición en el núcleo que sólo se aplican a los procesos que se ejecutan en una zona con marca.
Estos puntos se encuentran en rutas como syscall, la ruta de carga del proceso y la ruta de creación del subproceso.
En cada uno de estos puntos, una marca puede decidir si el comportamiento estándar de Solaris se complementa o se sustituye.
Una marca también puede proporcionar una biblioteca de plugin para librtld_db. La biblioteca de plugin permite a las herramientas de Solaris como el depurador, que se describe en mdb(1) y DTrace, que se describe en dtrace(1M), acceder a la información de símbolos de los procesos que se ejecutan en una zona con marca.
Los dispositivos compatibles con cada zona se describen en las páginas del comando man y otra documentación relativa a la marca. La marca define la compatibilidad con los dispositivos. Una marca puede desactivar la incorporación de dispositivos no compatibles o no reconocidos.
La marca define los sistemas de archivos necesarios para una zona con marca.
La marca define los privilegios disponibles en una zona con marca. Para obtener más información acerca de los privilegios, consulte Privilegios en una zona no global y Privilegios configurables en una zona con marca lx .
La marca lx utiliza la estructura de zonas con marca para permitir a las aplicaciones binarias de Linux ejecutarse sin modificaciones en un equipo con un núcleo de sistema operativo Solaris.
El equipo debe tener uno de los siguientes tipos de procesadores i686 compatibles:
Intel
Pentium Pro
Pentium II
Pentium III
Celeron
Xeon
Pentium 4
Pentium M
Pentium D
Pentium Extreme Edition
Núcleo
Core 2
AMD
Opteron
Athlon XP
Athlon 64
Athlon 64 X2
Athlon FX
Duron
Sempron
Turion 64
Turion 64 X2
La marca lx incluye las herramientas necesarias para instalar una distribución de CentOS 3.x o Red Hat Enterprise Linux 3.x en una zona no global. Se admiten las versiones de la 3.5 a la 3.8 de cada distribución. La marca admite la ejecución de aplicaciones Linux de 32 bits en equipos x86 y x64 que ejecutan el sistema Solaris en el modo de 32 o 64 bits.
La marca lx emula las interfaces de llamada del sistema que proporciona el núcleo 2.4.21 de Linux, modificadas por Red Hat en las distribuciones de RHEL 3. x. Este núcleo proporciona las interfaces de llamadas del sistema que utiliza la versión glibc 2.3.2 de Red Hat.
Asimismo, la marca lx emula parcialmente las interfaces /dev y /proc de Linux.
Tenga en cuenta que debe mantener una configuración compatible si añade paquetes a una zona con marca lx. Consulte Cómo mantener una configuración compatible para obtener más información.
El sistema Solaris no impone ningún límite para el número de aplicaciones Linux que puede ejecutar en una zona con marca lx. Debe haber disponible suficiente memoria. Consulte también Requisitos de espacio y sistema.
Al margen del núcleo subyacente, sólo se pueden ejecutar aplicaciones Linux de 32 bits.
La zona lx admite sólo aplicaciones Linux de nivel de usuario. No puede utilizar controladores de dispositivos Linux, módulos de núcleo Linux o sistemas de archivos Linux desde una zona lx.
Consulte http://hub.opensolaris.org/bin/view/Community+Group+brandz/applications para ver una lista de algunas aplicaciones que se ejecutan correctamente con la marca lx . Consulte Cómo instalar una aplicación en una zona con marca lx para ver un ejemplo de cómo instalar una aplicación.
No puede ejecutar aplicaciones Solaris en una zona lx. No obstante, la zona lx permite utilizar el sistema Solaris para desarrollar, probar e implementar las aplicaciones Linux. Por ejemplo, puede colocar una aplicación Linux en una zona lx y analizarla con las herramientas de Solaris que se ejecutan en la zona global. A continuación, puede realizar mejoras e implementar la aplicación modificada en un sistema Linux nativo.
Las herramientas de depuración de Solaris como DTrace y mdb se pueden aplicar a procesos de Linux que se ejecutan dentro de la zona, pero las herramientas deben ejecutarse en la zona global. Los archivos principales se generan en el formato de Solaris y sólo pueden depurarse con las herramientas de Solaris.
DTrace está habilitado para las aplicaciones Linux mediante el proveedor de seguimiento dinámico lxsyscall de DTrace. El proveedor actúa como proveedor syscall de DTrace. El proveedor lxsyscall ofrece sondeos que se activan cuando un subproceso entra en un punto de entrada de llamada del sistema Linux o procede de él.
Si desea más información sobre las opciones de depuración, consulte la Guía de seguimiento dinámico de Solaris y las páginas del comando man dtrace(1M) y mdb(1). La Guía de seguimiento dinámico de Solaris describe las interfaces documentadas públicamente disponibles para DTrace. Puede utilizarse la documentación sobre el proveedor syscall para el proveedor lxsyscall.
Dado que NFS depende de los servicios de nombres, que son específicos de la zona, no puede acceder a ningún sistema de archivos NFS que esté montado fuera de la zona actual. De este modo, no puede depurar procesos de Linux basados en NFS desde la zona global.
Los comandos que se identifican en la tabla siguiente proporcionan la interfaz administrativa principal para la función de zonas.
Tabla 31–1 Comandos y otras interfaces que se utilizan con zonas con marca lx
Referencia de comando |
Descripción |
---|---|
Inicia sesión en una zona no global |
|
Administra zonas en un sistema |
|
Se utiliza para configurar una zona |
|
Se utiliza para asignar un ID y nombre de zona |
|
brands(5) |
Proporciona una descripción de la función de zonas con marca |
lx(5) |
Describe las zonas con marca Linux |
Proporciona una descripción de la función de zonas |
|
lx_systrace(7D) |
Proveedor de seguimiento de llamadas del sistema Linux de DTrace |
Controlador de dispositivos de consola de zona |
El daemon zoneadmd es el proceso principal para administrar la plataforma virtual de la zona. La página del comando man para el daemon zoneadmd es zoneadmd(1M). El daemon no constituye una interfaz de programación.
La Tabla 27–5 incluye los comandos que se pueden utilizar en la zona global para mostrar información sobre las zonas no globales, incluidas las zonas con marca. La Tabla 27–4 incluye los comandos que se utilizan con el daemon de limitación de recursos.
En la tabla siguiente se describen de forma general las tareas relacionadas con la configuración de zonas lx en el sistema por primera vez.
Tarea |
Descripción |
Para obtener instrucciones |
---|---|---|
Identificar cada aplicación Linux de 32 bits que desea ejecutar en una zona. |
Evalúe las necesidades del sistema que tiene la aplicación. |
Consulte los objetivos empresariales y la documentación del sistema si es preciso. |
Determinar cuántas zonas configurar. |
Evalúe:
|
Consulte Compatibilidad de aplicaciones, Requisitos de espacio y sistema, Evaluación de la configuración del sistema actual, Secuencia para configurar varias zonas con marca lx. |
Determinar si utilizará agrupaciones de recursos con la zona para crear un contenedor. |
Si utiliza agrupaciones de recursos, configure las agrupaciones antes que las zonas. Las propiedades zonecfg permiten añadir rápidamente controles de recursos de zona y funciones de agrupación a una zona. |
Consulte Cómo configurar la zona con marca lx, Capítulo 13Creación y administración de agrupaciones de recursos (tareas). |
Llevar a cabo tareas de preconfiguración. |
Determine el nombre y la ruta de zona para cada zona. Si se necesita conectividad de red, obtenga la dirección IP. Determine la clase de planificación para la zona. Establezca el conjunto de privilegios a los que deben limitarse los procesos que hay dentro de la zona, si no es suficiente el conjunto predeterminado estándar. |
Para obtener información sobre el nombre de la zona, la ruta de la zona, las direcciones IP y la clase de planificación, consulte Componentes de configuración de zonas con marca lx. Para ver una lista de los privilegios predeterminados y los privilegios que pueden configurarse en una zona no global, consulte Privilegios en una zona no global. Para obtener información sobre la asociación de agrupaciones de recursos, consulte Funcionamiento de las zonas y Cómo configurar la zona con marca lx. |
Desarrollar configuraciones. |
Configure las zonas no globales. |
Consulte Configuración, verificación y confirmación de una zona y la página del comando man zonecfg(1M). |
Como administrador global, verificar e instalar las zonas configuradas. |
Es necesario verificar e instalar las zonas antes de iniciar la zona. Debe obtener una distribución de Linux antes de instalar una zona con marca Linux. |
Consulte el Capítulo 34Cómo instalar, iniciar, detener, clonar y desinstalar las zonas con marca lx (descripción general) y el Capítulo 35Cómo instalar, iniciar, detener, desinstalar y clonar zonas con marca lx (tareas). |
Como administrador global, inicie las zonas no globales. |
Inicie cada zona para colocarla en el estado de ejecución. |
Consulte el Capítulo 35Cómo instalar, iniciar, detener, desinstalar y clonar zonas con marca lx (tareas). |
Preparar la zona nueva para uso de producción. |
Cree cuentas de usuario, añada software y personalice la configuración de la zona utilizando las herramientas y los métodos estándar de administración del sistema Linux desde la zona. |
Consulte la documentación para configurar un equipo que acaba de instalar e instalarle las aplicaciones. En esta guía se incluyen las consideraciones especiales aplicables al sistema con zonas instaladas. |