ื’ื™ื‘ื•ื™ VDS ืžืฆื˜ื‘ืจ ืขื ืืชืจ ื‘-1C-Bitrix ื‘-Yandex.Cloud

ื”ื™ื” ืœื™ ืฆื•ืจืš ืœื’ื‘ื•ืช ืืช ื”ืืชืจ ืœ-2C-Bitrix: ื ื™ื”ื•ืœ ืืชืจื™ื 1 ืคืขืžื™ื ื‘ื™ื•ื (ืงื‘ืฆื™ื ื•ืžืกื“ ื ืชื•ื ื™ื ืฉืœ mysql) ื•ืœืื—ืกืŸ ื”ื™ืกื˜ื•ืจื™ื™ืช ืฉื™ื ื•ื™ื™ื ืœืžืฉืš 90 ื™ื•ื.

ื”ืืชืจ ืžืžื•ืงื ืขืœ VDS ื”ืžืจื™ืฅ CentOS 7 ืขื "1C-Bitrix: Web Environment" ืžื•ืชืงืŸ. ื‘ื ื•ืกืฃ, ืฆื•ืจ ืขื•ืชืง ื’ื™ื‘ื•ื™ ืฉืœ ื”ื’ื“ืจื•ืช ืžืขืจื›ืช ื”ื”ืคืขืœื”.

