ansibleのテストしてたら出てきてなんじゃいなって感じでした。
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/backward/backward_warning.h:28:2: 警告: #warning This file includes at least one deprecated or antiquated header which may be removed without further notice at a future date. Please use a non-deprecated interface with equivalent functionality instead. For a listing of replacement headers and interfaces, consult the file backward_warning.h. To disable this warning use -Wno-deprecated. c++: 内部エラー: 強制終了 (プログラム cc1plus) 完全なバグレポートを送ってください。 <http://bugzilla.redhat.com/bugzilla> に手順が書いてあります。 rake aborted! Command failed with status (1): [c++ -o buildout/support-binaries/CoreMain.o -Isrc/agent -Isrc/cxx_supportlib -Isrc/cxx_supportlib/vendor-copy -Isrc/cxx_supportlib/vendor-modified -Isrc/cxx_supportlib/vendor-modified/libev -Isrc/cxx_supportlib/vendor-copy/libuv/include -D_REENTRANT -I/usr/local/include -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-long-long -Wno-missing-field-initializers -feliminate-unused-debug-symbols -feliminate-unused-debug-types -fvisibility=hidden -DVISIBILITY_ATTRIBUTE_SUPPORTED -Wno-attributes -ggdb -DHAS_ALLOCA_H -DHAVE_ACCEPT4 -DHAS_SFENCE -DHAS_LFENCE -DPASSENGER_DEBUG -DBOOST_DISABLE_ASSERTS -DHASH_NAMESPACE="__gnu_cxx" -DHASH_MAP_HEADER="<hash_map>" -DHASH_MAP_CLASS="hash_map" -DHASH_FUN_H="<hash_fun.h>" -c src/agent/Core/CoreMain.cpp] Tasks: TOP => apache2 => buildout/support-binaries/PassengerAgent => buildout/support-binaries/CoreMain.o (See full trace by running task with --trace) -------------------------------------------- It looks like something went wrong
メモリが足りない
[root@centos-512mb ~]# free -m total used free shared buffers cached Mem: 490 73 417 0 1 21 -/+ buffers/cache: 49 440 Swap: 0 0 0
digitaloceanのRAM512Mbyteな環境に向かってpassenger-install-apache2-module実行すると再現するので、サーバ上でdmesg確認してOOMkillerさんにプロセス停止させられていると判明した次第。
[22651] 0 22651 47354 3362 0 0 0 passenger-insta [23233] 0 23233 38205 3443 0 0 0 ruby [23765] 0 23765 25309 225 0 0 0 c++ [23766] 0 23766 132772 102855 0 0 0 cc1plus Out of memory: Kill process 23766 (cc1plus) score 791 or sacrifice child Killed process 23766, UID 0, (cc1plus) total-vm:531088kB, anon-rss:405516kB, file-rss:5904kB
swapを作る
足りなきゃ持ってくりゃいいんやで、ってことでswapを作ります。
[root@centos-512mb ~]# dd if=/dev/zero of=/tmp/swapfile bs=1M count=1024 1024+0 records in 1024+0 records out 1073741824 bytes (1.1 GB) copied, 4.89889 s, 219 MB/s [root@centos-512mb ~]# chmod 600 /tmp/swapfile [root@centos-512mb ~]# mkswap /tmp/swapfile mkswap: /tmp/swapfile: warning: don't erase bootbits sectors on whole disk. Use -f to force. スワップ空間バージョン1を設定します、サイズ = 1048572 KiB ラベルはありません, UUID=277ad9de-7715-486b-bafd-39eccb676505 [root@centos-512mb ~]# swapon /tmp/swapfile
できました、確認してみましょう!
[root@centos-512mb ~]# free -m total used free shared buffers cached Mem: 490 484 6 0 0 420 -/+ buffers/cache: 62 428 Swap: 1023 0 1023
増えていますね。これでOOMkillerも早々呼ばれません。
ちなみに
これ対策していないので、ホスト再起動するとswapが消えますのでご注意を。