web-dev-qa-db-ja.com

smtpdデーモンフォークが多すぎますか?

ウェブサーバーのプロセスリストにsmtpdからのフォークがたくさんあります。これは何を意味するのでしょうか?

メールボックスがいっぱいですか?

   postfix   2662  0.0  0.9 106336  4856 ?        S    17:37   0:00 smtpd -n 
   smtp -t inet -u -c -o stress yes
   postfix   2800  0.0  0.9 106336  4860 ?        S    15:59   0:00 smtpd -n 
   smtp -t inet -u -c -o stress yes
   postfix   3644  0.0  0.9 106336  4864 ?        S    13:47   0:00 smtpd -n 
   smtp -t inet -u -c -o stress 
   postfix   3732  0.0  0.9 106336  4872 ?        S    14:36   0:00 smtpd -n 
   smtp -t inet -u -c -o stress yes
   postfix   3835  0.0  0.9 106336  4868 ?        S    14:36   0:00 smtpd -n 
   smtp -t inet -u -c -o stress yes
   postfix   4309  0.0  0.9 106336  4864 ?        S    13:48   0:00 smtpd 
   -n smtp -t inet -u -c -o stress 
   postfix   4603  0.0  0.9 106336  4860 ?        S    16:13   0:00 smtpd -n 
   smtp -t inet -u -c -o stress yes
   postfix   4843  0.0  0.9 106336  4864 ?        S    13:49   0:00 smtpd -n 
   smtp -t inet -u -c -o stress 

プロセスリストには、これらの行がたくさんあります。 pstreeの出力は私に与えます:

 ├─master─┬─anvil
 │        ├─cleanup
 │        ├─pickup
 │        ├─proxymap
 │        ├─qmgr
 │        └─100*[smtpd]

編集:最近、ローカルホストから外部IPをリッスンするようにmysqlを変更しました。メールログに次のエラーが表示されます。

warning: connect to mysql server 127.0.0.1: Can't connect to MySQL server on   
'127.0.0.1' (111)
May 21 22:23:00 postfix/trivial-rewrite[15741]: fatal: mysql:/etc/postfix/mysql-   
virtual_mailbox_domains.cf(0,lock|fold_fix): table lookup problem
May 21 22:23:01  postfix/smtpd[31036]: warning: problem talking to service rewrite:    
Success
May 21 22:23:01  postfix/smtpd[30757]: warning: problem talking to service 
rewrite:     
Connection reset by peer

ログがいっぱいになり、すでに600MBを超えています。 extern ipをリッスンするようにpostfixを変更するにはどうすればよいですか?ローカルホストからではなく、自宅の場所からmysqlに接続する必要がありますか?

3
Gigamegs

smtpdは、受信メールを(ローカルまたはリモートで)処理するためにPostfixによって実行されます。一度に100を実行している場合は、サーバーが大量のメールを処理していることをお勧めします。それほど多くのメールを生成しているとは思わない場合は、サーバーがバウンスするメールを大量に受信しているか、知らないメールを大量に送信している可能性があります。

Smtpdプロセス数のデフォルトの制限は100であり、これは常にヒットしているように見えます。

接尾辞のロットをチェックして、それが何をしているのかを理解してください。

これらが正当な接続であるが、それらの数を減らしたい場合は、次を使用できます。

/etc/postfix/main.cf:
    default_process_limit = 10

制限を変更します。

更新により、MySQLへの接続に関連する問題が示されます。他の答えと同様に、MySQLを修正して127.0.0.1と外部IPアドレスの両方でリッスンすることができます。 MySQLがローカル接続でリッスンするのを停止するのは珍しいことです。

MySQLの場合、バインドアドレスを0.0.0.0に設定して、すべてのインターフェイスでリッスンするように強制するか、構成ファイルのバインドアドレスセクションをコメントアウトします(これにより同じことが実現されます)。

4
EightBitTony