J3qx

information archive

Тестирование 1С в сценариях

Posted by j3qx на Январь 29, 2017

Тестирование 1С в сценариях

Сценарии

  1. Управляемое переключение на зеркало и возврат обратно
  2. Аварийное переключение на зеркало и возврат обратно

Сценарий 1. Управляемое переключение на зеркало

Данные

Имеем тестовую базу DRP-1C-01на сервере 1С, физически база находится на nodeA, для этой базы настроен mirror, ведущий на nodeB.

— сервер приложений 1С pd-app-1c-02v

nodeA — сервер БД pd-sql-02

nodeB — сервер БД – pd-db-04

DBA – администратор БД

Sysadmin – системный администратор

1Сprog – Программист 1С

DRP-1C-01– база, на которой будем проводить тестирование

Prinvipal – называется сервер/база на котором в данный момент активная копия зеркальной базы, с которой все остальные синхронизируются

Сценарий

Эмулируем управляемый переход на зеркало. DBA производит переключение principal на nodeB. 1Sprog вносит на сервере 1С, входит в 1С, вносит изменения для проверки. DBA снова переключает principal на nodeA, 1Сprog вносит изменения на сервере 1С. 1Cprog входит в 1C и проверяет, что те изменения что он внес- остались

Время


Около 10 минут на тесте

Пошаговый план

  • Переносим Prinvipal на резервный сервер, для этого

На основном (Prinvipal) сервере, в контекстном меню базы: Tasks — Mirror

В диалоге нажимаем Failover

  • Перенастраиваем сервер 1С, чтобы он указывал на сервер БД nodeB.

Запускаем «Администрирование серверов 1С Предприятия» и переходим в «Информационные базы», там находим нашу базу, правой кнопкой мыши на ней и выбираем «properties»

Дальше возможно два варианта, вы попадаете в свойства базы и правите поля, либо запрос логина и пароля. Если вы их знаете, то вводите их и попадаете в свойство базы 1С, если нет, то переходите к пункту ниже

МЕНЯЕМ СВОЙСТВА БАЗЫ 1С

  • Ограничиваем доступ к базе ставим галочки:
    • Блокировка регламентых заданий включена
  • Меняем поле «Сервер баз данных», указываем адрес нового сервера.
  • При необходимости меняем пользователя БД и его пароль.
  • Нажимаем ОК.

  • Если логин\пароль не известен, то вместо properties, выбираем delete. В открывшемся окне нажимаем Да, после чего появится окно, предлагающее, несколько вариантов удаления. Нам нужен вариант «Оставить без изменений»

Вновь создаем базу 1С, в нашем примере drp-1c-01 и заполняем
необходимы атрибуты

  • Запускаем 1С клиент, если появилось приглашение ввода имени пользователя и пароля то считается что с базой все в порядке, сервер 1С ее видит нормально.
  • 1Sprog проводят дополнительные проверки, что бы убедиться, что с базой все в порядке.

ОБРАТНОЕ ПЕРЕКЛЮЧВЕНИЕ ПРОИЗВОДИТСЯ ТАК ЖЕ

Сценарий 2. Аварийное переключение на зеркало и обратно

Данные

Имеем тестовую базу DRP-1C-01на сервере 1С, физически база находится на nodeA, для этой базы настроен mirror, ведущий на nodeB.

— сервер приложений 1С pd-app-1c-02v

nodeA — сервер БД td-db-05v

nodeB — сервер БД – pd-db-04

DBA – администратор БД

Sysadmin – системный администратор

1Сprog – Программист 1С

DRP-1C-01– база, на которой будем проводить тестирование

Prinvipal – называется сервер/база на котором в данный момент активная копия зеркальной базы, с которой все остальные синхронизируются

Сценарий

Эмулируем отказ principal сервера с базой 1С. DBA – пытается принудительно сделать nodeB – Prinvipal, в случае неудачи, DBA отключает зеркалирование. 1Cprog – перенастраивает сервер 1С, чтобы для базы DRP-1C-01, он смотрел на nodeB, заходит в 1С, вносит тестовые изменения. Syadmin – включает nodeA, DBA – переводит старую базу DRP-1C-01на nodeA в режим slave. Ожидаем когда базы синхронизиуется. После этого DBA делает NodeA Prinvipal. 1Sprog – перенастраивает сервер 1С, запускает 1С и проверяет наличия тестовых записей

Время

Время на тесте около 10 минут, при подготовленном для переключении 1С

Пошаговый план

Эмулируем отказ nodeA

Видим база на nodeB стала disconnected/ In recovery

Видим отказ Prinvipal (nodeA), принудительно переключаем на nodeB

/*конектимся в SQL Management к nodeB, нажимаем NewQuery


/* Принудительно сделать основным и приостановить зеркалирование */

USE
master;

ALTER
DATABASE
[1S-base-name]
SET
PARTNER
FORCE_SERVICE_ALLOW_DATA_LOSS;

GO

База перейдет в режим In Recovery

МЕНЯЕМ СВОЙСТВА БАЗЫ 1С

  • Ограничиваем доступ к базе ставим галочки:
    • Блокировка регламентых заданий включена
  • Меняем поле «Сервер баз данных», указываем адрес нового сервера.
  • При необходимости меняем пользователя БД и его пароль.
  • Нажимаем ОК.

  • Если логин\пароль не известен, то вместо properties, выбираем delete. В открывшемся окне нажимаем Да, после чего появится окно, предлагающее, несколько вариантов удаления. Нам нужен вариант «Оставить без изменений»

Вновь создаем базу 1С, в нашем примере drp-1c-01 и заполняем
необходимы атрибуты

  • Запускаем 1С клиент, если появилось приглашение ввода имени пользователя и пароля то считается что с базой все в порядке, сервер 1С ее видит нормально.
  • 1Sprog проводят дополнительные проверки, что бы убедиться, что с базой все в порядке.

ВАЖНО: НА ПРОДУКТИВЕ ПЕРЕД ВКЛЮЧЕНИЕ СЕРВЕРА – ОБЯЗАТЕЛЬНО ОТКЛЮЧИТЬ СЕТЬ, НЕОБХОДИМО УБЕДИТСЯ, ЧТО ДАННЫЕ ФИЗИЧЕСКИ НА ДИСКАХ БЫВШЕГО Prinvipal НЕ ПОВРЕДЕННЫ

Эмулируем восстановление nodeA

База на nodeB перейдет в режим Principal/Suspended, а на nodeB – Mirror, Suspended/ Restoring

Переводом зеркало в рабочий режим

На nodeB идем в настройки Mirror и нажимаем resume

Ожидаем прохождение синхронизации

При необходимости, переводим Prinvipal на nodeA, руководствуясь сценарием 1


Реклама

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход / Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход / Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход / Изменить )

Google+ photo

Для комментария используется ваша учётная запись Google+. Выход / Изменить )

Connecting to %s

 
%d такие блоггеры, как: