|
 |
|
 |
|
Networking with Upstart and sysvinit scripts
|
|
On Fri, 27 Jan 2012 21:01:09 +0100, Christian Roessner <...@roessner-network-solutions.com
Hi,
first of all this is my very first mail here to this list and I am completely unsure, if I am right here. So if this message does not address the right people, I say sorry for this.
My problem is starting from services with Upstart and sysvinit. I am a postmaster and managing several mail servers. And for some of them, I really do have boot issues with Upstart.
To explain:
I have many IPv4 and IPv6 addresses for one server. The problem starts with /etc/network/interfaces. No matter if I put several iface ethX inet(6) static blocks into the config file or adding post-up/pre-down scripts with iproute, it happens every two of three boots, that not all of the addresses were set up correctly. And this causes many services to fail on startup.
As far as I know, this interfaces file is laded through Upstart. And now there is a second problem: Services like amaivs, saslauthd, slapd are started through init.d. And it happens that they fail on startup, because the network has not yet finished being set.
Now there are some services in init (not init.d) that normally depend on started services in init.d. For example dovecot. I also have ported postfix to use Upstart. Maybe Scott and Clint remember the discussion together with Wietse Vennema, where we tried to solve this problem, starting postfix with Upstart.
Now my question:
What can I do to have services in init and init.d to really wait until the _whole_ network was set up correctly? And how can I make dependencies between these to worlds?
Here is some header from postfix:
start on (started opendkim-sign and
started opendkim-verify and
started amavisd-milter)
stop on runlevel [!2345]
Here you can see missing deps. Amavisd and slapd are missing. Also saslauthd and I do not know how to solve this.
saslauthd for example _always_ fails to start, because it requires a second IP on this host, which at startup seems not to be ready and therefor the service can not connect to LDAP, which in turn leads to authentication issues for my customers. Same goes with amavisd and its milter service.
So right now, I am not so very happy with this hybrid style (if I may call it so).
Why contacting devel? Maybe I can tell, what I would expect and someone can tell me, if this is possible with Upstart and how, or if there needs to be done fixes to Upstart.
What would I expect:
1. Starting networking and defining some kind of NETWORK_DONE=yes event or environment thing
2. Starting services in rc which can track this event and maybe raise events for Upstart itself.
3. Services collect these last events from rc and have some way to intercommunicate with each other. Don't know how to explain this better.
I give you a list of services that make trouble:
/etc/network/interfaces, slapd, amavisd, amavisd-milter, saslauthd, postfix, dovecot, clamav-daemon and any kind of milter (several developed by myself; all started though Upstart).
If you like and can help me to resolve this problem, I really would be happy :)
By the way: I am only using LTS versions in production environments. So I am talking about Ubuntu Lucid Lynx right now.
Best wishes and thanks in advance
Christian
---
Roessner-Network-Solutions
Bachelor of Science Informatik
Nahrungsberg 81, 35390 Gießen
F: +49 641 5879091, M: +49 176 93118939
USt-IdNr.: DE225643613
http://www.roessner-network-solutions.com
--
upstart-devel mailing list
upst...@lists.ubuntu.com
Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/upstart-devel
|
| |
 |
|
 |
|
 |
|
 |
|
On Fri, 27 Jan 2012 17:26:29 -0800, Clint Byrum <...@ubuntu.com
Excerpts from Christian Roessner's message of Fri Jan 27 12:01:09 -0800 2012:
Hi Christian! Glad to hear from you again!
This is fixed in Ubuntu 11.10 and later.
https://bugs.launchpad.net/ubuntu/+source/dhcp3/+bug/580319
We do not boot to runlevel 2 unless either all "auto" interfaces from
/etc/network/interfaces are up, or 120 seconds have passed since lo
was brought up. This gives ample time for any DHCP or heavy static
configurations/bridge/bonded/etc configurations to finish, but will
continue the boot in case you have listed an interface there that is
broken or will never come up.
Remember that these are *events*, not dependencies.
Anyway, give 11.10 a try, its possible we will backport something to
lucid, but no guarantees, as its a rather large change in the way we
treat /etc/network/interfaces, and it has not been popular with everyone,
as there are some people abusing /etc/network/interfaces and this causes
their system to take 2 minutes extra too boot.
--
upstart-devel mailing list
upst...@lists.ubuntu.com
Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/upstart-devel
|
|
 |
