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

Экземпляр Amazon EC2 - при вводе команды «top» в терминале ssh просто ничего не отображается.

Я создал микро-инстанс Amazon EC2 с Amazon AMI. Я вошел на сервер с помощью ssh-клиента. После успешного входа в систему, если я введу команду «top», верхний вывод никогда не появится, и команда никогда не вернется. Он постоянно ждет. Мне нужно убить сеанс ssh и повторно войти в систему. Конечно, никакие другие вещи, такие как java, tomcat и т. Д., Не работают.

Я перезагрузил сервер, проблема не устранена. Я, наконец, изменил экземпляр на «маленький», но даже здесь я столкнулся с той же проблемой.

Иногда кажется, что в течение дня он работает нормально без вышеуказанных проблем.

У кого-нибудь есть идеи, почему это происходит? Связано ли это с воровством или перегрузкой процессора?

РЕШЕНО: «Чтобы избежать потенциальных проблем с настройками MTU и потерей пакетов, также добавьте правило, разрешающее« Все ICMP ». После создания нового правила нажмите« Применить изменения правила »». Получил решение по этой ссылке - http://code.google.com/p/opendatakit/wiki/AggregateAWSInstall

Я подозреваю проблемы с MTU всякий раз, когда получаю такое подозрительное сетевое зависание. Пытаться catзагрузите большой текстовый файл (что-то более 4 КБ) и посмотрите, не вешает ли это сеанс. Если это так, почти наверняка у вас есть небольшой MTU где-то на пути, который вызывает у вас проблемы (тем более, что это зависит от времени суток; возможно, ваш трафик идет по другому маршруту в разное время дня). Погуглите (или задайте новый вопрос), чтобы решить, как исправить проблемы с MTU (я не собираюсь тратить много времени на то, чтобы писать все здесь, на случай, если я ошибаюсь).

Нет, но вы можете легко получить некоторую отладочную информацию о том, что подвешивает процесс.

Предположительно, вы можете войти в другой сеанс ssh (или, если нет, убедитесь, что у вас уже открыто 2 сеанса)

В общем, если я начну такой длительный процесс

sleep 1000

Я могу найти его в другом сеансе терминала вот так;

 # ps -ef  | grep sleep | grep -v grep
 root     11768 11287  0 10:36 pts/19   00:00:00 sleep 1000

Я могу проверить системный вызов, выполняемый этим процессом, с помощью strace инструмент (из пакета strace в репозитории yum / apt)

# strace -f -p 11768
Process 11768 attached - interrupt to quit
restart_syscall(<... resuming interrupted call ...>^C <unfinished ...>
Process 11768 detached