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

Скорость загрузки EC2 резко падает для одного процесса scp

Я запускаю пакетные вычислительные задания на экземплярах EC2 (в частности, i3.8xlarge) и загружаю большие (10 ГБ) двоичные файлы в каждый экземпляр. У нас в офисе есть гигабит (Century Link), и я обычно загружаю (через scp) эти файлы в EC2 со скоростью 30-40 Мбит / с. Локальный компьютер - это Linux-сервер RH7. Однако часто наблюдаю любопытную вещь: скорость отдачи резко падает до 300-400 кбит / с.

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

Я подозреваю ваш Пакетный баланс EBS закончился. Эта ссылка в блоге дает вам инструкции о том, как показать свои кредиты за объем EBS.

В типы томов На странице есть немного информации по EBS и разрыву.

Тома SSD общего назначения (GP2) предлагают экономичное хранилище, которое идеально подходит для широкого спектра рабочих нагрузок. Эти тома обеспечивают задержку в несколько миллисекунд и возможность увеличения до 3000 операций ввода-вывода в секунду в течение продолжительных периодов времени. От минимум 100 IOPS (при 33,33 ГиБ и ниже) до максимума 16 000 IOPS (при 5334 ГиБ и выше) базовая производительность линейно масштабируется на уровне 3 IOPS на ГиБ размера тома. AWS разрабатывает тома GP2, чтобы обеспечить их производительность в 99% случаев. Том GP2 может иметь размер от 1 ГиБ до 16 ТиБ.

Короче говоря, вы накапливаете пакетные кредиты, и по мере того, как вы много используете свой диск, у вас заканчиваются кредиты. Когда это произойдет, вы получите базовую производительность. Чем больше размер диска, тем больше кредитов и тем меньше вероятность того, что они закончатся. Есть разные статьи (например, вот этот) вы можете прочитать о них.

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

Решение здесь, вероятно, состоит в том, чтобы буферизовать ваши записи в хранилище экземпляров, а затем передать их в том EBS в фоновом режиме. rsync может подойти.

Итак, я смог «решить» (?) Проблему, записав файлы на встроенные твердотельные накопители NVMe вместо хранилища EBS. Тем не менее, в этом нет смысла. Несомненно, у EBS возможности записи лучше, чем 300-400 кбит / с!