Điểm:0

Apache2 trên Ubuntu EC2 ngừng hoạt động và không khởi động lại

lá cờ cn

Môn lịch sử:

Chúng tôi đã chuyển Bản cài đặt Codeigniter 3 từ Bluehost sang T3.2xlarge. Phiên bản duy nhất đó đang lưu trữ apache2 và máy chủ mysql dưới dạng cơ sở dữ liệu cục bộ.

Trên Bluehost, phiên bản đang chạy tốt, quá trình di chuyển đã được thực hiện do bản thân Bluehost đã ngừng hoạt động và chúng tôi muốn dịch vụ lưu trữ đáng tin cậy hơn.


Lỗi

Kể từ khi di chuyển, Trang ngẫu nhiên ngừng hoạt động hoàn toàn. Đang cố gắng khởi động lại apache2 với:

khởi động lại dịch vụ sudo apache2

Không hoạt động, nó yêu cầu khởi động lại toàn bộ phiên bản EC2 để dịch vụ chạy lại. Sau khi khởi động lại EC2, apache2 và mysql đang chạy và trang vẫn hoạt động mà không khởi động dịch vụ sau khi khởi động lại phiên bản.


Nỗ lực gỡ lỗi 1

Vì trang bị sập khi các cron cường độ cao của cơ sở dữ liệu được chạy, tôi cho rằng máy chủ mysql là nút cổ chai. Việc di chuyển toàn bộ cơ sở dữ liệu sang RDS không có máy chủ sẽ loại bỏ tất cả các tắc nghẽn liên quan đến cơ sở dữ liệu. Cơ sở dữ liệu cron cường độ cao tương tự đang hoàn thiện. Để loại bỏ thêm cron là lý do khiến hệ thống ngừng hoạt động, tôi đã sao chép EC2 và sử dụng bản sao này để chạy cron trong khi bản gốc lưu trữ trang web mà miền đang trỏ đến.

Tuy nhiên, mất điện ngẫu nhiên vẫn tiếp tục.


Nỗ lực gỡ lỗi 2

Giả sử đó là vấn đề về bộ nhớ, sau khi kiểm tra phpinfi.php, tôi thấy rằng PHP có 128Mb RAM (trên máy 32Gb), vì vậy hãy xem thêm RAM có giúp được gì không:

  1. memory_limit được đặt thành 8192Mb
  2. khởi động lại EC2
  3. khởi động lại php7.4-fpm
  4. khởi động lại apache2

phpinfo đã xác nhận memory_limit được đặt thành 8192M.

Mất điện ngẫu nhiên vẫn tiếp tục.


Nỗ lực gỡ lỗi 3

Kiểm tra lệnh:

sudo apache2ctl -t

trả lại:

Cú pháp OK

Kiểm tra lệnh:

nano /var/log/Apache2/error.log

chứa:

[mpm_worker:notice] AH00295: bắt được SIGTERM, đang tắt

Vì vậy, tôi cho rằng Apache bằng cách nào đó đang tắt vì một lý do nào đó nhưng không thể khởi động lại.

Kiểm tra lệnh:

khởi động lại dịch vụ sudo apache2

không ném lỗi

Kiểm tra lệnh:

sudo apache2ctl khởi động lại

không ném lỗi

Kiểm tra lệnh:

/usr/sbin/apache2 -V

trình diễn:

[core:warn] [pid 24560] AH00111: Biến cấu hình ${APACHE_RUN_DIR} là không xác định

apache2: Lỗi cú pháp trên dòng 81 của /etc/apache2/apache2.conf: DefaultRuntimeDir phải là

một thư mục hợp lệ, tuyệt đối hoặc liên quan đến ServerRoot

Phiên bản máy chủ: Apache/2.4.41 (Ubuntu)

Máy chủ được xây dựng: 2022-03-16T16:52:53

Số ma thuật mô-đun của máy chủ: 20120211:88

Máy chủ đã tải: APR 1.6.5, APR-UTIL 1.6.1

Được biên dịch bằng: APR 1.6.5, APR-UTIL 1.6.1

Kiến trúc: 64-bit

MPM máy chủ:

Máy chủ được biên dịch với ....

-D APR_HAS_SENDFILE

-D APR_HAS_MMAP

-D APR_HAVE_IPV6 (đã bật địa chỉ được ánh xạ IPv4)

-D APR_USE_SYSVSEM_SERIALIZE

-D APR_USE_PTHREAD_SERIALIZE

-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT

-D APR_HAS_OTHER_CHILD

-D AP_HAVE_RELIABLE_PIPED_LOGS

-D NĂNG ĐỘNG_MODULE_LIMIT=256

-D HTTPD_ROOT="/etc/Apache2"

-D SUEXEC_BIN="/usr/lib/apache2/suexec"

-D DEFAULT_PIDLOG="/var/run/apache2.pid"

-D DEFAULT_SCOREBOARD="log/Apache_runtime_status"

-D DEFAULT_ERRORLOG="log/error_log"

-D AP_TYPES_CONFIG_FILE="mime.types"

-D SERVER_CONFIG_FILE="apache2.conf"

Nơi tôi có thể thấy 2 điều:

  • có vấn đề với ${APACHE_RUN_DIR}
  • Máy chủ MPM không trả lại MPM

Kiểm tra lệnh:

 apache2 -l

trả lại:

Được biên dịch trong các mô-đun:
lõi.c
mod_so.c
mod_watchdog.c
http_core.c
mod_log_config.c
mod_logio.c
mod_version.c
mod_unixd.c

Điều gì không hiển thị một mô-đun MPM.

Kiểm tra lệnh:

apache2 -l
apache2ctl -l

trả lại:

Được biên dịch trong các mô-đun:
lõi.c
mod_so.c
mod_watchdog.c
http_core.c
mod_log_config.c
mod_logio.c
mod_version.c
mod_unixd.c

Kiểm tra lệnh:

truy vấn a2 -M

trả lại:

người làm việc


Câu hỏi:

Và đây là nơi tôi đã bị mắc kẹt bây giờ. Có điều gì khác mà tôi có thể kiểm tra hoặc đọc từ lần thử gỡ lỗi 3 để xem tại sao apache dừng/không khởi động lại và yêu cầu khởi động lại toàn bộ máy chủ không?

Wilson Hauck avatar
lá cờ jp
URL này có thể giúp bạn giải quyết biến thiếu APACHE_RUN_DIR. https://www.osradar.com/ah00111-config-variable-apache_run_dir-is-not-defined/ Chúc may mắn. Bao gồm một vấn đề một ngày thường = tiến bộ.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.