- El uso de OpenCayle queda restringido a los nodos de login (frontends) por lo que cualquier interacción debe realizarse directamente desde esos equipos.
- Los usuarios no podrán crear ni acceder a ningún punto de montaje desde los nodos de cálculo.
NOTA: Para descargar los programas python ( extensión .py) siga estas instrucciones:
1) Seleccione el fichero
2) Pulse el botón derecho del ratón
3) Seleccione la opción guardar como
En caso de que la conexión sea correcta, obtendrá el siguiente mensaje:
```
[mi_usuario_1_1@frontend1 ~]$ python s3Scripts/s3CheckConnection.py <access_key>
Your accessKey connects successfully to OpenCayle
```
>>>>>
Donde mi_usuario_1_1 sería su usuario de conexión.
Si por el contrario obtuviese un error, por favor, póngase en contacto con el equipo de soporte para revisar su caso.
Creación de bucket
Creación del primer bucket, si ya existe el bucket no es necesario crearlo.
Para la generación de los buckets existen diferentes opciones.
Generación del bucket en el equipo personal:
Generación de un bucket desde los frontends
Crear el fichero "s3test.cfg".
Ejecutar “ls”, comando que permite listar el contenido de un directorio, para verificar que no hay nada creado en OpenCayle aún.
[mi_usuario_1_1@frontend1 ~]$ s3cmd -c s3test.cfg ls
Crear el bucket con el siguiente comando:
[mi_usuario_1_1@frontend1 ~]$ s3cmd -c s3test.cfg mb s3://<nombre_bucket>
Ejemplo:
[mi_usuario_1_1@frontend1 ~]$ s3cmd -c s3test.cfg mb s3://su_primer_bucket
Bucket 's3://su_primer_bucket/' created
Al hacer nuevamente un “ls”, ya debería aparecer su bucket.
[mi_usuario_1_1@frontend1 ~]$ s3cmd -c s3test.cfg ls
2020-06-16 09:32 s3://su_primer_bucket
En el siguiente enlace podrá encontrar más comandos útiles de rclone: https://rclone.org/commands/
Conexión
Debe existir un fichero de configuración en la ruta .config/rclone/rclone.conf con la siguiente información (para más información puede consultar aquí):
[mi_usuario_1_1@frontend1 ~]$ cat .config/rclone/rclone.conf
[oc]
type = s3
provider = Other
env_auth = false
access_key_id = <clave_usuario_codificada_base64>
secret_access_key = <clave_usuario_codificada_base64>
endpoint = https://ss3.scayle.es
Listar opencayle
Listar directorios
[mi_usuario_1_1@frontend1 ~]$ rclone lsd oc:
-1 2020-06-16 11:32:59 -1 mi_primer_bucket
Listar el contenido dentro de un directorios
[mi_usuario_1_1@frontend1 ~]$ rclone ls oc:mi_primer_bucket
o
[mi_usuario_1_1@frontend1 ~]$ rclone lsl oc:mi_primer_bucket
Listar árbol
[mi_usuario_1_1@frontend1 ~]$ rclone tree oc:m
Crear un fichero
[mi_usuario_1_1@frontend1 ~]$ rclone touch oc:mi_primer_bucket/fichero_creado_con_rclone.txt
[mi_usuario_1_1@frontend1 ~]$ rclone lsl oc:mi_primer_bucket
0 2021-08-30 13:17:50.212381601 fichero_creado_con_rclone.txt
Eliminar un fichero
[mi_usuario_1_1@frontend1 ~]$ rclone delete oc:mi_primer_bucket/fichero_creado_con_rclone.txt
[mi_usuario_1_1@frontend1 ~]$ rclone lsl oc:mi_primer_bucket
Crear un directorio
[mi_usuario_1_1@frontend1 ~]$ rclone mkdir oc:mi_segundo_bucket
[mi_usuario_1_1@frontend1 ~]$ rclone lsd oc:
-1 2020-06-16 11:32:59 -1 mi_primer_bucket
-1 2021-08-30 13:21:10 -1 mi_segundo_bucket
Eliminar un directorio
[mi_usuario_1_1@frontend1 ~]$ rclone rmdir oc:mi_segundo_bucket
[mi_usuario_1_1@frontend1 ~]$ rclone lsd oc:
-1 2020-06-16 11:32:59 -1 mi_primer_bucket
Copiar un fichero local a OC
[mi_usuario_1_1@frontend1 ~]$ cat rclone.txt
Hola caracola
[mi_usuario_1_1@frontend1 ~]$ rclone copy rclone.txt oc:mi_primer_bucket
[mi_usuario_1_1@frontend1 ~]$ rclone lsl oc:mi_primer_bucket
14 2021-08-30 13:14:46.000000000 rclone.txt
Copiar un fichero de OC en local
[mi_usuario_1_1@frontend1 ~]$ cat rclone.txt
Hola caracola
[mi_usuario_1_1@frontend1 ~]$ rclone copy oc:mi_primer_bucket/fichero_creado_con_rclone.txt .
[mi_usuario_1_1@frontend1 ~]$ ls -l
...
-rw-r--r-- 1 mi_usuario_1_1 hpc_scayle 0 ago 30 13:17 fichero_creado_con_rclone.txt
...
Mover un fichero
[mi_usuario_1_1@frontend1 ~]$ rclone lsl oc:mi_primer_bucket
0 2020-06-16 11:36:02.000000000 mi_primer_objeto
14 2021-08-30 13:14:46.000000000 rclone.txt
[mi_usuario_1_1@frontend1 ~]$ rclone move fichero_a_mover_a_oc.csv oc:mi_primer_bucket
[mi_usuario_1_1@frontend1 ~]$ rclone lsl oc:mi_primer_bucket
0 2021-09-02 10:08:19.000000000 fichero_a_mover_a_oc.csv
0 2020-06-16 11:36:02.000000000 mi_primer_objeto
14 2021-08-30 13:14:46.000000000 rclone.txt
NOTA: para mover directorio utilizar la opción "moveto" de rclone.
Sincronización de ficheros
ADVERTENCIA: no está permitida la creación de puntos de montaje. Trabajar sobre directorios locales y luego mover los datos. Utilizar rsync para trabajar. El flujo de trabajo óptimo será que todos los usuarios suban sus datos a OpenCayLe siento este el punto de almacenamiento central y que luego copien a SCRATCH los datos necesarios para calcular. Finalmente, los usuarios deberán volver a hacer la subida con los resultados que necesiten almacenar.
Sync
- La sincronización se debe realizar sobre un directorio ya creado en local.
- Con la opción -i estamos indicando que queremos que la sincronización sea interactiva, de esta manera, nos pregunta qué deseamos hacer.
rclone sync -i SOURCE remote:DESTINATION
Ejemplo:
[mi_usuario_1_1@frontend1 ~]$ rclone sync -i oc:datasets/dataset_train/csv $HOME/mi_usuario_1_1/DATA/
rclone: copy "datos_filtrados.csv"?
y) Yes, this is OK (default)
n) No, skip this
s) Skip all copy operations with no more questions
!) Do all copy operations with no more questions
q) Exit rclone now.
y/n/s/!/q>