[Postfixbuch-users] queue File write error

Sandy Drobic postfixbuch-users at japantest.homelinux.com
Fr Feb 22 20:12:14 CET 2008


Thomas Klein wrote:
> Hallo zusammen,
> 
> nach der Umstellung von Amavis zum pre-queue Filter über 
> smtpd_proxy_filter habe ich Zustellungsprobleme. Ich habe heute ca. 
> 40-50 Mails in mit folgendem (ähnlichen) Inhalt erhalten:
> 
> Transcript of session follows.
> 
>  Out: 220 smtp.hostname.de ESMTP
>  In:  EHLO mail.zusteller.de
>  Out: 250-smtp.hostname.de
>  Out: 250-PIPELINING
>  Out: 250-SIZE 20000000
>  Out: 250-VRFY
>  Out: 250-ETRN
>  Out: 250-AUTH PLAIN NTLM LOGIN DIGEST-MD5 CRAM-MD5
>  Out: 250-ENHANCEDSTATUSCODES
>  Out: 250-8BITMIME
>  Out: 250 DSN
>  In:  MAIL FROM:<vorname.nachname at fremdedomain.de> SIZE=14920
>  Out: 250 2.1.0 Ok
>  In:  RCPT TO:<vorname.nachname at eigenedomain.de> 
> ORCPT=rfc822;vorname.nachname at eigenedomain.de
>  Out: 451 4.3.0 Error: queue file write error
>  In:  DATA
>  Out: 554 5.5.1 Error: no valid recipients
>  In:  RSET
>  Out: 250 2.0.0 Ok
>  In:  QUIT
>  Out: 221 2.0.0 Bye
> 
> 
> Ich hatte für die Umstellung auf das pre-queue filtering von amavis in 
> der master.cf folgende Zeilen geändert:
> vorher:
> smtp      inet  n       -       y       -       -       smtpd
> 
> nachher:
> smtp      inet  n       -       y       -       -       smtpd
>         -o smtpd_proxy_filter=127.0.0.1:10024
>         -o smtpd_client_connection_count_limit=10
> 

Wenn gleichzeitig viele Prozesse Mails annehmen und nach Amavisd-new füttern, 
dann kommt es einerseits zu Timeouts, weil deine Maschine nicht mitkommt und 
andererseits kann es in extremen Fällen sogar zu OOM kommen, wenn dein 
RAM+Swap abgefüllt sind.

Begrenze das besser auf eine Zahl von Prozessen, die dein Server mit 
simultanen Amavisd-new-Prozessen verkraftet. Wieviele Amavisd-new Prozessen 
hast du denn konfiguriert, bestimmt nicht 100, oder?

Wieviel RAM/CPU hast du zur Verfügung?

> in der main.cf hatte ich vorher unter smtpd_recipient_restrictions 
> "check_recipient_access hash:/etc/postfix/amavis_filter_domains" mit 
> drin gehabt, und habe dann in diesem hash-file alle von diesem Server 
> verwalteten Domains mit "FILTER amavis:[127.0.0.1]:10024" 
> empfängerseitig scannen lassen. Diese Zeile habe ich zur Verwendung von 
> pre-queue Amavis auskommentiert.
> 
> Danach kamen wie gesagt haufenweise die queue file errors. Das Log gibt 
> m.E. nichts informatives dazu her. Ich habe erst einen HDD-defekt 
> vermutet, jedoch läuft alle nach wiederherstellung des 
> Ursprungszustandes ohne Probleme.
> Könnte es sein, dass -o smtpd_client_connection_count_limit=10 evtl. zu 
> klein dimensioniert ist und somit der Server nicht mehr nachkommt? 
> http://www.postfix.org/SMTPD_PROXY_README.html sagt dazu:
> /schnipp
> "smtpd_proxy_timeout 
> <http://www.postfix.org/postconf.5.html#smtpd_proxy_timeout> (default: 
> 100s): Timeout for connecting to the before-queue content filter and for 
> sending and receiving commands and data. All proxy errors are logged to 
> the maillog file. For privacy reasons, all the remote SMTP client sees 
> is "451 Error: queue file write error".
> /schnapp
> 
>  Der Server hat pro Tag ca. 22000 rejects, ca. 100 erkannte Spam-Mails 
> und ca. 2500 ham-Mails zu verarbeiten.

Das ist nicht die Ursache, setze besser den Timeout höher:
smtpd_proxy_timeout = 300s

Und, wie gesagt, ein gesundes Verhältnis von CPU/RAM/Prozessen.
-- 
Sandy

Antworten bitte nur in die Mailingliste!
PMs bitte an: news-reply2 (@) japantest (.) homelinux (.) com




Mehr Informationen über die Mailingliste Postfixbuch-users