Servers - Архивирование в AWS Glacier (часть 5)

Реклама:
Записка от 27.07.2017

В этой заметке рассказывается о базе данных для регистрации архивов, вспомогательных командных файлах и расписании запусков скриптов.

Скрипт для создания таблицы, в которую записывается информация об архивах:

USE [AWS-Glacier]
GO

/****** Object:  Table [dbo].[agc-prod]    Script Date: 7/27/2017 9:49:56 AM ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[archive-2017](
    [id] [int] IDENTITY(1,1) NOT NULL,
    [archive-name] [nvarchar](255) NULL,
    [aws-account-id] [nvarchar](255) NULL,
    [aws-vault-name] [nvarchar](255) NULL,
    [aws-archive-id] [nvarchar](255) NULL,
    [archive-content] [ntext] NULL,
    [creation-timestamp] [datetime] NULL,
    [last-access-timestamp] [datetime] NULL,
    [state] [nvarchar](255) NULL,
    [notice] [nvarchar](255) NULL,
 CONSTRAINT [PK_Glacier-Content] PRIMARY KEY CLUSTERED 
(
    [id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

GO

Скрипт запуска скрипта архивирования и копирования в облако - AWS-1-BackupAndTransfer.cmd:

powershell.exe "%~DP0Process-AWSGlacierBackup-Prod.ps1" 
powershell.exe "%~DP0Process-AWSGlacierBackup-Serv.ps1"

Скрипт запуска скрипта инвентаризации - AWS-2-Inventory.cmd:

powershell.exe "%~DP0Process-AWSGlacierInventory-Prod.ps1"
powershell.exe "%~DP0Process-AWSGlacierInventory-Serv.ps1"

Скрипт запуска скрипта сверки архивов на сервере и в облаке - AWS-3-Checking.cmd:

powershell.exe "%~DP0Process-AWSGlacierChecking-Prod.ps1"
powershell.exe "%~DP0Process-AWSGlacierChecking-Serv.ps1"

Все три вышеописанных скрипта необходимо поставить в планировщик запуска задач на сервере. Я рекомендую запускать скрипты по такому расписанию:

  • Пятница после рабочего дня - AWS-1-BackupAndTransfer.cmd
  • Воскресенье в середине дня - AWS-2-Inventory.cmd
  • Понедельник перед рабочим днем - AWS-3-Checking.cmd

Все задания нужно запускать с повышенными привилегиями (RunLevel = HighestAvailable) и от имени системы NT AUTHORITY\SYSTEM (UserId = S-1-5-18).

Вверх