Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    PHP Fatal error: Allowed memory size

    Scheduled Pinned Locked Moved Russian
    15 Posts 4 Posters 1.5k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      DesCod
      last edited by

      Доброго всем времени! Сломал мозг, нужна помощь. Ситуация следующая:
      Три года в качестве шлюза используем PFS на довольно неплохом железе - core i5, 8Гб озу, 220Гб SSD, 4х портовая сетевушка intel. До лета сего года шлюз стабильно работал на предыдущей версии PFS, аптайм был по 200+ дней, никаких проблем.
      Летом начало мозолить глаза невозможность обновления модулей, стал просить обновить версию PFS. Обновил, внёс небольшие изменения в конфигурацию (добавились 2 подсети с отдельным шлюзом).
      И начались проблемы - PFS самостоятельно может уйти в ребут и зависнуть, либо просто наглухо вешается веб морда. Поменял SSD две недели полёт нормальный, думал решилась проблема... нет! Вчера дважды за день та же история

      Crash report begins. Anonymous machine information:

      amd64
      12.2-STABLE
      FreeBSD 12.2-STABLE fd0f54f44b5c(RELENG_2_5_0) pfSense

      Crash report details:

      PHP Errors:
      [05-Dec-2021 00:10:00 Europe/Moscow] PHP Fatal error: Uncaught Error: Call to undefined function is_array() in /etc/inc/service-utils.inc:209
      Stack trace:
      #0 /etc/inc/service-utils.inc(523): is_service_running('suricata')
      #1 /usr/local/pkg/servicewatchdog.inc(100): get_service_status(Array)
      #2 /usr/local/pkg/servicewatchdog_cron.php(30): servicewatchdog_check_services()
      #3 {main}
      thrown in /etc/inc/service-utils.inc on line 209
      [05-Dec-2021 00:15:00 Europe/Moscow] PHP Fatal error: Allowed memory size of 536870912 bytes exhausted (tried to allocate 562949953421360 bytes) in /etc/inc/ipsec.inc on line 25

      No FreeBSD crash data found.

      Куда копать?

      viktor_gV K 2 Replies Last reply Reply Quote 0
      • viktor_gV
        viktor_g Netgate @DesCod
        last edited by

        @descod Версия pfSense? Что за пакеты установлены? Распишите подробнее вашу конфигурацию.

        D 1 Reply Last reply Reply Quote 0
        • K
          Konstanti @DesCod
          last edited by

          @descod
          Добрый в догонку вопрос
          есть ли что-нибудь в папке
          /var/crash ?

          если есть - выложите , Пожалуйста , этот файл сюда

          D 1 Reply Last reply Reply Quote 0
          • D
            DesCod @viktor_g
            last edited by

            @viktor_g said in PHP Fatal error: Allowed memory size:

            @descod Версия pfSense? Что за пакеты установлены? Распишите подробнее вашу конфигурацию.

            "...12.2-STABLE
            FreeBSD 12.2-STABLE fd0f54f44b5c(RELENG_2_5_0) pfSense...."

            arpwatch net-mgmt 0.2.0_6 This package contains tools that monitors ethernet activity and maintains a database of ethernet/ip address pairings. It also reports certain changes via email.

            Package Dependencies:
            arpwatch-3.1 
            Cron sysutils 0.3.7_5 The cron utility is used to manage commands on a schedule.
            nmap security 1.4.4_2 NMap is a utility for network exploration or security auditing.
            It supports ping scanning (determine which hosts are up), many port scanning techniques (determine what services the hosts are offering), version detection (determine what application/service is running on a port), and TCP/IP fingerprinting (remote host OS or device identification). It also offers flexible target and port specification, decoy/stealth scanning, SunRPC scanning, and more.

            Package Dependencies:
            nmap-7.91 
            Service_Watchdog sysutils 1.8.7_1 Monitors for stopped services and restarts them.
            suricata security 6.0.3_3 High Performance Network IDS, IPS and Security Monitoring engine by OISF.

            Package Dependencies:
            suricata-6.0.3_1

            1 Reply Last reply Reply Quote 0
            • D
              DesCod @Konstanti
              last edited by

              @konstanti said in PHP Fatal error: Allowed memory size:

              @descod
              Добрый в догонку вопрос
              есть ли что-нибудь в папке
              /var/crash ?

              если есть - выложите , Пожалуйста , этот файл сюда

              там пусто

              werterW 1 Reply Last reply Reply Quote 0
              • werterW
                werter @DesCod
                last edited by werter

                Добрый.
                @descod

                1.Сделайте бэкап конфига (лучше ДВА - с доп. пакетами и без).
                2. Разверните свежий пф.
                3. Подкиньте бэкап.

                Не тратьте время.

                D 1 Reply Last reply Reply Quote 0
                • D
                  DesCod @werter
                  last edited by

                  @werter , приветствую!
                  Примерно так и сделал, засейвил полный бэкап, удалил оттуда весь мусор что оставался от тестов различных пакетов, залил на PFS. Прошло около суток, пока полёт нормальный, ждём.

                  K werterW 2 Replies Last reply Reply Quote 0
                  • K
                    Konstanti @DesCod
                    last edited by Konstanti

                    @descod
                    Добрый день
                    Меня больше всего смущают неожиданные перезагрузки устройства . На ровном месте такое не случается . Возможно , что проблема в железе есть .
                    И начались проблемы - PFS самостоятельно может уйти в ребут и зависнуть
                    Ошибка PHP , которую Вы показали , очень удивительная сама по себе .

                    D 1 Reply Last reply Reply Quote 0
                    • werterW
                      werter @DesCod
                      last edited by werter

                      @descod said in PHP Fatal error: Allowed memory size:

                      удалил оттуда весь мусор что оставался от тестов различных пакетов

                      Достаточно при выгрузке бэкапа поставить ОДНУ галку, чтобы инф-ция о доп. пакетах не попала в этот бэкап. Руками править не стоит без особой надобности.

                      Зы. Новый пф на zfs установили? Она стабильнее ufs в плане резкого пропадания эл-ва и постепенного отказа диска (появления бэдов). Можно также на софтовый zfs raid развертывать, что добавляет отказоустойчивости.

                      D 1 Reply Last reply Reply Quote 0
                      • D
                        DesCod @werter
                        last edited by DesCod

                        @werter

                        Достаточно при выгрузке бэкапа поставить ОДНУ галку, чтобы инф-ция о доп. пакетах не попала в этот бэкап. Руками править не стоит без особой надобности.

                        У меня были установлены и настроены несколько пакетов, не было желания опять с нуля их настраивать. На мой взгляд проще удалить 40кб мусора :) Тем более его хорошо видно в бэкапе.
                        В серверной мощный ИБП, PFS установлен на SSD.

                        werterW 1 Reply Last reply Reply Quote 0
                        • D
                          DesCod @Konstanti
                          last edited by

                          @konstanti said in PHP Fatal error: Allowed memory size:

                          @descod
                          Добрый день
                          Меня больше всего смущают неожиданные перезагрузки устройства . На ровном месте такое не случается . Возможно , что проблема в железе есть .
                          И начались проблемы - PFS самостоятельно может уйти в ребут и зависнуть
                          Ошибка PHP , которую Вы показали , очень удивительная сама по себе .

                          Склонен думать всё же, что это "замусоренный" конфиг от предыдущего PFS так себя проявлял.

                          1 Reply Last reply Reply Quote 0
                          • werterW
                            werter @DesCod
                            last edited by werter

                            @descod said in PHP Fatal error: Allowed memory size:

                            PFS установлен на SSD.

                            И TRIM вкл при этом? Логи в ram вынесены с периодическим сбрасыванием на диск? Что за ФС на пф?

                            pic.png

                            D 2 Replies Last reply Reply Quote 0
                            • D
                              DesCod @werter
                              last edited by

                              @werter said in PHP Fatal error: Allowed memory size:

                              @descod said in PHP Fatal error: Allowed memory size:

                              PFS установлен на SSD.

                              И TRIM вкл при этом? Логи в ram вынесены с периодическим сбрасыванием на диск? Что за ФС на пф?

                              pic.png

                              ... мда... и как жеж предыдущая версия PFS почти два года отработала не зная об этом?))
                              var и tmp конечно на раме, почти 2Гб в сумме (из 8) раз в 12 часов сброс. Трим даже теоретически не имеет смысла включать - из 220Гб занято всего 3%.

                              werterW 1 Reply Last reply Reply Quote 0
                              • D
                                DesCod @werter
                                last edited by

                                @werter
                                2021-12-07_21-10-50.png

                                1 Reply Last reply Reply Quote 0
                                • werterW
                                  werter @DesCod
                                  last edited by werter

                                  Добрый.
                                  @descod said in PHP Fatal error: Allowed memory size:

                                  Трим даже теоретически не имеет смысла включать

                                  Вы считаете общие рекомендации ВСЕХ вендоров (и MS и nix) вкл. поддержку trim глупостью?

                                  TRIM – это просто обновление статуса: когда файловая система удаляет блок, он также уведомляет устройство о том, что блок больше не используется. Затем прошивка SSD может выполнять выравнивание в фоновом режиме. Без TRIM он не сможет определить, все еще используется этот блок.

                                  На пальцах. Без ТРИМ ОС "не понимает" , что данные удалены и можно использовать это место для новых данных.

                                  Покажите вывод tunefs -p /dev/<partition-name>

                                  1 Reply Last reply Reply Quote 0
                                  • First post
                                    Last post
                                  Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.