Bloggers recientes

 

[ Blog ]
[ Wiki ]
[ Slideshare ]
[ Twitter ]
[ YouTube ]
Cesar Capillas Mensajes: 165
Estrellas: 7
Fecha: 30/10/14
Silvia Rodriguez Mensajes: 9
Estrellas: 0
Fecha: 21/10/14

Archivo

Tags

noBlogo - El blog de zylk.net

Backing up Alfresco indices
In a previous post we talk about search subsystems in Alfresco. There exists for each subsystem some quartz jobs related to backup indices. In the case of Lucene subsystem, Lucene backups are done at 3AM and their parameters are configurable via alfresco-global.properties (or extending the corresponding search subsystem).
 
index.backup.cronExpression=0 0 3 * * ?
dir.indexes=${dir.root}/lucene-indexes
dir.indexes.backup=/backup-lucene-indexes    
 
So you can always change these values, and then restart Alfresco service for Community version.
In the case of SOLR subsystem, SOLR backups are done at 2AM and 4AM (for example in alfresco-global.properties)
 
solr.backup.alfresco.cronExpression=0 0 2 * * ?
solr.backup.archive.cronExpression=0 0 4 * * ?
solr.backup.alfresco.numberToKeep=3
solr.backup.archive.numberToKeep=3
solr.backup.alfresco.remoteBackupLocation=${dir.root}/solrBackup/alfresco
solr.backup.archive.remoteBackupLocation=${dir.root}/solrBackup/archive
 
And you can always change them too, and restart the service for Community version. 
You can also invoke SOLR backups, from SOLR admin panel (with browser.p12 certificate) you can go to the corresponding urls:
 
https://alfserver:8443/solr/alfresco/replication?command=backup&location=/opt/alfresco/alf_data/solrBackup/alfresco&numberToKeep=3
https://alfserver:8443/solr/archive/replication?command=backup&location=/opt/alfresco/alf_data/archive/alfresco&numberToKeep=3
 
Even, it can be done via curl:
 
 
In Alfresco EE, we can also perform this operation with Alfresco Admin Console (changing the cron expression). It is also possible to change the same cron expression via JMX or even better to run JMX SOLR backup trigger via jmxterm or your favourite JMX console. For example, with jmxterm you can type:
 
jmvs
open <bootstrap-id>
domain Alfresco 
bean Alfresco:Group=DEFAULT,Name=Schedule,Trigger=search.alfrescoCoreBackupTrigger,Type=MonitoredCronTrigger
run executeNow
 
In the case of jmxterm, it is possible to write a shell script as an alternative for the curl method. The script file should be like this:
 
#! /bin/bash
JMXTERM_CMD0="run -b Alfresco:Group=DEFAULT,Name=Schedule,Trigger=search.alfrescoCoreBackupTrigger,Type=MonitoredCronTrigger -d Alfresco executeNow"
echo $JMXTERM_CMD0 | java -jar jmxterm-1.0-alpha-4-uber.jar -l service:jmx:rmi:///jndi/rmi://localhost:50500/alfresco/jmxrmi -p change_asap -u controlRole
 
JMXTERM_CMD1="run -b Alfresco:Group=DEFAULT,Name=Schedule,Trigger=search.archiveCoreBackupTrigger,Type=MonitoredCronTrigger -d Alfresco executeNow"
echo $JMXTERM_CMD1 | java -jar jmxterm-1.0-alpha-4-uber.jar -l service:jmx:rmi:///jndi/rmi://localhost:50500/alfresco/jmxrmi -p change_asap -u controlRole
Notes about Search Subsystem in Alfresco
Search subsystem in Alfresco can be Lucene or SOLR type. In the default configuration for Alfresco 4, the search subsystem is SOLR. This can be set up in alfresco-global.properties
 
index.subsystem.name=solr
solr.port.ssl=8443
solr.host=localhost
dir.keystore=${dir.root}/keystore
   
where the SOLR application is deployed by default on the same Tomcat container, and it works with the 8443 SSL connector. It is important, as part of the Alfresco installation, generating the a certificate browser.p12
 
SOLR application has two cores preconfigured, one for the workspace and other one for the archive (which is not needed usually). The configuration can be found in solrcore.properties files:
 
${dir.root}/solr/workspace-SpacesStore/conf/solrcore.properties
${dir.root}/solr/archive-SpacesStore/conf/solrcore.properties
 
They look like:
 
data.dir.root=/opt/alfresco/alf_data/solr
data.dir.store=workspace/SpacesStore
alfresco.host=localhost
alfresco.port=8080
alfresco.port.ssl=8443
alfresco.baseUrl=/alfresco
alfresco.cron=0/15 * * * * ? *
alfresco.stores=workspace://SpacesStore
    
where it is specified, the location for the indices in the disk, the alfresco repository server (in this case localhost) and a cron job for tracking the DB indexation count from SOLR app to Alfresco repository services. In the default installation, SOLR application and Alfresco repository are installed in the same Tomcat container.
 
