Guía de instalación de Sun Desktop Manager 1.0

Capítulo 3 Componentes del cliente

Para poder acceder a los datos de configuración desde Desktop Manager, un cliente de escritorio necesita Java Desktop System Configuration Agent. Configuration Agent se comunica con el depósito remoto de datos de configuración y con los adaptadores, además de integrar los datos en sistemas de configuración específicos. Los sistemas de configuración actualmente admitidos son Java Preferences, Mozilla Preferences y StarOffice Registry.

El sistema operativo Solaris 10 proporciona una versión de Configuration Agent. Ahora bien, Desktop Manager necesita una versión más actual de dicha herramienta. Esta versión nueva forma parte de la instalación de los componentes del cliente de Desktop Manager y las soluciones asociadas.

Para instalar los componentes del cliente de Desktop Manager:

  1. Descargue el archivo comprimido de Desktop Manager y extraiga el contenido en un directorio temporal


    # unzip SunDesktopMgr-1.0.zip
  2. Instale las modificaciones recomendadas.

    Las modificaciones se ubican en el directorio SunDesktopMgr-1.0/<platform>/client/Patches. Siga las instrucciones de instalación de cada modificación.

  3. Regístrese como superusuario y ejecute la secuencia de comandos de instalación con


    # cd SunDesktopMgr-1.0/<platform>/client
    # ./setup

Configuration Agent

Configuration Agent forma parte de un conjunto de distintos paquetes, enumerados en la tabla siguiente:

Nombre del paquete de Solaris 

Descripción 

SUNWapbas 

Bibliotecas de configuración compartidas 

SUNWapmsc 

Archivos diversos de Configuration Agent 

SUNWapoc 

Configuration Agent 

SUNWapdc 

Asistente de Configuration Agent 

Al instalar estos paquetes se instalan los archivos que esta API necesita. Puede instalar los paquetes manualmente o a través de la instalación de Java Desktop System. Después de la instalación debe configurar y habilitar Configuration Agent en el sistema.


Nota –

Los paquetes de Configuration Agent se instalan como parte del sistema operativo Solaris al instalar Java Desktop System; sin embargo, Desktop Manager modifica estos archivos durante la instalación para proporcionar el nivel de funcionalidad adecuado.


Para acceder a los datos remotos de la configuración, Configuration Agent requiere alguna información sobre la rutina de carga, como el nombre del sistema y el puerto del servidor LDAP. Esta información se mantiene en un conjunto de archivos de propiedades, como policymgr.properties , apocd.properties u os.properties. Estos archivos están almacenados localmente en el directorio /etc/apoc. Los archivos de propiedades se pueden editar manualmente (consulte el Apéndice A, Parámetros de configuración) o utilizar el asistente de configuración de Configuration Agent.

El asistente de configuración ofrece una interfaz gráfica de usuario que le guía a través de los ajustes de configuración necesarios para Configuration Agent. A cada página del asistente le corresponde una pantalla de ayuda. Puede iniciar el asistente como superusuario (root) mediante la secuencia de comandos /usr/bin/apoc-config.


Nota –

El asistente también se puede iniciar sin arrancar la interfaz gráfica. Por ejemplo, ejecute /usr/bin/apoc-config -nodisplay para iniciar el asistente en modo consola.


Información sobre la rutina de carga

Figura 3–1 Depósito de configuración de Configuration Agent

Depósito de configuraciones y estado


Nota –

Las claves asociadas del archivo de propiedad se indican entre paréntesis, cuando corresponda.


Figura 3–2 Configuration Agent, jerarquía LDAP y almacenamiento basado en archivos

Almacenamiento basado en archivos y jerarquía LDAP


Nota –

La pantalla de la Figura 3–2 varía según el valor de Tipo de depósito que se haya seleccionado en la pantalla anterior. Si elige un tipo de depósito LDAP o Híbrido, debe proporcionar valores para Identificador del servidor, Puerto del servidor y Sufijo. Si para Tipo de depósito elige Basado en archivos o Híbrido, se necesita el URL de valores de configuración.


Figura 3–3 Mecanismo de autenticación de Configuration Agent

Autenticación

Valores de puertos

Configuration Agent usa dos puertos:

Figura 3–4 Valores de puertos de Configuration Agent

Valores de los puertos de Configuration Agent

Intervalo de detección de cambios

Configuration Agent comprueba periódicamente los posibles cambios en los datos de configuración utilizando dos intervalos:

El intervalo de detección general se puede utilizar para ajustar la propagación remota de cambios en los datos de configuración a aplicaciones del lado del cliente. El valor que proporcione a esta configuración es la duración máxima en minutos que transcurre antes de que los cambios efectuados de manera remota se reflejen en las aplicaciones del cliente.

Los valores inferiores producen una mayor actividad en Configuration Agent y en el servidor LDAP. Por ello debe tener cuidado cuando ajuste el valor de la configuración. Por ejemplo, en una fase inicial del desarrollo puede ajustar este valor en un minuto, y así comprobar los efectos de la configuración remota en las aplicaciones del cliente. Tras completar la comprobación, devuelva a esta configuración el valor inicial.

Valores de funcionamiento

Figura 3–5 Directorio de datos de Configuration Agent

Directorio de datos de Configuration Agent

Pueden configurarse los valores siguientes:

Figura 3–6 Manejo de solicitudes y registro cronológico de Configuration Agent

Manejo de solicitudes y registro cronológico de Configuration Agent


Nota –

