26.09.2016, 22:25 | #1 |
Участник
|
ax7db-reset
Консультанту ax7 часто приходится возвращать базу в исходное состояние. Хорошо, когда есть админский доступ к виртуальной машине. А если его нет?
. Идея очень простая - в самом начале создаем snapshot аксаптовской базы. Не страшась последствий работаем с аксаптой. Если напортачили, восстанавливаем базу из снапшота. . Единственное неудобство - для восстановления из снапшота нужно, чтобы не было процессов, которые используют аксаптовскую базу. Вручную постоянно приходится останавливать/запускать. Кроме того, мне не очень нравится килять процессы, когда можно корректно остановить. . Сделал несложный командный файл, который: 1. сначала пытается остановить известные services 2. убивает неостановленные процессы из SQL 3. восстанавливает базу из снапшота 4. пытается запустить известные services . Скачать, оставить замечания и предложения можно здесь: https://github.com/mazzy-ax/ax7db-reset =================== этот же командный файл можно использовать и для предыдущих версий аксапты, если изменить список известных служб, которые нужно остановить и запустить |
|
|
За это сообщение автора поблагодарили: trud (3), gl00mie (3), DSPIC (2). |
27.09.2016, 10:14 | #2 |
Боец
|
В общем, нужно бы пару слов про админский доступ - насколько много его "нет". |
|
27.09.2016, 12:11 | #3 |
Участник
|
Вообще круто подобное сделать кнопками в АХ. типа кнопка - Сохраниться - делает снапшот от имени аоса и Загрузить - запускает файл, который останавливает аос и IIS и делает рестор снапшота.
Думаю сделав такое ты заслужишь бесконечное уважение консультантов и ненависть админов |
|
27.09.2016, 13:54 | #4 |
Участник
|
cmd.exe можно запускать от лица обычного пользователя. проверено.
а вот на винду и на sql должен быть админский доступ, чтобы можно было останавливать/стартовать виндовые службы, килять процессы и выполнять restore. Цитата:
Цитата:
Сообщение от DSPIC
Почему CMD вместо PowerShell, на котором построено все администрирование AX7 и вообще, всего остального. PowerShell также содержит в себе всю необходимую оснастку для сервисов AX7, напр.: получить список установленных сервисов, остановить их, запустить и т.п., см. AxUpdateInstaller
Но! Поскольку я начал свой опус со слова "Консультанту", то подумал о том, что консультанты в массе своей PowerShell не знают. А тут есть хоть небольшой шанс, что консультанты смогут подправить дефолтные имя базы, имя снапшота и список служб... Да, я двадцать раз проклял про себя это решение - уж слишком много ограничений в cmd. Конечно, было интересно сделать в настолько минималистичной среде... но больше я cmd вряд ли буду использовать. Пусть консультанты знакомятся с PowerShell. Цитата:
Цитата:
в Акс7 конечно веб-страницы. И запущенный со страницы файл сможет остановить IIS... Тут конечно надо будет поразбираться с дочерними процессами... Но в предыдущих версиях такой фокус точно не пройдет. Придется килять Аксапту, запустившую файл. А килять как-то не хочется. Хочется корректно остановить то, что можно корректно остановить. cmd-файлик достаточно положить на рабочий стол. закрываешь аксапту и дабл-жамкаешь кнопкой на cmd-файлик. |
|
27.09.2016, 14:01 | #5 |
Участник
|
ну проблема в том что у консультантов как правило то доступа то нет. ни к SQL в случае с 2012, ни к терминалу где стоит SQL в случае с ах7.
ну а че, килять клиента, да. т.е. сообщение - ваш клиент сейчас завершится, запустите через минуту, соответственно на АОСе запускается код, который стопит АОС, архитектура одинакова для 2012 и ах7 |
|
27.09.2016, 14:08 | #6 |
Участник
|
Цитата:
на той машине, где консультант ставит такие бесчеловечные эксперименты, у консультанта, как правило, есть админский доступ на эту машину и на этот sql. консультант может не знать ни services.msc, ни SQL Management Studio. но чтобы консультант был настолько бесправной скотинкой, чтобы ему и на его тестовой машине доступ закрыли... это вряд ли. понятно, что у консультанта не будет админского доступа на продакт или на общий тест. Но там и ресторить нельзя ) Велкам. Форк на github приветствуется! ))) |
|
27.09.2016, 15:54 | #7 |
Боец
|
Цитата:
cmd.exe можно запускать от лица обычного пользователя. проверено.
Еще один нюанс - в AX7 чуть ли не ежедневно что-то меняют, скрипты постоянно подкручивать придется - лучше повременить. Но в рамках самообразования - отличный подход. |
|
27.09.2016, 17:15 | #8 |
Участник
|
да, это верно.
но думаю, что список служб уже устоялся. |
|
27.09.2016, 23:04 | #9 |
Модератор
|
А непосредственно самой VM сделать снэпшот и откатить не проще ?
__________________
-ТСЯ или -ТЬСЯ ? Последний раз редактировалось Vadik; 27.09.2016 в 23:22. |
|
|
За это сообщение автора поблагодарили: trud (1). |
28.09.2016, 08:12 | #10 |
Участник
|
|
|
28.09.2016, 10:06 | #11 |
Участник
|
тут два момента:
1. чтобы сделать spanshot виртуалки и откатить - нужен админский доступ на хост виртуалок. А вот туда у консультантов доступа как правило и нет. 2. я хостил свои виртуалки на своей машине. дело в том, что акс7 виртуалка работает в ажурном домене, сволочь. и было все хорошо пока домен не захотел сменить пароль зарегистрированного в домене компьютера. восстановление из контрольной точки после смены пароля привел к https://support.microsoft.com/en-us/kb/2771040 «The trust relationship between this workstation and the primary domain failed» да, я таки нашел пароль локального админа, но перерегистрировать комп в домене не получилось. в общем, если виртуалка в чужом невиртуальном домене, то возврат из контрольной точки может привести к невозможности работы с виртуалкой. |
|
28.09.2016, 10:09 | #12 |
Участник
|
не, не больше. снапшот самих виртуалок намного удобнее, конечно.
только если контролер домена на той же вируталке. ну и есть админский доступ к компу, который хостит виртуалки. Последний раз редактировалось mazzy; 28.09.2016 в 10:22. |
|
28.09.2016, 12:54 | #13 |
Участник
|
Цитата:
Делается это так 1) Создается групповая политика. Надо распространить эту политику не на все компьютеры, а только на одну виртуалку 2) В политике делается настройка https://technet.microsoft.com/en-us/...(v=ws.11).aspx 3) Перегружаемся один раз Всё. Теперь комп не меняет свой пароль в домене и можно возвращаться к снапшотам легко Это повлияет только на те снапшоты ВМ, которые сделаны после применения ГП |
|
28.09.2016, 13:30 | #14 |
Участник
|
|
|
28.09.2016, 22:01 | #15 |
Участник
|
Сергей, я с AX7 и ажурными доменами не работал, могу только делать предположения.
Вот в этой статье написано, что GP может быть доступно в Ажурном домене. https://azure.microsoft.com/en-us/do...y-ds-overview/ Как именно это сделать -- это ты работаешь в МС Но и обычные рассуждения подсказывают -- компы в ажурном домене должны как-то управляться централизованно. Надо поискать возможность настройки GP Или ажурный домен нужен только для аутентификации ? Вряд-ли Так или нет ? |
|
29.09.2016, 09:50 | #16 |
Участник
|
Цитата:
Сообщение от Kasper
Вот в этой статье написано, что GP может быть доступно в Ажурном домене.
https://azure.microsoft.com/en-us/do...y-ds-overview/ Как именно это сделать -- это ты работаешь в МС как именно сделать? дык, я уже сделал Цитата:
Сообщение от mazzy
Идея очень простая - в самом начале создаем snapshot аксаптовской базы. Не страшась последствий работаем с аксаптой. Если напортачили, восстанавливаем базу из снапшота.
... Скачать, оставить замечания и предложения можно здесь: https://github.com/mazzy-ax/ax7db-reset в МС freebird-виртуальная машина УЖЕ содержит снапшот базы ) тем, кто работает с фрибердовскими машинами даже делать снапшот не надо, можно восстанавливать из уже существующего в деплое |
|
05.10.2016, 14:25 | #17 |
Модератор
|
Думаешь, это может быть как-то связано с штатным скриптом в Add-ins ?
__________________
-ТСЯ или -ТЬСЯ ? |
|
|
За это сообщение автора поблагодарили: mazzy (5). |
05.10.2016, 14:45 | #18 |
Участник
|
|
|
05.10.2016, 15:38 | #19 |
Участник
|
|
|
Теги |
ax7, законченный пример |
|
|