-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Hi Roland,

My proposed solution was a milter that runs locally on the postfix
box, and communicates with both archive boxes so the milter is able to
act on errors in both archive boxes. I did some reading on the
product, and it seems that the milter interface is part of the archive
solution, and even runs the milter interface on the archive box itself.

Anyway, that makes my advice obsolete. You should llok into non-milter
solutions if you need to get both backends synchronized. The
mailarchiva help has some nice alternatives for that. The High
Availability section describes some interesting features.

Tom

On 24-10-13 14:43, Roland de Lepper wrote:
> Hi Tom,
> 
> Thanks for your answer, but unfortunatly, that's not possible
> because the MILTER sends the email to the archive. With only one
> MILTER, both archive server must have the same Ip-address. Or do I
> mis something?
> 
> Roland
> 
> 
> On Thu, Oct 24, 2013 at 2:37 PM, Tom Hendrikx <t...@whyscream.net 
> <mailto:t...@whyscream.net>> wrote:
> 
> On 10/24/2013 08:39 AM, Roland de Lepper wrote:
>> Hi ,
>> 
>> The connection between Postfix and the archive is over SMTP.
>> 
>> In my example with the smtpd_milter, will the email also go to
>> the
> hold
>> queue if only one archive connection is down? Or will it deliver
>> the email to the archive which is online? This
> is an
>> important question for me, to get both in sync.
> 
> Your config shows that you have 2 milter instances, delivering to
> both archive backends. If one of them fails, the other can still
> succeed since the milters don't communicate. Only postfix sees the
> final result but it on't the milterA that milterB had a failure.
> 
> So, if you want to be sure that every mail is always sent to both 
> backends (i.e. consistency), you need to a single milter that talks
> to both backends, and should be able to inform a backend to 'undo'
> the store action on backendA when backendB is failing, and vice
> versa.
> 
> 
> Tom
> 
>> 
>> If the emails will go in the HOLD queue, that is not really a
> problem for
>> me. Our monitoring will scream within a few minutes, the mailq
>> is
> too big
>> and the connection to the archive is down. This way we are
>> noticed
> to take
>> action, keep the emails on HOLD till the problem is solved with
> the archive
>> or take another action if the problem is severe and take too long
>> too solve. We can always copy the data from one archive to
>> another. This again raise the question if the emails will go to
>> the HOLD
> queue too
>> if one archive is down.
>> 
>> regards,
>> 
>> Roland
>> 
>> 
>> On Wed, Oct 23, 2013 at 4:02 PM, Wietse Venema
> <wie...@porcupine.org <mailto:wie...@porcupine.org>> wrote:
>> 
>>> Roland de Lepper:
>>>> Hi Wietse,
>>>> 
>>>> Thanks for the reply.
>>>> 
>>>> What about milter_default_action = quarantine  ?
>>> 
>>> As documented, this leaves the message in the "hold" queue.  If
>>> the Milter should have done something with the message, then
>>> those things will never happen. The message is now in the
>>> queue, and the Milter is a before-queue feature.
>>> 
>>> If I may ask, is the archive connected over SMTP or over a 
>>> propietary protocol?
>>> 
>>> I think that "defer accepting mail while the archive is down"
>>> is the safest option (i.e. leave it up to the sender to
>>> retry). Everything else requires that the message is queued in
>>> Postfix while the archive is down, for example as in this
>>> simplified picture:
>>> 
>>> network -> smtpd -> queue -> smtp -> smtpd+milter -> queue ->
> delivery
>>> agents
>>> 
>>> The part with "smtp -> smtpd+milter:  would implement an
>>> SMTP-based empty after-queue filter.
>>> 
>>> Wietse
>>> 
>>>> regards,
>>>> 
>>>> Roland de Lepper
>>>> 
>>>> 
>>>> On Wed, Oct 23, 2013 at 1:24 PM, Wietse Venema
> <wie...@porcupine.org <mailto:wie...@porcupine.org>>
>>> wrote:
>>>> 
>>>>> Roland de Lepper:
>>>>>> smtpd_milters = inet:81.x.x.x:8092 inet:217.x.x.x:8092 
>>>>>> milter_default_action = tempfail milter_connect_timeout =
>>>>>> 10s
>>>>>> 
>>>>>> This works perfectly without any problems. the question
> raised, what
>>> if
>>>>> the
>>>>>> connection between the mailserver and location B is down.
>>>>>> Is the
>>> email
>>>>> 
>>>>> As documented no mail is delivered after Milter failure.
>>>>> The
> Postfix
>>>>> SMTP server will reply with an error status code (4xx) and
>>>>> the client will have to send the message again.
>>>>> 
>>>>> The bad alternative is "milter_default_action = accept",
>>>>> which
> means
>>>>> that mail will be delivered but not archived.
>>>>> 
>>>>> If you want both mail delivered AND mail archived, then you
>>>>> need to use sender_bcc_maps or recipient_bcc_maps to add
>>>>> recipients for archival purposes.
>>>>> 
>>>>> Then, Postfix will do the retrying until the message is too
>>>>> old, at which time it will be returned to the sender.
>>>>> 
>>>>> Wietse
>>>>> 
>>> 
>> 
> 
> 
> 

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.14 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQIcBAEBCAAGBQJSaW6BAAoJEJPfMZ19VO/1GnQQAM3JjgsNsogpNIxVkHECunwj
WlKrPOo959OzuXVnmOnfhEYYjzgYp7b6AaVTb8MM08bt6Db9tpiS6jNDK34m82fJ
3fowVTRoDBKgJfLSFkhfpyJgHCw/4gnN8XCoBZaRYbfRGi4jvyk8Pf9HVBfAzlSI
FbKzY15QGK1XEn/RnxZYlLSKEsTmn1nrqM+PUfwWOsm8+y2gK2pgnqzy0jbKkKFc
guYQemkhZ6ifodz47SZaL05L5yhMLJ1vt6VFCqsVzHR1pIiYHi7G4gvkFOV3PZ3H
abEN5pgG+2IKr3MfVg61tz3tPn6sp2Z9sZSqyVBGiVstS58RodqCcpVGOzVULFsQ
UmJEWcMJlIIPMg+XLbRsoW2Y4f0/pWEehCIWG8Vj2iXkdyLih9CVwuIADgMHsWJl
qQN779HEzFH/fNaRlUPA/3eNAGNqyoY8z2Oiv3g6uvmYcdY293LgBbBTCuBYffvP
OTHY/VSa7mnDNvhGSR6tKhuhpGeZQe2O+Chm2XLqtg/x9KcncgM7y8CPUQjtlEOT
7Ke02xtA+sSu1QSDivUzrzwq37eOJAzS3ebEHeVQ5SaSc5dcHhkX3BFhp9AZJ4jJ
Sy949f8pEgXpw2KC6VNsjF5jKDxcDaf+akMFtwhrUlwyLP5EDy2Wq//LlWbHh0BI
wfAIigkLHHo0zr0/7gP7
=U3t8
-----END PGP SIGNATURE-----

Reply via email to