Очень медленный переход на другой ресурс AWS RDS SQL Server

#sql-server #amazon-web-services

#sql-сервер #amazon-web-services

Вопрос:

Недавно мы изменили размер одного из наших экземпляров RDS SQL Server с несколькими AZ. С целью согласования наших потребностей в ресурсах с возможностями экземпляра… В итоге мы работали над экземпляром большего размера, чем нам было нужно, и увидели очевидную экономию средств. Наш бизнес носит сезонный характер, и мы ожидаем, что в этом году может потребоваться расширение.

Согласно AWS, процесс перехода на другой ресурс обычно занимает около 60-120 секунд. В этом окне мы знали, что наше приложение не сможет взаимодействовать с базой данных. Реально мы ожидали менее 5 минут, однако фактическое время составило около 20 минут, прежде чем наши приложения смогли подключиться и запросить базы данных. Это соответствует времени, в течение которого AWS сообщила о завершении перехода на другой ресурс.

Мне интересно узнать, был ли у кого-нибудь еще подобный опыт? Можно ли что-нибудь изменить в настройках, чтобы сократить время отработки отказа? Это факторы, находящиеся под нашим контролем, которые могут сократить время отработки отказа.

Дополнительная информация: у нас есть около 25 баз данных, размещенных на этом экземпляре. Мы работали с экземпляром db.m4.2xlarge

Комментарии:

1. Сейчас мне неясны особенности реализации, но меня интересует одна вещь: как выглядит запись DNS для прослушивателя? В «обычной» группе доступности у вас есть возможность указать конфигурацию с несколькими подсетями, которая затем публикует все возможные IP-адреса в DNS. По умолчанию публикуется только текущий IP-адрес. Если используется последнее, срок действия TTL DNS может истечь, если / когда произойдет отказоустойчивость.

Ответ №1:

Я вообще не специалист по SQL-серверу, так что отнеситесь к этому с недоверием.

RDS для SQL Server работает иначе, чем другие ядра баз данных RDS, и статья, на которую вы ссылаетесь, очень общая. SQL Server использует либо группы постоянной доступности, либо зеркальное отображение базы данных в зависимости от ваших настроек, поэтому это может быть фактором, влияющим на время отработки отказа. Документация по настройкам RDS SQL Server Multi-AZ довольно обширна, поэтому вы можете ознакомиться с ней.

Единственный упомянутый там намек:

  • Время отработки отказа зависит от времени, необходимого для завершения процесса восстановления. Большие транзакции увеличивают время отработки отказа.

Если у вас есть служба поддержки AWS в вашей учетной записи, я бы попросил у них подробности, они лучше разбираются в основных проблемах и должны быть в состоянии рассказать вам больше — в конце концов, это управляемый сервис, и если он не обеспечивает время отработки отказа обычно 60-120 секунд, я бы попросил службупоставщик, что пошло не так, не означает, что это обязательно их вина, но они могут, по крайней мере, указать вам на основную причину 🙂

Комментарии:

1. Спасибо, Морис, это было полезно.