Some general considerations about your indices can be: 
  • Remember to store your indices in the fastest HD (always). Backup indices can be in slower ones. The location is set in conf/solrcore.properties
  • Do not forget to generate a new keystore for your Alfresco installation.
  • Consider to use SOLR in a different server from Alfresco repository (licensed) or at least in another Tomcat container in the same machine. This helps to reindex independently of the repository. In this last case, reindexing do not mean lost of service.
  • Install also an alfresco.war instance in your external SOLR server, connected to the Alfresco database for minimizing http traffic, in the indexation job.
  • If you have a SOLR cluster, consider to dedicate one node for indexation and another one for searching. Tune the mergeFactor in solrconfig.xml for each core, 25 is ideal for indexing, while 2 is ideal for search.
  • In solrconfig.xml of each core configure the ramBufferSize to be at least 64 Mb.
  • In a massive upload of documents consider to disable SOLR during the load.
  • Other interesting actions of the SOLR admin panel are related to get info about the health of SOLR:
            https://alfserver:8443/solr/admin/cores/action=SUMMARY
 
            or to fix the sync of the indices at:
 
            https://alfserver:8443/solr/admin/cores/action=FIX
  • The indices can always regenerate (although it can consume much time in large repositories). For SOLR, use this tip, removing the indices and reboot SOLR. For Lucene, index.recovery.mode = FULL
Charla taller con Sinadura y Parlamento Vasco en la LibreCon 2014

 

Si hace unos días os comunicábamos las primeras confirmaciones de la Librecon en cuanto a casos de éxito y personalidades de relevancia, hoy podemos anunciaros ya de forma oficial que zylk.net participará dentro del programa de ponencias y talleres con una charla. Será dentro del espacio tecnológico y llevará por título:

Identidad y firma digital: Uso de Sinadura en Parlamento Vasco y aplicaciones de la identidad electrónica en múltiples entornos.

 

 

 

El miércoles 12 de noviembre a las 13:30 nos acompañará Juan José Arruza de Parlamento Vasco y compartiremos el caso de éxito de Sinadura como herramienta de firma Corporativa. En primer lugar Juanjo explicará por qué llegaron a Sinadura como solución de firma buscando stándares más actuales y con el objetivo de que su inversión revirtiera a través del mundo OpenSource en la sociedad en general. Parlamento Vasco es actualmente patrocinador de la versión 3 de Sinadura que cuenta entre sus mejoras con la opción de firmar cualquier tipo de archivo con XAdES-X-L, XAdES-T y XAdES-BES detached así como contribuciones de la comunidad como la posibilidad de firmar archivos PDF de más de 500 MB. En una segunda parte de la charla desde zylk nos encargaremos de contextualizar Sinadura en el ecosistema de suites de proyectos de firma digital y su uso desde distintos dispositivos, para terminar con una breve demostración de firma de documentos usando Sinadura desktop, la aplicación de escritorio para firma digital de cualquier tipo de archivo cuya última versión se presentará en el evento.

 

 

 

¡Ahora sí que no tienes excusa! Acércate los próximos 11 y 12 de noviembre por el palacio Euskalduna de Bilbao y recuerda que si estás interesado en zylk todavía disponemos de alguna invitación. Sólo tienes que ponerte en contacto con nosotros llamando al 944 272 119 o escribiéndonos un email a info@zylk.net.

Como instalar un disco SSD en Ubuntu 14.04
He comprado un disco SSD para mi ordenador y lo voy a instalar en Ubuntu 14.04 como disco de sistema operativo y máquinas virtuales, mientras voy a dedicar el disco antiguo a /home. Explico a continuación los pasos en Ubuntu. Primero pincho el disco en una ranura STA y verifico que la BIOS lo reconoce. Inicio normalmente.
 
i) Con gparted hago dos particiones /dev/sdb --> En mi caso /dev/sdb5 /dev/sdb6
ii) Crear el punto de montaje de ssd en /ssd de manera temporal. Para ello:
 
sudo mkdir /ssd
 
iii) Identificar las nuevas particiones 
 
sudo bkild /dev/sdb5 
sudo bkild /dev/sdb6
 
iv) Añadirlas al fstab actual para montar la particion en /ssd
 
sudo vim /etc/fstab
 
	proc            /proc           proc    nodev,noexec,nosuid 0       0
# / was on /dev/sda7 during installation
UUID=ea14b730-e351-498c-ad0e-da0698b1cef9 /       ext4    errors=remount-ro 0       1
# swap was on /dev/sda5 during installation
UUID=b9adb5f4-9d9c-4c01-9a3c-b7cd8e731278 none    swap    sw              0       0
# swap was on /dev/sdb5 during installation
#UUID=b9adb5f4-9d9c-4c01-9a3c-b7cd8e731278 none   swap    sw              0       0
# swap was on /dev/sdb6 during installation
UUID="67acc1f0-72ce-482c-a0ca-dd28ce27f798" /ssd  ext4    discard,noatime,nodiratime,errors=remount-ro 0       1 
/dev/sda6 /media/data ntfs-3g  auto,users,uid=1000,gid=1000,dmask=027,fmask=137,utf8    0       0
 
