Almacenamiento de copias de seguridad en la nube Oracle – Storage / Archive Classic
  • Categoría de la entrada:Sin categoría
  • Comentarios de la entrada:Sin comentarios

Ya hemos visto anteriormente cómo instalar y configurar el rclone y el rclone-changer para utilizar las nubes como backend de almacenamiento de reserva de Bacula, utilizando el ejemplo del Amazon S3.

Ahora, vamos a ver cómo la misma instalación se puede utilizar para grabar en los almacenes de la Nube Oracle, que viene siendo bastante demandada debido a los precios bastante competitivos en relación a los competidores.

Configuración de Rclone

Aquí usted ya debe haber instalado el rclone y rclone-changer según el artículo.

Como root, cree un archivo de configuración de rclone – /root/.config/rclone/rclone.conf, informando el login y la contraseña de acceso a la consola de nube de Oracle. La url de almacenamiento y autenticación se puede encontrar en la consola web de la nube de Oracle, según la Figura 1 – Dashboard – Detalles del servicio. El token de autenticación (necesario), vamos a actualizar después a través de un script.

[oracle]
type = swift
env_auth = false
user = hfaria@bacula.com.br
key = contrasena_acesso_oracle
storage_url = https://bacula.br.storage.oraclecloud.com/v1/Storage-bacula
auth = https://bacula.br.storage.oraclecloud.com/auth/v1.0
auth_token = AUTH_xxxx

Almacenamiento de copias de seguridad en la nube Oracle - Storage / Archive Classic 1

Figura 1 – Detalles de la url de autenticación y del servicio de almacenamiento

Cree una secuencia de comandos para estar siempre actualizando el token de autenticación en la configuración anterior (por ejemplo, /etc/ora_token.sh). Los tokens de la Nube Oracle tienen una duración de 30 minutos y este tiempo no puede ser renovado. El Bacula ya debe estar instalado para que haya el directorio /etc/bacula/. Modifique el nombre de su almacenamiento en oracle, usuario, contraseña de acceso y url de autenticación de acuerdo con su realidad.

#!/bin/bash
ORASTORAGE=Storage-bacula
USER=heitor@bacula.com.br
PASSWD=contrasena_acesso_oracle
AUTH_URL=https://bacula.br.storage.oraclecloud.com/auth/v1.0

TOKEN=$(curl -v -X GET -H "X-Storage-User: $ORASTORAGE:$USER" -H "X-Storage-Pass: $PASSWD" $AUTH_URL  2>&1 |grep X-Auth-Token |cut -f 3 -d " ") && sed -i "s/auth_token.*/auth_token = $TOKEN/g" /root/.config/rclone/rclone.conf 
cp /root/.config/rclone/rclone.conf /etc/bacula/rclone.conf
chown bacula /etc/bacula/rclone.con

Añada la siguiente línea en /etc/crontab, para intentar actualizar el token cada minuto, evitando que se pierda la conexión con el almacenamiento.

*  *    * * *   root    /etc/ora_token.sh

Ejecute el script /etc/ora_token.sh. Ejecute algunos comandos de rclone para comprobar que la conexión se realiza correctamente y cree un contenedor de nombre bacula.

# Lista containers/buckets
rclone -v lsd oracle:

# Cria um container
rclone mkdir oracle:bacula

Configuración del Bacula

Cree los directorios y el apunte virtual para el almacenamiento si aún no ha hecho:

mkdir /mnt/vtapes & touch /mnt/vtapes/tape & chown -R bacula /mnt/vtapes/
mkdir /mnt/bacula-spool & chown bacula /mnt/bacula-spool

Agregar un dispositivo similar al archivo Bacula Storage Daemon Configuration (bacula-sd.conf). En el caso del Bacula Enterprise esto puede ser hecho por la interfaz gráfica – Bweb. Si está utilizando Almacenamiento Archive que tiene una latencia de algunas horas en la restauración (similar al Glacier), puede que sea necesario aumentar aún más el Maximum Changer Wait (segundos).

Autochanger {
  Name = "rclone_ora"
  Device = Drive-1
  Changer Device = 'oracle:bacula' # configuración remota del rclone y bucket de grabación. También puede especificar un directorio en el bucket
  Changer Command = "/usr/sbin/rclone-changer %c %o %S %a" # no cambie eso
}

