powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / автоматизация поддержки актуальности тестовых сред
25 сообщений из 40, страница 1 из 2
автоматизация поддержки актуальности тестовых сред
    #39049095
KyRo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день всем,
Подскажите , кто как решает задачу автоматизации поддержки актуальности тестовых сред.
Я понимаю что можно делать exp и imp. Но что делать если прод база большая, ее как есть не выгрузишь, да и данные требуют каких то трансформаций и маскирования.
Есть ли какие то системы автоматизации процесса ?
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049117
По совету Elic два варианта:
1. Если не супербольшая и много изменений.
rman duplicate test2
remove test1
rename test2 to test1
rman duplicate test2
2. Если супербольшая и мало изменений.
duplicate for standby test1
create flashback point
open database
flashback database to point
recover standby database using archivelog from Gala records
create flashback point
open databse
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049140
Wolverines
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
snaphot standby
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049165
Фотография SeaGate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Памятник_в_Волгограде,

Памятник_в_Волгограде2. Если супербольшая и мало изменений.
duplicate for standby test1
create flashback point
open database
flashback database to point
recover standby database using archivelog from Gala records
create flashback point
open databse
Такая возня делалась до 11.1.
С 11.1 появился snapshot standby и ручных телодвижений стало меньше, хотя на нижнем уровне одно и тоже.
KyRoПодскажите , кто как решает задачу автоматизации поддержки актуальности тестовых сред.
Есть ли какие то системы автоматизации процесса ?
Разные варианты есть, зависит от того, что у вас уже используется, сколько денег готовы платить за решения.
Например, вот Enterprise Manager Cloud Administration Guide: A Use Case: Refreshing Test Data
Можно и ручками по старинке. Восстановить с ленты бэкап, выполнить обезличивание (трансформации и маскирование).
Заодно и бэкапы на восстанавливаемость проверите.
Только когда БД большая, процедура маскирования может занимать определенное время.
Ее оптимальное написание и поддержание в актуальном состоянии (приложение меняется, новые данные, которые нужно скрывать и все остальное) - отдельная задача.
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049191
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KyRoНо что делать если прод база большая, ее как есть не выгрузишьRTFM QUERY (FAQ)
KyRoда и данные требуют каких то трансформаций и маскирования.RTFM REMAP_DATA (FAQ)
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049309
KyRo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SeaGateПамятник_в_Волгограде,

Памятник_в_Волгограде2. Если супербольшая и мало изменений.
duplicate for standby test1
create flashback point
open database
flashback database to point
recover standby database using archivelog from Gala records
create flashback point
open databse
Такая возня делалась до 11.1.
С 11.1 появился snapshot standby и ручных телодвижений стало меньше, хотя на нижнем уровне одно и тоже.
KyRoПодскажите , кто как решает задачу автоматизации поддержки актуальности тестовых сред.
Есть ли какие то системы автоматизации процесса ?
Разные варианты есть, зависит от того, что у вас уже используется, сколько денег готовы платить за решения.
Например, вот Enterprise Manager Cloud Administration Guide: A Use Case: Refreshing Test Data
Можно и ручками по старинке. Восстановить с ленты бэкап, выполнить обезличивание (трансформации и маскирование).
Заодно и бэкапы на восстанавливаемость проверите.
Только когда БД большая, процедура маскирования может занимать определенное время.
Ее оптимальное написание и поддержание в актуальном состоянии (приложение меняется, новые данные, которые нужно скрывать и все остальное) - отдельная задача.

Спасибо , за детальный ответ.
Подскажите только , вот для такой схемы работы с БД нужен настроеный "Enabling the DBaaS Cloud".
Данная штука настраивается локально и идет по отдельной лицензии ?
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049397
KyRo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извиняюсь, размыто написал.
Для работы -Enterprise Manager Cloud Administration Guide: A Use Case: Refreshing Test Data , необходим dbaas.
Как лецензируется данная технология ? Она разворачивается локально вместе с Cloud контролом и является его частью или же оно разворачивается на хостах Oracle (нашел в интернете предложения по размещению баз в облаке).
Пробовал ли кто то уже использовать данную технологию ?
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049427
KyRoИзвиняюсь, размыто написал.
Для работы -Enterprise Manager Cloud Administration Guide: A Use Case: Refreshing Test Data , необходим dbaas.
Как лецензируется данная технология ? Она разворачивается локально вместе с Cloud контролом и является его частью или же оно разворачивается на хостах Oracle (нашел в интернете предложения по размещению баз в облаке).
Пробовал ли кто то уже использовать данную технологию ?
Хватит болтать.
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049470
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KyRoИзвиняюсь, размыто написал.
Для работы -Enterprise Manager Cloud Administration Guide: A Use Case: Refreshing Test Data , необходим dbaas.
Как лецензируется данная технология ? Она разворачивается локально вместе с Cloud контролом и является его частью или же оно разворачивается на хостах Oracle (нашел в интернете предложения по размещению баз в облаке).
Пробовал ли кто то уже использовать данную технологию ?

1) Платно
Oracle Technology Global Price List
Cloud Management Pack for Oracle Database: 150 33.00 7,500 1,650.00

2) Устанавливается на EM CC + plugin и agent + plugin на host node
Размещение баз в oracle - это сервис предлагаемый на основе данного продукта (или похожего)

3) Пробовал, делал проект
нужно накатить последние патчи - будет работать

В общем случае можно обойтись скриптами, КМК DBaaS - нужен для промышленного применения
или по капризу заказчика.
Например делал среду в которой все разработчики (>100), работали с копией промышленной базы.
В случае необходимости, пересоздавали ее (копию) самостоятельно по запросу в портале, с любого из ежедневных snapshot промышленной базы.

Реализация:
prod db (ASM) -> Active DG standby db (ASM)
+
Snapshot database на ZFS appliance,
которая ночью:
докатывается до текущего состояния PROD
накат останавливается
делается ZFS storage snapshot
делается DBaaS DPP
DBaaS template

Далее с корпоративного портала по Cloud RESTful APIs
(http request к EM CC)
шли запросы на создания базы
и через 10 минут пациент получал свой персональный клон
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049477
Q.Tarantino
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
еще вариант на уровне снапшота средствами массива. замечательно работает.
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049503
KyRo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vadim LejninKyRoИзвиняюсь, размыто написал.
Для работы -Enterprise Manager Cloud Administration Guide: A Use Case: Refreshing Test Data , необходим dbaas.
Как лецензируется данная технология ? Она разворачивается локально вместе с Cloud контролом и является его частью или же оно разворачивается на хостах Oracle (нашел в интернете предложения по размещению баз в облаке).
Пробовал ли кто то уже использовать данную технологию ?

1) Платно
Oracle Technology Global Price List
Cloud Management Pack for Oracle Database: 150 33.00 7,500 1,650.00

2) Устанавливается на EM CC + plugin и agent + plugin на host node
Размещение баз в oracle - это сервис предлагаемый на основе данного продукта (или похожего)

3) Пробовал, делал проект
нужно накатить последние патчи - будет работать

В общем случае можно обойтись скриптами, КМК DBaaS - нужен для промышленного применения
или по капризу заказчика.
Например делал среду в которой все разработчики (>100), работали с копией промышленной базы.
В случае необходимости, пересоздавали ее (копию) самостоятельно по запросу в портале, с любого из ежедневных snapshot промышленной базы.

Реализация:
prod db (ASM) -> Active DG standby db (ASM)
+
Snapshot database на ZFS appliance,
которая ночью:
докатывается до текущего состояния PROD
накат останавливается
делается ZFS storage snapshot
делается DBaaS DPP
DBaaS template

Далее с корпоративного портала по Cloud RESTful APIs
(http request к EM CC)
шли запросы на создания базы
и через 10 минут пациент получал свой персональный клон


Спасибо за информацию. Интересная технология.
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049505
KyRo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Q.Tarantinoеще вариант на уровне снапшота средствами массива. замечательно работает.

расскажите по подробней, что Вы имеете ввиду ?
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049516
Фотография SeaGate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vadim Lejnin,

Vadim LejninSnapshot database на ZFS appliance,
...
и через 10 минут пациент получал свой персональный клон
Вопрос в сторону: ZFSSA 7320 или какая модель была?
Стоит отметить, что используются DBaaS Snap Clone, т.е. реальная БД, переданная разработчикам, занимает столько, сколько занимают redo (из-за open resetlogs).
Из того, на чем поддерживаются Snap Clone:
Creating Snap Clones for Databases
Я использовал SnapClone с ZFSSA и с ZFS (бюджетное решение).
Как раз в 12.1.0.4 добавили возможность создания Snap Clone-ов на ZFS (Software solution), что открыло возможность использовать технологию тем, у кого есть Solaris, но нет ZFSSA.
На самом деле, больше мне ZFS под БД ни для чего и не нужен.
Я надеюсь, Oracle разовьет ASMFD и тогда можно будет все БД иметь на ASM, не теряя преимуществ ZFS в виде создания Snap Clone.
Вот тут это заявлено: ASMFD (ASM Filter Driver) Support on OS Platforms (Certification Matrix). (Doc ID 2034681.1)
ASMFD (ASM Filter Driver) Support on OS Platforms (Certification Matrix)6) In the future, ASM Filter Driver (ASMFD) will be enhanced to provide other features such as Thin Provisioning & Data Integrity.
К сожалению, я не нашел быстрого варианта опробовать DBaaS тем, кто с ней не знаком.
Например, у Oracle есть ZFS Storage Appliance Simulator. Он не регистрируется в качестве Storage в OEM, а было бы удобно.
Без этого приходится для демонстрационных стендов DBaaS Snap Clone держать 11й Solaris.
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049553
KyRo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SeaGate