ื“ืจื™ืฉื•ืช:

  • ืชื“ื™ืจื•ืช - 2 ืคืขืžื™ื ื‘ื™ื•ื;
  • ืฉืžื•ืจ ืขื•ืชืงื™ื ืขื‘ื•ืจ 90 ื”ื™ืžื™ื ื”ืื—ืจื•ื ื™ื;
  • ื”ื™ื›ื•ืœืช ืœืงื‘ืœ ืงื‘ืฆื™ื ื‘ื•ื“ื“ื™ื ืœืชืืจื™ืš ืžืกื•ื™ื, ื‘ืžื™ื“ืช ื”ืฆื•ืจืš;
  • ื”ื’ื™ื‘ื•ื™ ื—ื™ื™ื‘ ืœื”ื™ื•ืช ืžืื•ื—ืกืŸ ื‘ืžืจื›ื– ื ืชื•ื ื™ื ืฉืื™ื ื• VDS;
  • ื”ื™ื›ื•ืœืช ืœื’ืฉืช ืœื’ื™ื‘ื•ื™ ืžื›ืœ ืžืงื•ื (ืฉืจืช ืื—ืจ, ืžื—ืฉื‘ ืžืงื•ืžื™ ื•ื›ื•').

ื ืงื•ื“ื” ื—ืฉื•ื‘ื” ื”ื™ื™ืชื” ื”ื™ื›ื•ืœืช ืœื™ืฆื•ืจ ื’ื™ื‘ื•ื™ื™ื ื‘ืžื”ื™ืจื•ืช ืชื•ืš ืฆืจื™ื›ื” ืžื™ื ื™ืžืœื™ืช ืฉืœ ืฉื˜ื— ื•ืžืฉืื‘ื™ ืžืขืจื›ืช ื ื•ืกืคื™ื.

ืœื ืžื“ื•ื‘ืจ ืขืœ ืชืžื•ื ืช ืžืฆื‘ ืœืฉื—ื–ื•ืจ ืžื”ื™ืจ ืฉืœ ื”ืžืขืจื›ืช ื›ื•ืœื”, ืืœื ืขืœ ืงื‘ืฆื™ื ื•ืžืกื“ ื”ื ืชื•ื ื™ื ื•ื”ื™ืกื˜ื•ืจื™ื™ืช ื”ืฉื™ื ื•ื™ื™ื.

ื ืชื•ื ื™ื ืจืืฉื•ื ื™ื™ื:

  • VDS ืขืœ ื•ื™ืจื˜ื•ืืœื™ื–ืฆื™ื” ืฉืœ XEN;
  • OS CentOS 7;
  • 1C-Bitrix: ืกื‘ื™ื‘ืช ืื™ื ื˜ืจื ื˜;
  • ืืชืจ ืžื‘ื•ืกืก ืขืœ "1C-Bitrix: ื ื™ื”ื•ืœ ืืชืจ", ื’ืจืกื” ืกื˜ื ื“ืจื˜ื™ืช;
  • ื’ื•ื“ืœ ื”ืงื•ื‘ืฅ ื”ื•ื 50 GB ื•ื”ื•ื ื™ื’ื“ืœ;
  • ื’ื•ื“ืœ ืžืกื“ ื”ื ืชื•ื ื™ื ื”ื•ื 3 GB ื•ื”ื•ื ื™ื’ื“ืœ.

ื’ื™ื‘ื•ื™ ืกื˜ื ื“ืจื˜ื™ ืžื•ื‘ื ื” ื‘-1C-Bitrix - ืœื ื ื›ืœืœ ื‘ืื•ืคืŸ ืžื™ื™ื“ื™. ื–ื” ืžืชืื™ื ืจืง ืœืืชืจื™ื ืงื˜ื ื™ื, ื›ื™:

  • ืขื•ืฉื” ืขื•ืชืง ืฉืœื ืฉืœ ื”ืืชืจ ื‘ื›ืœ ืคืขื, ื‘ื”ืชืืžื”, ื›ืœ ืขื•ืชืง ื™ืชืคื•ืก ืžืงื•ื ื›ืžื• ืฉืื ื™ ืชื•ืคืก ืืช ื”ืงื‘ืฆื™ื, ื‘ืžืงืจื” ืฉืœื™ ื–ื” 50 GB.
  • ื”ื’ื™ื‘ื•ื™ ื ืขืฉื” ื‘ืืžืฆืขื•ืช PHP, ื“ื‘ืจ ื‘ืœืชื™ ืืคืฉืจื™ ืขื ื ืคื—ื™ื ื›ืืœื” ืฉืœ ืงื‘ืฆื™ื, ื–ื” ื™ืขืžื™ืก ืขืœ ื”ืฉืจืช ื•ืœื ื™ื™ื’ืžืจ ืœืขื•ืœื.
  • ื•ื›ืžื•ื‘ืŸ, ืื™ ืืคืฉืจ ืœื“ื‘ืจ ืขืœ 90 ื™ืžื™ื ื›ืœืฉื”ื ื‘ืขืช ืื—ืกื•ืŸ ืขื•ืชืง ืžืœื.

ื”ืคืชืจื•ืŸ ืฉื”ืžืืจื— ืžืฆื™ืข ื”ื•ื ื“ื™ืกืง ื’ื™ื‘ื•ื™ ืฉื ืžืฆื ื‘ืื•ืชื• ืžืจื›ื– ื ืชื•ื ื™ื ื›ืžื• ื”-VDS, ืืš ื‘ืฉืจืช ืื—ืจ. ืืชื” ื™ื›ื•ืœ ืœืขื‘ื•ื“ ืขื ื”ื“ื™ืกืง ื‘ืืžืฆืขื•ืช FTP ื•ืœื”ืฉืชืžืฉ ื‘ืกืงืจื™ืคื˜ื™ื ืžืฉืœืš, ืื• ืื ISPManager ืžื•ืชืงืŸ ืขืœ ื”-VDS, ืื– ื“ืจืš ืžื•ื“ื•ืœ ื”ื’ื™ื‘ื•ื™ ืฉืœื•. ืืคืฉืจื•ืช ื–ื• ืื™ื ื” ืžืชืื™ืžื” ืขืงื‘ ื”ืฉื™ืžื•ืฉ ื‘ืื•ืชื• ืžืจื›ื– ื ืชื•ื ื™ื.

ืžื›ืœ ื”ืืžื•ืจ ืœืขื™ืœ, ื”ื‘ื—ื™ืจื” ื”ื˜ื•ื‘ื” ื‘ื™ื•ืชืจ ืขื‘ื•ืจื™ ื”ื™ื ื’ื™ื‘ื•ื™ ืžืฆื˜ื‘ืจ ืœืคื™ ื”ืชืจื—ื™ืฉ ืฉืœื™ ื‘-Yandex.Cloud (Object Storage) ืื• Amazon S3 (Amazon Simple Storage Service).

ื–ื” ื“ื•ืจืฉ:

  • ื’ื™ืฉืช ืฉื•ืจืฉ ืœ-VDS;
  • ืžื•ืชืงืŸ ืฉื™ืจื•ืช ื›ืคื™ืœื•ืช;
  • ื—ืฉื‘ื•ืŸ ื‘-Yandex.Cloud.

ื’ื™ื‘ื•ื™ ืžืฆื˜ื‘ืจ - ืฉื™ื˜ื” ืฉื‘ื” ืžืื•ื—ืกื ื™ื ื‘ืืจื›ื™ื•ืŸ ืจืง ื ืชื•ื ื™ื ืฉื”ืฉืชื ื• ืžืื– ื”ื’ื™ื‘ื•ื™ ื”ืื—ืจื•ืŸ.

ื›ืคื™ืœื•ืช - ื›ืœื™ ื’ื™ื‘ื•ื™ ื”ืžืฉืชืžืฉ ื‘ืืœื’ื•ืจื™ืชืžื™ื ืฉืœ rsync ื•ื™ื›ื•ืœ ืœืขื‘ื•ื“ ืขื Amazon S3.

Yandex.Cloud ืžื•ืœ Amazon S3

ืื™ืŸ ื”ื‘ื“ืœ ื‘ื™ืŸ Yandex.Cloud ืœืืžื–ื•ืŸ S3 ื‘ืžืงืจื” ื”ื–ื” ืขื‘ื•ืจื™. Yandex ืชื•ืžืš ื‘ื—ืœืง ื”ืขื™ืงืจื™ ืฉืœ ื”-API ืฉืœ Amazon S3, ื›ืš ืฉืชื•ื›ืœ ืœืขื‘ื•ื“ ืื™ืชื• ื‘ืืžืฆืขื•ืช ื”ืคืชืจื•ื ื•ืช ื”ื–ืžื™ื ื™ื ืœืขื‘ื•ื“ื” ืขื S3. ื‘ืžืงืจื” ืฉืœื™, ื–ื” ื›ืœื™ ื”ืฉื™ืจื•ืช ื”ื›ืคื•ืœ.

ื”ื™ืชืจื•ืŸ ื”ืขื™ืงืจื™ ืฉืœ Yandex ื™ื›ื•ืœ ืœื”ื™ื•ืช ืชืฉืœื•ื ื‘ืจื•ื‘ืœ, ืื ื™ืฉ ื”ืจื‘ื” ื ืชื•ื ื™ื, ืื– ืœื ื™ื”ื™ื” ืงื™ืฉื•ืจ ืœืงื•ืจืก. ืžื‘ื—ื™ื ืช ืžื”ื™ืจื•ืช, ืžืจื›ื–ื™ ื”ื ืชื•ื ื™ื ื”ืื™ืจื•ืคื™ื™ื ืฉืœ ืืžื–ื•ืŸ ืขื•ื‘ื“ื™ื ื‘ื”ืชืื ืœืžืจื›ื–ื™ ื”ื ืชื•ื ื™ื ื”ืจื•ืกื™ื™ื ื‘ื™ืื ื“ืงืก, ืœืžืฉืœ, ืืชื” ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘ืคืจื ืงืคื•ืจื˜. ื”ืฉืชืžืฉืชื™ ื‘ืขื‘ืจ ื‘ืืžื–ื•ืŸ S3 ืขื‘ื•ืจ ืžืฉื™ืžื•ืช ื“ื•ืžื•ืช, ื›ืขืช ื”ื—ืœื˜ืชื™ ืœื ืกื•ืช ืืช Yandex.

ื”ื’ื“ืจืช Yandex.Cloud

1. ืขืœื™ืš ืœื™ืฆื•ืจ ื—ืฉื‘ื•ืŸ ื—ื™ื•ื‘ ื‘-Yandex.Cloud. ื›ื“ื™ ืœืขืฉื•ืช ื–ืืช, ืขืœื™ืš ืœื”ืชื—ื‘ืจ ืœ-Yandex.Cloud ื“ืจืš ื—ืฉื‘ื•ืŸ Yandex ืฉืœืš ืื• ืœื™ืฆื•ืจ ื—ืฉื‘ื•ืŸ ื—ื“ืฉ.

2. ืฆื•ืจ ืขื ืŸ.
ื’ื™ื‘ื•ื™ VDS ืžืฆื˜ื‘ืจ ืขื ืืชืจ ื‘-1C-Bitrix ื‘-Yandex.Cloud

3. ื‘"ืขื ืŸ" ืฆื•ืจ "ืงื˜ืœื•ื’".
ื’ื™ื‘ื•ื™ VDS ืžืฆื˜ื‘ืจ ืขื ืืชืจ ื‘-1C-Bitrix ื‘-Yandex.Cloud

4. ืขื‘ื•ืจ "ืงื˜ืœื•ื’" ืฆื•ืจ "ื—ืฉื‘ื•ืŸ ืฉื™ืจื•ืช".
ื’ื™ื‘ื•ื™ VDS ืžืฆื˜ื‘ืจ ืขื ืืชืจ ื‘-1C-Bitrix ื‘-Yandex.Cloud

5. ืขื‘ื•ืจ "ื—ืฉื‘ื•ืŸ ืฉื™ืจื•ืช" ืฆื•ืจ ืžืคืชื—ื•ืช.
ื’ื™ื‘ื•ื™ VDS ืžืฆื˜ื‘ืจ ืขื ืืชืจ ื‘-1C-Bitrix ื‘-Yandex.Cloud

6. ืฉืžื•ืจ ืืช ื”ืžืคืชื—ื•ืช, ืชืฆื˜ืจืš ืื•ืชื ื‘ืขืชื™ื“.
ื’ื™ื‘ื•ื™ VDS ืžืฆื˜ื‘ืจ ืขื ืืชืจ ื‘-1C-Bitrix ื‘-Yandex.Cloud

7. ืขื‘ื•ืจ "ืงื˜ืœื•ื’" ืฆื•ืจ "ื“ืœื™", ืงื‘ืฆื™ื ื™ื™ืคืœื• ืœืชื•ื›ื•.
ื’ื™ื‘ื•ื™ VDS ืžืฆื˜ื‘ืจ ืขื ืืชืจ ื‘-1C-Bitrix ื‘-Yandex.Cloud

8. ืื ื™ ืžืžืœื™ืฅ ืœื”ื’ื“ื™ืจ ืžื’ื‘ืœื” ื•ืœื‘ื—ื•ืจ ื‘"ืื—ืกื•ืŸ ืงืจ".
ื’ื™ื‘ื•ื™ VDS ืžืฆื˜ื‘ืจ ืขื ืืชืจ ื‘-1C-Bitrix ื‘-Yandex.Cloud

ื”ื’ื“ืจืช ื’ื™ื‘ื•ื™ื™ื ืžืชื•ื–ืžื ื™ื ื‘ืฉืจืช

ืžื“ืจื™ืš ื–ื” ืžื ื™ื— ื›ื™ืฉื•ืจื™ ื ื™ื”ื•ืœ ื‘ืกื™ืกื™ื™ื.

1. ื”ืชืงืŸ ืืช ืชื•ื›ื ื™ืช ื”ืฉื™ืจื•ืช ื”ื›ืคื™ืœื•ืช ื‘-VDS

yum install duplicity

2. ืฆื•ืจ ืชื™ืงื™ื™ื” ืœ-mysql dumps, ื‘ืžืงืจื” ืฉืœื™ ื–ื” /backup_db ื‘ืฉื•ืจืฉ VDS

3. ืฆื•ืจ ืชื™ืงื™ื™ื” ืœ-bash scripts /backup_scripts ื•ืฆื•ืจ ืืช ื”ืกืงืจื™ืคื˜ ื”ืจืืฉื•ืŸ ืฉื™ื’ื‘ื” ืืช /backup_scripts/backup.sh

ืชื•ื›ืŸ ื”ืชืกืจื™ื˜:

#!`which bash`


# /backup_scripts/backup.sh

# ะญั‚ะพ ัƒัะปะพะฒะธะต ะฟั€ะพะฒะตั€ัะตั‚ ะฝะต ะธะดั‘ั‚ ะปะธ ะฒ ะดะฐะฝะฝั‹ะน ะผะพะผะตะฝั‚ ะฟั€ะพั†ะตัั ั€ะตะทะตั€ะฒะฝะพะณะพ ะบะพะฟะธั€ะพะฒะฐะฝะธั, ะตัะปะธ ะธะดั‘ั‚, ั‚ะพ ะฝะฐ email ะพั‚ะฟั€ะฐะฒะปัะตั‚ัั ัะพะพะฑั‰ะตะฝะธะต ะพะฑ ะพัˆะธะฑะบะต (ัั‚ะพั‚ ะฑะปะพะบ ะผะพะถะฝะพ ะฝะต ะธัะฟะพะปัŒะทะพะฒะฐั‚ัŒ)
if [ -f /home/backup_check.mark ];
then

DATE_TIME=`date +"%d.%m.%Y %T"`;

/usr/sbin/sendmail -t <<EOF
From:backup@$HOSTNAME
To:<ะ’ะฐัˆ EMAIL>
Subject:Error backup to YANDEX.CLOUD
Content-Type:text/plain; charset=utf-8
Error backup to YANDEX.CLOUD

$DATE_TIME
EOF

else

# ะžัะฝะพะฒะฝะพะน ะฑะปะพะบ ะพั‚ะฒะตั‡ะฐัŽั‰ะธะน ะทะฐ ั€ะตะทะตั€ะฒะฝะพะต ะบะพะฟะธั€ะพะฒะฐะฝะธะต
# ะ•ัะปะธ ะฝะตั‚ ะพั‰ะธะฑะบะธ ัั‚ะฐะฒะธะผ ะผะตั‚ะบัƒ ะธ ะทะฐะฟัƒัะบะฐะตะผ backup

echo '' > /home/backup_check.mark;


# ะฃะดะฐะปัะตะผ ั„ะฐะนะปั‹ ั ะดะฐะผะฟะฐะผะธ ะฑะฐะทั‹ ะพัั‚ะฐะฒัˆะธะตัั ะพั‚ ะฟั€ะตะดั‹ะดัƒั‰ะตะณะพ backup

/bin/rm -f /backup_db/*


# ะ”ะตะปะฐะตะผ ะดะฐะผะฟ ะฒัะตั… mysql ะฑะฐะท, ะฟั€ะตะดะฟะพะปะฐะณะฐะตั‚ัั ั‡ั‚ะพ ะดะพัั‚ัƒะฟ ะดะพะฑะฐะฒะปะตะฝ ะฒ ั„ะฐะนะปะต /root/.my.cnf

DATETIME=`date +%Y-%m-%d_%H-%M-%S`;

`which mysqldump` --quote-names --all-databases | `which gzip` > /backup_db/DB_$DATETIME.sql.gz


# ะ”ะพะฑะฐะฒะปัะตะผ ะดะฐะฝะฝั‹ะต ะดะปั ะพั‚ะฟั€ะฐะฒะบะธ ะฒ ะฏะฝะดะตะบั.

export PASSPHRASE=<ะŸั€ะธะดัƒะผะฐะนั‚ะต ะฟะฐั€ะพะปัŒ ะดะปั ัˆะธั„ั€ะพะฒะฐะฝะธั ะฐั€ั…ะธะฒะฐ>
export AWS_ACCESS_KEY_ID=<ะ˜ะดะตะฝั‚ะธั„ะธะบะฐั‚ะพั€ ะบะปัŽั‡ะฐ ะฟะพะปัƒั‡ะตะฝะฝั‹ะน ัƒ ะฏะฝะดะตะบัะฐ>
export AWS_SECRET_ACCESS_KEY=<ะกะตะบั€ะตั‚ะฝั‹ะน ะบะปัŽั‡ ะฟะพะปัƒั‡ะตะฝะฝั‹ะน ัƒ ะฏะฝะดะตะบัะฐ>


# ะ—ะฐะฟัƒัะบะฐะตะผ duplicity ะดะปั ั€ะตะทะตั€ะฒะธั€ะพะฒะฐะฝะธั ะฝะตะพะฑั…ะพะดะธะผั‹ั… ะฟะฐะฟะพะบ ะฝะฐ ัะตั€ะฒะตั€ะต.
# ะ”ะฐะฝะฝะฐั ะบะพะผะฐะฝะดะฐ ะฑัƒะดะตั‚ ัะพะทะดะฐะฒะฐั‚ัŒ ะฟะพะปะฝั‹ะน backup ั€ะฐะท ะฒ ะผะตััั† ะธ ะดะพ ัะปะตะดัƒัŽั‰ะตะณะพ ะผะตััั†ะฐ ะดะพะฑะฐะฒะปัั‚ัŒ ะธะฝะบั€ะตะผะตะฝั‚ะฐะปัŒะฝั‹ะต ะบ ะฝะตะผัƒ
# -- exclude ัั‚ะพ ะฟะฐะฟะบะธ, ะบะพั‚ะพั€ั‹ะต ะฝัƒะถะฝะพ ะธัะบะปัŽั‡ะธั‚ัŒ, ั ะธัะบะปัŽั‡ะฐัŽ ะฒัะต ะฟะฐะฟะบะธ ั ะบะตัˆะตะผ ะฑะธั‚ั€ะธะบัะฐ
# --include ะฟะฐะฟะบะธ ะบะพั‚ะพั€ั‹ะต ะฝัƒะถะฝะพ ั€ะตะทะตั€ะฒะธั€ะพะฒะฐั‚ัŒ ะฒ ะผะพั‘ะผ ัะปัƒั‡ะฐะต ัั‚ะพ:
# - /backup_db
# - /home
# - /etc
# s3://storage.yandexcloud.net/backup , backup ัั‚ะพ ะธะผั ัะพะทะดะฐะฝะฝะพะณะพ ะฒั‹ัˆะต ะฑะฐะบะตั‚ะฐ

# ะขะตั…ะฝะธั‡ะตัะบะฐั ะพัะพะฑะตะฝะฝะพัั‚ัŒ ะธ ะทะฝะฐั‡ะตะฝะธั ะฝะตะบะพั‚ะพั€ั‹ั… ะฟะฐั€ะฐะผะตั‚ั€ะพะฒ:
# ะ”ะฒะต ัั‚ั€ะพะบะธ "--exclude='**'" ะธ "/" ะฝัƒะถะฝั‹, ั‡ั‚ะพะฑั‹ ะผะพะถะฝะพ ะฑั‹ะปะพ ะฒั‹ัˆะต ะพะฟะตั€ะธั€ะพะฒะฐั‚ัŒ --include ะธ --exclude ะดะปั ั€ะฐะทะฝั‹ั… ะฟะฐะฟะพะบ. ะญั‚ะธ ะดะฒะต ัั‚ั€ะพั‡ะบะธ ัะฝะฐั‡ะฐะปะฐ ะดะพะฑะฐะฒะปััŽั‚ ะฒ ะฑัะบะฐะฟ ะฒะตััŒ ัะตั€ะฒะตั€ "/", ะฟะพั‚ะพะผ ะธัะบะปัŽั‡ะฐัŽั‚ ะตะณะพ "--exclude='**'"
# --full-if-older-than='1M' - ัะพะทะดะฐะฒะฐั‚ัŒ ะฟะพะปะฝัƒัŽ ะบะพะฟะธัŽ ะบะฐะถะดั‹ะน ะผะตััั†
# --volsize='512' - ะผะฐะบัะธะผะฐะปัŒะฝั‹ะน ั€ะฐะทะผะตั€ ะบะฐะถะดะพะณะพ ะธะท ั„ะฐะนะปะพะฒ ะฒ ะฑัะบะฐะฟะต ะฒ ะผะตะณะฐะฑะฐะนั‚ะฐั…
# --log-file='/var/log/duplicity.log' - ะบัƒะดะฐ ะฟะธัะฐั‚ัŒ ะปะพะณ ั„ะฐะนะป

`which duplicity` 
    --s3-use-ia --s3-european-buckets 
    --s3-use-new-style 
    --s3-use-multiprocessing 
    --s3-multipart-chunk-size='128' 
    --volsize='512' 
    --no-print-statistics 
    --verbosity=0 
    --full-if-older-than='1M' 
    --log-file='/var/log/duplicity.log' 
    --exclude='**/www/bitrix/backup/**' 
    --exclude='**/www/bitrix/cache/**' 
    --exclude='**/www/bitrix/cache_image/**' 
    --exclude='**/www/bitrix/managed_cache/**' 
    --exclude='**/www/bitrix/managed_flags/**' 
    --exclude='**/www/bitrix/stack_cache/**' 
    --exclude='**/www/bitrix/html_pages/*/**' 
    --exclude='**/www/bitrix/tmp/**' 
    --exclude='**/www/upload/tmp/**' 
    --exclude='**/www/upload/resize_cache/**' 
    --include='/backup_db' 
    --include='/home' 
    --include='/etc' 
    --exclude='**' 
    / 
    s3://storage.yandexcloud.net/backup



# ะ”ะฐะฝะฝะฐั ะบะพะผะฐะฝะดะฐ ะฝัƒะถะฝะฐ ะดะปั ั‡ะธัั‚ะบะธ.
# ะžะฝะฐ ะพัั‚ะฐะฒะปัะตั‚ 3 ะฟะพัะปะตะดะฝะธั… ะฟะพะปะฝั‹ั… backup ะธ ะฐััะพั†ะธะธั€ะพะฒะฐะฝะฝั‹ั… ั ะฝะธะผะธ ะธะฝะบั€ะตะผะตะฝั‚ะฐะปัŒะฝั‹ั… backup.
# ะข.ะพ. ัƒ ะผะตะฝั ะพัั‚ะฐัŽั‚ัั backup ะทะฐ 3 ะผะตััั†ะฐ, ั‚.ะบ. ะฟะตั€ะฒะฐั ะบะพะผะฐะฝะดะฐ ะบะฐะถะดั‹ะน ะผะตััั† ะดะตะปะฐะตั‚ ะฝะพะฒั‹ะน ะฟะพะปะฝั‹ะน backup

`which duplicity` remove-all-but-n-full 3 --s3-use-ia --s3-european-buckets --s3-use-new-style --verbosity=0 --force s3://storage.yandexcloud.net/backup



unset PASSPHRASE
unset AWS_ACCESS_KEY_ID
unset AWS_SECRET_ACCESS_KEY

# ะฃะดะฐะปัะตะผ ะผะตั‚ะบัƒ ะพะฑ ะธะดัƒั‰ะตะผ backup

/bin/rm -f /home/backup_check.mark;

fi

4. ื”ืคืขืœ ืืช ื”ืกืงืจื™ืคื˜ ื‘ืคืขื ื”ืจืืฉื•ื ื” ื•ื‘ื“ื•ืง ืืช ื”ืชื•ืฆืื”, ื”ืงื‘ืฆื™ื ืืžื•ืจื™ื ืœื”ื•ืคื™ืข ื‘-Bucket.

`which bash` /backup_scripts/backup.sh

ื’ื™ื‘ื•ื™ VDS ืžืฆื˜ื‘ืจ ืขื ืืชืจ ื‘-1C-Bitrix ื‘-Yandex.Cloud

5. ื”ื•ืกืฃ ืกืงืจื™ืคื˜ ืœ-cron ืขื‘ื•ืจ ืžืฉืชืžืฉ ื”ืฉื•ืจืฉ ืฉื™ื‘ื•ืฆืข 2 ืคืขืžื™ื ื‘ื™ื•ื, ืื• ื‘ืชื“ื™ืจื•ืช ืฉืชืฆื˜ืจืš.

10 4,16 * * * `which bash` /backup_scripts/backup.sh

ืฉื—ื–ื•ืจ ื ืชื•ื ื™ื ืž-Yandex.Cloud

1. ืฆื•ืจ ืชื™ืงื™ื™ืช ืฉื—ื–ื•ืจ /backup_restore

2. ื”ืคื•ืš ืืช ื”-bash restore script /backup_scripts/restore.sh

ืื ื™ ื ื•ืชืŸ ืืช ื”ื“ื•ื’ืžื” ื”ืžื‘ื•ืงืฉืช ื‘ื™ื•ืชืจ ืœืฉื—ื–ื•ืจ ืงื•ื‘ืฅ ืกืคืฆื™ืคื™:

#!`which bash`

export PASSPHRASE=<ะŸะฐั€ะพะปัŒ ะดะปั ัˆะธั„ั€ะพะฒะฐะฝะธั ะฐั€ั…ะธะฒะฐ ะธัะฟะพะปัŒะทัƒะตะผั‹ะน ะฟั€ะธ ะฑัะบะฐะฟะต>
export AWS_ACCESS_KEY_ID=<ะ˜ะดะตะฝั‚ะธั„ะธะบะฐั‚ะพั€ ะบะปัŽั‡ะฐ ะฟะพะปัƒั‡ะตะฝะฝั‹ะน ัƒ ะฏะฝะดะตะบัะฐ>
export AWS_SECRET_ACCESS_KEY=<ะกะตะบั€ะตั‚ะฝั‹ะน ะบะปัŽั‡ ะฟะพะปัƒั‡ะตะฝะฝั‹ะน ัƒ ะฏะฝะดะตะบัะฐ>

# 3 ะฟั€ะธะผะตั€ะฐ, ั€ะฐัะบะพะผะผะตะฝั‚ะธั€ะพะฒะฐั‚ัŒ ะฝัƒะถะฝั‹ะน

# ะŸะพะปัƒั‡ะธั‚ัŒ ัั‚ะฐั‚ัƒั backup
#`which duplicity` collection-status s3://storage.yandexcloud.net/backup

# ะ’ะพััั‚ะฐะฝะพะฒะธั‚ัŒ index.php ะธะท ะบะพั€ะฝั ัะฐะนั‚ะฐ
#`which duplicity` --file-to-restore='home/bitrix/www/index.php' s3://storage.yandexcloud.net/backup /backup_restore/index.php

# ะ’ะพััั‚ะฐะฝะพะฒะธั‚ัŒ index.php ะธะท ะบะพั€ะฝั ัะฐะนั‚ะฐ 3ั… ะดะฝะตะฒะฝะพะน ะดะฐะฒะฝะพัั‚ะธ
#`which duplicity` --time='3D' --file-to-restore='home/bitrix/www/index.php' s3://storage.yandexcloud.net/backup /backup_restore/index.php

unset PASSPHRASE
unset AWS_ACCESS_KEY_ID
unset AWS_SECRET_ACCESS_KEY

3. ื”ืคืขืœ ืืช ื”ืกืงืจื™ืคื˜ ื•ื”ืžืชืŸ ืœืชื•ืฆืื”.

`which bash` /backup_scripts/backup.sh

ื‘ืชื™ืงื™ื™ื” /backup_restore/ ืชืžืฆืื• ืืช ื”ืงื•ื‘ืฅ index.php ืฉื ื›ืœืœ ื‘ืขื‘ืจ ื‘ื’ื™ื‘ื•ื™.

ืืชื” ื™ื›ื•ืœ ืœื‘ืฆืข ื”ืชืืžื•ืช ืขื“ื™ื ื•ืช ื™ื•ืชืจ ื›ื“ื™ ืœื”ืชืื™ื ืœืฆืจื›ื™ื ืฉืœืš.

ืžื™ื ื•ืก ื›ืคื™ืœื•ืช

ืœื›ืคื™ืœื•ืช ื™ืฉ ื—ื™ืกืจื•ืŸ ืื—ื“ - ืื™ืŸ ื“ืจืš ืœื”ื’ื“ื™ืจ ืžื’ื‘ืœืช ืฉื™ืžื•ืฉ ื‘ืขืจื•ืฅ. ื‘ืขืจื•ืฅ ืจื’ื™ืœ ื–ื” ืœื ื™ื•ืฆืจ ื‘ืขื™ื”, ืื‘ืœ ื‘ืขืจื•ืฅ ืžื•ื’ืŸ DDoS ืขื ื—ื™ื•ื‘ ืžื”ื™ืจื•ืช ืœื™ื•ื ื”ื™ื™ืชื™ ืจื•ืฆื” ืœื”ื’ื“ื™ืจ ืžื’ื‘ืœื” ืฉืœ 1-2 ืžื’ื” ื‘ื™ื˜.

ื›ืžืกืงื ื”

ื’ื™ื‘ื•ื™ ื‘-Yandex.Cloud ืื• ื‘-Amazon S3 ืžืกืคืง ืขื•ืชืง ืขืฆืžืื™ ืฉืœ ื”ื’ื“ืจื•ืช ื”ืืชืจ ื•ืžืขืจื›ืช ื”ื”ืคืขืœื” ืฉื ื™ืชืŸ ืœื’ืฉืช ืืœื™ื” ืžื›ืœ ืฉืจืช ืื—ืจ ืื• ืžื—ืฉื‘ ืžืงื•ืžื™. ื™ื—ื“ ืขื ื–ืืช, ืขื•ืชืง ื–ื” ืื™ื ื• ื’ืœื•ื™ ืœื ื‘ืœื•ื— ื”ื‘ืงืจื” ืฉืœ ื”ืื™ืจื•ื— ืื• ื‘ืคืื ืœ ื”ื ื™ื”ื•ืœ ืฉืœ Bitrix, ืžื” ืฉืžืกืคืง ืื‘ื˜ื—ื” ื ื•ืกืคืช.

ื‘ืชื•ืฆืื” ื”ืžืฆืขืจืช ื‘ื™ื•ืชืจ, ืืชื” ื™ื›ื•ืœ ืœื‘ื ื•ืช ืฉืจืช ื—ื“ืฉ ื•ืœืคืจื•ืก ืืช ื”ืืชืจ ืœื›ืœ ืชืืจื™ืš. ืœืžืจื•ืช ืฉื”ืคื•ื ืงืฆื™ื•ื ืœื™ื•ืช ื”ืžื‘ื•ืงืฉืช ื‘ื™ื•ืชืจ ืชื”ื™ื” ื”ื™ื›ื•ืœืช ืœื’ืฉืช ืœืงื•ื‘ืฅ ืœืชืืจื™ืš ืžืกื•ื™ื.

ืืชื” ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘ื˜ื›ื ื™ืงื” ื–ื• ืขื ื›ืœ VDS ืื• ืฉืจืช ื•ืืชืจื™ื ื™ื™ืขื•ื“ื™ื™ื ื‘ื›ืœ ืžื ื•ืขื™ื, ืœื ืจืง 1C-Bitrix. ืžืขืจื›ืช ื”ื”ืคืขืœื” ื™ื›ื•ืœื” ืœื”ื™ื•ืช ื’ื ืื—ืจืช ืžืืฉืจ CentOS, ื›ื’ื•ืŸ ืื•ื‘ื•ื ื˜ื• ืื• ื“ื‘ื™ืืŸ.

ืžืงื•ืจ: www.habr.com

ื”ื•ืกืคืช ืชื’ื•ื‘ื”