Как отлаживать сервер EC2, который перестает отвечать случайно
Я использую экземпляр t2.micro в Amazon Linux AMI 2018.03 (4.14.59-64.43.amzn1.x86_64). Он размещает веб-сайт php с использованием Apache/2.4.33 и подключается к базе данных RDS MySQL.
Время от времени сервер полностью "исчезает". Попытка отобразить веб-сайт, подключиться к FTP или даже подключиться по SSH с помощью putty all приводит к таймауту. И он не возвращается сам по себе, мне нужно вручную выключить сервер через консоль AWS и запустить его снова, после чего все возвращается на круги своя. (Интересно, что команда "перезагрузка" ничего не делает и, похоже, игнорируется сервером. Работает только его выключение и повторный запуск)
Проблема в том, что я проверил все файлы журналов, которые смог найти, и, кажется, ничего не происходит, когда сервер перестает отвечать, поэтому я понятия не имею, как их устранить. При проверке метрик Cloudwatch загрузка процессора и сети также кажется нормальной, когда сервер не отвечает.
Кажется, это происходит, когда я запускаю определенный PHP-скрипт с большим объемом памяти (но случайно я могу запустить этот скрипт без проблем), поэтому я подозреваю, что это может быть связано с заполнением ОЗУ. Но если система закрывает что-то для освобождения памяти, не будет ли это отображаться в журналах?
Как можно было бы отладить в такой ситуации?
Спасибо
Вот единственное, что есть в журнале сообщений вокруг последнего вхождения:
Sep 6 15:11:34 compta dhclient[2266]: PRC: Renewing lease on eth0.
Sep 6 15:11:34 compta dhclient[2266]: XMT: Renew on eth0, interval 10970ms.
Sep 6 15:11:34 compta dhclient[2266]: RCV: Reply message on eth0 from ****::***:****:****:****.
Sep 6 15:11:34 compta ec2net: [get_meta] Trying to get http://***.***.***.***/latest/meta-data/network/interfaces/macs/**:**:**:**:**:**/local-ipv4s
Sep 6 15:11:34 compta ec2net: [rewrite_aliases] Rewriting aliases of eth0
Sep 6 15:11:34 compta ec2net: [get_meta] Trying to get http://***.***.***.***/latest/meta-data/network/interfaces/macs/**:**:**:**:**:**/subnet-ipv4-cidr-block
Sep 6 15:22:13 compta kernel: imklog 5.8.10, log source = /proc/kmsg started.
Sep 6 15:22:13 compta rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="2356" x-info="http://www.rsyslog.com"] start
Sep 6 15:22:13 compta kernel: [ 0.000000] Linux version 4.14.59-64.43.amzn1.x86_64 (mockbuild@gobi-build-64010) (gcc version 7.2.1 20170915 (Red Hat 7.2.1-2) (GCC)) #1 SMP Thu Aug 2 21:29:33 UTC 2018
Sep 6 15:22:13 compta kernel: [ 0.000000] Command line: root=LABEL=/ console=tty1 console=ttyS0 selinux=0 LANG=en_US.UTF-8 KEYTABLE=us
Sep 6 15:22:13 compta kernel: [ 0.000000] x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers'
15:22 - это когда я перезагружаю сервер.
Просто понял кое-что: аренда eth0 обычно обновляется ~ каждую минуту, но останавливается, как только сервер перестает отвечать.
2 ответа
Как и в предыдущем комментарии, я перейду к ответу, чтобы вы могли пометить правильно. Это означает, что люди не придут, чтобы попытаться помочь.
Я предлагаю вам установить некоторое пространство подкачки, чтобы проверить, если это проблема с оперативной памятью. У меня есть учебник о том, как сделать это здесь, но это очень распространенная вещь, так как есть сотни ресурсов, рассказывающих, как это сделать.
Договорились о проверке кредитов ЦП на экземпляре t2. Регулирование может иметь такое поведение.
Проверьте эту ссылку: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/t2-credits-baseline-concepts.html