Как раз в 12.1.0.4 добавили возможность создания Snap Clone-ов на ZFS (Software solution), что открыло возможность использовать технологию тем, у кого есть Solaris, но нет ZFSSA.
На самом деле, больше мне ZFS под БД ни для чего и не нужен.
Я надеюсь, Oracle разовьет ASMFD и тогда можно будет все БД иметь на ASM, не теряя преимуществ ZFS в виде создания Snap Clone.
Вот тут это заявлено: ASMFD (ASM Filter Driver) Support on OS Platforms (Certification Matrix). (Doc ID 2034681.1)



Судя по информации из бюлетня , этот драйвер уже должен быть внедрен
Starting with Oracle Database 12c Release 1 (12.1.0.2), Oracle ASM Filter Driver (Oracle ASMFD) is installed with an Oracle Grid Infrastructure installation.
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049564
Фотография SeaGate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KyRo,

KyRoСудя по информации из бюлетня , этот драйвер уже должен быть внедрен
Да, он есть, но пока нужного функционала в виде thin provisioning - не имеет.
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049573
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SeaGateVadim Lejnin,

...
К сожалению, я не нашел быстрого варианта опробовать DBaaS тем, кто с ней не знаком.
Например, у Oracle есть ZFS Storage Appliance Simulator. Он не регистрируется в качестве Storage в OEM, а было бы удобно.
Без этого приходится для демонстрационных стендов DBaaS Snap Clone держать 11й Solaris.

Я настраивал предварительный проект на ZFS Storage Appliance Simulator
Вроде все работало
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049581
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vadim LejninSeaGateVadim Lejnin,

...
К сожалению, я не нашел быстрого варианта опробовать DBaaS тем, кто с ней не знаком.
Например, у Oracle есть ZFS Storage Appliance Simulator. Он не регистрируется в качестве Storage в OEM, а было бы удобно.
Без этого приходится для демонстрационных стендов DBaaS Snap Clone держать 11й Solaris.

Я настраивал предварительный проект на ZFS Storage Appliance Simulator
Вроде все работало
Накати последние патчи на нужные plugin:
DBaaS, Enterprise Manager for Oracle ZFS Storage Appliances, Oracle Cloud Application, Oracle Cloud Framework, Oracle Database

p.s. Кинь на почту запрос, остался документ как настраивать (правда уже устаревший в списке патчей)
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049604
KyRo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А можно и мне посмотреть на Вашу инструкцию , а то не до конца понятен момент с этим ZFS .
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049746
Q.Tarantino
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KyRoQ.Tarantinoеще вариант на уровне снапшота средствами массива. замечательно работает.

расскажите по подробней, что Вы имеете ввиду ?
даже не знаю с чего и начать.
массивы (я работал только с энтерпрайз класса и выше) умеют делать так называемые снапшоты.
и снимок ты можешь отдать любому хосту (твоему тестовому). и снимков сделать можно сделать сколь угодно.
это выгодней чем иметь копии данных. для снапшота выделяется лишь область для изменившихся данных.
если ты чисто ДБА - обратись к админам, кто рулит массивами, спроси про снапшоты. пояснят.
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049865
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ссылки могут быть устаревшие!
начинал еще на 12.1.0.3
Сейчас доступа к стенду нет

Первоначально был развернут стенд из 4-x VM
ZFS appliance simulator
rat1 - emrepdb, prod
rat2 - em12c, standby
rat3 - DBaaS DB




Выжимка из документа
Настройка ZFS:
Создаем Storage Pool
По навигации WEB интерфейса: Configuration – Storage -> (+)Available Pools
1. Создаем новый Storage pool ZFSpool
2. Добавляем в него все диски
3. Выбираем тип Data Profile «mirrored (RAID1)»
4. Выбираем тип журнала «Mirrored log»
5. Выбираем cache profile «Striped cache»


Создаем ZFS проект для DBaaS

По навигации WEB интерфейса: Shares->Projects -> (+)ALL
создаем проект ZFS проект ORAcloud
Задаем общие свойства для всех share пректа
По навигации WEB интерфейса: Shares->Projects ->ORAcloud->General
• Обязательно установите параметры Quota и Reservation. Quota устанавливается как полный размер файловой системы. Reservation , такое пространство, которое хватит для размещения ZFS clone или ZFS snapshot созданных на основе данной ZFS filesystem. Подробнее: Setting ZFS Quotas and Reservations
• Снимите флажок «Restrict ownership change»
• Default Settings -> FILESYSTEMS настраиваем права по умолчанию к корневой директории share для учетной записи oracle:oinstall (id 1001): rwxr-w---
не изменяйте свойство «mountpoint» по умолчанию «/exports»!

Создаем ZFS filesystem для DBaaS
По навигации WEB интерфейса: Shares->Projects->MSCloud-> (+) Filesystem
создаем ZFS filesystem: oradata
устанавливаем для пользователей uid,guid oracle например: 1001 и группы 1001 права rwxr-x---
не меняйте свойства «Mountpoint» и «Inherit mountpoint»!

Создаем роль em_smf_admin_role
По навигации WEB интерфейса: Configuration -> Users -> (+) Roles
создаем роль em_smf_admin_role:

в свойстах Authorization для Scope Projects and shares добавить права: changeProtocolProps, changeSpaceProps, clone, createShare, destroy, rollback, takeSnap.
Создание пользователя em_smf_admin
По навигации WEB интерфейса: Configuration -> Users -> (+) Users
создаем пользователя em_smf_admin:

и добавляем ему роль em_smf_admin_role.

Настройка серверов DBaaS

Настройка Подключения NFS файловых систем.
## добавляем запись в файл /etc/fstab
# echo "orazfs01domain.com:/export/oradata /oradata nfs rw,hard,actimeo=0,vers=3,timeo=600,proto=tcp,rsize=1048576,wsize=1048576,_netdev 3 3" >> /etc/fstab

## Проверяем добавление
# grep oradata /etc/fstab
orazfs01domain.com:/export/oradata /oradata nfs rw,hard,actimeo=0,vers=3,timeo=600,proto=tcp,rsize=1048576,wsize=1048576,_netdev 3 3

## монтируем файловую систему и проверяем
# mkdir /oradata
# mount /oradata
# ls –ld /oradata
drwxr-x---+ 4 oracle oinstall 3 Jul 4 14:02 /oradata

# df /oradata
Filesystem Size Used Avail Use% Mounted on
orazfs01.domain.com:/export/oradata
19T 4.5G 19T 1% /oradata

разверните DB для клонирования на /oradata

Установите EM12c как описано в Oracle® Enterprise Manager Cloud Control Basic Installation Guide 12c

Установите EM Plugins
Ссылка на документацию: Deploying the Required Plug-ins
По WEB навигации:
Setup -> Extensibility -> Plugins
Выполните deploy указанных plugins на ORAMGMT01
• Oracle Cloud Application
• Oracle Storage management framework
• Oracle Virtualization


Остановите Em12c и установите последние патчи на oem и plugins:
Enterprise Manager Cloud Control 12c Recommended Plug-Ins and Patches for Database as a Service (DBaaS) (Doc ID 1549855.1)
12c: Patching Recommendation Guide for DBaaS Pool(s) (Doc ID 1625014.1)

Настройте Software Library
По WEb навигации: Enterprise -> Provision and Patching -> Software Library
Action -> Create folder
Name: swlib
Location: /u01/swlib
Подключение серверов к EM и deploy agent (Включая сервере OEM)
как указано в Oracle® Enterprise Manager Cloud Control Administrator's Guide 12c Release 3 (12.1.0.3) 2.5 Manually Adding Targets. (WEB навигация: Setup -> Add Target -> Add target Manualy)

Подключите все найденные OracleHomе, TNS Listener и Oracle БД, в том числе Master Copy Oracle БД. (WEB навигация: Setup -> Add Target -> Add target Manualy).

Настройте учетные записи для доступа к указанным базам и ОС (WEB навигация:Setup ->Setup Security).

Подключите ORAZFS01.
WEB навигация: Setup -> Provision and Patching -> Storage registration.
Используйте для подключения ранее определенную учетную запись ZFS storage: em_smf_admin.
В секции aliases необходимо прописать все сетевые номера и ip адреса ZFS appliance!
например:
• 192.168.22.44
• 192.168.8.5
• 192.168.8.6
• zfs01.domain.com
• zfs01-net0.domain.com
• zfs01-net1.domain.com

В качестве управляющего агента я указывал EM12c сервер

После deploy, если все файлы DB доступны на /oradata
У вас появится возможность подключить ее к DBaaS
Нужно также установить галочку enable snap clone и установить стоимость и для распределения /oradata
Точно как называется не помню, но это рядом с Enable Snap Clone

