У меня есть сеть с Live, User Acceptance, промежуточными серверами и серверами разработки (в данном случае Windows в основном 2012r2, все гости Hyper-V). Каждая из этих частей сети имеет внешний и внутренний сервер. Внутренние серверы содержат пропорционально большие объемы данных. На серверах приема пользователей, промежуточных серверах и серверах разработки эти данные не изменяются (за исключением периодического обновления в реальном времени), и к ним редко обращаются вне цикла разработки.
Как в среде такого типа минимизировать потребление хранилища и не тратить его на статические и редко используемые данные. Данные состоят из тысяч файлов, таких как pdf, json, dwgs и pngs.
Вещи, которые я рассмотрел.
Удаление серверов, когда они не используются - не лучший вариант, поскольку иногда время на восстановление этих серверов весит время, которое разработчики собираются использовать. Нашим решением для резервного копирования является MS Data Protection Manager.
Удаление дисков с данными, когда они не используются - немного лучше, чем указано выше, но опять же время имеет значение.
Перемещение дисков с данными между серверами. Поскольку они являются гостевыми системами Hyper-V, я могу просто прикрепить диски с данными по мере необходимости, однако бывают случаи, когда одновременно используется более одной среды.
Возможно, вы захотите проверить несколько гибридных файловых серверов, один из которых выгружает холодные данные в общедоступное облако, где хранение дешево (S3) или почти бесплатно (Glacier). Если у вас есть корпоративное соглашение в Azure, вы можете попробовать StorSimple от Microsoft, как физический, так и виртуальный.
https://azure.microsoft.com/en-us/services/storsimple/
Насуни тоже неплохой, но надежного SMB3 пока нет.
Поскольку у вас есть значительный объем данных, которые не сильно меняются со временем, я настоятельно рекомендую вам реализовать какое-то многоуровневое хранение (места для хранения с автоматическим многоуровневым распределением должны соответствовать). Идея состоит в том, что «горячий» уровень, то есть локальное хранилище, должен содержать самые свежие данные, к которым необходимо быстро получить доступ, а «холодный» уровень может быть выгружен в облако.
Идея не нова - Насуни https://www.nasuni.com/ делает вещи, очень похожие на этот подход. Вариант DIY - S3Fuse. https://www.interserver.net/tips/kb/mount-s3-bucket-centos-ubuntu-using-s3fs/ что позволяет монтировать облачное хранилище как локальный диск. StorSimple https://azure.microsoft.com/en-us/services/storsimple/ - другой вариант, но он строго привязан к Azure.
Если вы не желаете устанавливать / настраивать и поддерживать какое-либо дополнительное программное обеспечение, вы можете использовать аппаратный шлюз, такой как AcloudA. http://aclouda.com/ это сделает работу без необходимости в дополнительном программном обеспечении или драйверах.
На рынке очень много интересных решений, Насуни не пробовал, но вроде подошло. Кроме того, вы можете взглянуть на Aclouda, который можно использовать в качестве аппаратного шлюза и представить облачное хранилище как локальный диск и автоматически выгружать данные в облако. Его можно установить на локальном сервере как диск SATA / SAS с возможностью подключения к облаку Amazon или Azure. http://aclouda.com/
Поскольку ваши гости - Windows 2012 R2, вы можете запустить дедупликацию внутри виртуальной машины. За исключением начального обхода, я обнаружил, что он не требует больших ресурсов. На магазинах документов моя экономия составила 55% или больше.
Если ваше хранилище было на сервере Windows (дисковые пространства и т. Д.), Вы могли вывести хранилище VHD. Использование параметра VDI при настройке дедупликации на томе включает дедупликацию открытых VHD. Видеть https://technet.microsoft.com/en-us/library/dn486808.aspx