Назад | Перейти на главную страницу

Заблокировать доступ к TFS во время обновления?

У нас есть TFS-сервер с TFS 2015 RTW. Мы действительно должен обновить это и планирую сделать это на следующей неделе.

Мы будем выполнять обновление в обычные рабочие часы, чтобы гарантировать наличие большого количества «пожарных» на случай, если что-то пойдет не так, и мы планируем сделать обновление с минимальным воздействием, насколько это возможно - переход на обновление 4 вместо обновления до более поздняя версия в это время.

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

Есть ли разумный способ ограничить доступ к TFS во время процесса обновления? На самом деле мы получаем доступ к серверу через некоторые DNS-псевдонимы (tfs.example.com и data.tfs.example.com для уровня приложения и уровня данных соответственно), и я подумал о том, чтобы повторно указать эти псевдонимы в другом месте во время обновления. Но потом вспомнил, что сама TFS "знает" эти псевдонимы - например, URL-адрес уведомления и URL-адрес веб-доступа используют первый псевдоним, поэтому меня беспокоит, что их изменение может повлиять на результат обновления.

Могу ли я что-то еще сделать, кроме того, чтобы убедиться, что письмо действительно строго написано?

Я закончил тем, что изменил настройки для сайта «Team Foundation Server» в IIS, чтобы ограничить, какие IP-адреса могут связываться с сайтом.

В диспетчере IIS после выбора сайта в области IIS я выбираю «IP-адрес и ограничения домена». Я добавил разрешенные записи для собственного IP-адреса серверов и адреса обратной связи, а также IP-адреса для моей собственной машины, с которой я должен был выполнять приемочное тестирование. Затем я отредактировал параметры функции таким образом, чтобы неуказанные клиенты были запрещены, а не разрешены, а затем подтвердил, что к самой TFS можно получить доступ только с самого сервера приложений и с моей машины.

Меня меньше беспокоили люди, обращающиеся к сайтам Sharepoint или Reporting Services, относящимся к TFS, во время обновления, поскольку в нашей настройке они в основном игнорируются, но аналогичные ограничения могли быть применены и к этим сайтам.

тем не мениеСледует отметить, что во время обновления сайт IIS «Team Foundation Server» создается заново; и поэтому мне пришлось внести те же изменения во второй раз, и было небольшое окно возможностей, когда кто-то мог получить доступ к недавно обновленной службе.

Так что это не 100% пуленепробиваемое.

Я думаю, вы планируете на месте обновление, и вы используете SQL Server 2014. Если это так, выполните следующие действия:

  1. остановить использование TFS TFSServiceControl quiesce
  2. запустить полное резервное копирование с помощью TFSBackup или через консоль администратора
  3. установить новую TFS на уровне приложений (AT)
  4. запустите мастер обновления

Шаг 1 полностью остановит TFS, и никто не сможет получить к нему доступ, кроме как через инструменты локального администратора. Шаг 4 проходит через несколько этапов: сначала настроим AT, затем запланируем задания обновления. TFS будет запущена и работает до конца первого этапа, но Коллекции не будут доступны, пока с ними не будет завершено задание по обновлению, поэтому меньшие Коллекции будут подключены раньше.