Настройка Облака Oracle БД

Настройте PaaS Zone как указано в Setting Up the PaaS InfrastructureSetting Up the PaaS Infrastructure.
Настройте DBaaS как указано в Setting Up a DBaaS Cloud

Далее, создаете DPP без Oracle Home и как snap clone
на полученном
DPP создаете template

Все можно идти в Портал самообслуживания (сейчас нет под рукой EM)
В понедельник скажу точнее
по моему:
Enterprice and management -> Provison and patching -> Self Portal


В emcli 12.1.0.5 появилась возможность автоматического создания
DPP и template
В понедельник могу кинуть примеры скрипты для автоматического создания и примеры
json для генерации

...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049867
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор...
докатывается до текущего состояния PROD
накат останавливается
делается ZFS storage snapshot
делается DBaaS DPP
DBaaS template
...


заметил неточность:
ZFS snapshot делает DBaaS с помощью агента
при создании DPP
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39049940
Фотография SeaGate
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vadim Lejnin,

Спасибо за инструкцию! Я воспроизвел свою проблему с ZFSSA Simulator и, следуя твоей инструкции, решил ее.
У меня была проблема с регистрацией Storage из-под root: скриншот zfssa_provision_root_error.PNG
Лог проблемного шага под спойлером.
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
Job Steps Log for Job :Obtaining Storage Details

1:StorageOperation
Launching: /tmp/SMF_1F8CCC46449852E3E0530100007F9DD1/oracle/sysman/bin/em_storage.pl --vendor Sun ZFS --param storage=192.168.56.93 --param storage_user=root --param storage_protocol=ssh --action=storage_info -prereqs_check=yes -all_actions_prereqs_check_behaviour=error --output_filter em_plsql

Using /u01/OracleHomes/agent/core/12.1.0.4.0/perl/bin/perl v5.10.0 built for x86_64-linux-thread-multi
Current Directory: /u01/OracleHomes/agent/agent_inst/sysman/emd
PERL5LIB=/u01/OracleHomes/agent/core/12.1.0.4.0/perl/lib:/u01/OracleHomes/agent/core/12.1.0.4.0/perl/lib/site_perl:/u01/OracleHomes/agent/core/12.1.0.4.0/perl/libwww-perl/lib:/u01/OracleHomes/agent/core/12.1.0.4.0/perl/ext/POSIX:/u01/OracleHomes/agent/core/12.1.0.4.0/perl/URI:/u01/OracleHomes/agent/core/12.1.0.4.0/perl/HTML_Parser:/u01/OracleHomes/agent/core/12.1.0.4.0/perl/HTML-Parser/lib:/u01/OracleHomes/agent/core/12.1.0.4.0/sysman/admin/scripts:/u01/OracleHomes/agent/core/12.1.0.4.0/bin:/u01/OracleHomes/agent/core/12.1.0.4.0/bin:/u01/OracleHomes/agent/core/12.1.0.4.0/sysman/admin/scripts/Net-DNS-0.48/lib/:/u01/OracleHomes/agent/core/12.1.0.4.0/sysman/admin/scripts/libnet-1.19/

Password: 
Neither storage specific nor default storage SDK is found for storage 192.168.56.93 vendor sunzfs.

#|----------------------------------------------------------------------------------------------------
#| Executing Storage Call: storage_info, Start Time: 15/09/12 05:20:59
#| Parameters:
#|
#|    storage_user => root
#|  storage_passwd => <hidden>
#| _prereqs_conf_dir => /tmp/SMF_1F8CCC46449852E3E0530100007F9DD1/oracle/sysman/conf
#|  _prereqs_check => yes
#| storage_protocol => ssh
#| _all_actions_prereqs_check_behaviour => error
#|         storage => 192.168.56.93

#-----------------------------------------------------------------------------#
# ssh 192.168.56.93 -lroot -oPubKeyAuthentication=no -oPasswordAuthentication=yes -oBatchMode=no -oStrictHostKeyChecking=no -oNumberOfPasswordPrompts=1  - PID: 17048 at Sat Sep 12 05:20:59 2015
#                                                                             #
#  
Password: 
Sent password

Last login: Sat Sep 12 16:42:38 2015

#-----------------------------------------------------------------------------#
# ssh 192.168.56.93 -lroot -oPubKeyAuthentication=no -oPasswordAuthentication=yes -oBatchMode=no -oStrictHostKeyChecking=no -oNumberOfPasswordPrompts=1  - PID: 17048 at Sat Sep 12 05:21:19 2015
#                                                                             #
# configuration version show (timeout: 120 sec.)
#  