Device {
  Name = Drive-1
  Media Type = ora
  Maximum Changer Wait = 18000 # puede ser necesario cambiar de acuerdo con el tamaño de los volúmenes
  Archive Device = /mnt/vtapes/tape # debe coincidir con el archivo creado en el paso anterior
  Autochanger = yes
  LabelMedia = yes;
  Random Access = Yes
  AutomaticMount = no
  RemovableMedia = no
  AlwaysOpen = no
  Spool Directory = /mnt/bacula-spool
  Maximum Spool Size = 524288000
}

Ahora, atar el nuevo dispositivo de almacenamiento a su Director y también crear una Pool para él:

Autochanger {
  Name = OracleCloud
# Do not use "localhost" here
  Address = hfaria-asus-i5               
  SDPort = 9103
  Password = "O0yFMuPy2jZM8L7eMg9TQccW4SvXdVl-n"
  Device = rclone_ora
  Media Type = ora
  Maximum Concurrent Jobs = 10       
  Autochanger = OracleCloud                 # point to ourself
}

Pool {
  Name = Offsite
  Pool Type = Backup
  Recycle = yes                       
  AutoPrune = yes                    
  Storage = OracleCloud
  Maximum Volume Bytes = 5G # recomendado
  AutoPrune = yes
  Volume Retention = 4 weeks
}

Es importante tener en cuenta las consideraciones del desarrollador si desea cambiar el Maximum Volume Bytes:

Se recomienda que utilice muchos volúmenes pequeños en lugar de grandes. Intenta permanecer en un tamaño que su archivo promedio encaja sin quedar muy pequeño. El razonamiento aquí está en una situación de recuperación si usted está trabajando en volúmenes que desea minimizar la cantidad de datos no relacionados con un determinado trabajo de copia de seguridad que usted necesita copiar localmente para recuperarse. Si usted tiene una cinta virtual de 10G y sólo necesita 500M, usted todavía necesita esperar para que el 10G completo sea descargado antes de que usted pueda recuperar datos. Por lo tanto, si su tamaño de archivo típico es en promedio 700M, los volúmenes de 1G probablemente son una buena idea. [https://github.com/travisgroth/rclone-changer]

Hay un límite de código suave de 8192 «ranuras» de cinta en el intercambiador de rclone, pero esto se puede cambiar manualmente manipulando la secuencia de comandos. Si desea cambiar a 100 ranuras, por ejemplo, ejecute el siguiente comando:

sed -i 's/slots = 8192/slots = 100/g' /usr/sbin/rclone-changer

Por lo tanto, crear etiquetas de Bacula de cinta virtual. Utilice el bconsole para eso:

label barcodes storage=OracleCloud pool=Offsite

Si tiene problemas para etiquetar las cintas virtuales, compruebe todos los comandos anteriores y las concesiones de permisos. Para reiniciar el VTL y volver a intentarlo, elimine el archivo vtape y rclone-change state.

rm -f /mnt/vtapes/tape*
rm /var/lib/bacula/rclone-changer.state
touch /mnt/vtapes/tape & chown -R bacula /mnt/vtapes/

Listo. Ejecute un trabajo de copia de seguridad de prueba en el Pool Offsite y cree rutinas de Schedule para la nube de acuerdo con sus necesidades. Las cintas virtuales serán alteradas y cargadas en la nube automáticamente, como en las Figuras 2 y 3.

Almacenamiento de copias de seguridad en la nube Oracle - Storage / Archive Classic 2 Almacenamiento de copias de seguridad en la nube Oracle - Storage / Archive Classic 3

Figuras 2 y 3: Copia de respaldo con éxito y lista de cintas virtuales (archivos) en la consola web de Oracle

Resolución de problemas de Rclone-changer

Estos son los lugares donde el rclone y el rclone-changer guardan sus mensajes de registro:

cat /tmp/rclone.log
cat /var/log/bacula/rclone-changer.log

 

Disponível em: pt-brPortuguês (Portugués, Brasil)enEnglish (Inglés)esEspañol

Deja una respuesta