En este capítulo se describe cómo configurar una zona con marca lx en los sistemas basados en x64 o x86. El proceso es básicamente el mismo que el procedimiento que se sigue para configurar una zona de Solaris. Para configurar una zona con marca, no es necesario configurar algunas de las propiedades.
Antes de poder configurar el sistema para que utilice zonas, debe obtener información y tomar las decisiones pertinentes relativas a la configuración de las zonas. El siguiente mapa de tareas resume cómo planificar y configurar una zona lx.
Tarea |
Descripción |
Para obtener instrucciones |
---|---|---|
Planificar la estrategia de zona. |
|
Consulte Requisitos de espacio y sistema y Agrupaciones de recursos utilizadas en zonas. |
Determinar el nombre y la ruta de la zona. |
Establezca el nombre de la zona basándose en las convenciones de asignación de nombres. Se recomienda una ruta en Zetabyte File System (ZFS). Cuando tanto el origen zonepath como el destino zonepath residen en ZFS y se encuentran en la misma agrupación, el comando zoneadm clone utiliza automáticamente ZFS para clonar la zona. |
Consulte Tipos de propiedades y recursos y Guía de administración de Oracle Solaris ZFS. |
Obtener o configurar direcciones IP para la zona. |
En función de la configuración del sistema, debe obtener como mínimo una dirección IP para cada zona no global a la que desee conceder acceso a la red. |
Consulte Cómo determinar el nombre de sistema de la zona y obtener la dirección de red y la Guía de administración del sistema: servicios IP. |
Determinar si desea montar los sistemas de archivos en la zona. |
Examine los requisitos de las aplicaciones. |
Consulte Sistemas de archivos montados en zonas para obtener más información. |
Determinar qué interfaces de red deben ponerse a disposición en la zona. |
Examine los requisitos de las aplicaciones. |
Consulte Interfaces de red de IP compartida para obtener más información. |
Determinar si se desea modificar el conjunto predeterminado de permisos de la zona no global. |
Compruebe el conjunto de privilegios: los predeterminados, los privilegios que se pueden añadir y eliminar, y los que no se pueden utilizar en ese momento. |
Consulte Tipos de propiedades y recursos y Privilegios en una zona no global. |
Configurar la zona. |
Utilice zonecfg para crear una configuración para la zona. |
Consulte Cómo configurar, verificar y confirmar la zona con marca lx. |
Verificar y confirmar la zona configurada. |
Determine si las propiedades y recursos especificados son válidos en un sistema hipotético. |
Consulte Cómo configurar, verificar y confirmar la zona con marca lx. |
Utilice el comando zonecfg que se describe en la página del comando man zonecfg(1M) para llevar a cabo las acciones siguientes.
Crear la configuración de zona
Verificar que esté presente toda la información necesaria
Confirmar la configuración de zona no global
Si sabe que va a utilizar CD o DVD para instalar aplicaciones en una zona con marca lx, utilice add fs para añadir un acceso de sólo lectura al medio de CD o DVD en la zona global cuando configure inicialmente la zona con marca. A continuación, podrá utilizar un CD o DVD para instalar un producto en la zona con marca.
Mientras configura una zona con la utilidad zonecfg, puede utilizar el subcomando revert para deshacer la configuración de un recurso. Consulte Cómo deshacer una configuración de zona.
En Secuencia para configurar varias zonas con marca lx se facilita una secuencia para configurar múltiples zonas en el sistema.
Para ver la configuración de una zona no global, consulte Cómo mostrar la configuración de una zona con marca.
Una vez configurada la zona con marca, se recomienda realizar una copia de la configuración de la zona. Esta copia de seguridad puede utilizarse para restaurar la zona en el futuro. Como superusuario o administrador principal, imprima la configuración de la zona lx-zone en un archivo. En este ejemplo se utiliza un archivo denominado lx-zone.config.
global# zonecfg -z lx-zone export > lx-zone.config |
Consulte Cómo restaurar una zona no global individual para obtener más información.
Tenga en cuenta que no puede utilizar las zonas con marca lx en un sistema Solaris de confianza que tenga etiquetas activas. El comando zoneadm no verificará la configuración.
Para llevar a cabo este procedimiento, debe ser el administrador global de la zona global.
Conviértase en superusuario o asuma el rol de administrador principal.
Para crear el rol y asignarlo a un usuario, consulte Using the Solaris Management Tools With RBAC (Task Map) de System Administration Guide: Basic Administration.
Configure una zona con el nombre que ha elegido.
En este ejemplo de procedimiento se utiliza el nombre lx-zone.
global# zonecfg -z lx-zone |
Si es la primera vez que ha configurado esta zona, aparecerá el mensaje de sistema siguiente:
lx-zone: No such zone configured Use 'create' to begin configuring a new zone. |
Cree la nueva configuración de zona lx utilizando la plantilla SUNWlx.
zonecfg:lx-zone> create -t SUNWlx |
También puede crear una zona vacía y configurar la marca de forma explícita:
zonecfg:lx-zone> create -b zonecfg:lx-zone> set brand=lx |
Defina la ruta de zona (/export/home/lx-zone en este procedimiento).
zonecfg:lx-zone> set zonepath=/export/home/lx-zone |
Establezca el valor de inicio automático.
Si se configura como true, la zona se iniciará automáticamente al iniciar la zona global. En el caso de las zonas que se inician automáticamente, también debe activarse el servicio de zonas svc:/system/zones:default. El valor predeterminado es false.
zonecfg:lx-zone> set autoboot=true |
Defina los argumentos de inicio persistentes para una zona.
zonecfg:lx-zone> set bootargs="-i=altinit" |
Si hay agrupaciones de recursos activas en el sistema, asocie la agrupación con la zona.
Este ejemplo utiliza la agrupación predeterminada, pool_default.
zonecfg:lx-zone> set pool=pool_default |
Dado que una agrupación de recursos puede tener una asignación de clase de planificación opcional, puede utilizar la función de agrupaciones para configurar un planificador predeterminado que no sea el del sistema para una zona no global. Para ver instrucciones, consulte Cómo asociar una agrupación con una clase de planificación y Creación de la configuración.
Revise el conjunto de privilegios predeterminado.
zonecfg:lx-zone> set limitpriv="default,proc_priocntl" |
El privilegio proc_priocntl se utiliza para ejecutar procesos en la clase en tiempo real.
Defina cinco recursos compartidos de CPU.
zonecfg:lx-zone> set cpu-shares=5 |
Añada un límite de memoria.
zonecfg:lx-zone> add capped-memory |
Defina el límite de memoria.
zonecfg:lx-zone:capped-memory> set physical=50m |
Defina el límite de memoria de intercambio.
zonecfg:lx-zone:capped-memory> set swap=100m |
Establezca el límite de memoria bloqueada.
zonecfg:lx-zone:capped-memory> set locked=30m |
Finalice la especificación.
zonecfg:lx-zone:capped-memory> end |
Añada un sistema de archivos.
zonecfg:lx-zone> add fs |
Defina el punto de montaje para el sistema de archivos (/export/linux/local en este procedimiento).
zonecfg:lx-zone:fs> set dir=/export/linux/local |
Especifique que /opt/local en la zona global se montará como export/linux/local en la zona que se está configurando.
zonecfg:lx-zone:fs> set special=/opt/local |
En la zona no global, el sistema de archivos /export/linux/local podrá leerse y escribirse.
Especifique el tipo de sistema de archivos (lofs en este procedimiento).
zonecfg:lx-zone:fs> set type=lofs |
El tipo indica el modo en que interactúa el núcleo con el sistema de archivos.
Finalice la especificación del sistema de archivos.
zonecfg:lx-zone:fs> end |
Este paso puede realizarse más de una vez para añadir más de un sistema de archivos.
Añada una interfaz de red virtual.
zonecfg:lx-zone> add net |
Defina la dirección IP con el formato dirección IP de zona/máscara_red. En este procedimiento, se utiliza 10.6.10.233/24.
zonecfg:lx-zone:net> set address=10.6.10.233/24 |
Defina el tipo de dispositivo físico para la interfaz de red (el dispositivo bge en este procedimiento).
zonecfg:lx-zone:net> set physical=bge0 |
Finalice la especificación.
zonecfg:lx-zone:net> end |
Este paso puede realizarse más de una vez para añadir más de una interfaz de red.
Active el dispositivo de audio de la zona global en esta zona utilizando el tipo de recurso attr.
zonecfg:lx-zone> add attr |
Verifique la configuración de zona para la zona.
zonecfg:lx-zone> verify |
Confirme la configuración de zona para la zona.
zonecfg:lx-zone> commit |
Cierre el comando zonecfg.
zonecfg:lx-zone> exit |
Aunque no haya escrito explícitamente commit en el indicador, se intenta automáticamente llevar a cabo commit al escribir exit o en caso de que finalice el archivo.
El comando zonecfg también admite varios subcomandos, entre comillas y separados por puntos y coma, de la misma invocación de shell.
global# zonecfg -z lx-zone "create -t SUNWlx; set zonepath=/export/home/lx-zone" |
Consulte Instalación e inicio de zonas con marca lx para instalar la configuración de zona confirmada.
Puede utilizar esta secuencia para configurar e iniciar varias zonas en el sistema. La secuencia adopta los parámetros siguientes:
El número de zonas que se crearán
El prefijo nombre_zona
El directorio que se utilizará como directorio base
Para ejecutar la secuencia, debe ser el administrador global de la zona global. El administrador global tiene privilegios de superusuario en la zona global o asume el rol de administrador principal.
#!/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 |
Para llevar a cabo este procedimiento, debe ser el administrador global de la zona global.
Conviértase en superusuario o asuma el rol de administrador principal.
Para crear el rol y asignarlo a un usuario, consulte Using the Solaris Management Tools With RBAC (Task Map) de System Administration Guide: Basic Administration.
Visualice la configuración de una zona.
global# zonecfg -z zonename info |
Las secciones siguientes contienen procedimientos para modificar, restablecer o eliminar una configuración de zona.