Copia de seguridad de datos desarrollada en la nube

En julio de 2020, Github cayó. Sí, escuchaste bien, respaldado por Microsoft, Github, que está sentado en Azure, está muerto. Recientemente, Docker, que ha experimentado un gran incendio en los últimos años, también ha comenzado a restringir el uso de Docker comercial y otros servicios de Docker (como Docker Hub) a países y empresas específicos. Todo esto refleja la importancia de la copia de seguridad de los datos.Aunque los incidentes anteriores no tuvieron un gran impacto en nuestros pequeños individuos, pero bajo la cubierta del nido, no hay huevos. Domine el método de copia de seguridad de datos lo antes posible para lidiar con calma con los "accidentes" inesperados en el futuro. Este artículo presentará el establecimiento de un servicio similar a Github, Gogs en ECS, y respaldará periódicamente los datos en ECS en OSS. Si es posible, puede respaldar los datos en OSS en su propio NAS de Qunhui.

Introducción

Ha llegado la era de "Todo en la nube". Para la empresa, el costo de mantenimiento de la sala de computadoras es demasiado alto, por lo que comprar un servidor en la nube como Ali es más flexible y controlable; para un individuo, tener un servidor en la nube (ya sea Alibaba Cloud o autoconstruido El servidor [con IP de red pública]), en cualquier máquina, cualquier entorno tiene el mismo conjunto de entornos de lanzamiento que es demasiado conveniente. La siguiente es una introducción al desarrollo de copias de seguridad de datos en la nube.

Gogs construir

Por qué construir Gogs, porque Github también se colgará, y nadie puede garantizar que no se verá afectado por los controles comerciales de un país.
Gogs es un servicio de Git que es extremadamente fácil de construir. Las funciones principales son las mismas que las de Github y Gitlab, pero son más livianas. El acuerdo de licencia del MIT utilizado por el proyecto se puede utilizar de forma gratuita sin ninguna condición. Tiene las siguientes ventajas:

  1. Instalación de paquete binario fácil de instalar, mientras es compatible con Docker
  2. Desarrollo de Go multiplataforma, compatible con todas las plataformas
  3. Raspberry Pi liviano y económico puede soportar su funcionamiento (2 núcleos 512M)

Docker se utiliza aquí para instalarlo e implementarlo. El archivo docker-compose.yml es el siguiente:

version: '3'

services:
  gogs:
    image: gogs/gogs
    ports:
      - 10022:22
      - 10080:3000
    volumes:
      - ./data/:/data

Inicie el servicio con el siguiente comando:

docker stack deploy -c docker-compose.yml gogs

De esta forma, básicamente se configura un servicio Git preliminar, al que se puede acceder a través de IP: 10080. Por supuesto, se requieren algunas configuraciones para el primer inicio de sesión. Aquí puede elegir SQLite como la base de datos de almacenamiento. Una vez que el servidor está activo, la memoria de su contenedor es de solo 47M, y un contenedor MySql se inicia por separado y su memoria ocupa 371M. Esta es una prueba suficiente de que Gogs es liviano.

Copia de seguridad de la máquina en la nube a OSS

Cuando ponemos una gran cantidad de código y servicios en la nube para que se ejecuten, si el servidor es pirateado o se borran datos accidentalmente, hacer una copia de seguridad de los datos en este momento puede permitirnos reducir las pérdidas. Hay muchas formas de realizar una copia de seguridad de los datos del servidor, como

  1. Copie manualmente archivos desde el servidor de forma regular El problema es que el costo de la mano de obra es alto y es posible que no lo recuerde.
  2. Su propio servidor comienza a cronometrar las tareas a través de crontab y realiza copias de seguridad de archivos a través de rsync o scp, siempre que tenga su propio servidor
  3. Realice copias de seguridad periódicas a través de Cloud Sync en Qunhui Nas, siempre que tenga Qunhui Nas y Cloud Sync solo sea compatible con OSS.

De hecho, la segunda es la situación más ideal, toda la Raspberry Pi se puede sincronizar y respaldar regularmente, lo cual es conveniente y rápido. Esta es la tercera forma. La premisa es que debe activar el servicio OSS y crear un depósito llamado ws-bakup y OSS accessKey (myAccessKeyID: myAccessKeySecret).

Instalación de la herramienta OSS

# 获取二进制ossutil64文件,并置于/usr/bin/目录下
wget http://gosspublic.alicdn.com/ossutil/1.6.18/ossutil64 -O /usr/local/bin/ossutil64
# 给二进制文件添加执行权限
chmod 755 /usr/local/bin/ossutil64
# 配置ossutil64
ossutil64 config

Utilice la ubicación del archivo de configuración predeterminada ~ / .ossutilconfig

[Credentials]
language=CH
endpoint=https://oss-cn-shanghai-internal.aliyuncs.com
accessKeyID=myAccessKeyID
accessKeySecret=myAccessKeySecret

configuración crontab

guión

#! /bin/bash

day=`date  +"%Y%m%d"`
tarname='ali-ws'
echo "ecs_backup_oss: "${day}

# 打包压缩
tar -czvPf /var/backups/ws/${tarname}-${day}.tar.gz \
    /path/to/gogs \
    > /dev/null

# 备份上传
cp /var/backups/ws/${tarname}-${day}.tar.gz /var/backups/ws/${tarname}.tar.gz
ossutil64 -f cp /var/backups/ws/${tarname}.tar.gz oss://ws-bakup

# 清理之前的打包文件
find /var/backups/ws/ -mtime +4 -name "*.tar.gz" -exec rm -rf {
    
    } \;
# 每天凌晨一点备份数据到OSS
0 1 * * * sh /root/cron/ws_bakup.sh >> /var/backups/ws/cron.log

Copia de seguridad de OSS en Nas

El proceso de operación es el siguiente:

  1. Inicie sesión en Qunhui Nas y abra Cloud Sync
  2. Elija un proveedor en la nube: Alibaba Cloud Object Storage
  3. Complete myAccessKeyID y myAccessKeySecret, y seleccione el depósito para respaldar: ws-bakup
  4. La configuración básica está completa, también puede modificar el plan (similar a crontab)

De esta forma se completa todo el proceso de copia de seguridad de datos desarrollado en la nube.

referencias

  1. Migración de datos de Alibaba Cloud ECS a OSS
  2. Documento chino de Gogs
  3. Código fuente de Gogs

Si este artículo es útil para usted, o si está interesado en artículos técnicos, puede seguir la cuenta pública de WeChat: Technical Tea Party. Puede recibir artículos técnicos relacionados lo antes posible, ¡gracias!
Fiesta del té técnica

Este artículo es publicado automáticamente por ArtiPub , una plataforma de publicación múltiple.

Supongo que te gusta

Origin blog.csdn.net/haojunyu2012/article/details/112854653
Recomendado
Clasificación