Spaces-UseCase-Backups\
Загрузка...
Х

Настройка бекапа на DigitalOcean Spaces

Настраиваем бекап сервера на CentOS 7, арендованного у DigitalOcean. Для начала установим и настроим утилиту s3cmd.

yum install s3cmd

Сверим версию

Для проверки версии используем следующую команду:

s3cmd --version

Вывод:

s3cmd version 2.0.1

Проверка версии важна, так как команды и вывод команд может меняться в зависимости от версии утилиты.

Настроим конфигурационный файл

По умолчанию s3cmd хранит свои настройки в файле .s3cfg, который расположен в домашней директории пользователя, из под которого выполняются команды. Это текстовый файл с форматом ключ/значение, который может быть отредактирован после того, как создастся. Вы можете создать файл настроек с хранилищем DigitalOcean Spaces по умолчанию, так и использовать другие хранилища.

Вариант 1: DigitalOcean Spaces по умолчанию

Если DigitalOcean главный или единственный провайдер, который использует s3cmd то настроим файл ~/.s3cfg командой:

s3cmd --configure

Вариант 2: Использование стороннего сервиса вместе с DigitalOcean

Если вы уже используете s3cmd с другим сервисом, например Amazon, вы можете создать отдельный конфигурационный файл для DigitalOcean Spaces, для этого просто используйте параметр -c. Файл создастся в той директории, где вы находитесь, поэтому можно указать путь, по которому создать файл:

В примере мы создадим файл конфигурации ams3 в нашей домашней директории:

s3cmd --configure -c ~/ams3

Важно: Для использования этого конфига, нужно будет при использовании s3cmd добавлять параметр в -c ~/ams3 конце каждой команды.

Настройка s3cmd

После того, как вы выбрали, как вы будете использовать s3cmd (по умолчанию DigitalOcean или отдельный конфигурационный файл). При выполнении команды запускается пошаговый интерактивный скрипт конфигурации. В этом разделе будет пояснение пунктов.

Enter Access Keys

Скрипт начинает спрашивать Access Key и Secret Key. Если вы еще не имеете ключей, вы можете сгенерировать их на странице панели управления в разделе API.
После ввода ключей, вас спросят про Default Region, выбираем US, для DigitalOcean этот параметр не имеет значения.

Enter new values or accept defaults in brackets with Enter.
Refer to user manual for detailed description of all options.
Access key and Secret key are your identifiers for Amazon S3. Leave them empty for using the env variables.
Access Key []: EXAMPLE7UQOTHDTF3GK4
Secret Key []: b8e1ec97b97bff326955375c5example
Default Region [US]:

Заметка: Вы так же можете задать переменные AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY для ключей.

 

Set the Endpoint

Далее мы введем точку доступа DigitalOcean, nyc3.digitaloceanspaces.com, если брали в Амстердаме, то будет ams3.digitaloceanspaces.com.

Use "s3.amazonaws.com" for S3 Endpoint and not modify it to the target Amazon S3.<br>S3 Endpoint [s3.amazonaws.com]: nyc3.digitaloceanspaces.com

Так как Space поддерживает DNS бакеты, то в следующем поле, мы введем бакет в требуемом формате:

%(bucket)s.nyc3.digitaloceanspaces.com

 

Use "%(bucket)s.s3.amazonaws.com" to the target Amazon S3. "%(bucket)s" and "%(location)s" vars
can be used if the target S3 system supports dns based buckets.
DNS-style bucket+hostname:port template for accessing a bucket []: %(bucket)s.nyc3.digitaloceanspaces.com

 

Optional: Set an encryption password

Следующий пункт опциональный и добавляет шифрование файлов. Для его работы потребуется gpg.

Encryption password is used to protect your files from reading
by unauthorized persons while in transfer to S3
Encryption password: secure_password
Path to GPG program [/usr/bin/gpg]:

 

Connect via HTTPS

Далее включаем соединение по HTTPS, вводим в поле Yes.

When using secure HTTPS protocol all communication with Amazon S3
servers is protected from 3rd party eavesdropping. This method is
slower than plain HTTP, and can only be proxied with Python 2.7 or newer
Use HTTPS protocol [Yes]: Yes

 

Optional: Set a Proxy Server

Настройки прокси, если у вы хотите работать через прокси, то введите данные от прокси-сервера.

On some networks all internet access must go through a HTTP proxy.
Try setting it here if you can't connect to S3 directly
HTTP Proxy server name:

 

Confirm and test settings

После ввода настроек прокси-сервера, скрипт настройки выведет все параметры и их значения для подтверждения, а также предложит протестировать их.

New settings:
 Access Key: EXAMPLES7UQOTHDTF3GK4
 Secret Key: b8e1ec97b97bff326955375c5example
 Default Region: US
 S3 Endpoint: nyc3.digitaloceanspaces.com
 DNS-style bucket+hostname:port template for accessing a bucket: %(bucket)s.n
yc3.digitaloceanspaces.com
 Encryption password: secure_password
 Path to GPG program: /usr/bin/gpg
 Use HTTPS protocol: True
 HTTP Proxy server name:
 HTTP Proxy server port: 0

Test access with supplied credentials? [Y/n] Y

 

Save the settings

Если тест прошел успешно, то вводите Y для сохранения настроек.

Please wait, attempting to list all buckets...
Success. Your access key and secret key worked fine 🙂

Now verifying that encryption works...
Success. Encryption and decryption worked fine 🙂

Save settings? [y/N]  Y

 

Если тест прошел с ошибкой или вы ввели N, вы сможете заново настроить скрипт. Если сохранили настройки, вы получите следующие сообщение

Configuration saved to '/home/sammy/nyc3'

 

На этом настройка s3cmd закончена, в следующей статье мы настроем резервное копирование в хранилище с помощью s3cmd.

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.