|
 |
 |
|
 |
|
On Sat, 28 Jan 2012 13:49:06 +0100, Christian Roessner <...@roessner-network-solutions.com
Hi,
of course :) I am still alive :)
That is really great to hear! I really was afraid, how this would continue in future releases. For me, this sounds like a great idea with the runlevel/120s thing.
What I miss in interfaces is a better ipv6 support. I find it somewhat weird to configure multiple addresses like this:
# The primary network interface
auto eth0
iface eth0 inet static
address 88.198.80.228
netmask 255.255.255.255
gateway 88.198.61.177
pointopoint 88.198.61.177
post-up /bin/ip neigh replace to 88.198.61.177 lladdr 2c:6b:f5:8a:72:84 nud permanent dev ${IFACE}
pre-down /bin/ip neigh del to 88.198.61.177 lladdr 2c:6b:f5:8a:72:84 nud permanent dev ${IFACE}
iface eth0 inet6 static
address 2a01:4f8:131:1081:88:198:80:228
netmask 64
gateway 2a01:4f8:131:1080::1
pre-up /bin/ip -6 route add 2a01:4f8:131:1080::1 dev ${IFACE}
post-up /bin/ip -6 route add 2000::/3 via 2a01:4f8:131:1080::1 dev ${IFACE}
auto eth0:0
iface eth0:0 inet static
# mail.roessner-net.de
address 88.198.80.230
netmask 255.255.255.248
broadcast 88.198.80.231
iface eth0:0 inet6 static
# mail.roessner-net.de
address 2a01:4f8:131:1081:88:198:80:230
netmask 64
There are several things that are not optimal. IPv6 are not aliases. A second way of configuring them was to add post-up stuff.
I know, this might look like off-topic, but network configuration is part of Upstart and if the basic configuration makes trouble, you will have problems n the whole boot process.
So I would suggest to optimize network configuration in general.
I have a dozen of configurations, even with bonding/vlan mixtures, where boot process is really critical. Especially in the latter case, where you use bonding and stuff in HA setups. If the boot process is not 100% stable, the whole HA is unstable. And this on a LTS release.
I can not easily give 11.10 a try, because most systems are really production systems (and some of the customers do not have testing environments). I only could give it a try on my own server, but then I would have to upgrade 11 servers at once, because they have a lot of dependencies with services to each other (postgres backport, LDAP nackport, ...).
If there was a chance to have a backport package for 11.10, I could test it on individual servers and give feedback to you. Even, if there was a testing PPA, I would test it for you, bt PLEASE do not force me for upgrades right now. That really would be pain ;)
Best wishes and thanks that you answered me. I was happy to hear especially from you, Clint, again :)
Best wishes
Christian
---
Roessner-Network-Solutions
Bachelor of Science Informatik
Nahrungsberg 81, 35390 Gießen
F: +49 641 5879091, M: +49 176 93118939
USt-IdNr.: DE225643613
http://www.roessner-network-solutions.com
--
upstart-devel mailing list
upst...@lists.ubuntu.com
Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/upstart-devel
|
|
 |
|
 |
 |
|
 |