Casi todos los valores de configuración de funcionamiento, excepto Directorio de datos y Tiempo máximo de espera de conexión, también pueden mantenerse centralmente mediante las normas pertinentes almacenadas en el servidor LDAP. Para utilizar esta función, no adapte los valores de configuración correspondientes mediante el asistente. En lugar de ello, use las normativas del Configuration Agent que hay en Desktop Manager para especificar valores de funcionamiento centralmente.


Aplicación de valores de configuración de agentes

Con la excepción de “Directorio de datos” y “Tiempo máximo de espera de conexión”, los valores de funcionamiento que se han almacenado en el servidor LDAP con Desktop Manager entran en vigor automáticamente en el siguiente ciclo de detección de cambios de la configuración del agente (véase DaemonChangeDetectionInterval).

Figura 3–7 Página de resumen de Configuration Agent

Página de resumen

Todos los demás valores de configuración cambiados localmente requieren que Configuration Agent vuelva a cargarse o reiniciarse. Si se utiliza el asistente de configuración, esta recarga o reinicio se lleva a cabo automáticamente.


Nota –

Para reiniciar Configuration Agent manualmente, compruebe que no haya en ejecución aplicaciones cliente relacionadas, inicie sesión como superusuario y escriba el comando /usr/lib/apoc/apocd restart.


Parámetros adicionales de Configuration Agent


Nota –

Los parámetros siguientes no figuran en el asistente de configuración.


Uso de las normas locales

Configuration Agent se puede configurar para que aplique parámetros de configuración de normas desarrolladas localmente, además de o como alternativa a cualquier norma de carácter global. Utilice los pasos siguientes para aplicar cualquier norma local:

ProcedureDesarrollo de una norma local

Pasos
  1. Con Desktop Manager, cree un perfil con los pertinentes parámetros de norma.

  2. Mediante Desktop Manager, exporte el perfil a un archivo comprimido (zip).

  3. En el sistema cliente, si no lo hay, cree el directorio ${DataDir}/Policies/profiles/PROFILE_REPOSITORY_default.

    ${DataDir} corresponde al valor del directorio de datos de Configuration Agent, que de forma predeterminada es /var/opt/apoc.

  4. Copie el archivo comprimido exportado en ${DataDir}/Policies/profiles/PROFILE_REPOSITORY_default.

  5. Compruebe que Configuration Agent esté configurado para aplicar normas locales (consulte Parámetros adicionales de Configuration Agent para obtener más información).


    Nota –

    Si modifica el parámetro “ApplyLocalPolicy” de Configuration Agent, se puede volver a cargar Configuration Agent iniciando sesión como superusuario y escribiendo el comando /usr/lib/apoc/apocd reload.

    Los clientes tendrán acceso a las normas locales desarrolladas de esta forma en el próximo ciclo de detección de cambios de Configuration Agent.


Reinicio automático de Configuration Agent

Si se da un fallo, Configuration Agent se reinicia automáticamente. La función de administración de servicios ( smf(5) ) se encarga de decidirlo. Si esta función establece que no es apropiado reiniciarlo (por ejemplo, porque ya ha habido demasiados fallos), Configuration Agent pasa a modo de mantenimiento.

Si no se reinicia Configuration Agent, es aconsejable deshabilitarlo temporalmente; para ello, inicie sesión como superusuario y escriba el comando /usr/lib/apoc/apocd disable, solucione los problemas que afectan al agente y vuélvalo a habilitar mediante el comando /usr/lib/apoc/apocd enable.

Acceso a los datos/autentificación del usuario

Configuration Agent recupera información del servidor LDAP basándose en el ID de inicio de sesión de un usuario del escritorio. El valor User/UniqueIdAttribute del archivo de organización asigna el identificador del inicio de sesión a un elemento de usuario del servidor LDAP. Configuration Agent también recupera información sobre el sistema, como su nombre o dirección IP. Esta información se asigna a un elemento del sistema en el servidor LDAP a través del valor Host/UniqueIdAttribute del archivo de asignación de la organización. Si necesita más información sobre las asignaciones organizativas, consulte el Apéndice C, Asignación organizativa.

Hay dos métodos para acceder al servidor LDAP, Anonymous o GSSAPI. Si desea un acceso anónimo no es necesaria ninguna acción en el escritorio. Con respecto al método GSSAPI, las credenciales de Kerberos se deben conseguir en el escritorio. Para integrar la adquisición de credenciales de Kerberos con el inicio de sesión del usuario, el módulo pam_krb5 debe estar instalado y configurado en el sistema Java Desktop System.

Puede utilizar gdm para integrar Kerberos con el inicio de sesión de usuario, por ejemplo, mediante el siguiente archivo /etc/pam.d/gdm:


#%PAM-1.0
auth   required    pam_unix2.so  nullok #set_secrpc
auth   optional  pam_krb5.so use_first_pass missing_keytab_ok ccache=SAFE putenv_direct
account required    pam_unix2.so 
password required    pam_unix2.so  #strict=false
session required    pam_unix2.so  # trace or none
session required    pam_devperm.so 
session optional    pam_console.so 

Si integra de este modo Kerberos con el inicio de sesión, es conveniente que habilite la compatibilidad del protector de pantalla con Kerberos. Puede utilizar, por ejemplo, el siguiente archivo /etc/pam.d/xscreensaver :


auth required pamkrb5.so use_first_pass missing_keytab_ok 
ccache=SAFE putenv_direct

Adaptadores

Los adaptadores de aplicaciones son ampliaciones de los sistemas de configuración que admite Desktop Manager. Mediante los adaptadores, las aplicaciones tienen en cuenta los datos de la configuración central, según los sistemas de configuración. Los sistemas de configuración admitidos son:

También se ofrece un adaptador de definiciones de escritorio (Desktop Definition), el cual agrega al escritorio del usuario elementos de menú, programas de inicio y lanzadores de escritorio.

Adaptador de GConf

Forma parte del paquete SUNWapoc-adapter-gconf de Solaris. Al instalar el adaptador desde el paquete correspondiente, la ruta de acceso a los orígenes de datos de GConf en /etc/gconf/2/path se actualiza para incluir los orígenes de Desktop Manager. Los dos orígenes de datos proporcionados por el adaptador son:

Configuración del adaptador de GConf

Este adaptador está configurado como parte de la instalación. Ahora bien, su funcionamiento depende de si en el archivo de ruta de acceso de GConf (/etc/GConf/2/path ) hay dos orígenes de datos que representan los parámetros centrales y los predeterminados. Aunque este archivo de ruta de acceso contenga la información para que GConf tenga en cuenta los parámetros centrales según lo previsto tras instalar el sistema, si los administradores deben modificar la ruta de acceso para incluir orígenes de datos personalizados, deben asegurarse de que en el archivo sigan estando los orígenes de datos con el prefijo "apoc". Los orígenes de datos deben ubicarse, por lo que respecta al origen de datos que representa los parámetros centrales obligatorios, entre los parámetros locales obligatorios y los de usuario; por su parte, el origen de datos que representa los parámetros centrales predeterminados debe estar entre los parámetros de usuario y los predeterminados locales.

Adaptador de Java Preferences

El adaptador de Java Preferences forma parte del paquete SUNWapcj de Solaris.

Configuración del adaptador de Java Preferences

El adaptador de Java Preferences viene integrado en la API de preferencias (Preferences API) que se debe usar como contenedor en otra implementación que ya existe (por ejemplo, el sistema predeterminado basado en archivos de JRE). Para habilitar el uso de una configuración central en una aplicación Java que utilice Preferences API, debe escribirse una secuencia de comandos de inicio para dicha aplicación, utilizando como ayuda la secuencia /usr/lib/apoc/apocjlaunch. Esta secuencia de comandos debe definir algunas variables de entorno y después incluir la secuencia apocjlaunch al final (ello inicia la aplicación Java con el entorno adecuado). Se deben definir las variables de entorno siguientes:

Las variables de entorno opcionales que se pueden definir son:

Adaptador de Mozilla

El adaptador de Mozilla forma parte del paquete SUNWmozapoc-adapter de Solaris.

Configuración del adaptador de Mozilla

Este adaptador se configura formando parte de la instalación del producto, no precisa configuración.

Adaptador de StarOffice

El adaptador de StarOffice se incluye en una instalación estándar de StarOffice y permite el acceso a los datos de configuración de los perfiles sin tener que hacer modificaciones especiales.

Configuración del adaptador de StarOffice

Este adaptador se configura formando parte de la instalación del producto, no precisa configuración.

Adaptador de Desktop Definition

Este adaptador se compone de los paquetes siguientes:

Nombre del paquete 

Descripción 

SUNWapleg 

binarios de acceso (configuración) 

SUNWardsa 

adaptador de Desktop Definition 

SUNWardsa-misc 

integración de sistemas para adaptador 

Estos paquetes se instalan durante la instalación de los componentes del cliente de Desktop Manager, no precisan configuración.

Configuración del adaptador de Desktop Definition

Este adaptador lo configura el proceso de instalación para que se utilice siempre que un usuario inicia sesión; no precisa configuración.

Desinstalación de los adaptadores

Los adaptadores de Mozilla y StarOffice se quitan al desinstalarse dichos productos. Los adaptadores de GConf, Java Preferences y Desktop Definition se pueden desinstalar mediante las pertinentes herramientas del sistema para administración de paquetes, quitando los mencionados paquetes de la sección de instalación.

Al quitar el adaptador de Java Preferences, las secuencias de comandos de inicio escritas para iniciar las aplicaciones Java mediante Preferences API no se deben utilizar. La invocación de Java en ellos no funciona, puesto que ya no están disponibles algunas de las clases necesarias.

Resolución de problemas de los adaptadores

Gran parte de los problemas resultantes de no ver los datos de la configuración central en las aplicaciones correspondientes es probable que se deba a Configuration Agent, puesto que es el mecanismo común que todos los adaptadores emplean para recuperar los datos.

Si una configuración central no parece surtir efecto en un parámetro determinado (o un grupo), un posible motivo es que el usuario haya definido de forma expresa un valor para ese parámetro en la aplicación (normalmente, en los cuadros de diálogo de las opciones o preferencias del producto). En tal caso, a menos que los parámetros centrales se definan como protegidos (el administrador establece el valor y el usuario no lo puede modificar), la preferencia del usuario prevalece sobre los valores establecidos con Desktop Manager.

Resolución de problemas de Configuration Agent

En esta sección se facilitan respuestas a cuestiones que puedan surgir debido a la naturaleza y el uso de Configuration Agent. Asimismo, se brindan consejos para la resolución de problemas del agente.

Preguntas y respuestas

¿En qué consiste Configuration Agent y cómo funciona?

Configuration Agent es una aplicación de distribución y puesta en memoria caché de normas. Se ha concebido y realizado para garantizar que las aplicaciones cliente del escritorio se configuren de manera centralizada sin que ello repercuta negativamente en su rendimiento y ni en los sistemas que las ejecutan. Tal cosa se consigue mediante:

Las circunstancias habituales en que interactúan las aplicaciones cliente y Configuration Agent son muy sencillas y se resumen a continuación:

  1. Un usuario inicia una de las aplicaciones cliente del escritorio (Gconf, Mozilla o StarOffice).

  2. La aplicación cliente se conecta con Configuration Agent.

  3. Dicha aplicación solicita los datos de normas que necesita de Configuration Agent.

  4. Configuration Agent busca en su memoria caché los datos solicitados.

  5. Si los datos de normas no están en la memoria caché, Configuration Agent los descarga de un depósito de normas preconfigurado y los almacena en la memoria caché.

  6. Los datos de normas se envían a la aplicación cliente que los había solicitado.

  7. Configuration Agent supervisa el depósito de normas para detectar los cambios que pudiera haber en los datos.

  8. Si hay modificaciones, Configuration Agent actualiza la memoria caché para ponerla al día e informa a la aplicación cliente.

¿Cómo se obtiene e instala Configuration Agent?

Configuration Agent se suministra e instala de forma predeterminada con el sistema operativo Solaris 10.

Una vez instalado Solaris 10, ¿cuál es el paso siguiente?

Configuration Agent se suministra sin habilitar ni configurar. Para poder utilizarlo se debe habilitar y efectuar una configuración mínima. Una vez realizados estos pasos, las aplicaciones cliente del escritorio usan de forma automática cualquier norma que se proporcione la próxima vez que se inicien.

¿Cómo se configura Configuration Agent?

Para configurar correctamente Configuration Agent, utilicel el Asistente de Configuration Agent. El asistente se inicia (como superusuario) mediante el comando /usr/bin/apoc-config . El asistente guía al usuario por los pasos necesarios para la correcta configuración del agente. En muchos casos, el único dato que debe proporcionarse para que el asistente finalice el proceso es la ubicación del depósito de normas.

Configuration Agent también puede configurarse editando manualmente sus archivos de configuración. No es algo recomendable, ya que de esta forma Configuration Agent se suele configurar incorrectamente con facilidad. Asimismo, el Asistente de Configuration Agent tiene lógica adicional que establece si un cambio determinado implica o no reiniciar o volver a cargar Configuration Agent.

¿Cómo se habilita Configuration Agent?

Hay tres maneras de habilitarlo:

  1. Mediante el Asistente de Configuration Agent ( /usr/bin/apoc-config ), el estado se cambia a activo.

  2. Con el programa del controlador de Configuration Agent ( /usr/lib/apoc/apocd ), ejecute lo siguiente como superusuario:


    /usr/lib/apoc/apocd enable
  3. Mediante smf(5), ejecute lo siguiente como superusuario:


    /usr/sbin/svcadm enable svc:/network/apocd/udp

Tras configurar y habilitar Configuration Agent, ¿cómo se comprueba si funciona?

La manera más fácil de cerciorarse de que Configuration Agent esté bien configurado y que funcione correctamente es crear una norma con Desktop Manager, asignarla a un usuario, iniciar sesión en el escritorio como dicho usuario y comprobar los valores de las normas establecidas para que se utilicen. En una sesión de escritorio pueden detectarse fácilmente muchos valores de normas, por ejemplo fondo y tema.

¿Qué sentido tiene habilitar Configuration Agent?

Configuration Agent es un servicio que se ajusta a la función de administración de servicios smf(5); el concepto de habilitarlo procede de esa función. Una vez habilitado, Configuration Agent ya puede funcionar. El proceso de habilitación del agente se compone de las fases siguientes:

¿Cómo se comprueba si está habilitado Configuration Agent?

Se puede saber si está o no habilitado aplicando uno de los procedimientos siguientes:

¿Cómo se comprueba si Configuration Agent está ejecutándose?

Para verificar si Configuration Agent está funcionando, aplique uno de los métodos siguientes:

¿Dónde se ubican los archivos de registro?

Cuando deba resolver un problema de Configuration Agent, consulte los archivos de registro siguientes:

¿Cómo se incrementa el nivel de detalle del mecanismo de registro del agente?

Consulte ¿Dónde se ubican los archivos de registro?

¿En qué consiste el modo de mantenimiento?

smf(5) coloca Configuration Agent en modo de mantenimiento al detectar problemas en los inicios o reinicios. Si smf(5) no consigue iniciarlo, lo intenta varias veces más hasta lograrlo o termina determinando que Configuration Agent no se puede iniciar. Si sucede eso, smf(5) coloca el agente en modo de mantenimiento para indicar al usuario que se debe solucionar el problema detectado. Una vez resuelta la situación, se puede anular el estado establecido por smf(5) para que Configuration Agent reanude el funcionamiento normal.

¿Cómo se sale del modo de mantenimiento o se anula el estado de smf(5)?

Inicie sesión como superusuario y ejecute el comando /usr/sbin/svcadm clear svc:/network/apocd/udp.

¿Qué sucede si de repente Configuration Agent deja de funcionar?

smf(5) detecta que se ha parado e intenta reiniciarlo. Si por algún motivo los intentos de reinicio sucesivos no son válidos, smf(5) coloca Configuration Agent en modo de mantenimiento. Si se logra reiniciar el agente, las aplicaciones cliente del escritorio que están en ejecución no resultan afectadas. Las aplicaciones cliente se vuelven a conectar automáticamente con el agente en cuanto se reinicia.

Si se inicia o habilita Configuration Agent, ¿hay que reiniciar las aplicaciones cliente del escritorio?

Depende de si el agente estaba habilitado o en ejecución al iniciarse una determinada aplicación cliente. Si Configuration Agent estaba habilitado o ejecutándose, la aplicación cliente había establecido una conexión con él; si la conexión se pierde, intenta restablecerla. Es decir, cada vez que Configuration Agent se inicia, habilita o deshabilita, las aplicaciones cliente siempre intentan restablecer la conexión en cuanto el agente vuelve a ejecutarse. Si el agente no estaba habilitado ni ejecutándose al iniciarse la aplicación cliente, ésta no usa Configuration Agent ni intenta conectarse con él en cuanto se inicia. Teniendo en cuenta todo lo dicho, puede afirmarse lo siguiente:

¿Qué debe hacerse si parece que las aplicaciones cliente del escritorio no utilizan las normas configuradas?

El problema más habitual relacionado con Configuration Agent es la imposibilidad de observar los efectos de una norma configurada en las aplicaciones cliente del escritorio. Los motivos más comunes son un agente configurado incorrectamente, un depósito de normas de configuración mal configurado o no disponible. Las indicaciones siguientes pueden ayudar a diagnosticar y solucionar estos problemas:

Problemas al iniciar Configuration Agent

Si no se puede iniciar Configuration Agent y considera que lo ha configurado y habilitado correctamente, consulte los archivos de registro. En las secciones siguientes se explican los errores más habituales relativos a este problema.

No se puede acceder al directorio de datos de Configuration Agent o no es válido

El agente crea y utiliza el directorio de datos para almacenar archivos de registro, memorias caché de normas, etcétera. La ubicación predeterminada de este directorio es /var/opt/apoc.

Configuration Agent genera el mensaje de error siguiente en los registros de smf(5) si el directorio de datos se establece en una ubicación inaccesible, es decir, /dev/null/cant/write/here. Para resolver este problema, use el asistente de Configuration Agent (/usr/bin/apoc-config) para que el directorio de datos apunte a una ubicación a la que se pueda acceder.


[ Nov 17 14:35:38 Executing start method ("/usr/lib/apoc/apocd svcStart") ]
Starting Configuration Agent ... Warning: Cannot create Log directory
   '/dev/null/cant/write/here/Logs'
Warning:Failed to create log file handler
Nov 17, 2005 2:35:39 PM com.sun.apoc.daemon.misc.APOCLogger config
CONFIG: Daemon configuration:
 MaxRequestSize = 4096
 DaemonAdminPort = 38901
 ThreadTimeToLive = 5
 DaemonChangeDetectionInterval = 10
 IdleThreadDetectionInterval = 15
 PROVIDER_URL =
 DataDir = /dev/null/cant/write/here
 ApplyLocalPolicy = true
 ChangeDetectionInterval = 60
 MaxClientConnections = 50
 GarbageCollectionInterval = 10080
 InitialChangeDetectionDelay = 10
 TimeToLive = 10080
 ConnectionReadTimeout = 5000
 DaemonPort = 38900
 LogLevel = FINEST
 MaxClientThreads = 5


Nov 17, 2005 2:35:39 PM Daemon main
FINER: THROW
com.sun.apoc.daemon.misc.APOCException
    at com.sun.apoc.daemon.apocd.Daemon.initAuthDir(Unknown Source)
    at com.sun.apoc.daemon.apocd.Daemon.init(Unknown Source)
    at com.sun.apoc.daemon.apocd.Daemon.<init>(Unknown Source)
    at com.sun.apoc.daemon.apocd.Daemon.main(Unknown Source)
[ Nov 17 14:36:08 Method or service exit timed out.  Killing contract 980 ]
[ Nov 17 14:36:08 Method "start" failed due to signal KILL ]

Uso de un puerto de solicitudes de cliente que ya está ocupado

Configuration Agent utiliza conexiones de zócalo TCP/IP para comunicarse con las aplicaciones cliente del escritorio. De forma predeterminada, estas conexiones se efectúan a través del puerto 38900.

Si Configuration Agent se ajusta para utilizar el puerto 1234, que ya lo ocupa otro servicio, se genera el mensaje de error siguiente. Este mensaje aparece en los registros de Configuration Agent. Para solucionar este problema, use el Asistente de Configuration Agent (/usr/bin/apoc-config) para asignar al agente un número de puerto disponible.


Nov 17, 2005 2:50:59 PM com.sun.apoc.daemon.misc.APOCLogger config
CONFIG: Daemon configuration:
 MaxRequestSize = 4096
 DaemonAdminPort = 38901
 ThreadTimeToLive = 5
 DaemonChangeDetectionInterval = 10
 IdleThreadDetectionInterval = 15
 PROVIDER_URL =
 DataDir = /var/opt/apoc
 ApplyLocalPolicy = true
 ChangeDetectionInterval = 60
 MaxClientConnections = 50
 GarbageCollectionInterval = 10080
 InitialChangeDetectionDelay = 10
 TimeToLive = 10080
 ConnectionReadTimeout = 5000
 DaemonPort = 1234
 LogLevel = FINEST
 MaxClientThreads = 5


Nov 17, 2005 2:50:59 PM com.sun.apoc.daemon.misc.APOCLogger info
INFO: Daemon starting
Nov 17, 2005 2:50:59 PM com.sun.apoc.daemon.misc.APOCLogger fine
FINE: Garbage collection scheduled ( interval = 10080 minutes )
Nov 17, 2005 2:50:59 PM Daemon main
FINER: THROW
com.sun.apoc.daemon.misc.APOCException: java.net.BindException: Address already in use
    at com.sun.apoc.daemon.transport.ChannelManager.<init>(Unknown Source)
    at com.sun.apoc.daemon.apocd.Daemon.run(Unknown Source)
    at com.sun.apoc.daemon.apocd.Daemon.main(Unknown Source)
Caused by: java.net.BindException: Address already in use
    at sun.nio.ch.Net.bind(Native Method)
    at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:119)
    at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:59)
    at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:52)

Uso de un puerto de administración que ya está ocupado

Configuration Agent utiliza conexiones de zócalo TCP/IP para comunicarse con su programa del controlador (/usr/lib/apoc/apocd). De forma predeterminada, estas conexiones se efectúan a través del puerto 38901.

En los registros de Configuration Agent aparece el mensaje de error siguiente si el agente se ha ajustado para utilizar el puerto 1234, que ya lo ocupa otro servicio. Para solucionar este problema, use el Asistente de Configuration Agent (/usr/bin/apoc-config ) para asignar al agente otro puerto de administración que esté disponible.


ONFIG: Daemon configuration:
 MaxRequestSize = 4096
 DaemonAdminPort = 1234
 ThreadTimeToLive = 5
 DaemonChangeDetectionInterval = 10
 IdleThreadDetectionInterval = 15
 PROVIDER_URL =
 DataDir = /var/opt/apoc
 ApplyLocalPolicy = true
 ChangeDetectionInterval = 60
 MaxClientConnections = 50
 GarbageCollectionInterval = 10080
 InitialChangeDetectionDelay = 10
 TimeToLive = 10080
 ConnectionReadTimeout = 5000
 DaemonPort = 38900
 LogLevel = FINEST
 MaxClientThreads = 5


Nov 17, 2005 2:55:11 PM com.sun.apoc.daemon.misc.APOCLogger info
INFO: Daemon starting
Nov 17, 2005 2:55:11 PM com.sun.apoc.daemon.misc.APOCLogger fine
FINE: Garbage collection scheduled ( interval = 10080 minutes )
Nov 17, 2005 2:55:11 PM com.sun.apoc.daemon.misc.APOCLogger fine
FINE: Client manager started
Nov 17, 2005 2:55:11 PM com.sun.apoc.daemon.misc.APOCLogger fine
FINE: Channel manager started
Nov 17, 2005 2:55:11 PM Daemon main
FINER: THROW
com.sun.apoc.daemon.misc.APOCException: java.net.BindException: Address already in use
    at com.sun.apoc.daemon.admin.AdminManager.initChannel(Unknown Source)
    at com.sun.apoc.daemon.admin.AdminManager.<init>(Unknown Source)
    at com.sun.apoc.daemon.apocd.Daemon.run(Unknown Source)
    at com.sun.apoc.daemon.apocd.Daemon.main(Unknown Source)
Caused by: java.net.BindException: Address already in use
    at sun.nio.ch.Net.bind(Native Method)
    at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:119)
    at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:59)
    at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:52)
    ... 4 more 

Problemas en la obtención de normas cuando Configuration Agent está en ejecución

La especificación del depósito de configuración no es válida o falta

Para descargar y poner en memoria caché la información de normas, Configuration Agent debe conectarse con un depósito de configuración válido. Si identifica incorrectamente dicho depósito en la configuración del agente, por ejemplo mediante un comando no válido o porque no especifica un depósito, en los registros de Configuration Agent aparecen errores parecidos al siguiente cuando se inician las aplicaciones cliente del escritorio. Para solucionar este problema, use el Asistente de Configuration Agent (/usr/bin/apoc-config ) para identificar el depósito de configuración que va a utilizar.


FINER: New client added
Nov 18, 2005 1:59:22 PM com.sun.apoc.daemon.misc.APOCLogger finer
FINER: CreateSession transaction started
Nov 18, 2005 1:59:22 PM com.sun.apoc.daemon.misc.APOCLogger finer
FINER: Creating new client session
Nov 18, 2005 1:59:22 PM com.sun.apoc.daemon.misc.APOCLogger finest
FINEST: Authenticating user geoffh
Nov 18, 2005 1:59:22 PM com.sun.apoc.daemon.misc.APOCLogger finest
FINEST: Authentication successful
Nov 18, 2005 1:59:23 PM PolicyBackend openPolicyBackend
FINER: THROW
com.sun.apoc.daemon.misc.APOCException: com.sun.apoc.daemon.misc.APOCException: 
com.sun.apoc.spi.environment.InvalidParameterException: The parameter organisation 
PROVIDER_URL#protocol (null) is not valid, the value must be comprised in 
{ldaps,ldap,https,http,file}.
    at com.sun.apoc.daemon.apocd.PolicyBackend.<init>(Unknown Source)
    at com.sun.apoc.daemon.apocd.HostPolicyBackend.<init>(Unknown Source)
    at com.sun.apoc.daemon.apocd.PolicyBackendFactory.openPolicyBackend(Unknown Source)
    at com.sun.apoc.daemon.apocd.Cache$DataSource.openPolicyBackend(Unknown Source)
    at com.sun.apoc.daemon.apocd.Cache$DataSource.open(Unknown Source)
    at com.sun.apoc.daemon.apocd.Cache.createDataSources(Unknown Source)
    at com.sun.apoc.daemon.apocd.Cache.<init>(Unknown Source)
    at com.sun.apoc.daemon.apocd.CacheFactory.createNewCache(Unknown Source)
    at com.sun.apoc.daemon.apocd.CacheFactory.openCache(Unknown Source)
    at com.sun.apoc.daemon.apocd.Session.<init>(Unknown Source)
    at com.sun.apoc.daemon.transaction.CreateSessionTransaction.executeTransaction
(Unknown Source)
    at com.sun.apoc.daemon.transaction.Transaction.execute(Unknown Source)
    at com.sun.apoc.daemon.apocd.ClientEventHandler.handleEvent(Unknown Source)
    at com.sun.apoc.daemon.apocd.EventWorkerThread.run(Unknown Source)
Caused by: com.sun.apoc.daemon.misc.APOCException: 
 com.sun.apoc.spi.environment.InvalidParameterException:
 The parameter organisation PROVIDER_URL#protocol (null) is not valid, 
 the value must be comprised in {ldaps,ldap,https,http,file}.
    at com.sun.apoc.daemon.apocd.PolicyBackendFactory.openPolicyMgr(Unknown Source)
    ... 14 more
Caused by: com.sun.apoc.spi.environment.InvalidParameterException: The parameter 
organisation PROVIDER_URL#protocol (null) is not valid, the value must be comprised in 
{ldaps,ldap,https,http,file}.
    at com.sun.apoc.spi.PolicyMgrFactoryImpl.createPolicyMgr(Unknown Source)
    ... 15 more
Nov 18, 2005 1:59:23 PM PolicyBackend openPolicyBackend

No es posible conectar con el depósito de normas

Para descargar y poner en memoria caché información de normas, Configuration Agent debe conectarse con un depósito de configuración válido. Si no puede establecerse la conexión, en los registros de Configuration Agent aparecen errores similares al siguiente cuando se inician las aplicaciones cliente del escritorio. En el caso siguiente, no existe la variable sobuild del sistema, no se puede contactar o no se puede acceder a un servidor LDAP a través del puerto 389. Para solucionar este problema, mediante el Asistente de Configuration Agent (/usr/bin/apoc-config) compruebe que haya identificado correctamente el depósito de normas y, en tal caso, asegúrese de que tenga acceso a dicho depósito. Por ejemplo, en un depósito LDAP, debe comprobar que haya en ejecución un servidor LDAP, que la máquina en que se aloja esté disponible en la red y que dicho servidor utilice el puerto especificado.

Si intenta acceder a un servidor LDAP mediante una conexión SSL, compruebe que el certificado pertinente esté disponible en el almacén de claves asociado con el Java Runtime Environment que se emplea para ejecutar Configuration Agent. Consulte la sección Configuration Agent para obtener más información sobre apoc-config.


FINER: New client added
Nov 18, 2005 2:17:43 PM com.sun.apoc.daemon.misc.APOCLogger finer
FINER: CreateSession transaction started
Nov 18, 2005 2:17:43 PM com.sun.apoc.daemon.misc.APOCLogger finer
FINER: Creating new client session
Nov 18, 2005 2:17:43 PM com.sun.apoc.daemon.misc.APOCLogger finest
FINEST: Authenticating user geoffh
Nov 18, 2005 2:17:43 PM com.sun.apoc.daemon.misc.APOCLogger finest
FINEST: Authentication successful
Nov 18, 2005 2:17:43 PM PolicyBackend openPolicyBackend
FINER: THROW
com.sun.apoc.daemon.misc.APOCException: com.sun.apoc.daemon.misc.APOCException: 
com.sun.apoc.spi.OpenConnectionException: An error occured while connecting to 
ldap://sobuild:389.
    at com.sun.apoc.daemon.apocd.PolicyBackend.<init>(Unknown Source)
    at com.sun.apoc.daemon.apocd.HostPolicyBackend.<init>(Unknown Source)
    at com.sun.apoc.daemon.apocd.PolicyBackendFactory.openPolicyBackend(Unknown Source)
    at com.sun.apoc.daemon.apocd.Cache$DataSource.openPolicyBackend(Unknown Source)
    at com.sun.apoc.daemon.apocd.Cache$DataSource.open(Unknown Source)
    at com.sun.apoc.daemon.apocd.Cache.createDataSources(Unknown Source)
    at com.sun.apoc.daemon.apocd.Cache.<init>(Unknown Source)
    at com.sun.apoc.daemon.apocd.CacheFactory.createNewCache(Unknown Source)
    at com.sun.apoc.daemon.apocd.CacheFactory.openCache(Unknown Source)
    at com.sun.apoc.daemon.apocd.Session.<init>(Unknown Source)
    at com.sun.apoc.daemon.transaction.CreateSessionTransaction.executeTransaction
(Unknown Source)
    at com.sun.apoc.daemon.transaction.Transaction.execute(Unknown Source)
    at com.sun.apoc.daemon.apocd.ClientEventHandler.handleEvent(Unknown Source)
    at com.sun.apoc.daemon.apocd.EventWorkerThread.run(Unknown Source)
Caused by: com.sun.apoc.daemon.misc.APOCException: 
com.sun.apoc.spi.OpenConnectionException: An error occured while 
connecting to ldap://sobuild:389. at 
com.sun.apoc.daemon.apocd.PolicyBackendFactory.openPolicyMgr(Unknown Source)
    ... 14 more
Caused by: com.sun.apoc.spi.OpenConnectionException: An error occured while 
connecting to ldap://noSuchHost:389.
    at com.sun.apoc.spi.ldap.LdapClientContext.prepareConnection(Unknown Source)
    at com.sun.apoc.spi.ldap.LdapClientContext.connect(Unknown Source)
    at com.sun.apoc.spi.ldap.LdapConnectionHandler.openAuthorizedContext(Unknown Source)
    at com.sun.apoc.spi.ldap.LdapConnectionHandler.connect(Unknown Source)
    at com.sun.apoc.spi.ldap.entities.LdapOrganizationProvider.open(Unknown Source)
    at com.sun.apoc.spi.PolicyMgrFactoryImpl.createPolicyMgr(Unknown Source)
    ... 15 more