sudo mount -a
 
v) Sincronizar los discos excluyendo los paths conflictivos o recursivos, por ejemplo, puntos de montajes). En mi caso, tambien el home
 
sudo -i
rsync --exclude="mnt" --exclude="lost+found" --exclude="sys" --exclude="proc" --exclude="cdrom" --exclude="home" --exclude="media" --exclude="ssd" -aP / /ssd/
 
vi) Cambiar los puntos de montaje en el nuevo fstab (/ssd/etc/fstab)  y apuntar el viejo "/" a /home (aunque luego habrá que arreglar el path bien)
 
vii) Montajes especiales 
 
mkdir /ssd/{mnt,proc,sys}
sudo mount -o bind /dev        /ssd/dev 
sudo mount -o bind /sys /ssd/sys 
sudo mount -t proc /proc /ssd/proc 
sudo cp /proc/mounts /ssd/etc/mtab
 
viii) Y finalmente el grub
 
sudo chroot /ssd /bin/bash
# grub-install /dev/sdb
# update-grub
 
Antes de reiniciar cambio el orden de los discos y pongo el primero SATA en la BIOS et voilá!
 
Articulo original adaptado:
 
En la Alfresco Summit 2014
Los últimos días estuve en Londres con ocasión de la Alfresco Summit 2014, donde he disfrutado de la compañía de compañeros de profesión, y de diversas charlas técnicas y de negocio con lo mejorcito en el ámbito de la gestión documental colaborativa con Alfresco. Las keynotes de la primera plana corporativa de Alfresco, comandada por Doug Dennerline, Thomas DeMeo o John Newton, nos enseñaban el futuro a corto y medio plazo del ECM y las nuevas funcionalidades de la próxima Alfresco One 5.0. Entre ellas destacaron, la integración con Outlook, la integración con Sharepoint, el nuevo motor Activiti, el nuevo buscador facetado y las nuevas capacidades de reporting. Alguna de estas características como el buscador facetado, está también disponible en la versión Community.
 
Fuera del circuito de negocio, y en un plano más técnico, he tenido oportunidad de estar en algunas charlas como las que destaco a continuación:
  • Advanced Repository Administration with Javascript (Bindu Wavell): Bindu nos ofreció una charla realmente completa e ilustrativa sobre el API Javascript aplicada a la administración del repositorio. Muy didáctica, pasando por temas desde la importacion de JS, la consola de JS, el trazado de logs en el seguimiento de un proceso JS, las transacciones, o la desactivacion de los sistemas de auditado y versionado en el trabajo diario del administrador. 
  • Alfresco Security Best Practices (Toni de la Fuente): Toni presentó su último paper de prácticas de seguridad en Alfresco, un "test SVT" (Security Validation Test) para Alfresco. El listado de comprobaciones del apéndice final es realmente valioso y útil en cualquier instalación que hagas de Alfresco. 
  • Top Ten Tricks for improve Alfresco Perfomance (Sergio Rojas): Sergio nos ilustró con algunas buenas prácticas para mejorar el rendimiento del repositorio.
  • Monitoring your Alfresco Installation (Miguel Rodriguez): Miguel presentó una arquitectura de monitorización de Alfresco basada en las herramientas de software libre como logstash, elastic search, kibana, graphite, graphana o icinga. Muy ilustrativo y valioso todo lo que contó. 
  • 10 Enhacements that require less than 10 lines of Code (Angel Borroy): Angel presentó 10 recetas minimalistas con las que extender y mejorar tu instalación de Alfresco, desde la securizarización en la creación de sitios a propiedades específicas y plantillas de los mismos.
  • Sizing your Alfresco Installation (Luis Cabaceira): Luis nos introdujo en los principios básicos del dimensionamiento de la instalación, como la concurrencia de usuarios, los casos de uso y el tipo y número de documentos previstos. No nos dió la formula exacta, aunque si ilustró diferentes variables a tener en cuenta.
Con todos ellos pude hablar personalmente y discutir planteamientos técnicos. También tuve ocasión de ver en acción a Boris Mejias, Fran Alvarez y Victor Fariña en las Ligthting Talks, tres verdaderos fenómenos con los que tuve oportunidad de compartir experiencias varias con Alfresco. Mención especial por último para la  comunidad emergente Order of The Bee (OOTB - cuyas iniciales también valen para Out Of The Box), que estuvo muy presente y activa en la conferencia, y de la que formo parte. Hasta la siguiente Meetup!
 
Mostrando el intervalo 1 - 5 de 262 resultados.
Resultados por página 5
de 53