miércoles, 4 de noviembre de 2009

Guía de Instalación de KMKey

27 comentarios
 
Ya hemos explicado anteriormente cómo instalarse KMKey de forma rápida, pero vamos a explicar también como hacerlo paso a paso, de forma detallada.

En primer lugar necesitamos un sistema GNU/Linux base, a ser posible Debian stable, aunque en Ubuntu funcionaremos sin inconveniente. Si somos de Windows, entonces lo primero es bajarse una versión nuevecita de la VirtualBox e instalarla. Después nos descargaremos el CD 1 o Netinst de Debian, lo conectaremos al CDROM de la máquina física o virtual, y procederemos a instalar el sistema básico. No son necesarios entornos gráficos ni paquetes adicionales, a posteriori instalaremos los imprescindibles.

En cuanto al hardware, las recomendaciones para un servidor de producción de buen rendimiento son 2 GB de RAM, 2 o 3 procesadores de velocidad >= 3 GHz y discos de buena calidad (a ser posible en RAID y de 15.000 rpm). Aunque obviamente se puede funcionar con menos, eso es lo recomendable para un KMKey que se vaya a usar con cierta intensidad.

Una vez tenemos nuestro Linux, entramos con usuario root y empezamos. Las instrucciones indicadas en esta guia son válidas para Debian Lenny, aunque pueden servir de ejemplo para la instalación en otras distribuciones:

1) Verificar que en /etc/apt/sources.list disponemos de acceso a los repositorios "main", "contrib" y "non-free". Por ejemplo:

deb http://ftp.us.debian.org/debian/ lenny main contrib non-free

2) Instalación de paquetes

apt-get update
apt-get -y install make gcc libc6 libc6-dev gettext apache2 subversion python2.4 python2.4-dev python2.4-egenix-mxdatetime xlhtml ppthtml xsltproc wv catdoc poppler-utils python-lxml patch lynx icewm-lite xserver-xorg xfonts-75dpi xfonts-100dpi xbase-clients exim4 tightvncserver xfonts-base sudo less ytnef gs-common msttcorefonts ntpdate

3) Creamos usuario zope

adduser zope

4) Instalamos Zope 2.9.4

wget -c http://www.zope.org/Products/Zope/2.9.4/Zope-2.9.4-final.tgz
tar -zxf Zope-2.9.4-final.tgz
cd Zope-2.9.4-final
vi configure y cambiar ACCEPTABLE="2.4.1 2.4.2" por ACCEPTABLE="2.4.1 2.4.2 2.4.3 2.4.4 24.5 2.4.6"
./configure --prefix=/usr/local/zope294
make
make install
chown -R zope.zope /usr/local/zope294

ln -s /usr/local/zope294 /usr/local/zope

5) Creamos la instancia zope para KMKey

mkdir /usr/local/kmkey
chown -R zope.zope /usr/local/kmkey
su zope
cd /usr/local/zope
bin/mkzopeinstance.py -d /usr/local/kmkey/zope -u admin:tupassword


6) Si queremos usar RelStorage, esto es, ZODB implementado sobre una BBDD postgresql, procedemos a su instalación. ATENCIÓN, este paso es opcional, y algunas de las instrucciones que se indican pueden NO ser recomendadas en servidores compartidos con otros servicios.

apt-get install patch python-psycopg2 postgresql-client-8.3 postgresql-8.3
/etc/init.d/postgresql-8.3 stop
mv /var/lib/postgresql/8.3 /var/zope/postgresql_8.3
ln -s /var/zope/postgresql_8.3 /var/lib/postgresql/8.3
chown postgres.postgres /var/lib/postgresql/8.3
dpkg-reconfigure locales (añadir es_ES@euro si no está)

