Traducciones de esta página:

Mejoras en un servidor de instalaciones Opensolaris AI

Introducción

A la hora de configurar múltiples servidores, es conveniente utilizar el método "Automated Install" de Opensolaris. Este método consiste en preparar un servidor de instalaciones, desde el que se podrán instalar equipos por red. Además, en el caso de instalar Opensolaris 2009.06 en Sparc, es imprescindible usarlo, ya que no hay live CD.

En este artículo veremos algunos cambios simples que podemos hacer en el servidor de instalaciones para mejorarlo. En todos ellos consiste en modificar el fichero manifest, que además, puede personalizarse para muchas otras cosas, como modificar las cuentas que se instalan automáticamente, etc.

Reducir el tamaño de la instalación

Por defecto, Opensolaris 2009.06 requiere muchos gigas para instalarse. Sin embargo, incluye gran cantidad de paquetes no necesarios en muchos casos (específicamente, cuando instalamos Opensolaris en servidores es innecesario que se instalen las aplicaciones de escritorio de GNOME, por ejemplo). Esta reducción conseguirá que nuestra instalación se limite a unos 600 Mb de espacio. Como consecuencia, también conseguiremos que la instalación sea más rápida.

En primer lugar, nos copiaremos el manifest del servidor AI para modificarlo (suponemos que hemos instalado nuestro servidor en /export/aiserver/0906sparc):

# cp /export/aiserver/0906sparc/auto_install/ai_manifest.xml ~/ldoms-aimanifest.xml

Ahora vamos a forzar que sólo se instale la siguiente lista de paquetes:

entire
SUNWcsd
SUNWcs
SUNWcsl
SUNWcakr
SUNWcar
SUNWcfcl
SUNWckr
SUNWcnetr
SUNWcurl
SUNWefc
SUNWerid
SUNWesu
SUNWfctl
SUNWpd
SUNWfchba
SUNWfruid
SUNWgnu-idn
SUNWgss
SUNWgssc
SUNWinstall-libs
SUNWipf
SUNWipkg
SUNWkey
SUNWkvm
SUNWldom
SUNWlexpt
SUNWlibC
SUNWlibms
SUNWlibsasl
SUNWloc
SUNWlxml
SUNWmd
SUNWnfsc
SUNWnfsckr
SUNWopenssl
SUNWperl584core
SUNWpicl
SUNWpool
SUNWpr
SUNWsmapi
SUNWrmodu
SUNWssh
SUNWsshcu
SUNWsshd
SUNWPython
SUNWpython-pyopenssl
SUNWTcl
SUNWTk
SUNWadmap
SUNWadmlib-sysid
SUNWadmr
SUNWbash
SUNWbip
SUNWbzip
SUNWtecla
SUNWtls
SUNWtoo
SUNWwbsup
SUNWxwrtl
SUNWzfs
SUNWzfskr
SUNWzlib
SUNWzone
SUNWintgige

Para hacerlo, volcamos la lista anterior al fichero paquetes.txt y creamos con él un formato XML, con el script:

# for var in `cat paquetes.txt`; do echo "            <pkg name=\"$var\"/>"; done > pkg.list.xml

El resultado tendrá este aspecto:

              <pkg name="entire"/>
              <pkg name="SUNWcsd"/>
              <pkg name="SUNWcs"/>
              ...
              ...

Ahora insertaremos ese fichero, en el fichero ldoms-aimanifest.xml, dentro de la sección ai_install_packages. También hay que eliminar la sección siguiente:

          <ai_uninstall_packages>
                  <pkg name="babel_install"/>
                  <pkg name="slim_install"/>
          </ai_uninstall_packages>

De este modo, el fichero final tendrá este aspecto:

<!--
CDDL HEADER START
...
...

CDDL HEADER END

Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
Use is subject to license terms.
-->

<ai_criteria_manifest>
  <ai_embedded_manifest>
      <ai_manifest name="default">
          <ai_pkg_repo_default_authority>
              <main url="http://pkg.opensolaris.org/release" authname="opensolaris.org"/>
              <mirror url=""/>
          </ai_pkg_repo_default_authority>

          <!--
              By default the latest build available, in the specified IPS
              repository, is installed.
              If another build is required, the build number has
              to be appended to the 'entire' package in following
              form:

              <pkg_name="entire@0.5.11-0.build#/>
          -->
          <ai_install_packages>
              <!--
                  Due to dependency issues, entire must be listed first
                  in the package list, followed by SUNWcsd, and then SUNWcs.
                  Any additional packages must be listed after SUNWcs.
              -->
          <pkg name="entire"/>
          <pkg name="SUNWcsd"/>
          <pkg name="SUNWcs"/>
          <pkg name="SUNWcsl"/>
          ...
          ...
          ...
          </ai_install_packages>
          <ai_auto_reboot>
              false
          </ai_auto_reboot>
      </ai_manifest>
  </ai_embedded_manifest>
  <sc_embedded_manifest name = "AI">
      <!-- <?xml version='1.0'?>
      <!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
      <service_bundle type="profile" name="name">
          <service name="ai_properties" version="1" type="service">
              <instance name="default" enabled="true">
                  <property_group name="ai" type="application">
                      <propval name="username" type="astring" value="jack"/>
                      <propval name="userpass" type="astring" value="9Nd/cwBcNWFZg"/>
                      <propval name="description" type="astring" value="default_user"/>
                      <propval name="rootpass" type="astring" value="$5$VgppCOxA$ycFmYW4ObRRHhtsGEygDdexk5bugqgSiaSR9niNCouC"/>
                      <propval name="timezone" type="astring" value="US/Pacific"/>
                  </property_group>
              </instance>
           </service>
      </service_bundle>
  -->
  </sc_embedded_manifest>
</ai_criteria_manifest>

Por último, importamos en el servidor de instalaciones el archivo modificado, con la siguiente orden:

# installadm add -m ~/ldoms-aimanifest.xml -n 0906sparc

Evitar el chequeo de 12 Gb

El servidor AI fallará si el cliente a instalar tiene menos de 12 Gb libres en el disco. Esto, en el caso de instalaciones reducidas, no es necesario. Además, si usamos máquinas virtuales, es muy común usar discos de 8 Gb o menos. La forma de evitar este chequeo es simple: basta con editar el manifest (tal como veíamos en la sección anterior) para indicar en qué disco se desea instalar; en este caso se desactiva dicho chequeo. Por ejemplo, si sabemos que nuestro sistema se va a instalar en el disco c6d0, debemos incluir en el manifest la sección siguiente, dentro de la sección "ai_manifest name":

  <ai_target_device>
       <target_device_name>c6d0</target_device_name>
  </ai_target_device>

A continuación, este nuevo manifest lo importamos al servidor AI:

# installadm add -m ~/ldoms-aimanifest.xml -n 0906sparc
 
osolaitips.txt · Última modificación: 2010/01/13 00:35 (editor externo)
 
Excepto donde se indique lo contrario, el contenido de esta wiki se autoriza bajo la siguiente licencia:CC Attribution-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki