Gestión de Oracle Cloud Infrastructure Object Storage con FTM CLI

Por Francisco Riccio
Publicado en Marzo 2018



Introducción

 La Nube de Oracle provee un tipo de almacenamiento llamado Object Storage el cual ofrece una disponibilidad de 11 9s (≈ 100%) a un costo muy bajo, siendo los datos accedidos desde cualquier lugar del mundo con todos los mecanismos de seguridad pertinentes.

Algunos de los casos de uso para este tipo de almacenamiento son:

  • Repositorio de Big Data.
  • Respaldos.
  • Almacenamiento de documentos multimedia (imágenes, audio y video).
  • Repositorio de Log de Aplicaciones.

Hoy en día el caso de uso de Respaldos de nuestra información, con una política de retención altamente exigente, ha generado que Object Storage sea la opción más adecuada porque permite evitar los siguientes dolores de cabeza de un Data Center tradicional:

  • Obsolescencia tecnológica de las cintas como su daño físico en posteriores años.
  • Costo por la custodia y transporte de las cintas a otros Data Centers.
  • Costo asociado al personal que gestiona los respaldos.
  • Costos relacionados al uso del espacio físico que ocupa las cintas.
  • Costo de soporte anual de hardware y software involucrado en la solución de respaldo.

Oracle Cloud Infrastructure Object Storage se ofrece como un servicio y cuenta con 2 opciones:

  • Standard, ideal para datos que requieran ser accedidos rápidamente con mucha frecuencia.
  • Archive, para datos que sean consultados rara vez. Ideal para escenarios donde se desea almacenar información histórica por temas legales. La restauración de los archivos en este tipo de almacenamiento podría demorar horas.

En ambos casos, las operaciones de lectura y escritura  sobre este tipo de almacenamiento son realizadas vía REST APIs.

Se recomienda revisar la siguiente documentación complementaria:


Adicional a los REST APIs, contamos con la herramienta File Transfer Manage (FTM CLI), la cual nos permitirá acceder a Oracle Cloud Infrastructure Object Storage de manera simple y flexible. La documentación de la herramienta se encuentra en el siguiente url:

https://docs.oracle.com/en/cloud/iaas/storage-cloud/csclr/

FTM CLI se ejecutará en los servidores de nuestros Data Centers o en otras Nubes incluida la de Oracle con la finalidad de acceder y almacenar nuestra información en este tipo de almacenamiento.

 

Implementación

1. Despliegue de FTM CLI

Primero procederemos a descargar FTM CLI en nuestro servidor o computadora personal.

El instalador lo descargamos en el siguiente url:

http://www.oracle.com/technetwork/topics/cloud/downloads/storage-cloud-upload-cli-3424297.html

Actualmente el producto funciona con las siguientes versiones mínimas de Sistema Operativo: Windows 7, Windows Server 2012, Oracle Linux 6.3, Ubuntu 14.04 LTS y Mac OS X 10.7.

Asimismo se requiere tener instalado Java 1.7 o superior.

Los requisitos están documentados en el siguiente url y se recomienda su revisión frente alguna actualización que exista en el futuro:

https://docs.oracle.com/en/cloud/iaas/storage-cloud/csclr/preparing-use-ftm-cli.html#GUID-29B93CB2-B330-4670-9D27-22E8CBBAD644


Una vez descargado y descomprimido FTM CLI tendremos la siguiente estructura de archivos:





En caso necesitemos obtener la versión del producto ejecutamos el siguiente comando:





Si deseamos acceder a la ayuda de la herramienta ejecutamos el comando ftmcli.jar con la opción -h:





Procedemos a modificar el archivo: ftmcli.properties con la finalidad de configurar la herramienta.
Se adjunta el contenido del archivo, donde básicamente se debe modificar el parámetro USER y REST-ENDPOINT.





Ingresando al Portal de Oracle Cloud podemos obtener el valor del REST Endpoint.





En esta pantalla obtendremos el REST Endpoint de nuestro Object Storage.





Configurado el archivo procederemos a realizar una conexión consultando los datos de nuestro Object Storage con el siguiente comando:







2. Creación de Contenedores

El almacenamiento de tipo Object Storage guarda sus archivos mediante contendedores donde cada uno de ellos tendrá propiedades específicas.

Para la implementación se creará un contenedor de tipo Standard llamado __data1.





La opción –save-auth-key hará que se nos solicite la contraseña del usuario que registramos en el archivo ftmcli.properties para posteriormente encriptarla en mismo archivo. Próximas ejecuciones que tengamos con la herramienta ya no será necesario ingresar la contraseña como veremos posteriormente.

Finalizado la creación del contendedor, nuestro archivo ftmcli.properties cuenta con la siguiente información:





En el Portal de Oracle Cloud también podremos visualizar el contendedor creado:





Consultamos las propiedades de nuestro contendedor __demo1.





Procederemos a crear un contendedor de tipo Archive llamado __data3.







3. Subir archivos a los Contendedor

a. Procederemos a subir un archivo (alojado en nuestro computador) en el contendor Standard __demo1.






b. Subiremos una carpeta (con archivos y sub-carpetas) llamada BK.

A continuación se presenta la estructura de la carpeta BK:





El contenido completo del directorio BK se copiará en el contenedor.





Finalmente consultamos los archivos que se encuentran dentro del contenedor __demo1.






c. Copiaremos un archivo (data2.txt) al contenedor de tipo Archive llamado __demo3.





Procedemos a validar que el archivo se encuentre dentro del contenedor.







4. Copia de archivos entre Contenedores

Antes de ejecutar los siguientes comandos, se ha creado un contenedor de tipo Standard adicional llamado __demo2 para realizar algunos ejemplos.

Dentro del portal de Oracle Cloud visualizaremos nuestros 3 contendedores:





Procedemos a copiar el archivo data.txt ubicado en el contenedor __demo1 hacia __demo2 y realizaremos una validación.







5. Descarga y restauración de archivos alojados en los Contenedores

a. Descarga de archivos de un Contenedor de tipo Standard.

Procedemos a descargar la carpeta BK copiada en el contenedor __demo1 y luego validaremos que los archivos se encuentren disponible en nuestro equipo.





En caso necesitemos descargar los archivos en otra ubicación, debemos utilizar el parámetro “–o” como se muestra a continuación:






b. Restauración de un archivo de un Contenedor de tipo Archive.

En el siguiente ejemplo restauraremos un archivo alojado en nuestro contenedor de tipo Archive a nuestro servidor.





Recordemos que la restauración de cualquier archivo dentro de un contenedor de tipo Archive suele demorar regular tiempo, para ello tenemos la opción de ver el progreso de la operación.







6. Eliminación de archivos dentro del Contenedor

En nuestro ejemplo procedemos a eliminar un archivo (data.txt) alojado en el contenedor __demo1.







7. Eliminación de un Contenedor

Procederemos a eliminar los 3 contenedores. El comando cuenta con la opción “-f” el cual eliminará el contenedor a pesar que aún tenga archivos.







Conclusión

En este artículo hemos aprendido a realizar todos los pasos requeridos para desplegar File Transfer Manage (FTM CLI) y las operaciones más comunes y necesarias sobre el almacenamiento de tipo Object Storage.

Gracias a esta herramienta, podríamos llegar a automatizar el respaldo de nuestros servidores donde principalmente los respaldos online podrían almacenarse en un contenedor de tipo standard para posteriormente en el tiempo basado en las políticas de retención que hayamos definido, pueda moverse a un contenedor de tipo histórico con la finalidad de obtener ahorros significativos y múltiples ventajas adicionales comparadas con el almacenamiento de respaldos tradicional. Como éste caso, existen diversos casos que nos facilita hoy en día esta herramienta.



Francisco Riccio, actualmente se desempeña como Arquitecto de Soluciones en Oracle Perú y es instructor de cursos oficiales de certificación Oracle. Es un Oracle Certified Professional en productos de Oracle Application, Base de Datos, Cloud & Virtualización.

 

Este artículo ha sido revisado por el equipo de productos Oracle y se encuentra en cumplimiento de las normas y prácticas para el uso de los productos Oracle.