Caused by: netscape.ldap.LDAPException: failed to connect to server sobuild:389 (91); 
Cannot connect to the LDAP server
    at netscape.ldap.LDAPConnSetupMgr.connectServer(LDAPConnSetupMgr.java:422)
    at netscape.ldap.LDAPConnSetupMgr.openSerial(LDAPConnSetupMgr.java:350)
    at netscape.ldap.LDAPConnSetupMgr.connect(LDAPConnSetupMgr.java:244)
    at netscape.ldap.LDAPConnSetupMgr.access$0(LDAPConnSetupMgr.java:241)
    at netscape.ldap.LDAPConnSetupMgr$1.run(LDAPConnSetupMgr.java:179)
    at java.lang.Thread.run(Thread.java:595)
Nov 18, 2005 2:17:44 PM PolicyBackend openPolicyBackend

Conexión con un depósito de normas no configurado

Para que Configuration Agent pueda encontrar datos de normas en un depósito de normas, dicho depósito debe estar bien configurado. Si especifica un depósito que está mal configurado o que no lo está, en los registros de Configuration Agent aparecen errores similares al siguiente cuando se inician las aplicaciones cliente del escritorio. Para resolver este problema, consulte la sección .


FINER: New client added
Nov 18, 2005 2:36:55 PM com.sun.apoc.daemon.misc.APOCLogger finer
FINER: CreateSession transaction started
Nov 18, 2005 2:36:55 PM com.sun.apoc.daemon.misc.APOCLogger finer
FINER: Creating new client session
Nov 18, 2005 2:36:55 PM com.sun.apoc.daemon.misc.APOCLogger finest
FINEST: Authenticating user geoffh
Nov 18, 2005 2:36:55 PM com.sun.apoc.daemon.misc.APOCLogger finest
FINEST: Authentication successful
Nov 18, 2005 2:36:55 PM PolicyBackend openPolicyBackend
FINER: THROW
com.sun.apoc.daemon.misc.APOCException: com.sun.apoc.daemon.misc.APOCException: 
com.sun.apoc.spi.environment.RemoteEnvironmentException: Error on reading the 
configuration data on LDAP server ldap://sobuild:389.
    at com.sun.apoc.daemon.apocd.PolicyBackend.<init>(Unknown Source)
    at com.sun.apoc.daemon.apocd.HostPolicyBackend.<init>(Unknown Source)
    at com.sun.apoc.daemon.apocd.PolicyBackendFactory.openPolicyBackend(Unknown Source)
    at com.sun.apoc.daemon.apocd.Cache$DataSource.openPolicyBackend(Unknown Source)
    at com.sun.apoc.daemon.apocd.Cache$DataSource.open(Unknown Source)
    at com.sun.apoc.daemon.apocd.Cache.createDataSources(Unknown Source)
    at com.sun.apoc.daemon.apocd.Cache.<init>(Unknown Source)
    at com.sun.apoc.daemon.apocd.CacheFactory.createNewCache(Unknown Source)
    at com.sun.apoc.daemon.apocd.CacheFactory.openCache(Unknown Source)
    at com.sun.apoc.daemon.apocd.Session.<init>(Unknown Source)
    at com.sun.apoc.daemon.transaction.CreateSessionTransaction.executeTransaction
(Unknown Source)
    at com.sun.apoc.daemon.transaction.Transaction.execute(Unknown Source)
    at com.sun.apoc.daemon.apocd.ClientEventHandler.handleEvent(Unknown Source)
    at com.sun.apoc.daemon.apocd.EventWorkerThread.run(Unknown Source)

En los registros de Configuration Agent figura un mensaje relativo al "número máximo de conexiones del cliente". ¿Qué significa?

Cada aplicación cliente del escritorio (Gconf, Mozilla, StarOffice) activada por Configuration Agent abre una conexión con el agente cuando se ejecuta. En los parámetros de Configuration Agent se establece el límite de las conexiones que se pueden realizar. El valor máximo predeterminado de conexiones es 50. En una máquina con varios usuarios, quizá deba aumentar el “límite de las conexiones del cliente” mediante el asistente de Configuration Agent (/usr/bin/apoc-config). Si Configuration Agent llega al máximo de conexiones permitidas, en los registros de Configuration Agent aparecen mensajes de error similares al siguiente:


Nov 18, 2005 3:20:55 PM com.sun.apoc.daemon.misc.APOCLogger warning
WARNING: The maximum number of client connections ( 50 ) has been reached. 
No new client connections can be established at this time.

La modificación de algunas normas mediante Desktop Manager no se refleja en las máquinas cliente

Una de las premisas al diseñar Configuration Agent es que los datos de normas creados por Desktop Manager son relativamente estáticos, es decir, no son susceptibles de cambiarse con frecuencia. Esta premisa se refleja en el hecho de que el agente consulta de vez en cuando el depósito de normas para detectar posibles modificaciones. De forma predeterminada, Configuration Agent comprueba el depósito una vez cada hora para todas las aplicaciones que se ejecutan en el escritorio. Así, tras realizar un cambio con Desktop Manager, debe esperarse a que transcurra una hora para notificar el cambio a las aplicaciones que se ejecutan. Si lo desea, con el Asistente de Configuration Agent (/usr/bin/apoc-config ) puede cambiar el "intervalo de detección general" para incrementar la frecuencia de las comprobaciones en el depósito. Asimismo, puede establecer que Configuration Agent actualice los datos de normas de todas las aplicaciones conectadas iniciando sesión como superusuario y ejecutando el comando /usr/lib/apoc/apocd change-detect.