[1mfishworks:>[m [m configuration version show

Appliance Name: fishworks
Appliance Product: Oracle ZFS Storage VirtualBox
Appliance Type: Sun Storage 7000
Appliance Version: 2013.06.05.4.0,1-1.7
First Installed: Mon May 11 2015 14:22:01 GMT+0000 (UTC)
Last Updated: Mon May 11 2015 14:22:01 GMT+0000 (UTC)
Last Booted: Sat Sep 12 2015 16:40:29 GMT+0000 (UTC)
Appliance Serial Number: a4402f6f-a208-6a25-fbd5-9ff16168d8d2
Chassis Serial Number: unknown
Software Part Number: Oracle 000-0000
Vendor Product ID: urn:uuid:11da4018-a79e-11dd-a2a2-080020a9ed93
Browser Name: aksh 1.0
Browser Details: aksh
HTTP Server: Apache/2.2.27 (Unix)
SSL Version: OpenSSL 1.0.0m 5 Jun 2014
Appliance Kit: ak/SUNW,ankimo@2013.06.05.4.0,1-1.7
Operating System: SunOS 5.11 ak/generic@2013.06.05.4.0,1-1.7 64-bit
BIOS: innotek GmbH VirtualBox 12/01/2006
Service Processor: -

 
#                                                                             #
# Command successful at Sat Sep 12 05:21:27 2015. Elapsed time: 8 seconds.
#-----------------------------------------------------------------------------#


#-----------------------------------------------------------------------------#
# ssh 192.168.56.93 -lroot -oPubKeyAuthentication=no -oPasswordAuthentication=yes -oBatchMode=no -oStrictHostKeyChecking=no -oNumberOfPasswordPrompts=1  - PID: 17048 at Sat Sep 12 05:21:27 2015
#                                                                             #
# configuration users select root get roles (timeout: 300 sec.)
#  

[1mfishworks:>[m [m configuration users select root get roles

error: property "roles" is not recognized
#                                                                             #
# Command successful at Sat Sep 12 05:21:27 2015. Elapsed time: 0 second.
#-----------------------------------------------------------------------------#


#-----------------------------------------------------------------------------#
# ssh 192.168.56.93 -lroot -oPubKeyAuthentication=no -oPasswordAuthentication=yes -oBatchMode=no -oStrictHostKeyChecking=no -oNumberOfPasswordPrompts=1  - PID: 17048 at Sat Sep 12 05:21:27 2015
#                                                                             #
# exit (timeout: 10 sec.)
#  

[1mfishworks:>[m [m exit
Process terminated.
#                                                                             #
# Command successful at Sat Sep 12 05:21:27 2015. Elapsed time: 0 second.
#-----------------------------------------------------------------------------#


#|
#| Executed Storage Call: storage_info, End Time: 15/09/12 05:21:27, Elapsed Time: 00:00:28
#|----------------------------------------------------------------------------------------------------


error: property "roles" is not recognized
------------------------------------------------------------


Для примера, вот успешное выполнение не из-под root, а из-под отдельного пользователя em_smf_admin.
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
211.
212.
213.
214.
215.
216.
217.
218.
219.
220.
221.
222.
223.
224.
225.
226.
227.
228.
229.
230.
231.
232.
233.
234.
235.
236.
237.
238.
239.
240.
241.
242.
243.
244.
245.
246.
247.
248.
249.
250.
251.
252.
253.
254.
255.
256.
257.
258.
259.
260.
261.
262.
263.
264.
265.
266.
267.
268.
269.
270.
271.
272.
273.
274.
275.
276.
277.
278.
279.
280.
281.
282.
283.
284.
285.
286.
287.
288.
289.
290.
291.
292.
293.
294.
295.
296.
297.
298.
299.
300.
301.
302.
303.
304.
305.
306.
307.
308.
309.
310.
311.
312.
313.
314.
315.
316.
317.
318.
319.
320.
321.
322.
323.
324.
325.
326.
327.
328.
329.
330.
331.
332.
333.
334.
335.
336.
337.
338.
339.
340.
341.
342.
343.
344.
345.
346.
347.
348.
349.
350.
351.
352.
353.
354.
355.
356.
357.
358.
359.
360.
361.
362.
363.
364.
365.
366.
367.
368.
369.
370.
371.
372.
373.
374.
375.
376.
377.
378.
379.
380.
381.
382.
383.
384.
385.
386.
387.
388.
389.
390.
391.
392.
393.
394.
395.
396.
397.
398.
399.
400.
401.
402.
403.
404.
405.
406.
407.
408.
409.
410.
411.
412.
413.
414.
415.
416.
417.
418.
419.
420.
421.
422.
423.
424.
425.
426.
427.
428.
429.
430.
431.
432.
433.
434.
435.
436.
437.
438.
439.
440.
441.
442.
443.
444.
445.
446.
447.
448.
449.
450.
451.
452.
453.
454.
455.
456.
457.
458.
459.
460.
461.
462.
463.
464.
465.
466.
467.
468.
469.
470.
471.
472.
473.
474.
475.
476.
477.
478.
479.
480.
481.
482.
483.
484.
485.
486.
487.
488.
489.
490.
491.
492.
493.
494.
495.
496.
497.
498.
499.
500.
501.
502.
503.
504.
505.
506.
507.
508.
509.
510.
511.
512.
513.
514.
515.
516.
517.
518.
519.
520.
521.
522.
523.
524.
525.
526.
527.
528.
529.
530.
531.
532.
533.
534.
535.
536.
537.
538.
539.
540.
541.
542.
543.
544.
545.
546.
547.
548.
549.
550.
551.
552.
553.
554.
555.
556.
557.
558.
559.
560.
561.
562.
563.
564.
565.
566.
567.
568.
569.
570.
571.
572.
573.
574.
575.
576.
577.
578.
579.
580.
581.
582.
583.
584.
585.
586.
587.
588.
589.
590.
591.
592.
593.
594.
595.
596.
597.
598.
599.
600.
601.
602.
603.
604.
605.
606.
607.
608.
609.
610.
611.
612.
613.
614.
615.
616.
617.
618.
619.
620.
621.
622.
623.
624.
625.
626.
627.
628.
629.
630.
631.
632.
633.
634.
635.
636.
637.
638.
639.
640.
641.
642.
643.
644.
645.
646.
647.
648.
649.
650.
651.
652.
653.
654.
655.
656.
657.
658.
659.
660.
661.
662.
663.
664.
665.
666.
667.
668.
669.
670.
671.
672.
673.
674.
675.
676.
677.
678.
679.
680.
681.
682.
683.
684.
685.
686.
687.
688.
689.
690.
691.
692.
693.
694.
695.
696.
697.
698.
699.
700.
701.
702.
703.
704.
705.
706.
707.
708.
709.
710.
711.
712.
713.
714.
715.
716.
717.
718.
719.
720.
721.
722.
723.
724.
725.
726.
727.
728.
729.
730.
731.
732.
733.
734.
735.
736.
737.
738.
739.
740.
741.
742.
743.
744.
745.
746.
747.
748.
749.
750.
751.
752.
753.
754.
755.
756.
757.
758.
759.
760.
761.
762.
763.
764.
765.
766.
767.
768.
769.
770.
771.
772.
773.
774.
775.
776.
777.
778.
779.
780.
781.
782.
783.
784.
785.
786.
787.
788.
789.
790.
791.
792.
793.
794.
795.
796.
797.
798.
799.
800.
801.
802.
803.
804.
805.
806.
807.
808.
809.
810.
811.
812.
813.
814.
815.
816.
817.
818.
819.
820.
821.
822.
823.
824.
825.
826.
827.
828.
829.
830.
831.
832.
833.
834.
835.
836.
837.
838.
839.
840.
841.
842.
843.
844.
845.
846.
847.
848.
849.
850.
851.
852.
853.
854.
855.
856.
857.
858.
859.
860.
861.
862.
863.
864.
865.
866.
867.
868.
869.
870.
871.
872.
873.
874.
875.
876.
877.
878.
879.
880.
881.
882.
883.
884.
885.
886.
887.
888.
889.
890.
891.
892.
893.
894.
895.
896.
897.
898.
899.
900.
901.
902.
903.
904.
905.
906.
907.
908.
909.
910.
911.
912.
913.
914.
915.
916.
917.
918.
919.
920.
921.
922.
923.
924.
925.
926.
927.
928.
929.
930.
931.
932.
933.
934.
935.
936.
937.
938.
939.
940.
941.
942.
943.
944.
945.
946.
947.
948.
949.
950.
951.
952.
953.
954.
955.
956.
957.
958.
959.
960.
961.
962.
963.
964.
965.
966.
967.
968.
969.
970.
971.
972.
973.
974.
975.
976.
977.
978.
979.
980.
981.
982.
983.
984.
985.
986.
987.
988.
989.
990.
991.
992.
993.
994.
995.
996.
997.
998.
999.
1000.
1001.
1002.
1003.
1004.
1005.
1006.
1007.
1008.
1009.
1010.
1011.
1012.
1013.
1014.
1015.
1016.
1017.
1018.
1019.
1020.
1021.
1022.
1023.
1024.
1025.
1026.
1027.
1028.
1029.
1030.
1031.
1032.
1033.
1034.
1035.
1036.
1037.
1038.
1039.
1040.
1041.
1042.
1043.
1044.
1045.
1046.
1047.
1048.
1049.
1050.
1051.
1052.
1053.
1054.
1055.
1056.
1057.
1058.
1059.
1060.
1061.
1062.
1063.
1064.
1065.
1066.
1067.
1068.
1069.
1070.
1071.
1072.
1073.
1074.
1075.
1076.
1077.
1078.
1079.
1080.
1081.
1082.
1083.
Job Steps Log for Job :Obtaining Storage Details

1:StorageOperation
Launching: /tmp/SMF_1F8CCC46447452E3E0530100007F9DD1/oracle/sysman/bin/em_storage.pl --vendor Sun ZFS --param storage=fishworks --param storage_user=em_smf_admin --param storage_protocol=ssh --action=storage_info -prereqs_check=yes -all_actions_prereqs_check_behaviour=warn --output_filter em_plsql

Using /u01/OracleHomes/agent/core/12.1.0.4.0/perl/bin/perl v5.10.0 built for x86_64-linux-thread-multi
Current Directory: /u01/OracleHomes/agent/agent_inst/sysman/emd
PERL5LIB=/u01/OracleHomes/agent/core/12.1.0.4.0/perl/lib:/u01/OracleHomes/agent/core/12.1.0.4.0/perl/lib/site_perl:/u01/OracleHomes/agent/core/12.1.0.4.0/perl/libwww-perl/lib:/u01/OracleHomes/agent/core/12.1.0.4.0/perl/ext/POSIX:/u01/OracleHomes/agent/core/12.1.0.4.0/perl/URI:/u01/OracleHomes/agent/core/12.1.0.4.0/perl/HTML_Parser:/u01/OracleHomes/agent/core/12.1.0.4.0/perl/HTML-Parser/lib:/u01/OracleHomes/agent/core/12.1.0.4.0/sysman/admin/scripts:/u01/OracleHomes/agent/core/12.1.0.4.0/bin:/u01/OracleHomes/agent/core/12.1.0.4.0/bin:/u01/OracleHomes/agent/core/12.1.0.4.0/sysman/admin/scripts/Net-DNS-0.48/lib/:/u01/OracleHomes/agent/core/12.1.0.4.0/sysman/admin/scripts/libnet-1.19/

Password: 
Neither storage specific nor default storage SDK is found for storage fishworks vendor sunzfs.

#|----------------------------------------------------------------------------------------------------
#| Executing Storage Call: storage_info, Start Time: 15/09/12 05:16:50
#| Parameters:
#|
#|    storage_user => em_smf_admin
#|  storage_passwd => <hidden>
#| _prereqs_conf_dir => /tmp/SMF_1F8CCC46447452E3E0530100007F9DD1/oracle/sysman/conf
#|  _prereqs_check => yes
#| storage_protocol => ssh
#| _all_actions_prereqs_check_behaviour => warn
#|         storage => fishworks

#-----------------------------------------------------------------------------#
# ssh fishworks -lem_smf_admin -oPubKeyAuthentication=no -oPasswordAuthentication=yes -oBatchMode=no -oStrictHostKeyChecking=no -oNumberOfPasswordPrompts=1  - PID: 16176 at Sat Sep 12 05:16:50 2015
#                                                                             #
#  
Password: 
Sent password

Last login: Sat Sep 12 18:08:28 2015 from 192.168.56.81

#-----------------------------------------------------------------------------#
# ssh fishworks -lem_smf_admin -oPubKeyAuthentication=no -oPasswordAuthentication=yes -oBatchMode=no -oStrictHostKeyChecking=no -oNumberOfPasswordPrompts=1  - PID: 16176 at Sat Sep 12 05:17:12 2015
#                                                                             #
# configuration version show (timeout: 120 sec.)
#  

[1mfishworks:>[m [m configuration version show

Appliance Name: fishworks
Appliance Product: Oracle ZFS Storage VirtualBox
Appliance Type: Sun Storage 7000
Appliance Version: 2013.06.05.4.0,1-1.7
First Installed: Mon May 11 2015 14:22:01 GMT+0000 (UTC)
Last Updated: Mon May 11 2015 14:22:01 GMT+0000 (UTC)
Last Booted: Sat Sep 12 2015 16:40:29 GMT+0000 (UTC)
Appliance Serial Number: a4402f6f-a208-6a25-fbd5-9ff16168d8d2
Chassis Serial Number: unknown
Software Part Number: Oracle 000-0000
Vendor Product ID: urn:uuid:11da4018-a79e-11dd-a2a2-080020a9ed93
Browser Name: aksh 1.0
Browser Details: aksh
HTTP Server: Apache/2.2.27 (Unix)
SSL Version: OpenSSL 1.0.0m 5 Jun 2014
Appliance Kit: ak/SUNW,ankimo@2013.06.05.4.0,1-1.7
Operating System: SunOS 5.11 ak/generic@2013.06.05.4.0,1-1.7 64-bit
BIOS: innotek GmbH VirtualBox 12/01/2006
Service Processor: -
#                                                                             #
# Command successful at Sat Sep 12 05:17:23 2015. Elapsed time: 11 seconds.
#-----------------------------------------------------------------------------#


#-----------------------------------------------------------------------------#
# ssh fishworks -lem_smf_admin -oPubKeyAuthentication=no -oPasswordAuthentication=yes -oBatchMode=no -oStrictHostKeyChecking=no -oNumberOfPasswordPrompts=1  - PID: 16176 at Sat Sep 12 05:17:23 2015
#                                                                             #
# configuration users select em_smf_admin get roles (timeout: 300 sec.)
#  

[1mfishworks:>[m [m configuration users select em_smf_admin get roles

                         roles = basic,em_smf_admin_role
#                                                                             #
# Command successful at Sat Sep 12 05:17:23 2015. Elapsed time: 0 second.
#-----------------------------------------------------------------------------#


#-----------------------------------------------------------------------------#
# ssh fishworks -lem_smf_admin -oPubKeyAuthentication=no -oPasswordAuthentication=yes -oBatchMode=no -oStrictHostKeyChecking=no -oNumberOfPasswordPrompts=1  - PID: 16176 at Sat Sep 12 05:17:23 2015
#                                                                             #
# script
run ('cd /');
run ('configuration roles select basic authorizations');
var data = list();
for (i=0; i<data.length; i++)
{
  try
  {
    run('select ' + data[i]);

    if (get('scope') == 'nas')
    {
       if (get('pool') == '*' && get('project') == '*' && get('share') == '*')
       {
          printf("name~~\%s~~",data[i]);
        printf("allow_changeAccessProps~~%s~~",get('allow_changeAccessProps'));
        printf("allow_changeGeneralProps~~%s~~",get('allow_changeGeneralProps'));
        printf("allow_changeProtocolProps~~%s~~",get('allow_changeProtocolProps'));
        printf("allow_changeSpaceProps~~%s~~",get('allow_changeSpaceProps'));
        printf("allow_changeUserQuota~~%s~~",get('allow_changeUserQuota'));
        printf("allow_clearLocks~~%s~~",get('allow_clearLocks'));
        printf("allow_clone~~%s~~",get('allow_clone'));
        printf("allow_createProject~~%s~~",get('allow_createProject'));
        printf("allow_createShare~~%s~~",get('allow_createShare'));
        printf("allow_destroy~~%s~~",get('allow_destroy'));
        printf("allow_promote~~%s~~",get('allow_promote'));
        printf("allow_rename~~%s~~",get('allow_rename'));
        printf("allow_rollback~~%s~~",get('allow_rollback'));
        printf("allow_rrsource~~%s~~",get('allow_rrsource'));
        printf("allow_rrtarget~~%s~~",get('allow_rrtarget'));
        printf("allow_scheduleSnap~~%s~~",get('allow_scheduleSnap'));
        printf("allow_scrub~~%s~~",get('allow_scrub'));
        printf("allow_shadowMigration~~%s~~",get('allow_shadowMigration'));
        printf("allow_takeSnap~~%s",get('allow_takeSnap'));
        printf("\n");
       }
    }
    run('cd ..');
  }
  catch (err)
  {
    printf("name~~\%s~~error~~%s\n", data[i], err);
  }

}
.

 (timeout: 300 sec.)
#  

[1mfishworks:>[m [m script


("." to run)> [mrun ('cd /');


("." to run)> [mrun ('configuration roles select basic authorizations');


("." to run)> [mvar data = list();


("." to run)> [mfor (i=0; i<data.length; i++)


("." to run)> [m{


("." to run)> [m  try


("." to run)> [m  {


("." to run)> [m    run('select ' + data[i]);


("." to run)> [m


("." to run)> [m    if (get('scope') == 'nas')


("." to run)> [m    {


("." to run)> [m       if (get('pool') == '*' && get('project') == '*' && get('sha re') == '*')


("." to run)> [m       {


("." to run)> [m          printf("name~~\%s~~",data[i]);


("." to run)> [m        printf("allow_changeAccessProps~~%s~~",get('allow_changeAc cessProps'));


("." to run)> [m        printf("allow_changeGeneralProps~~%s~~",get('allow_changeG eneralProps'));


("." to run)> [m        printf("allow_changeProtocolProps~~%s~~",get('allow_change ProtocolProps'));


("." to run)> [m        printf("allow_changeSpaceProps~~%s~~",get('allow_changeSpa ceProps'));


("." to run)> [m        printf("allow_changeUserQuota~~%s~~",get('allow_changeUser Quota'));


("." to run)> [m        printf("allow_clearLocks~~%s~~",get('allow_clearLocks'));


("." to run)> [m        printf("allow_clone~~%s~~",get('allow_clone'));


("." to run)> [m        printf("allow_createProject~~%s~~",get('allow_createProjec t'));


("." to run)> [m        printf("allow_createShare~~%s~~",get('allow_createShare')) ;


("." to run)> [m        printf("allow_destroy~~%s~~",get('allow_destroy'));


("." to run)> [m        printf("allow_promote~~%s~~",get('allow_promote'));


("." to run)> [m        printf("allow_rename~~%s~~",get('allow_rename'));


("." to run)> [m        printf("allow_rollback~~%s~~",get('allow_rollback'));


("." to run)> [m        printf("allow_rrsource~~%s~~",get('allow_rrsource'));


("." to run)> [m        printf("allow_rrtarget~~%s~~",get('allow_rrtarget'));


("." to run)> [m        printf("allow_scheduleSnap~~%s~~",get('allow_scheduleSnap' ));


("." to run)> [m        printf("allow_scrub~~%s~~",get('allow_scrub'));


("." to run)> [m        printf("allow_shadowMigration~~%s~~",get('allow_shadowMigr ation'));


("." to run)> [m        printf("allow_takeSnap~~%s",get('allow_takeSnap'));


("." to run)> [m        printf("\n");


("." to run)> [m       }


("." to run)> [m    }


("." to run)> [m    run('cd ..');


("." to run)> [m  }


("." to run)> [m  catch (err)


("." to run)> [m  {


("." to run)> [m    printf("name~~\%s~~error~~%s\n", data[i], err);


("." to run)> [m  }


("." to run)> [m


("." to run)> [m}


("." to run)> [m.
#                                                                             #
# Command successful at Sat Sep 12 05:17:23 2015. Elapsed time: 0 second.
#-----------------------------------------------------------------------------#


#-----------------------------------------------------------------------------#
# ssh fishworks -lem_smf_admin -oPubKeyAuthentication=no -oPasswordAuthentication=yes -oBatchMode=no -oStrictHostKeyChecking=no -oNumberOfPasswordPrompts=1  - PID: 16176 at Sat Sep 12 05:17:23 2015
#                                                                             #
# script
run ('cd /');
run ('configuration roles select em_smf_admin_role authorizations');
var data = list();
for (i=0; i<data.length; i++)
{
  try
  {
    run('select ' + data[i]);

    if (get('scope') == 'nas')
    {
       if (get('pool') == '*' && get('project') == '*' && get('share') == '*')
       {
          printf("name~~\%s~~",data[i]);
        printf("allow_changeAccessProps~~%s~~",get('allow_changeAccessProps'));
        printf("allow_changeGeneralProps~~%s~~",get('allow_changeGeneralProps'));
        printf("allow_changeProtocolProps~~%s~~",get('allow_changeProtocolProps'));
        printf("allow_changeSpaceProps~~%s~~",get('allow_changeSpaceProps'));
        printf("allow_changeUserQuota~~%s~~",get('allow_changeUserQuota'));
        printf("allow_clearLocks~~%s~~",get('allow_clearLocks'));
        printf("allow_clone~~%s~~",get('allow_clone'));
        printf("allow_createProject~~%s~~",get('allow_createProject'));
        printf("allow_createShare~~%s~~",get('allow_createShare'));
        printf("allow_destroy~~%s~~",get('allow_destroy'));
        printf("allow_promote~~%s~~",get('allow_promote'));
        printf("allow_rename~~%s~~",get('allow_rename'));
        printf("allow_rollback~~%s~~",get('allow_rollback'));
        printf("allow_rrsource~~%s~~",get('allow_rrsource'));
        printf("allow_rrtarget~~%s~~",get('allow_rrtarget'));
        printf("allow_scheduleSnap~~%s~~",get('allow_scheduleSnap'));
        printf("allow_scrub~~%s~~",get('allow_scrub'));
        printf("allow_shadowMigration~~%s~~",get('allow_shadowMigration'));
        printf("allow_takeSnap~~%s",get('allow_takeSnap'));
        printf("\n");
       }
    }
    run('cd ..');
  }
  catch (err)
  {
    printf("name~~\%s~~error~~%s\n", data[i], err);
  }

}
.

 (timeout: 300 sec.)
#  

[1mfishworks:>[m [m script


("." to run)> [mrun ('cd /');


("." to run)> [mrun ('configuration roles select em_smf_admin_role authorizations' );


("." to run)> [mvar data = list();


("." to run)> [mfor (i=0; i<data.length; i++)


("." to run)> [m{


("." to run)> [m  try


("." to run)> [m  {


("." to run)> [m    run('select ' + data[i]);


("." to run)> [m


("." to run)> [m    if (get('scope') == 'nas')


("." to run)> [m    {


("." to run)> [m       if (get('pool') == '*' && get('project') == '*' && get('sha re') == '*')


("." to run)> [m       {


("." to run)> [m          printf("name~~\%s~~",data[i]);


("." to run)> [m        printf("allow_changeAccessProps~~%s~~",get('allow_changeAc cessProps'));


("." to run)> [m        printf("allow_changeGeneralProps~~%s~~",get('allow_changeG eneralProps'));


("." to run)> [m        printf("allow_changeProtocolProps~~%s~~",get('allow_change ProtocolProps'));


("." to run)> [m        printf("allow_changeSpaceProps~~%s~~",get('allow_changeSpa ceProps'));


("." to run)> [m        printf("allow_changeUserQuota~~%s~~",get('allow_changeUser Quota'));


("." to run)> [m        printf("allow_clearLocks~~%s~~",get('allow_clearLocks'));


("." to run)> [m        printf("allow_clone~~%s~~",get('allow_clone'));


("." to run)> [m        printf("allow_createProject~~%s~~",get('allow_createProjec t'));


("." to run)> [m        printf("allow_createShare~~%s~~",get('allow_createShare')) ;


("." to run)> [m        printf("allow_destroy~~%s~~",get('allow_destroy'));


("." to run)> [m        printf("allow_promote~~%s~~",get('allow_promote'));


("." to run)> [m        printf("allow_rename~~%s~~",get('allow_rename'));


("." to run)> [m        printf("allow_rollback~~%s~~",get('allow_rollback'));


("." to run)> [m        printf("allow_rrsource~~%s~~",get('allow_rrsource'));


("." to run)> [m        printf("allow_rrtarget~~%s~~",get('allow_rrtarget'));


("." to run)> [m        printf("allow_scheduleSnap~~%s~~",get('allow_scheduleSnap' ));


("." to run)> [m        printf("allow_scrub~~%s~~",get('allow_scrub'));


("." to run)> [m        printf("allow_shadowMigration~~%s~~",get('allow_shadowMigr ation'));


("." to run)> [m        printf("allow_takeSnap~~%s",get('allow_takeSnap'));


("." to run)> [m        printf("\n");


("." to run)> [m       }


("." to run)> [m    }


("." to run)> [m    run('cd ..');


("." to run)> [m  }


("." to run)> [m  catch (err)


("." to run)> [m  {


("." to run)> [m    printf("name~~\%s~~error~~%s\n", data[i], err);


("." to run)> [m  }


("." to run)> [m


("." to run)> [m}


("." to run)> [m.

name~~auth-000~~allow_changeAccessProps~~false~~allow_changeGeneralProps~~false~~allow_changeProtocolProps~~true~~allow_changeSpaceProps~~true~~allow_changeUserQuota~~false~~allow_clearLocks~~false~~allow_clone~~true~~allow_createProject~~false~~allow_createShare~~true~~allow_destroy~~true~~allow_promote~~false~~allow_rename~~false~~allow_rollback~~true~~allow_rrsource~~false~~allow_rrtarget~~false~~allow_scheduleSnap~~false~~allow_scrub~~false~~allow_shadowMigration~~false~~allow_takeSnap~~true
#                                                                             #
# Command successful at Sat Sep 12 05:17:23 2015. Elapsed time: 0 second.
#-----------------------------------------------------------------------------#


#-----------------------------------------------------------------------------#
# ssh fishworks -lem_smf_admin -oPubKeyAuthentication=no -oPasswordAuthentication=yes -oBatchMode=no -oStrictHostKeyChecking=no -oNumberOfPasswordPrompts=1  - PID: 16176 at Sat Sep 12 05:17:23 2015
#                                                                             #
# configuration version get (timeout: 300 sec.)
#  

[1mfishworks:>[m [m configuration version get

                      nodename = fishworks
                   mkt_product = Oracle ZFS Storage VirtualBox
                       product = Sun Storage 7000
                       version = 2013.06.05.4.0,1-1.7
                  install_time = 2015-5-11 14:22:01
                   update_time = 2015-5-11 14:22:01
                     boot_time = 2015-9-12 16:40:29
                           asn = a4402f6f-a208-6a25-fbd5-9ff16168d8d2
                           csn = unknown
                          part = Oracle 000-0000
                           urn = urn:uuid:11da4018-a79e-11dd-a2a2-080020a9ed93
                       navname = aksh 1.0
                      navagent = aksh
                          http = Apache/2.2.27 (Unix)
                           ssl = OpenSSL 1.0.0m 5 Jun 2014
                    ak_version = ak/SUNW,ankimo@2013.06.05.4.0,1-1.7
                    os_version = SunOS 5.11 ak/generic@2013.06.05.4.0,1-1.7 64-bit
                  bios_version = innotek GmbH VirtualBox 12/01/2006
                    sp_version = -
#                                                                             #
# Command successful at Sat Sep 12 05:17:23 2015. Elapsed time: 0 second.
#-----------------------------------------------------------------------------#


#-----------------------------------------------------------------------------#
# ssh fishworks -lem_smf_admin -oPubKeyAuthentication=no -oPasswordAuthentication=yes -oBatchMode=no -oStrictHostKeyChecking=no -oNumberOfPasswordPrompts=1  - PID: 16176 at Sat Sep 12 05:17:23 2015
#                                                                             #
# configuration version get (timeout: 300 sec.)
#  

[1mfishworks:>[m [m configuration version get

                      nodename = fishworks
                   mkt_product = Oracle ZFS Storage VirtualBox
                       product = Sun Storage 7000
                       version = 2013.06.05.4.0,1-1.7
                  install_time = 2015-5-11 14:22:01
                   update_time = 2015-5-11 14:22:01
                     boot_time = 2015-9-12 16:40:29
                           asn = a4402f6f-a208-6a25-fbd5-9ff16168d8d2
                           csn = unknown
                          part = Oracle 000-0000
                           urn = urn:uuid:11da4018-a79e-11dd-a2a2-080020a9ed93
                       navname = aksh 1.0
                      navagent = aksh
                          http = Apache/2.2.27 (Unix)
                           ssl = OpenSSL 1.0.0m 5 Jun 2014
                    ak_version = ak/SUNW,ankimo@2013.06.05.4.0,1-1.7
                    os_version = SunOS 5.11 ak/generic@2013.06.05.4.0,1-1.7 64-bit
                  bios_version = innotek GmbH VirtualBox 12/01/2006
                    sp_version = -
#                                                                             #
# Command successful at Sat Sep 12 05:17:23 2015. Elapsed time: 0 second.
#-----------------------------------------------------------------------------#


#-----------------------------------------------------------------------------#
# ssh fishworks -lem_smf_admin -oPubKeyAuthentication=no -oPasswordAuthentication=yes -oBatchMode=no -oStrictHostKeyChecking=no -oNumberOfPasswordPrompts=1  - PID: 16176 at Sat Sep 12 05:17:23 2015
#                                                                             #
# configuration storage list (timeout: 300 sec.)
#  

[1mfishworks:>[m [m configuration storage list

[4mProperties:
[m                          pool = demo
                        status = online
                        errors = 0
                       profile = mirror
                   log_profile = -
                 cache_profile = -
                         scrub = none requested
#                                                                             #
# Command successful at Sat Sep 12 05:17:23 2015. Elapsed time: 0 second.
#-----------------------------------------------------------------------------#


#-----------------------------------------------------------------------------#
# ssh fishworks -lem_smf_admin -oPubKeyAuthentication=no -oPasswordAuthentication=yes -oBatchMode=no -oStrictHostKeyChecking=no -oNumberOfPasswordPrompts=1  - PID: 16176 at Sat Sep 12 05:17:23 2015
#                                                                             #
# script
run ('cd /');
run('shares');
data = list();
for (i=0; i<data.length; i++)
{
    try
    {
        run('select ' + data[i]);
        printf("name~~\%s~~",data[i]);
        printf("pool~~%s~~",get('pool'));
        printf("creation~~%s~~",get('creation'));
        printf("quota~~%s~~",get('quota'));
        printf("space_data~~%s",get('space_data'));
        printf("\n");
    }
    catch (err)
    {
        printf("name~~\%s~~error~~%s\n", data[i], err);
    }
    run('cd ..');
}
run('cd ..');
.

 (timeout: 300 sec.)
#  

[1mfishworks:>[m [m script


("." to run)> [mrun ('cd /');


("." to run)> [mrun('shares');


("." to run)> [mdata = list();


("." to run)> [mfor (i=0; i<data.length; i++)


("." to run)> [m{


("." to run)> [m    try


("." to run)> [m    {


("." to run)> [m        run('select ' + data[i]);


("." to run)> [m        printf("name~~\%s~~",data[i]);


("." to run)> [m        printf("pool~~%s~~",get('pool'));


("." to run)> [m        printf("creation~~%s~~",get('creation'));


("." to run)> [m        printf("quota~~%s~~",get('quota'));


("." to run)> [m        printf("space_data~~%s",get('space_data'));


("." to run)> [m        printf("\n");


("." to run)> [m    }


("." to run)> [m    catch (err)


("." to run)> [m    {


("." to run)> [m        printf("name~~\%s~~error~~%s\n", data[i], err);


("." to run)> [m    }


("." to run)> [m    run('cd ..');


("." to run)> [m}


("." to run)> [mrun('cd ..');


("." to run)> [m.

name~~ORAcloud~~pool~~demo~~creation~~Sat Sep 12 2015 18:11:40 GMT+0000 (UTC)~~quota~~21474836480~~space_data~~31744
name~~default~~pool~~demo~~creation~~Fri Jul 24 2015 22:31:20 GMT+0000 (UTC)~~quota~~0~~space_data~~63488
#                                                                             #
# Command successful at Sat Sep 12 05:17:24 2015. Elapsed time: 1 second.
#-----------------------------------------------------------------------------#


#-----------------------------------------------------------------------------#
# ssh fishworks -lem_smf_admin -oPubKeyAuthentication=no -oPasswordAuthentication=yes -oBatchMode=no -oStrictHostKeyChecking=no -oNumberOfPasswordPrompts=1  - PID: 16176 at Sat Sep 12 05:17:24 2015
#                                                                             #
# shares set pool=demo (timeout: 300 sec.)
#  

[1mfishworks:>[m [m shares set pool=demo

                          pool = demo
#                                                                             #
# Command successful at Sat Sep 12 05:17:24 2015. Elapsed time: 0 second.
#-----------------------------------------------------------------------------#


#-----------------------------------------------------------------------------#
# ssh fishworks -lem_smf_admin -oPubKeyAuthentication=no -oPasswordAuthentication=yes -oBatchMode=no -oStrictHostKeyChecking=no -oNumberOfPasswordPrompts=1  - PID: 16176 at Sat Sep 12 05:17:24 2015
#                                                                             #
# script
run ('cd /');
run('shares select ORAcloud');
data = list();
for (i=0; i<data.length; i++)
{
    try
    {
        run('select ' + data[i]);
        printf("name~~\%s~~",data[i]);
        printf("creation~~%s~~",get('creation'));
        printf("origin.project~~%s~~",get('origin').project);
        printf("origin.snapshot~~%s~~",get('origin').snapshot);
        printf("origin.share~~%s~~",get('origin').share);
        printf("quota~~%s~~",get('quota'));
        printf("space_data~~%s~~",get('space_data'));
        printf("mountpoint~~%s~~",get('mountpoint'));
        printf("space_snapshots~~%s~~",get('space_snapshots'));
        printf("sharenfs~~%s~~",get('sharenfs'));
        printf("pool~~%s~~",get('pool'));
        printf("reservation~~%s",get('reservation'));
        printf("\n");
    }
    catch (err)
    {
        printf("name~~\%s~~error~~%s\n", data[i], err);
    }
    run('cd ..');
}
run('cd ..');
.

 (timeout: 1200 sec.)
#  

[1mfishworks:>[m [m script


("." to run)> [mrun ('cd /');


("." to run)> [mrun('shares select ORAcloud');


("." to run)> [mdata = list();


("." to run)> [mfor (i=0; i<data.length; i++)


("." to run)> [m{


("." to run)> [m    try


("." to run)> [m    {


("." to run)> [m        run('select ' + data[i]);


("." to run)> [m        printf("name~~\%s~~",data[i]);


("." to run)> [m        printf("creation~~%s~~",get('creation'));


("." to run)> [m        printf("origin.project~~%s~~",get('origin').project);


("." to run)> [m        printf("origin.snapshot~~%s~~",get('origin').snapshot);


("." to run)> [m        printf("origin.share~~%s~~",get('origin').share);


("." to run)> [m        printf("quota~~%s~~",get('quota'));


("." to run)> [m        printf("space_data~~%s~~",get('space_data'));


("." to run)> [m        printf("mountpoint~~%s~~",get('mountpoint'));


("." to run)> [m        printf("space_snapshots~~%s~~",get('space_snapshots'));


("." to run)> [m        printf("sharenfs~~%s~~",get('sharenfs'));


("." to run)> [m        printf("pool~~%s~~",get('pool'));


("." to run)> [m        printf("reservation~~%s",get('reservation'));


("." to run)> [m        printf("\n");


("." to run)> [m    }


("." to run)> [m    catch (err)


("." to run)> [m    {


("." to run)> [m        printf("name~~\%s~~error~~%s\n", data[i], err);


("." to run)> [m    }


("." to run)> [m    run('cd ..');


("." to run)> [m}


("." to run)> [mrun('cd ..');


("." to run)> [m.
#                                                                             #
# Command successful at Sat Sep 12 05:17:24 2015. Elapsed time: 0 second.
#-----------------------------------------------------------------------------#


#-----------------------------------------------------------------------------#
# ssh fishworks -lem_smf_admin -oPubKeyAuthentication=no -oPasswordAuthentication=yes -oBatchMode=no -oStrictHostKeyChecking=no -oNumberOfPasswordPrompts=1  - PID: 16176 at Sat Sep 12 05:17:24 2015
#                                                                             #
# shares set pool=demo (timeout: 300 sec.)
#  

[1mfishworks:>[m [m shares set pool=demo

                          pool = demo
#                                                                             #
# Command successful at Sat Sep 12 05:17:24 2015. Elapsed time: 0 second.
#-----------------------------------------------------------------------------#


#-----------------------------------------------------------------------------#
# ssh fishworks -lem_smf_admin -oPubKeyAuthentication=no -oPasswordAuthentication=yes -oBatchMode=no -oStrictHostKeyChecking=no -oNumberOfPasswordPrompts=1  - PID: 16176 at Sat Sep 12 05:17:24 2015
#                                                                             #
# script
run ('cd /');
run('shares select default');
data = list();
for (i=0; i<data.length; i++)
{
    try
    {
        run('select ' + data[i]);
        printf("name~~\%s~~",data[i]);
        printf("creation~~%s~~",get('creation'));
        printf("origin.project~~%s~~",get('origin').project);
        printf("origin.snapshot~~%s~~",get('origin').snapshot);
        printf("origin.share~~%s~~",get('origin').share);
        printf("quota~~%s~~",get('quota'));
        printf("space_data~~%s~~",get('space_data'));
        printf("mountpoint~~%s~~",get('mountpoint'));
        printf("space_snapshots~~%s~~",get('space_snapshots'));
        printf("sharenfs~~%s~~",get('sharenfs'));
        printf("pool~~%s~~",get('pool'));
        printf("reservation~~%s",get('reservation'));
        printf("\n");
    }
    catch (err)
    {
        printf("name~~\%s~~error~~%s\n", data[i], err);
    }
    run('cd ..');
}
run('cd ..');
.

 (timeout: 1200 sec.)
#  

[1mfishworks:>[m [m script


("." to run)> [mrun ('cd /');


("." to run)> [mrun('shares select default');


("." to run)> [mdata = list();


("." to run)> [mfor (i=0; i<data.length; i++)


("." to run)> [m{


("." to run)> [m    try


("." to run)> [m    {


("." to run)> [m        run('select ' + data[i]);


("." to run)> [m        printf("name~~\%s~~",data[i]);


("." to run)> [m        printf("creation~~%s~~",get('creation'));


("." to run)> [m        printf("origin.project~~%s~~",get('origin').project);


("." to run)> [m        printf("origin.snapshot~~%s~~",get('origin').snapshot);


("." to run)> [m        printf("origin.share~~%s~~",get('origin').share);


("." to run)> [m        printf("quota~~%s~~",get('quota'));


("." to run)> [m        printf("space_data~~%s~~",get('space_data'));


("." to run)> [m        printf("mountpoint~~%s~~",get('mountpoint'));


("." to run)> [m        printf("space_snapshots~~%s~~",get('space_snapshots'));


("." to run)> [m        printf("sharenfs~~%s~~",get('sharenfs'));


("." to run)> [m        printf("pool~~%s~~",get('pool'));


("." to run)> [m        printf("reservation~~%s",get('reservation'));


("." to run)> [m        printf("\n");


("." to run)> [m    }


("." to run)> [m    catch (err)


("." to run)> [m    {


("." to run)> [m        printf("name~~\%s~~error~~%s\n", data[i], err);


("." to run)> [m    }


("." to run)> [m    run('cd ..');


("." to run)> [m}


("." to run)> [mrun('cd ..');


("." to run)> [m.

name~~demo~~creation~~Sat Jul 25 2015 00:14:43 GMT+0000 (UTC)~~origin.project~~undefined~~origin.snapshot~~undefined~~origin.share~~undefined~~quota~~0~~space_data~~31744~~mountpoint~~/export/demo~~space_snapshots~~0~~sharenfs~~on~~pool~~demo~~reservation~~0
#                                                                             #
# Command successful at Sat Sep 12 05:17:24 2015. Elapsed time: 0 second.
#-----------------------------------------------------------------------------#


#-----------------------------------------------------------------------------#
# ssh fishworks -lem_smf_admin -oPubKeyAuthentication=no -oPasswordAuthentication=yes -oBatchMode=no -oStrictHostKeyChecking=no -oNumberOfPasswordPrompts=1  - PID: 16176 at Sat Sep 12 05:17:24 2015
#                                                                             #
# script
run ('cd /');
run('shares select default select demo snapshots');
data = list();
for (i=0; i<data.length; i++)
{
    try
    {
        run('select ' + data[i]);
        printf("name~~\%s~~",data[i]);
        printf("creation~~%s~~",get('creation'));
        printf("space_data~~%s",get('space_data'));
        printf("\n");
    }
    catch (err)
    {
       printf("name~~\%s~~error~~%s\n", data[i], err);
    }
    run('cd ..');
}
run('cd ..');
.

 (timeout: 600 sec.)
#  

[1mfishworks:>[m [m script


("." to run)> [mrun ('cd /');


("." to run)> [mrun('shares select default select demo snapshots');


("." to run)> [mdata = list();


("." to run)> [mfor (i=0; i<data.length; i++)


("." to run)> [m{


("." to run)> [m    try


("." to run)> [m    {


("." to run)> [m        run('select ' + data[i]);


("." to run)> [m        printf("name~~\%s~~",data[i]);


("." to run)> [m        printf("creation~~%s~~",get('creation'));


("." to run)> [m        printf("space_data~~%s",get('space_data'));


("." to run)> [m        printf("\n");


("." to run)> [m    }


("." to run)> [m    catch (err)


("." to run)> [m    {


("." to run)> [m       printf("name~~\%s~~error~~%s\n", data[i], err);


("." to run)> [m    }


("." to run)> [m    run('cd ..');


("." to run)> [m}


("." to run)> [mrun('cd ..');


("." to run)> [m.
#                                                                             #
# Command successful at Sat Sep 12 05:17:24 2015. Elapsed time: 0 second.
#-----------------------------------------------------------------------------#

Pool: demo
  Number of projects: 2
  Number of shares: 1
  Number of snapshots: 0


#-----------------------------------------------------------------------------#
# ssh fishworks -lem_smf_admin -oPubKeyAuthentication=no -oPasswordAuthentication=yes -oBatchMode=no -oStrictHostKeyChecking=no -oNumberOfPasswordPrompts=1  - PID: 16176 at Sat Sep 12 05:17:24 2015
#                                                                             #
# exit (timeout: 10 sec.)
#  

[1mfishworks:>[m [m exit

Connection to fishworks closed.
Process terminated.
#                                                                             #
# Command successful at Sat Sep 12 05:17:24 2015. Elapsed time: 0 second.
#-----------------------------------------------------------------------------#


#|
#| Executed Storage Call: storage_info, End Time: 15/09/12 05:17:24, Elapsed Time: 00:00:34
#|----------------------------------------------------------------------------------------------------
------------------------------------------------------------


На всякий случай, проверил с консоли те же команды:
Код: plsql
1.
2.
3.
4.
fishworks:> configuration users select root get roles
error: property "roles" is not recognized
fishworks:> configuration users select em_smf_admin get roles
                         roles = basic,em_smf_admin_role


Vadim Lejninне изменяйте свойство «mountpoint» по умолчанию «/exports»!
Опечатка, видимо, имелось в виду "/export".

Vadim LejninВ emcli 12.1.0.5 появилась возможность автоматического создания
DPP и template
В понедельник могу кинуть примеры скрипты для автоматического создания и примеры
json для генерации
Вручную create_dbprofile+create_service_template. json тоже использую.
Подскажи, пожалуйста, про автоматическое создание, это я пока не использую.
Сейчас у меня 12.1.0.4, но не за горами 12.1.0.5.
Еще вопрос в сторону: при регистрации Storage (например, ZFSSA) нужно выбрать агента:
Agent to Manage StorageSelect one or more Linux x86_64 or Solaris SPARC agents that can be used to perform operations on this storage device.

Немного не понятно, чем вызвано это ограничение? Агент на ZFSSA все команды выполняет через ssh. Какая разница на какой он платформе?
У меня просто исторически стенд OEM был на Solaris x86-64 на десктопе. Пришлось ради этого отдельный OEM под Linux поднять, чтобы его агента использовать для регистрации Storage.
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39050020
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SeaGate
...
Vadim Lejninне изменяйте свойство «mountpoint» по умолчанию «/exports»!
Опечатка, видимо, имелось в виду "/export".


да опечатка
Причина в том, что есть mountpoint не определен, тогда он генерится автоматом
А вот если определен, то автомат не работает и получаешь проблемы
когда несколько клонов DB пытаются монтировать свои клоны ZFS в ту же директорию.

Я же по глупости ее установил при настройке и потерял пару дней пока разобрался.
Все пытался найти баги :)
Тем более на момент установки еще не было CSI

SeaGateVadim LejninВ emcli 12.1.0.5 появилась возможность автоматического создания
DPP и template
В понедельник могу кинуть примеры скрипты для автоматического создания и примеры
json для генерации
Вручную create_dbprofile+create_service_template. json тоже использую.
Подскажи, пожалуйста, про автоматическое создание, это я пока не использую.
Сейчас у меня 12.1.0.4, но не за горами 12.1.0.5.

12.1.0.5 - Это версия emcli то есть у Вас скорее всего она уже нормальной версии
Я не совсем корректно выразился, появилась принципиальная возможность автоматической генерации DPP, до появления CLI этой версии не было командной строки и вообще API
для автоматизации этих операций.
Я сделал скрипты для генерации json и генерировал DPP и template вызовом EMCLI

До его появления у меня работал костыль:
Приходилось вручную! создать максимально требуемое количество 50 dpp и 50 template
Причем последовательно, так как процесс сбоил если запускалось две операции одновременно

И для автоматизации только переименовывал в repository названия DPP/Template и скриптом менял связанный с dpp ZFS snapshot

К счастью, в EMCLI добавили необходимую функциональность.



SeaGateЕще вопрос в сторону: при регистрации Storage (например, ZFSSA) нужно выбрать агента:
Agent to Manage StorageSelect one or more Linux x86_64 or Solaris SPARC agents that can be used to perform operations on this storage device.


Немного не понятно, чем вызвано это ограничение? Агент на ZFSSA все команды выполняет через ssh. Какая разница на какой он платформе?
У меня просто исторически стенд OEM был на Solaris x86-64 на десктопе. Пришлось ради этого отдельный OEM под Linux поднять, чтобы его агента использовать для регистрации Storage.
Честно говоря не готов ответить, не сталкивался
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39050035
Фотография Vadim Lejnin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KyRoА можно и мне посмотреть на Вашу инструкцию , а то не до конца понятен момент с этим ZFS .

Storage Snapshot:
Технология получения замороженного состояния диска на какой то момент времени.
То есть, если в момент времени t1 создали storage snapshot
то вы имеете состояние данного диска на этот момент времени

В дальнейшем, при изменении любого из "замороженных блоков" - блок не переписывается
а начинает существовать в двух состояниях:
t1
current


То есть Вы как бы получаете 2 диска, один замороженный, другой текущий.
не измененные блоки разделяются между этими копиями.

Таким образом, существенно экономится дисковое пространство и можно практически мгновенно получать копию данных на какой то момент времени.

snapshot может быть несколько, соответственно каждый snap хранит только измененные блоки которые изменились от предыдущего snap
Как правило Storage Snapshot поддерживают операции
Delete Snapshot или Rollback Snapshot, то есть можно забыть (и освободить блоки) либо Snapshot,
Либо Current

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

ZFS snapshot - объект READ-ONLY
на основе ZFS Snapshot, можно создать один или более ZFS Clone - это READ-WRITE копия ZFS Snapshot.
Технология та же.
Каждый ZFS Clone - пишет свой набор изменнных блоков отличных от родительского ZFS Snapshot.

DBaaS snap clone - для получения копии использует этот способ получения backup DB datafile

Создается DBaaS Data Provision Profile (DPP) - фактически Storage Snapshot файлов данных БД

На основе полученного DPP, создается один или несколько шаблонов (DBaaS template) для получения различных копий данной базы. Например тестовой и среды разработки
Они будут отличаться выделяемыми ресурсами и настройками получаемой DB.

Полученные template становятся доступны в DBaaS Self Service портале для получения
пользовательской копии DB на основе созданных template

Например в моем случае, копия терабайтной базы становится доступной где то через 10 минут. Такое большое время создания копии ( скриптами ее можно получить гораздо быстрее) в основном из-за того что DBaaS делает много лишних движений.
Это Enterprise продукт для организации ферм oracle субд и продажи Oracle СУБД как услуги.
Там настраивается доступ, мониторинг потраченных ресурсов, лимиты и так далее
...
Рейтинг: 0 / 0
автоматизация поддержки актуальности тестовых сред
    #39050126
Фотография ProgMann
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KyRoVadim Lejninпропущено...
Спасибо за информацию. Интересная технология.
Копите деньги .............
...
Рейтинг: 0 / 0
25 сообщений из 40, страница 1 из 2
Форумы / Oracle [игнор отключен] [закрыт для гостей] / автоматизация поддержки актуальности тестовых сред
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]