Обсуждение: SystemD Unit file missing "After=network-online.target" Parameter
Hi,
In the environment
Kernel: Linux use-prod-web01 4.9.0-8-amd64 #1 SMP Debian 4.9.110-3+deb9u4 (2018-08-21) x86_64 GNU/Linux
OS: Debian 9 stretch
PostgreSQL: 9.3.23-2.pgdg90+1
Expected behavior: Postgres starting and binding to the external interface.
Actual behavior: Otherwise Postgres fails to bind to the external interface at reboots randomly with the following error message:
2018-09-06 14:02:32 UTC LOG: could not bind IPv4 socket: Cannot assign requested address
2018-09-06 14:02:32 UTC HINT: Is another postmaster already running on port 5432? If not, wait a few seconds and retry.
2018-09-06 14:02:32 UTC WARNING: could not create listen socket for "123.123.123.123"
Possible fix: Adding the parameter After=network-online.target to it's SystemD Unit file.
Our setup includes the setting:
listen_addresses = 'localhost,123.123.123.123' (not the real IP)
Do not hesitate to contact me/us with further questions.
All the best
Sebastian
--
Sebastian Elisa Pfeifer :: System Administrator
IXOLIT GmbH Mariahilfer Straße 77-79 :: A-1060, Vienna tel +43-1-3530505 :: fax +43-1-3530505-30 web www.ixolit.com |
CONFIDENTIALITY NOTICE:
The information contained in this communication, including attachments, is confidential and intended only for the exclusive use of the addressee. If the reader of this message is not the intended recipient, or the employee or agent responsible for delivering it to the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please notify us by telephone immediately. Thank you.
The information contained in this communication, including attachments, is confidential and intended only for the exclusive use of the addressee. If the reader of this message is not the intended recipient, or the employee or agent responsible for delivering it to the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this communication in error, please notify us by telephone immediately. Thank you.
Вложения
Re: Sebastian Elisa Pfeifer 2018-09-07 <ab23ab6a-f54a-4063-be3d-dbc93f5dedd2@ixolit.com> > |2018-09-06 14:02:32 UTC LOG: could not bind IPv4 socket: Cannot assign > requested address 2018-09-06 14:02:32 UTC HINT: Is another postmaster > already running on port 5432? If not, wait a few seconds and retry. > 2018-09-06 14:02:32 UTC WARNING: could not create listen socket for > "123.123.123.123"| > > Possible fix: Adding the parameter After=network-online.target to it's > SystemD Unit file. > > Our setup includes the setting: > listen_addresses = 'localhost,123.123.123.123' (not the real IP) Hi, thanks for the report. I'll have to investigate if that's the correct fix in general. Afaict network-online.target does less than what the name says, i.e. some interfaces might still be configuring even at that point. Usual symptoms are IPv6 devices that are still in address discovery. I'll let you know what the outcome is. Christoph