- PVSM.RU - https://www.pvsm.ru -
SnapManager — это набор утилит компании NetApp позволяющих автоматизировать процессы снятия так называемых Application-Consistent Backup (Crash-Consistent Snapshots [1] (CCS) без остановки приложений, средствами СХД NetApp FAS серии, их архивации, резервного копирования, тестирования копий и архивов, клонирования, примапливания склонированных данных к другим хостам, восстановления и др. функциями через GUI интерфейс одним только лишь оператором приложения без привлечения специалистов по серверам, сети и СХД.
SnapManager for Oracle on Windows, Cloning Operation
Зачем вообще бэкапировать данные при помощи снапшотов и тем более средствами СХД? Дело в том, что большинство современных способов бэкапирования информации подразумевают длительность процесса, ресурсоёмкость: нагрузка на хост, загрузка каналов, занимание пространства и как следствие к деградации сервисов. Тоже касается и клонирования больших объемов информации для Dev/Test подразделений, увеличивая «временной разрыв» между актуальными данными и резервируемыми, это повышает вероятность того, что бэкап может оказаться «не восстановим». С применением «аппаратных» снапшотов компании NetApp, не влияющих на производительность и занимающий не положенные 100% резервной копии, а только лишь «разницу» (своего рода инкрементального бэкапа или лучше сказать обратного инкрементального бэкапа, на снятие и сборку которого не нужно тратить время), а также возможность передачи данных для резервирования и архивирования в виде снапшотов, позволяя более элегантно решать современные высокие требования бизнеса для подобных задач, уменьшая время передачи информации и нагрузку на хосты.
Утилита состоит из нескольких компонент: сервер, на выделенном хосте или виртуальной машине и агентов устанавливающихся на хостах с Резница между ACB и CCS [3]. Без купленных лицензиий SnapRestore и FlexClone, не будет доступен функционал соответственно моментального восстановления и моментального клонирования средствами СХД.
Интеграция SMO с Oracle
Лицензирование у SnapManager «поконтроллерное» в состав лицензии SnapManager входят и другие менеджеры для MS SQL, MS Exchange, MS Share Point, MS Hyper-V, VMWare vSphere, SAP, Lotus Domino и Citrix Xen Server.
SnapManager for MS SQL, Moving Operation
Пойдя по пути «оптимизации расходов», отказываясь от покупки лицензии SnapManager, нужно понимать, что управление потребуют дополнительных затрат времени и взаимодействия DBA с Server Admins, Сетевыми Администраторами и Админов СХД, для того, чтобы DBA получили вожделенную манипуляцию с DB. В то время как с SnapManager это можно выполнить нажатием пары кнопок в GUI интерфейсе, без привлечения разных специалистов и затрат времени.
Многие из выполняемых функций SnapManager можно выполнять при помощи бесплатной утилиты SnapCreator, также позволяющей интегрироваться с DB (а также большим количеством других приложений) приложениями для снятия консистентных снапшотов ACB средствами СХД. Но эта утилита не выполняет многих других удобных функций по управлению DB. Таких как клонирование DB, восстановление «in-Place», примапливание клона DB к другому хосту, автоматическое тестирование работоспособности и восстановления из архива и т.д.
Схема взаимодействия компонент SnapCreator
Большинство недостающего функционала в SnapCreator можно компенсировать при помощи скриптинга, который сейчас доступен с PowerShell командлетами в: DataOntap Toolkit [6], SnapCreator, OnCommand Unified Manager (OCUM) и многих других полезных утилит. На что несомненно потребуется время, для отладки под бизнес процессы.
Напомню парадигму устройства внутренней структуры СХД NetApp FAS: Диски объединяются в Рейд группы (RAID-DP), Рейд группы объединяются в Плексы (Plex. Используются в случае зеркалирования между СХД, аналог RAID1), Плексы объединяются в Агрегаты (Aggr), на Агрегатах создаются Вольюмы (FlexVol), данные в Вольюмах равномерно размазаны по всем дискам в Агрегате, в Вольюмах создаются Qtree (что-то типа папки, на которые можно назначать всякие квоты), Qtree не могут быть вложенными, далее внутри Qtree создаются LUN'ы.
Объекты СХД NetApp FAS
SMO интегрируется с 10GR2, 11g R1/R2, 12cR1 (12.1.0.1) с технологиями RAC, RMAN, ASM, Direct NFS. Всё ниже написанное можно, как правило, также отнести и для SnapManager for MS SQL (SMSQL) и SnapCreator.
SnapManager for Oracle on Linux, Backing-up Operation
SMO бэкапирует только следующие данные:
См. документ TR-3761 NetApp SnapManager 3.3.1 for Oracle [10], стр 12, таблица 1).
Redo Logs не бэкапируются, они могут бэкапироваться при помощи SnapMirror, смотри ниже [11].
Средствами работает с Archive Logs [13].
Рекомендации по разбивке пространства на вольюмы и LUN'ы для SMO, как правило совпадают с рекомендациями "Oracle DB on NetApp".
Первым делом необходимо выключить автоматические снапшоты на вольюмах, их теперь будет инициировать Best Practices for Oracle Databases on NetApp Storage [15], стр. 11
Некоторые однотипные файлы от разных DB можно группировать и хранить в одном вольюме, другие разнотипные файлы нужно обязательно разделять:
Все эти требования по отделению Redo Logs, Archive Logs, Data Files и Temp Files вытекают из следующего:
На уровне создания снапшотов это называется Consistency Groups [18], что поддерживается DataOntap 7.2 или выше. Но это требуется только в случае ASM. В случае без ASM, Oracle сам справляется с консистентностью бэкапа базы, которая распределена по разным контроллерам (вольюмам).
В виду нашего случая с применением SAN, хочу обратить ваше внимание на следующие нюансы:
В случае использования Thin Provisioning и нескольких другие современные ОС [20]) или выше с поддержкой Logical Block Provisioning как определено в стандарте SCSI SBC-3 (что часто называют SCSI Thin Provisioning), который «объясняет» ОС, что LUN на самом деле «тонкий» и место на нём «на самом деле закончилось», запрещая проводить операции записи. Таким образом, ОС должна перестать писать в такой LUN, а он сам не будет переведен в Offline и останется доступен только на чтение для ОС (другой вопрос как на это отреагирует приложение). Этот функционал также предоставляет возможность использования Space Reclamation. Таким образом современные ОС теперь более адекватно работают в режиме тонкого планирования с LUN'ами.
В случае использования снапшотов (а в будут использованы [9]) и хранения нескольких в предыдущем пункте [19], что произойдёт. Ситуация частично решается выделением эмпирически подобранного резерва под снапшоты, настройки удаления более старых снапшотов (snap autodelete) и автоматического увеличения вольюма (volume autogrow). Но хочу обратить ваше внимание что высвобождение пространства произойдёт, уже после того, как Fractional reserve и почему LUN 'ы обычно только растут можно посмотреть тут [22].
В случае предыдущий пункт [19]. Space Reclamation, позволяет Thin проблему постоянного роста Thin LUN'ов [24]". Так как без Space Reclamation LUN'ы всегда только «ростут» в случае Thin LUN и даже для «толстых» LUN'ов отсутствие Space Reclamation выливается в «снапшоты-переростки», которые захватывают в себя никому не нужные уже давно удаленные блоки данных. По-сему Space Reclamation маст хэв.
Бэкапы созданные NetApp SnapManager 3.3.1 for Oracle [10], стр 11. Рекомендуется использовать что-то одно: или RMAN или SMO.
Бэкапирование Redo Logs и Archive Logs выполняются с помощью репликации SnapMmirror в синхронном, полу-синхронном или асинхронном режиме. Использование SnapMirror подразумевает применение снапшотов (без взаимодействия с Database recovery using SnapMirror Async and Sync [26], Глава 12, стр 17.
Undo Logs можно хранить вместе с Temp Files, Redo Logs или Archive Logs. Это не должно нарушать беспрактисов. SMO не работает с Temp Files по этому Undo Logs можно хнанить вместе с ними.
Если всё-же хранить Undo Logs вместе с Archive Logs или Redo Logs, то Undo Logs будет бэкапироваться (и соответственно занимать место) вместе с ними.
Для доступа к некоторым документам может понадобится NetApp NOW ID. Если вы берете СХД NetApp на тест, ваш дистрибютор/интегратор поможет загрузить их.
Сообщения по ошибкам в тексте прошу направлять в ЛС.
Замечания и дополнения напротив прошу в комментарии
Автор: bbk
Источник [28]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/backup/65603
Ссылки в тексте:
[1] Crash-Consistent Snapshots: http://mrothouse.wordpress.com/2012/02/27/netapp-crash-consistent-snapshots/
[2] Компоненты SMO: #SMO_components
[3] Резница между ACB и CCS: https://communities.netapp.com/blogs/abhishek/2012/06/15/important-levels-of-snapshot-consistency
[4] SnapCreator: #SnapCreator
[5] Scripting: #Scripting
[6] DataOntap Toolkit: https://communities.netapp.com/community/products-and-solutions/virtualization-and-cloud/microsoft-private-cloud-and-server-virtualization
[7] Краткий ликбез по NetApp:: #Likbez
[8] Интеграция: #smo_integration
[9] 1) Что бэкапирует SMO:: #What_SMO_Backingup
[10] NetApp SnapManager 3.3.1 for Oracle: http://www.netapp.com/us/system/pdf-reader.aspx?pdfuri=tcm:10-61351-16&m=tr-3761.pdf
[11] смотри ниже: #Redo_Logs
[12] 1.1) Как бэкапируются, затираются и восстанавливаются Archive Logs:: #HOW_SMO_Handle_Archive_logs
[13] работает с Archive Logs: https://kb.netapp.com/support/index?page=content&id=3012396&actp=RSS
[14] 2) Рекомендации по подготовке:: #Recommendations_on_SMO
[15] Best Practices for Oracle Databases on NetApp Storage: http://www.netapp.com/us/system/pdf-reader.aspx?pdfuri=tcm:10-60340-16&m=tr-3633.pdf
[16] Подробнее: https://library.netapp.com/ecmdocs/ECMM1277793/html/onlinebk/GUID-67A4A9AB-DBD5-4040-B52B-B62EB06F2BBD.html
[17] 2.1) Можно ли чтобы одна база жила на нескольких контроллерах (вольюмах) при использовании SnapManager?: #onee_DB_on_two_Controllers_OR_Volumes
[18] Consistency Groups: http://blog.aboutnetapp.ru/archives/tag/consistency-groups
[19] 2.2) Thin Provisioning:: #Thin_Provisioning
[20] другие современные ОС: http://habrahabr.ru/post/224869/#functionality_adoption
[21] 2.3) SAN & SnapShots:: #SAN_with_SnapShots
[22] Fractional reserve и почему LUN 'ы обычно только растут можно посмотреть тут: http://blog.aboutnetapp.ru/archives/341
[23] 2.4) Space Reclamation:: #Space_Reclamation
[24] проблему постоянного роста Thin LUN'ов: http://blog.aboutnetapp.ru/archives/664
[25] 3) Отображаются ли бэкапы в RMAN?: #SMOs_Snapshoots_cataloging_in_RMAN
[26] Database recovery using SnapMirror Async and Sync: http://www.netapp.com/us/system/pdf-reader.aspx?pdfuri=tcm:10-59993-16&m=tr-3455.pdf
[27] 5) Можно ли Undo Log и Temp Files держать вместе?: #UnDO_Logs
[28] Источник: http://habrahabr.ru/post/230191/
Нажмите здесь для печати.