Zonas en Solaris Francisco Jesús Delgado Almirón fjdelg@correo.ugr.es Diseño de Sistemas Operativos 5º Ingeniería Informática Breve introducción ¿Qué es Solaris? Solaris es un Sistema Operativo de tipo Unix desarrollado desde 1992 inicialmente por SunMicrosystems y actualmente por Oracle Corporation como sucesor de SunOS. Aunque Solaris en sí mismo todavía es software propietario, la parte principal del sistema operativo se ha liberado como un proyecto de software libre denominado Opensolaris. Una importante pregunta que nos podemos hacer si decidimos utilizar Solaris es, ¿podré usar software libre?, afortunadamente se dispone de la mayor cantidad de software libre disponible para servidores, por lo que si podemos utilizar la mayor parte de los paquetes disponibles para Linux y trabajar con ellos. Entre muchos de ellos podemos utilizar apache, servidores de imap y pop3, mysql, etc. Solaris nos ofrece las siguientes características: Portabilidad, Escalabilidad, Interoperabilidad y Compatibilidad. Solaris 10 Fuente de la imagen: http://upload.wikimedia.org/wikipedia/commons/b/ba/Solaris10.png Breve Introducción OpenSolaris El código fuente de Solaris se liberó bajo la licencia CDDL (Licencia Común de Desarrollo y Distribución) como un proyecto de software libre bajo el nombre OpenSolaris. La base de OpenSolaris fue creada el 14 de Junio de 2005 a partir de la entonces actual base de desarrollo de código de Solaris. Es posible descargar y licenciar versiones, tanto binarias como en forma de código fuente, sin coste alguno. A parte de todo esto se ha añadido al proyecto Open Solaris código para características venideras, como soporte Xen. Sun anunció que las versiones futuras de Solaris se derivarán a partir de OpenSolaris. Breve Introducción ¿Dónde puedo conseguirlo? Para descargar una imagen para Virtualbox de Solaris basta con acceder a la siguiente dirección: http://virtualboxes.org/images/opensolaris/ A la hora de iniciar sesión: Usuario: opens Password: reverse Entrando en materia ¿Qué es una zona? Una zona es un entorno de sistema operativo virtualizado creado en una única instancia de Solaris. Cuando se crea una zona se genera un entorno de ejecución de aplicaciones en el que los procesos están aislados del resto del sistema. Con esto se evita que los procesos que se están ejecutando en una zona sean controlados o se vean afectados por otros procesos que se estén ejecutando en otras zonas. Fuente de la imagen: http://upload.wikimedia.org/wikipedia/commons/e/e0/SolarisZones-schema.png Entrando en materia ¿Qué es una zona? No hay límites para el espacio de disco que puede consumir una zona. El administrador global es responsable de la restricción de espacio, además debe asegurarse de que el almacenamiento local sea suficiente para contener un sistema de archivos raíz de una zona no global Tipos de Zonas Existen dos divisiones principales o fundamentales de las zonas: ● La zona global ● Las zonas no globales Dentro de las zonas no globales podemos distinguir las siguientes: ● Zonas raíz dispersas ● Zonas raíz completa ● Zonas con marcas ● – Zonas con marca de Oracle Solaris 10 – Zonas con marcas heredadas – etc La zona Solaris La zona global Es la zona que contiene el sistema operativo, en realidad es cualquier máquina que tenga instalado el sistema operativo Solaris 10, ya que por defecto toda máquina que tenga Solaris 10 instalado en una zona global. El resto de las zonas existentes depende de ella ya que esta es la que controla el hardware de la máquina y el Kernel. Las zonas no globales Son “máquinas virtuales” que se crean dentro de la zona global que permiten el aislamiento de las aplicaciones que se ejecuten dentro de ella. Existen dos tipos de zonas no globales, las zonas compartidas o pequeñas y las zonas aisladas o grandes. Las zonas pequeñas comparten la estructura de directorios del sistema operativo con la zona global. Estas ocupan como mucho 100 MB. Las zonas grandes no comparten la estructura de directorios del sistema operativo con la zona global. Este tipo de aislamiento permite tener diferentes paquetes de software instalados en esta zona y diferentes niveles de parches. Estas ocupan 4 GB. Representación de una zona compartida Fuente de la imagen: http://eduardolosi.com.ar/solaris/zones.html Zonas raíz dispersas Las zonas no globales que tienen recursos inherit-pkg-dir se denominan zonas raíz dispersas. El modelo de zona raíz dispersa optimiza el uso compartido de los objetos de la siguiente forma: Únicamente un subconjunto de los paquetes instalados en la zona global se instala directamente en la zona no global. ● Se utilizan sistemas de archivos de bucle de sólo lectura, identificados como recursos inherit-pkg-dir para obtener acceso a otros archivos. ● Como norma general una zona requiere unos 100 MB de espacio libre en disco por zona cuando se ha instalado la zona global. ● De forma predeterminada los paquetes adicionales instalados en la zona global también se instalan en las zonas no globales. ● Zonas raíz completa El modelo de zona raíz completa permite la máxima configuración. Todos los paquetes necesarios y cualquier paquete opcional de Solaris seleccionados se instalan en los sistemas de archivos privados de la zona. Las ventajas de este método incluyen la posibilidad de que los administradores globales personalicen el diseño del sistema de archivos de zonas. Funciones que nos proporcionan las zonas La tecnología de Zonas de Solaris se utiliza para virtualizar servicios del sistema operativo y proporcionar un entorno aislado seguro para ejecutar aplicaciones. Una zona también proporciona un nivel abstracto que separa las aplicaciones de los atributos físicos del equipo en el que se han implementado. A continuación vamos a hablar de las funciones que nos proporcionan (no todas). Seguridad Una vez asignado un proceso en una zona que no sea la global, ni el proceso ni sus procesos hijos pueden cambiar la zonas. Si un intruso consigue dar con una brecha de seguridad en el software que se ejecuta en una zona está limitado al conjunto restringido de acciones posibles en la zona. Aislamiento en red Si una zona debe aislarse en la capa IP de la red dicha zona puede tener una dirección IP exclusiva por motivos de seguridad. Las zonas también pueden configurarse como zonas de IP compartida. Estas zonas se conectan a las mismas VLAN o LAN que la zona global y comparten la configuración de ruta de la dirección IP con la zona global. Las zonas de IP compartida tienen direcciones IP distintas, pero comparten otras partes de la dirección IP. Virtualización Las zonas proporcionan un entorno virtualizado que puede ocultar detalles como los dispositivos físicos, la dirección IP principal del sistema, el nombre de sistema de las aplicaciones, etc. El entorno virtualizado permite una administración independiente de cada zona. Las acciones que lleva a cabo el administrador de zona en una zona no global no afectan al resto del sistema. Configuración Antes de configurar el sistema para que utilice zonas, se debe obtener información y tomar las decisiones pertinentes relativas a la configuración de las zonas. Algunas de ellas son: – Planificar la estrategia de zona. – Determinar el nombre de la zona. – Determinar la ruta de la zona. – etc Configuración Una vez que ya conocemos mas o menos cómo va a ser nuestra zona cabe destacar que para la configuración de las zonas en Solaris tenemos fundamentalmente dos comandos: ● zoneadm ● zonecfg Para la gestión de las zonas en Solaris contamos con los siguientes comandos: ● zonecfg: nos permite configurar los parámetros de la zona (Nombre, IP, Packages, Resources, …) ● zoneadm: nos permite administrar la zona (Iniciar, Detener, Reiniciar) ● zlogin: nos permite conectarnos a la sesión de una zona ● zonename: nos permite saber el nombre de la zona en la que nos encontramos Bibliografía Wikipedia [en línea]. <http://es.wikipedia.org/wiki/Solaris_(sistema_operativo> [Consulta: 01 de abril de 2013]. Oracle [en línea]. <http://docs.oracle.com/cd/E19253-01/820-2317/index.html> [Consulta: 01 de abril de 2013] Oracle [en línea]. <http://docs.oracle.com/cd/E26921_01/html/E25828/gitsf.html> [Consulta: 01 de abril de 2013] Oracle [en línea]. <http://docs.oracle.com/cd/E26921_01/html/E25828/z.inst.task-53.html> [Consulta: 01 de abril de 2013] Oracle [en línea]. <http://docs.oracle.com/cd/E26921_01/pdf/E25933.pdf> [Consulta: 01 de abril de 2013] Oracle [en línea]. <http://docs.oracle.com/cd/E19253-01/820-2317/zones.intro-1/index.html> [Consulta: 01 de abril de 2013] Oracle [en línea]. <http://docs.oracle.com/cd/E26921_01/html/E25933/glhcg.html> [Consulta: 01 de abril de 2013] Oracle [en línea]. <http://docs.oracle.com/cd/E24842_01/html/E22519/managezones-6.html> [Consulta: 01 de abril de 2013] Oracle [en línea]. <http://docs.oracle.com/cd/E26921_01/html/E25828/index.html> [Consulta: 01 de abril de 2013] http://eduardolosi.com.ar [en línea]. <http://eduardolosi.com.ar/solaris/zones.html> [Consulta: 01 de abril de 2013] Urko B. sparcki [Blog Internet]. Urko Benito. 2009 julio – [Consulta: 02 abril 2013]. Disponible en: <http://sparcki.blogspot.com.es/2009/07/gestion-basica-de-zonas-en-solaris-10.html> Palacio FA. Pipediatra [Blog Internet]. Colombia: Felipe Andrés Palacio Diaz. 2009 julio – [Consulta: 03 abril 2013]. Disponible en: < https://sites.google.com/site/leafarpaur/httpsitesgooglecomsitesalverteccomarsalverteccomar/unix/zonas> "Cómo citar bibliografía”. Universidad Carlos III de Madrid [en linea]. <http://www.uc3m.es/portal/page/portal/biblioteca/aprende_usar/como_citar_bibliografi> [Consulta: 03 abril 2013] Código del sistema operativo OpenSolaris [no en línea actualmente]. <http://src.opensolaris.org/source/ > [Consulta: 10 de marzo de 2013] OpenSolaris [no en línea actualmente]. <http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/> [Consulta: 10 de marzo de 2013]