From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=MAILING_LIST_MULTI, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 17487 invoked from network); 9 Apr 2022 13:43:55 -0000 Received: from alyss.skarnet.org (95.142.172.232) by inbox.vuxu.org with ESMTPUTF8; 9 Apr 2022 13:43:55 -0000 Received: (qmail 19823 invoked by uid 89); 9 Apr 2022 13:44:19 -0000 Mailing-List: contact supervision-help@list.skarnet.org; run by ezmlm Sender: Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Received: (qmail 19816 invoked from network); 9 Apr 2022 13:44:19 -0000 From: "Laurent Bercot" To: "Scott Colby" , "supervision@list.skarnet.org" Subject: Re: Supervision on the BSD's Date: Sat, 09 Apr 2022 13:43:52 +0000 Message-Id: In-Reply-To: <0c1d24f1-fa0e-4c00-a94f-3173110b3800@www.fastmail.com> References: <0c1d24f1-fa0e-4c00-a94f-3173110b3800@www.fastmail.com> Reply-To: "Laurent Bercot" User-Agent: eM_Client/8.2.1659.0 Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable >In searching, I found some messages on the Skaware lists about >running s6 as PID 1 on FreeBSD; has that work been published anywhere? >I'm not sure if I want to go so far as replacing PID 1 right out >of the gate, but having some existing service directories would be >nice. I have done some experiments and my conclusion was that to replace pid 1 on FreeBSD, a real s6-freebsd-init package was needed, because the way the BSDs organize their init and shutdown is radically different from the way Linux does it, and the conversion is far from obvious. However, you don't need to replace pid 1 to run s6 on a BSD. As mentioned in https://skarnet.org/software/s6/s6-svscan-not-1.html , you can start a supervision tree from /etc/ttys, and run your services under it. It will work like on any other system. Quite a few people on the #s6 channel on IRC (OFTC network) are using s6 on a BSD, so if you're looking for example service directories, and various tips and tricks, I suggest you join the channel and ask them. ;) >Have I correctly understood how daemons/services work on the BSD's? >If not, what am I missing? Are the daemons included with the >distributions so incredibly stable that they don't need supervision >in order to keep the system functional? The BSDs are tightly integrated systems, more than "distributions", and especially with OpenBSD, daemons are carefully audited and patched so they are indeed super stable. Which is a very good thing - but because of that, the BSD community tends to look down on supervision, without understanding that it has other benefits than auto-restarting crashed daemons. >Finally, if you wanted to create a router that you could (metaphorically) >put in a closet and forget about for 5 years, what approach would >you take? My initial thought was OpenBSD + s6, but I worry now that >there could be an impedance mismatch between these systems. OpenBSD + s6 will definitely work. Just make sure not to get in the way of how OpenBSD does things; run an s6 supervision tree at boot time and start your services under it as you see fit, independently from OpenBSD's rc. Since the BSDs don't care for supervision, though, depending on upstreams it may be difficult to find options for your packaged daemons that stop autobackgrounding and that are not debugging options. Just a small practical hurdle, but when it happens it can be infuriating. -- Laurent