su postgres
cd /var/lib/postgresql/8.3
mv main main_old
/usr/lib/postgresql/8.3/bin/initdb /var/lib/postgresql/8.3/main/ --locale=es_ES@euro --lc-ctype=es_ES@euro
cp main_old/postmaster.opts main/
/usr/lib/postgresql/8.3/bin/pg_resetxlog main
cp main_old/*crt main
cp main_old/*key main
exit

/etc/init.d/postgresql-8.3 start
cd
wget http://pypi.python.org/packages/source/R/RelStorage/RelStorage-1.1.3.tar.gz
tar xzf RelStorage-1.1.3.tar.gz
cd RelStorage-1.1.3
export PYTHONPATH="/usr/local/zope/lib/python/"
python2.4 setup.py install --install-lib=/usr/local/zope/lib/python
cd /usr/local/zope/lib/python/ZODB
patch < $HOME/RelStorage-1.1.3/poll-invalidation-1-zodb-3-7-1.patch su postgres psql -c "CREATE USER zope WITH password 'tupassword' createdb" template1 exit su zope createdb kmkey_zodb


Editamos /usr/local/kmkey/zope/etc/zope.conf y cambiamos el zodb_db main por este otro:

%import relstorage
<zodb_db>
mount-point /
cache-size 15000
<relstorage>
<postgresql>
dsn dbname='kmkey_zodb' user='zope' host='localhost' password='tupassword'
</postgresql>
</relstorage>
</zodb_db>


7) Añadir productos KMKey a Zope

su zope
cd /usr/local/kmkey
mkdir source
cd source
echo "Please accept our certificate"
svn co https://joinup.ec.europa.eu/svn/kmkey/bundles/kmkey-stable
ln -s kmkey-stable current
cd current
python2.4 KMKeyCore/utils/generate_mo_files.py
cp ZOORRA/zoorra-config.xml.default ZOORRA/zoorra-config.xml
cp ZOORRA/server/zoorrad-config.xml.default ZOORRA/server/zoorrad-config.xml
cd /usr/local/kmkey/zope/Products
ln -s ../../source/current/* .
exit

cd /usr/local/kmkey/zope/Products/TextIndexNG3/extension_modules
python2.4 setup.py install


8) Creamos un script de arranque y reiniciamos Zope

cat > /etc/init.d/kmkey <<EOF
#!/bin/bash
su -c "/usr/local/kmkey/zope/bin/zopectl \$@" zope
EOF
chmod a+x /etc/init.d/kmkey
update-rc.d kmkey defaults 90 10
/etc/init.d/kmkey restart


9) Si queremos tener apache delante, entonces lo configuramos

cd /etc/apache2/mods-enabled
ln -s ../mods-available/proxy_balancer.load .
ln -s ../mods-available/proxy.conf .
ln -s ../mods-available/proxy.load .
ln -s ../mods-available/proxy_http.load .
ln -s ../mods-available/deflate.* .

cat > /etc/apache2/sites-available/kmkey <<EOF
ServerAdmin tu@tudominio.com
ErrorLog /var/log/apache2/error.log
LogLevel warn
CustomLog /var/log/apache2/access.log combined
<proxy balancer://lb>
BalancerMember http://127.0.0.1:8080
ProxySet lbmethod=byrequests
ProxySet stickysession=STICKY_ROUTE
Order allow,deny
Allow from all
</proxy>

ProxyRequests Off
ProxyVia On
<LocationMatch "^[^/]">
Deny from all
</LocationMatch>

LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so
RewriteEngine On
RewriteRule ^/(.*) balancer://lb/VirtualHostBase/http//%{HTTP_HOST}:80/kmkey/VirtualHostRoot/\$1 [L,P]
EOF

cd /etc/apache2/sites-enabled
rm 000-default
ln -s ../sites-available/kmkey 000-default

10) Finalmente, si queremos poder obtener listados en formatos MS-Office o PDF, necesitaremos configurar OpenOffice y ZOORRA:

apt-get install python-uno openoffice.org-writer openoffice.org-calc
ln -s /usr/local/kmkey/zope/Products/ZOORRA/server /usr/local/zoorra
cd /usr/local/zoorra
Ajustar /usr/local/zoorra/zoorrad-config.xml
ln -s /usr/local/zoorra/zoorrad.sh /etc/init.d
update-rc.d zoorrad.sh defaults 95
/etc/init.d/zoorrad.sh start

su zope
cd /usr/local/kmkey/zope/Products/ZOORRA
cat > zoorra-config.xml
<oood-config><openoffice_python_path value="/usr/bin/python2.5"><python_uno_path value=""><pdf_conversion_method value="ps2pdf"><connection_string value="socket,host=localhost,port=2002"><conversion_timeout value="120">
exit
/etc/init.d/kmkey restart


Y esto es todo amigos, a disfrutar de vuestro KMKey, y no os olvideis de activar unas copias de seguridad de datos

27 Responses so far.

  1. Anónimo says:

    Cuando realizo en el paso 7 el comando de svn co https://svn.forge....... me sale un error de Host no found...como podría hacer para no obtener este error??? gracias.

  2. Anónimo says:

    Parece un problema tuyo de DNS o de conexión. A mi me lo resuelve bien a la IP 77.240.116.83

  3. Anónimo says:

    hola..a ver si me yudan por favor

    hago todos los pasos ok, despues voy a la url
    http://127.0.0.1:8083, pero me sale un error al cargar la pagina
    esta el apache2 arriba, el kmkey tambien
    gracias y saludos a todos

  4. Gemma says:

    Hola. Comprueba el puerto del http-server configurado en zope.conf Si es 8080 como creo entonces el zope estará escuchando por ahí, y la config de apache debe ajustarse así:

    BalancerMember http://127.0.0.1:8080

    Agradecería confirmación, para ajustar el artículo si es así. Gracias

  5. niniramos says:

    Hola que tal?? Estoy interesado en instalar y probar en local el KmKey, ya que he estado probando una demo y me parece una herramienta magnífica.

    El problema es que a la hora de su instalación me estoy encontrando con muchísimos problemas. Entiendo que son debidos a mis escasos conocimientos de linux a nivel de Administración.

    La cuestion es que he conseguido instalar y configurar el Servidor Zope. Ya que soy capaz de entrar y logearme en http://127.0.0.1:8080/manage

    Una vez que consigo ver la consola de Administracion de Zope me dispongo a seguir con el paso "7) Añadir productos KMKey a Zope" Mi problema es que cuando finalizo este paso y trato de arrancar el Zope, este me deja de funcionar.

    He estado siguiendo otra guia muy parecida que se encuentra en la siguiente direccion "https://svn.forge.osor.eu/svn/kmkey/products/KMKeyCore/trunk/INSTALL" En la que dice que se descomprima un archivo que se llama kmkey.zexp.tz y que lo importe dentro del Zope através de la consola de Administración.

    El problema es que es las 2 guias me quedo en un paso muy similar. Por lo que creo que me falla algo que no se solucionar. Y lo que me llama la atencion es que el archivo kmkey.zexp.tz no lo encuentro.

    ¿Alguien tiene idea por donde debo continuar?

    Muchas gracias y feliz año

  6. Gemma says:

    Hola niniramos

    Eso que comentas de que zope deja de arrancar una vez añades los Products tiene toda la pinta de ser una versión incorrecta de Zope. Debe usarse la 2.9.4

    El fichero kmkey.zexp.tgz es un site de ejemplo. En el repositorio de OSOR tienes uno descargable ya preconfigurado con patrones de gestión de calidad

    Si aun así no consigues hacerlo funcionar, te recomiendo que te bajes la máquina virtual siguiendo las instrucciones de la secció "Descargar" de este mismo blog. Eso si es fácil de poner en marcha y dispondrás de lo mismo

    Saludos

  7. niniramos says:

    Acabo de revisar la version de Zope y es la Zope 2.10.9-final. La máquina virtual ya la he descargado, lo que pasa es que veine con el KMKey Quality y quiero probar el project.

    Voy a descargarme la version de Zope 2.9.4 a ver si soy capaz.

    Mil gracias

  8. niniramos says:

    Bueno cambié la versión de Zope y luego instale el KmKey. y ahora me sale esta página de error:

    ------------------------------------------------

    Site Error

    An error was encountered while publishing this resource.

    Resource not found
    Sorry, the requested resource does not exist.

    Check the URL and try again.

    Resource: kmkey GET

    Troubleshooting Suggestions

    * The URL may be incorrect.
    * The parameters passed to this resource may be incorrect.
    * A resource that this resource relies on may be encountering an error.

    For more detailed information about the error, please refer to the error log.

    If the error persists please contact the site maintainer. Thank you for your patience.

    ------------------------------------------------


    He estado mirando en el panel de control de zope y ésto es lo que viene:

    The Control Panel provides access to system information and management functions such as database and product management.
    Zope Version

    -------------------------------------------------

    (Zope 2.9.4-final, python 2.4.6, linux2)
    Python Version

    2.4.6 (#2, Mar 19 2009, 10:00:53) [GCC 4.3.3]
    System Platform

    linux2
    SOFTWARE_HOME

    /usr/local/zope/lib/python
    ZOPE_HOME

    /usr/local/zope
    INSTANCE_HOME

    /usr/local/kmkey/zope
    CLIENT_HOME

    /usr/local/kmkey/zope/var
    Network Services

    ZServer.HTTPServer.zhttp_server (Port: 8080)

    ------------------------------------------------

    Si esto sirve de ayuda ....

    Gracias!!!

  9. Hola niniramos

    Comprueba que el nombre del site coincida con el rewrite de apache. Por ejemplo, si tu site es quality_express_src, en lugar de escribir

    RewriteRule ^/(.*) balancer://lb/VirtualHostBase/http//%{HTTP_HOST}:80/kmkey/VirtualHostRoot/\$1 [L,P]

    deberías escribir esto en la config de apache

    RewriteRule ^/(.*) balancer://lb/VirtualHostBase/http//%{HTTP_HOST}:80/quality_express_src/VirtualHostRoot/\$1 [L,P]

  10. Anónimo says:

    Gema...
    muchas gracias me siurvio mucho tu comentario..y era especificamente eso..cambie el puerto por el 8080 y funciono el Zope
    gracias y saludos desde chile

  11. Anónimo says:

    Gema ...tengo otra duda...por favor
    cuando ingreso a la url http://localhost:8080/manage, ingreso al zope....pero quiero entrar al kmkey ...esta seria la ruta exacta??
    http//localhost:8080/manage/kmkey, lo que pasa es que puedo ingresar a esta ruta, pero mi duda es si ese es el producto final kmkey.????es que no sale como en la pagina oficial...hay que custumizarlo???

    gracias y saludos

  12. Anónimo says:

    Gema..me ocurrio el mismo error que niniranos, el error ocurre al importar el archivo kmkey.zexp
    revisando el log me encontre con esto

    Time 2010/01/05 13:54:24.454 GMT-3
    User Name (User Id) admin (admin)
    Request URL http://localhost:8080/manage_importObject
    Exception Type ComponentLookupError
    Exception Value (, '')

    Traceback (innermost last):

    * Module ZPublisher.Publish, line 121, in publish
    * Module Zope2.App.startup, line 240, in commit
    * Module transaction._manager, line 96, in commit
    * Module Products.CPSCompat.PatchZODBTransaction, line 169, in commit
    * Module transaction._transaction, line 421, in _callBeforeCommitHooks
    * Module Products.CPSCore.commithooks, line 229, in __call__
    * Module Products.CPSCore.IndexationManager, line 136, in __call__
    * Module Products.CPSCore.IndexationManager, line 157, in process
    * Module Products.CPSCore.ProxyBase, line 437, in _reindexObject
    * Module Products.CMFCore.CMFCatalogAware, line 87, in reindexObject
    * Module Products.CMFCore.CatalogTool, line 353, in reindexObject
    * Module Products.CPSCore.PatchCMFCoreCatalogTool, line 275, in cat_catalog_object
    * Module Products.ZCatalog.ZCatalog, line 567, in catalog_object
    * Module Products.ZCatalog.Catalog, line 360, in catalogObject
    * Module Products.TextIndexNG3.TextIndexNG3, line 86, in index_object
    * Module textindexng.index, line 143, in index_object
    * Module textindexng.index, line 184, in _process_words
    * Module zope.component, line 257, in getUtility

    ComponentLookupError: (, '')

    puedes ver algo..plis...estoy super cerca de instalarlo
    muchas gracias Gema
    saludos

  13. Buenas Tardes

    Soy nuevo en esto de Kmkey

    He conseguido realizar la instalación. Tengo Zope levantado y corriendo, ya que accedo a manager.

    Pero mi duda es, como accedo ahora a kmkey project, quality, help desk
    Por que he solicitado una demo a earcom pero es una demo, como puedo trabajar yo con el producto que he instalado.

    Gracias y saludos

  14. Hola

    si intento importar el fichero quality_express_src.zexp.tgz de la version makhno me sale el mismo error que el post de anonimo del 5 de enero del 2010 a las 21:32

    ComponentLookupError: (, '')

    Alguien lo ha solucionado ??
    gracias y saludos

  15. Lo más normal es que falte ejecutar estas instrucciones:

    cp ZOORRA/zoorra-config.xml.default ZOORRA/zoorra-config.xml
    cp ZOORRA/server/zoorrad-config.xml.default ZOORRA/server/zoorrad-config.xml

    Si no es eso mira el zope/log/event.log que ahi te dará pistas de que componente te falla.

    PD: Agradecería que se usara la lista de correo para consultas técnicas

  16. Jccm6188 says:

    Cuando le doy importar me muestra (,"), que puedo hacer?

  17. Jccm6188: tienes la respuesta justo en el comentario anterior

  18. JC says:

    Hola tengo este error.. si alguien me puede ayudar..


    Error: None is not an allowed name for 'zodb.database' sections
    (line 967 in file:///usr/local/kmkey/zope/etc/zope.conf)
    For help, use /usr/local/zope294/lib/python/Zope2/Startup/zopectl.py -h

  19. JC says:

    Hola,resolvi el problema anterior. ahora....como ingreso a la aplicacion? cual es el usuario y la clave de zope?

  20. Hola JC, es lo que hayas puesto en la instrucción:

    bin/mkzopeinstance.py -d /usr/local/kmkey/zope -u admin:tupassword

  21. odin_sv says:

    ya hice lo que indica la instalación pero tengo dos preguntas:
    1. Como se crean las tablas que pertenecen a la kemkey_zodb y para mi caso a la kmkey_quality
    2. me da el mismo problema con zope se levanta pero no hay logs los busco en /usr/local/kmkey/zope/var/log/
    Despues de probar el paso 4 tod resulto bien zope me funciono, despues al terminar no me deja ver nada ni puedo acceder a la direccion http://localhost:8080/manage
    Si alguien me da una par de ideas estare agradecido.

  22. Santi says:

    Puedes cogerte las BBDD de la máquina virtual: http://kmkey-es.blogspot.com/2012/02/maquina-virtual-de-kmkey-belvis.html

  23. Hola alguien me puede indicar por favor de donde puedo descargar quality_express_src.zexp? muchas gracias

  24. Hola Luís Miguel

    Recomendamos que la mejor opción es bajarse la máquina virtual ya montada aquí:
    http://kmkey-es.blogspot.com.es/2012/12/maquina-virtual-de-kmkey-zapata.html

    Una vez activada la máquina virtual, podrás acceder sin problemas a la versión de quality (también están las versiones de helpdesk y de project)

    Un saludo

  25. Hola Luís Miguel

    Recomendamos que la mejor opción es bajarse la máquina virtual ya montada aquí:
    http://kmkey-es.blogspot.com.es/2012/12/maquina-virtual-de-kmkey-zapata.html

    Una vez activada la máquina virtual, podrás acceder sin problemas a la versión de quality (también están las versiones de helpdesk y de project)

    Un saludo

  26. Unknown says:

    Hola Albert, intente descargar la VM que indicas y ya no aparece. Hay una forma que me direcciones a algun sitio donde descargarlo?

  27. Unknown says:

    Hola, algun aventurero que me lo instale ??

    Se podra instalar en un hosting de hostgator o goddady comun y silvestre?
    Si alguno sabe, le dejo mi email davidb@aprendumcr.com

Leave a Reply