Opened 5 years ago

Last modified 5 years ago

#5971 assigned defect

Adapt current thredds catalogs to work on tds6

Reported by: vegasm Owned by: antonio
Priority: blocker Milestone: UDG-TDS-5.0.0
Component: UDG Keywords: catalogs
Cc: sixto, gutierjm, antonio

Description

tds6 is running on tomcat 8 using thredds 5.0.0.

The aim of TDS6 is to test our catalogs on thredds 5.0.0 and merge all the instances with different versions into one.

Change History (21)

comment:1 Changed 5 years ago by antonio

  • Status changed from new to accepted

The TDS 5.0.0 is not still the release version.

The plan from UNIDATA for a release is not yet clear but there will be on shortly

comment:2 Changed 5 years ago by vegasm

TDS5 is running over the 4.3 version which is not longer supported by UNIDATA. We need to adapt the data and test it before the 5.0.0 release is launched.

Our fork https://github.com/SantanderMetGroup/thredds/tree/5.0.0 is synced with UNIDATA and I am going to work on the 5.0.0_beta version to improve some critical parts. When Thredds 5.0.0 is released, we will be ready without losing any time, but the problem with the catalogs cannot be a blocker task.

http://meteo.unican.es/tds6/catalog/catalog.html

comment:3 follow-up: Changed 5 years ago by gutierjm

Manu, ¿que versión de TDS está desplegada en http://meteo.unican.es/tds7?
¿en tds6 (la versión 5.0.0) se soportan tanto opendap como el subset?. Si es así podríamos unificar las dos opciones (las que ahora soportan tds5 y tds7).

comment:4 in reply to: ↑ 3 Changed 5 years ago by vegasm

Replying to gutierjm:

Manu, ¿que versión de TDS está desplegada en http://meteo.unican.es/tds7?
¿en tds6 (la versión 5.0.0) se soportan tanto opendap como el subset?. Si es así podríamos unificar las dos opciones (las que ahora soportan tds5 y tds7).

Hola jose,

la cosa está así:

tds5 - versión 4.3 obsoleta, no funciona subset
tds6 - versión 5.0.0. Versión sobre la que debemos centrarnos y corregir los fallos que den los datasets.
tds7 - versión 4.5 con el fix del subset

Como van a sacar la versión 5.0.0 y hay que corregir fallos, es mejor hacer todas las pruebas directamente con esta. Además la tengo desplegada en local y puedo integrar cambios en el código de forma sencilla y rápida y pasarlos al tds6 para testear en producción. Si el subset, por ejemplo, no funcionase porque el cambio no estuviese integrado, lo puedo volver a meter sin problema.

El problema es de contenido, ya que tds6 tiene los catálogos de ejemplo. Necesito que Antonio o Sixto metan los catálogos como los tiene, por ejemplo, el tds7 y vamos iterando con los fallos.

Por lo de las instancias no te preocupes, ya que, si el subset funcionase bien en el tds6, lo fusionaría con el tds7. Pero necesitamos eso, contenido y testear bien.

Last edited 5 years ago by vegasm (previous) (diff)

comment:5 Changed 5 years ago by antonio

  • Owner changed from antonio to sixto
  • Status changed from accepted to assigned

@Sixto, necesito que docuementesel procedimiento que estás siguiendo para actualizar los catálogos.

Tanto en el TDS5 como en el TDS7, como actualizas el SVN y sincronizas ambos catálogos y su correspondiente recarga en ambos TDS.

Para el TDS6 hay que hacer un branch, que creo que ya estaba hecho pero no sincronizadao (TDS9???)

Antonio

comment:6 follow-up: Changed 5 years ago by sixto

Hola,

a ver que he estado reunido toda la mañana. Ahora que el ticket es mío y veo que tengo que hacer me aclaro mejor, aunque es algo que ya surgió en el mail que os mandé tras la reunión. Contesto intercalado con lo de Antonio.

@Sixto, necesito que docuementesel procedimiento que estás siguiendo para
actualizar los catálogos.

Lo hago en algún sitio en particular que tengáis habilitado para ello? O me creo una entrada en el trac. Es por no andar generando "basura" y tenerlo todo centralizado. Básicamente, trabajo en mi working copy, subo los cambios y luego actualizo el TDS5 de /oceano/services. Finalmente, se reinicializa la aplicación, pero lo describo paso a paso donde me digáis o sea.

Tanto en el TDS5 como en el TDS7, como actualizas el SVN y sincronizas
ambos catálogos y su correspondiente recarga en ambos TDS.

Para el TDS6 hay que hacer un branch, que creo que ya estaba hecho pero no
sincronizadao (TDS9???)

El TDS9 estaba generado pero no sincronizado con el TDS5, que viene a ser el principal actualmente. Efectivamente hay un TDS6, pero es bastante antiguo. El TDS9 es más reciente, pero me suena que metimos alguna cosa para "desarrollar". En mí opinión, podemos cargarnos el TDS6 actual, los catálogos y datasets, pisarlos con los del TDS5, de modo que tengamos un branch actualizado al que apuntar y hacer ahí las modificaciones que toquen. En particular, que apunte a la versión 5.0 (si recuerdo los mails anteriores) y en la que ambos servicios, OPeNDAP y subsetting, tiren del TDS6 a ver que problemas aparecen y empezamos a solucionarlos. ¿Qué os parece?

Un saludo,

Sixto

comment:7 in reply to: ↑ 6 Changed 5 years ago by vegasm

Replying to sixto:

Hola,

a ver que he estado reunido toda la mañana. Ahora que el ticket es mío y veo que tengo que hacer me aclaro mejor, aunque es algo que ya surgió en el mail que os mandé tras la reunión. Contesto intercalado con lo de Antonio.

@Sixto, necesito que docuementesel procedimiento que estás siguiendo para
actualizar los catálogos.

Lo hago en algún sitio en particular que tengáis habilitado para ello? O me creo una entrada en el trac. Es por no andar generando "basura" y tenerlo todo centralizado. Básicamente, trabajo en mi working copy, subo los cambios y luego actualizo el TDS5 de /oceano/services. Finalmente, se reinicializa la aplicación, pero lo describo paso a paso donde me digáis o sea.

Tanto en el TDS5 como en el TDS7, como actualizas el SVN y sincronizas
ambos catálogos y su correspondiente recarga en ambos TDS.

Para el TDS6 hay que hacer un branch, que creo que ya estaba hecho pero no
sincronizadao (TDS9???)

El TDS9 estaba generado pero no sincronizado con el TDS5, que viene a ser el principal actualmente. Efectivamente hay un TDS6, pero es bastante antiguo. El TDS9 es más reciente, pero me suena que metimos alguna cosa para "desarrollar". En mí opinión, podemos cargarnos el TDS6 actual, los catálogos y datasets, pisarlos con los del TDS5, de modo que tengamos un branch actualizado al que apuntar y hacer ahí las modificaciones que toquen. En particular, que apunte a la versión 5.0 (si recuerdo los mails anteriores) y en la que ambos servicios, OPeNDAP y subsetting, tiren del TDS6 a ver que problemas aparecen y empezamos a solucionarlos. ¿Qué os parece?

Un saludo,

Sixto

El TDS6 es el que tiene la versión más actualizada de thredds. No es el que hay que quitar. Lo único que hay que hacer es quitarle al TDS6 los catálogos de ejemplo y enchufarle los del TDS5. Después de eso ir probando los servicios a ver donde casca y ver que modificaciones hacen falta en los catálogos o datasets.

comment:8 Changed 5 years ago by sixto

Perdón, igual me expresé mal porque era eso exactamente lo que quería decir...

comment:9 Changed 5 years ago by antonio

Hay que volver a empezar.

El TDS6 del svn que hay es una versión muy vieja:
https://meteo.unican.es/svn/repos/sistemas/services/TDS6

hay que borrarla:

svn delete

La WC que hay en /oceano/services/TDS6 está incompleta o corrompida, no lo sé, pero de todas formas hay que re-hacerla.

Creo que la solución es:

  1. borrar el TDS6 del svn y borrar el WC que hay en /oceano/services/TDS6
  2. Hacer una rama (svn copy) del TDS5 con el objetivo de migrar a la nueva versión del TDS (TDS6)
  3. Agregar, copia y/o modificar los scripts de arranque en la nueva rama
  4. Crear la WC nueva en /oceano/services, agregando todo el appz: tomcat, jre, war.... y copiando, agregando y modificando los scripts de arranque a partir de una otra instancia tomcat que tengamos más moderna.
  5. Modificar los servicios (opendap, ncss, etc) de los catalogos para que apunten al '/tds6'

Y a partir de aquí, publicar y trabajar con esta WC/SVN

comment:10 Changed 5 years ago by sixto

Hola,

en el repositorio ya está el TDS6 según lo que comentó Antonio ayer. Antonio, el link y la working copy de /oceano/services/ son de root y no puedo borrarla ni eliminar el link. Si lo haces tú creo ahí una working copy con la versión del TDS6 que he creado.

Un saludo,

Sixto

comment:11 follow-up: Changed 5 years ago by vegasm

  • Cc antonio added

comment:12 in reply to: ↑ 11 Changed 5 years ago by vegasm

  • Owner changed from sixto to antonio

@antonio mira lo que te ha comentado @sixto. Hay que echar a andar esto ya.

@sixto, esta instancia de TDS se arranca desde:

nombredeusuario@wn018:/oceano/gmeteo/WORK/antonio/UDG/TDS6 una vez ahí puedes arrancar y parar igual que cualquier otro TDS.

@antonio si tienes que hacer carpetas visibles quizá sería mejor práctica no meter despliegues en carpetas personales de usuario.

comment:13 follow-up: Changed 5 years ago by sixto

Hola

ya está todo lo necesario montado en la correspondiente carpeta. Para terminar de montar la copia en el repositorio con todo actualizado y correctamente estructurado necesito saber que partes de la carpeta del TDS6 utilizas, Manu, para mapeárlas en local, actualizar el repositorio y construir en océano la working copy correspondiente, de modo que, a partir de algún momento trabajemos siempre sobre una wc local y la de océano simplemente se actualice con los cambios correspondientes. De ese modo evitamos que pase como en su día ocurrió con otros TDSs.

Un saludo

Sixto

comment:14 in reply to: ↑ 13 Changed 5 years ago by vegasm

Replying to sixto:

Hola

ya está todo lo necesario montado en la correspondiente carpeta. Para terminar de montar la copia en el repositorio con todo actualizado y correctamente estructurado necesito saber que partes de la carpeta del TDS6 utilizas, Manu, para mapeárlas en local, actualizar el repositorio y construir en océano la working copy correspondiente, de modo que, a partir de algún momento trabajemos siempre sobre una wc local y la de océano simplemente se actualice con los cambios correspondientes. De ese modo evitamos que pase como en su día ocurrió con otros TDSs.

Un saludo

Sixto

No sé lo que tenéis versionado en otros TDS pero trabajo sobretodo con la parte de despliegue del tomcat. En otros TDS tenéis versionado solo el content o todo?

comment:15 Changed 5 years ago by sixto

Todo, o la idea es converger a tenerlo todo. Una vez el servicio está configurado lo que más puede cambiar es la parte del content, pero la idea es tenerlo todo subversionado. En su día tuvimos que "limpiar" el 5 y el 7, y dejarlo todo subversionado para evitar problemas como los que nos encontramos en ese momento.
Un día que tengamos ambos un momento nos sentamos, montamos todo en mí working copy local y luego yo ya subo todo al SVN y en cuanto me digas cambiamos la carpeta actual por la equivalente subversionada. Si lo hacemos bien no debería incidir en los desarrollos que hayas hecho ni en las pruebas que hagamos.

comment:16 Changed 5 years ago by vegasm

si quieres subversionar algo yo lo haría con el /TDS6/startup.sh, /TDS6/shutdown.sh y /TDS6/environ.sh. Todo lo demás no creo que sea recomendable subversionarlo ya que son jars y wars. Tampoco subversionaría un tomcat entero porque si sale una nueva release, lo suyo es adaptar sus nuevos confs a ella no traerte los que ya tienes.

comment:17 Changed 5 years ago by sixto

Si, vamos, la idea es subversionar los scripts de configuración, los archivos que definan variables de entorno, etc... No tengo claro que son los confs pero si son archivos de configuración para una u otra versión del tomcat, también los subversionaría y, si pasamos a otro tomcat, simplemente reflejaría en el mensaje del cambio la razón del mismo.
Pero bueno, que en resumen hablamos de subversionar mas o menos lo mismo. Lo dicho, en cualquier momento "libre" nos sentamos y lo miramos.

comment:18 Changed 5 years ago by sixto

Hola, tras casi dos horas iterando con Antonio, ya hemos conseguido ver la estructura de catálogos en el TDS6 de modo que podemos comenzar a detectar errores. Por distribuir un poco tareas/marrones:

  • Componer la WC subversionada (con las partes esenciales discutidas con Manu y Antonio), los enlaces simbólicos y demás es cosa mía -> SIXTO.
  • Catálogos -> SIXTO.
  • startup.sh: el TDS6 debe lanzarse desde océano pero correr en el WN18 o en el WN20, que son los aislados para ello, de modo que hay que modificar el startup.sh actual para que entre en uno de esos dos nodos y lo despliegue desde ahí. De otro modo cabe la posibilidad de desplegarlo por error en océano y que se monte un lío. -> MANU
  • Reinicialización del TDS6: para el balanceado entre ambos nodos se pueden lanzar dos instancias (ahora no está activado), de modo que el reinicio debe hacerse de ambas instancias ya que de otro modo un usuario podría ver la versión antigua y el otro la nueva. No se si esto se puede incluir en el startup.sh o si se puede definir un protocolo para hacerlo que podamos seguir. -> MANU y ANTONIO
  • server.xml: este archivo estará subversionado y hay que "limpiarlo". -> MANU y ANTONIO.
  • Servicios: en lo que he podido probar, el servicio OPeNDAP parece funcionar pero el subsetting no. -> MANU.

Creo que lo gordo era esto, al margen de los desarrollos que se vayan haciendo para la monitorización y demás.

Un saludo

Sixto

comment:19 follow-up: Changed 5 years ago by sixto

Buenos días,

hay que hacer algo para que, al desplegarlo, no queden carpetas con permisos "capados" ya que hace que no puedas operar con el SVN. Ahora mismo, al desplegarlo con el usuario vegasm se crean ficheros y carpetas con ese usuario y sin permiso de escritura para nadie más, de modo que, si hay que cambiar algo, tenemos que andar modificando permisos vía sudo o mierdas así. -> ANTONIO y MANU.

P.D: Antonio, puedes volver a extender los permisos de la carpeta raíz a todas las subcarpetas? Yo no puedo hacerlo con mi usuario. Gracias.

Un saludo,

Sixto

comment:20 in reply to: ↑ 19 Changed 5 years ago by vegasm

Replying to sixto:

Buenos días,

hay que hacer algo para que, al desplegarlo, no queden carpetas con permisos "capados" ya que hace que no puedas operar con el SVN. Ahora mismo, al desplegarlo con el usuario vegasm se crean ficheros y carpetas con ese usuario y sin permiso de escritura para nadie más, de modo que, si hay que cambiar algo, tenemos que andar modificando permisos vía sudo o mierdas así. -> ANTONIO y MANU.

P.D: Antonio, puedes volver a extender los permisos de la carpeta raíz a todas las subcarpetas? Yo no puedo hacerlo con mi usuario. Gracias.

Un saludo,

Sixto

Hola Sixto, todas las tareas que andan repartidas en esos dos últimos comentarios son en realidad tickets. Los puedes crear y asignarlos al UDG-TDS-5.0.0

comment:21 Changed 5 years ago by sixto

Buenos días,

gracias por el comentario...

Las partes que hablamos ya están subversionadas en la carpeta TDS6 de Antonio. La carpeta apache-tomcat-8.0.28 tiene enlaces simbólicos a la de tomcat que es la que está subversionada. Dentro del conf sólo está enlazado el server.xml, aunque está todo subversionado. Eso lo arreglamos como mejor os parezca.
De ahora en adelante, para trabajar con esas carpetas se hace en la WC local y se actualiza con el SVN el TDS6 desde OCEANO, no UI.
No he tocado nada de los catálogos pero habría que relanzar el servicio para que se montase sobre la estructura actual y asegurarnos que no hay fallos por eso.
En algún momento me pondré con el resto de catálogos.

Un saludo,

Sixto

Note: See TracTickets for help on using tickets.