|
On Tue, 31 Jan 2012 14:38:15 -0800, Steve Langasek <...@ubuntu.com
Hi Christian,
I also find it weird that you're doing this. :-)
Yes, I think an 'ip addr' command in the post-up would be more natural here.
*Ideally* you would be able to specify multiple ipv6 addresses for a single
interface stanza in /etc/network/interfaces.
This really isn't part of upstart; it's part of ifupdown, which is unrelated
(though integrated, on Ubuntu). Upstart-using systems not derived from
Debian are likely to use a completely different method of configuring
network devices.
Not to say we can't discuss it here, but I don't think the ifupdown
maintainers are subscribed to this list, so this discussion is unlikely to
result in any changes to ifupdown behavior.
Improving network stack reliability has been a major focus for the Ubuntu
12.04 LTS release, and I think users will be satisfied with the results.
Again, these were not really upstart issues per se - there've been race
conditions with boot-time networking ever since udev came around, it's just
that boot was slow enough that users rarely ran into them. Upstart just
made the race windows much, much larger by speeding everything up.
Unfortunately these networking fixes have deep interdependencies with other
changes to the core system since 10.04, so a backport is not likely.
--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
slan...@ubuntu.com vorl...@debian.org
--
upstart-devel mailing list
upst...@lists.ubuntu.com
Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/upstart-devel
|
|
 |
|
 |
 |
|
 |
|
On Mon, 06 Feb 2012 19:30:03 +0100, Christian Roessner <...@roessner-network-solutions.com
Hi :-)
I was not quite sure, if I might mention network problems here that came
up with Upstart :-)
I am really looking forward to 12.04, as of today we again had a
customer, where NFS was not started and the whole network was hanging.
And it is hard to explain that this is a problem in the boot process ;-)
But I promised him, things will go better after April :-)
I understand you, but 10-04 will be there up to 2015, right? And this is
still a long time. If you would need testers for a backported fix, I am
pretty sure, I can find admins that help you to really test that change.
:-) Me included! :-)
And still I think that might be done in a PPA for example, so you do not
need to worry about support or something like that, but you would
stabilize the LTS release.
The main problem right now is to chose a good rock solid stable
distribution. And we want Ubuntu :-) The problem with this LTS is that
you really can not propse it to customers, if you need to fear the whole
boot process :-( And it is still some time to wait for April. And even
it is April, we always wait some weeks before most major bugs that come
up after the final release are found and fixed. So in fact I am speaking
from June or July.
So if Upstart could solve this by going later into runlevel 2, then some
testers might check an update out. What do you think? I can not offer
more than my (our) willing in deep testing and helping with giving
feedback to you guys (And we know, you are doing great work!)
Thanks in advance and hopefully you do not get me wrong :-)
Christian
--
Roessner-Network-Solutions
Bachelor of Science Informatik
50°34.725'N, 08°40.904'O, Nahrungsberg 81, 35390 Giessen
F: +49 641 33055572, M: +49 176 93118939
USt-IdNr.: DE225643613
http://www.roessner-network-solutions.com
--
upstart-devel mailing list
upst...@lists.ubuntu.com
Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/upstart-devel
|
|
 |
|
 |
 |
|
 |
|
On Mon, 6 Feb 2012 11:28:40 -0800, Steve Langasek <...@ubuntu.com
This is largely not a question of testing, but of how we make best use of
our limited developer resources. Yes, 10.04 will be supported until 2015.
However:
- users who are already using 10.04 and are affected by these issues must
have some workaround in place
- users who are looking to deploy Ubuntu LTS over the next 12 months are
likely to be evaluating 12.04 so that they get a full 5 years of support
for their new deployments, not just 3 years
- as a result, all other things being equal, it serves our users better if
we invest our developer time in fixing a bug for the upcoming 12.04
release instead of in fixing a bug of equivalent severity for the 10.04
release.
Of course, if there are critical bugs it's important to fix these for our
existing stable releases first; but the bugs you describe are not critical,
and not trivial to fix. So they're unlikely to receive attention from the
developers currently working on networking in Ubuntu. However, Ubuntu is an
open project, and if someone (such as yourself) considers this bug a high
enough priority, they can prepare their own backport of these fixes to 10.04
and propose it for inclusion following the Stable Release Update process.
Delaying runlevel 2 is not a reliable fix for the issues in question.
Cheers,
--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/
slan...@ubuntu.com vorl...@debian.org
--
upstart-devel mailing list
upst...@lists.ubuntu.com
Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/upstart-devel
|
|
 |
|
 |
|
|