16:29:29 #startmeeting fedora_coreos_meeting 16:29:29 Meeting started Wed Feb 12 16:29:29 2020 UTC. 16:29:29 This meeting is logged and archived in a public location. 16:29:29 The chair is dustymabe. Information about MeetBot at http://wiki.debian.org/MeetBot. 16:29:29 Useful Commands: #action #agreed #halp #info #idea #link #topic. 16:29:29 The meeting name has been set to 'fedora_coreos_meeting' 16:29:35 #topic roll call 16:29:39 .hello2 16:29:39 dustymabe: dustymabe 'Dusty Mabe' 16:29:46 .hello2 16:29:50 cyberpear: cyberpear 'James Cassell' 16:31:22 .hello miabbott 16:31:23 miabbott: miabbott 'Micah Abbott' 16:31:46 .hello lucab 16:31:46 kaeso[m]: lucab 'Luca Bruno' 16:32:23 #chair cyberpear miabbott kaeso[m] 16:32:23 Current chairs: cyberpear dustymabe kaeso[m] miabbott 16:32:32 * dustymabe wonders where bgilbert and jlebon are 16:33:24 .hello2 16:33:25 lorbus: lorbus 'Christian Glombek' 16:33:28 will get started in a moment 16:33:38 mnguyen_: around ? 16:33:47 #chair lorbus 16:33:47 Current chairs: cyberpear dustymabe kaeso[m] lorbus miabbott 16:34:24 .hello2 16:34:25 jlebon: jlebon 'None' 16:34:26 #chair jlebon 16:34:26 Current chairs: cyberpear dustymabe jlebon kaeso[m] lorbus miabbott 16:34:46 #topic Action items from last meeting 16:34:52 * dustymabe to work with x3mboy on FCOS infographic 16:34:54 * dustymabe to open a tracker ticket where we discuss major changes for 16:34:56 the f32 rebase, including fedora proposed changes for f32 16:34:58 * cyberpear to file tracker ticket for FCCT in the initramfs 16:35:00 * jlebon to investigate if latest moby-engine upstream has any cgroups 16:35:02 v2 support 16:35:04 * mnguyen_ will ask moby-engine maintainer(s) about a rebase to latest 16:35:06 upstream release for f32 16:35:08 * dustymabe to work with ignatenkobrain and koji devs to try to drive 16:35:10 rust packaging to a better state 16:35:12 lots of action items in there 16:35:14 I'll rattle off updates for mine real quick 16:35:19 re-actioning one 16:35:25 #action dustymabe to work with x3mboy on FCOS infographic 16:35:56 re. moby-engine 16:35:59 #info dustymabe created #372 to discuss the f32 rebase and major changes we'd like to make 16:36:04 #link https://github.com/coreos/fedora-coreos-tracker/issues/372 16:36:30 support for cgroupsv2 was added to containerd. the basics were added to moby-engine recently. but there's still a bunch of things left to implement 16:36:40 #info dustymaber opened a releng ticket to try to start a discussion about making rust packaging experience better: https://pagure.io/releng/issue/9229 16:36:45 #link https://pagure.io/releng/issue/9229 16:36:55 it should be in the next 19.03.6 release IIUC 16:37:11 jlebon: do you mind putting that in an #info? 16:37:18 #info support for cgroupsv2 was added to containerd. the basics were added to moby-engine recently. but there's still a bunch of things left to implement 16:37:52 wrt switching to cgroupsv2 in FCOS, i think we need to wait a bit more for it to be fully ironed out in moby-engine 16:38:06 jlebon: hold that thought. we'll discuss it in a bit 16:38:16 Related to last item, I spoke to tkopecek about missing functionality and he said that it probably won't happen for 1.21 :( 16:38:37 ignatenkobrain: FYI we're discussing it right now over in #fedora-meeting-2 16:38:41 https://pagure.io/koji/issue/1998 16:38:43 ignatenkobrain: thanks for the update, though 16:39:22 ok cyberpear mnguyen_ - you both had action items from last week 16:39:43 I opened the ticket as discussed 16:40:06 i emailed oliveria but have not received a response yet 16:40:12 https://github.com/coreos/fedora-coreos-tracker/issues/371 16:40:57 #info mnguyen_ emailed moby-engine maintainer for an update, but no response yet 16:41:22 #info cyberpear opened a ticket to discuss including fcct in the initramfs #371 16:41:29 #link https://github.com/coreos/fedora-coreos-tracker/issues/371 16:42:06 ok moving on to tickets 16:42:28 #topic F32: should we switch to cgroups v2 16:42:33 #link https://github.com/coreos/fedora-coreos-tracker/issues/373 16:42:49 there is some good information in the ticket that was added since last week 16:44:54 all the signs seem to point to "not yet"? 16:45:38 kaeso[m]: yes I think it's safe to say we should probably be conservative and not yet push to v2 16:45:51 though I don't necessarily want to wait forever. 16:46:10 for example we have three major components that we know of (podman, kubernetes, docker) 16:46:17 but note that the switchover doesn't have to correspond to a major rebase 16:46:40 jlebon: you're right, but the major rebase is probably when the new moby-engine would come in that supports cgroups v2 16:46:40 if it's deemed ready enough in e.g. may, then we could switch then 16:47:35 jlebon: can you copy here what you said earlier about upstream moby? 16:48:05 it should be in the next 19.03.6 release IIUC 16:48:32 just asking about gut feelings, are we thinking about dead-ending nodes born on v1 or are we aiming at an in-place upgrade v1->v2? 16:48:33 wrt switching to cgroupsv2 in FCOS, i think we need to wait a bit more for it to be fully ironed out in moby-engine 16:49:04 kaeso[m]: I think we were going to let nodes started on v1 stay on v1 16:49:13 i.e. if you just keep upgrading you stay on v1 16:49:20 if you deploy new you get v2 16:49:38 we should look at how upstream will handle this too 16:50:05 kaeso[m]: WDYT about that strategy? 16:50:54 I'm not sure I'm a fan of having both living in parallel 16:50:55 fwiw OKD doesn't care about the default too much, as we'll use Ignition to configure the FCOS nodes as needed (we'll stick to v1 for now) 16:51:50 kaeso[m]: but they could already be living in parallel if someone configured their node for v2 now 16:53:05 dustymabe: sure but that's a manual customization 16:53:38 #proposed while the container ecosystem is maturing, both moby (docker) and kubernetes aren't yet to a place where we're comfortable moving to cgroups v2 by default for F32 based FCOS, we'll consider again for F33 16:54:08 s/for F33/later on/ 16:54:10 dustymabe: "consider again at a later time" ? 16:54:33 #proposed while the container ecosystem is maturing, both moby (docker) and kubernetes aren't yet to a place where we're comfortable moving to cgroups v2 by default for F32 based FCOS, we'll consider again at a later time 16:54:48 kaeso[m]: what do you mean by parallel though? at the cluster level, or on the node itself? 16:54:54 +1 16:55:30 any opposed to the above proposal? 16:55:48 kaeso[m]: at the cluster level, like lorbus mentioned, it's likely going to be set at a higher level anyway 16:56:02 jlebon: on the node, across the population of FCOS nodes 16:57:02 dustymabe: +1 to proposal 16:57:53 ack for me too 16:57:56 #agreed while the container ecosystem is maturing, both moby (docker) and kubernetes aren't yet to a place where we're comfortable moving to cgroups v2 by default for F32 based FCOS, we'll consider again at a later time 16:58:25 #topic Include wireguard-tools package in FCOS 16:58:32 #link https://github.com/coreos/fedora-coreos-tracker/issues/362 16:59:05 ok so we've got some answers to questions after talking with the maintainers of both wireguard and also the networkmanager implementation of wireguard 16:59:38 .hello2 16:59:39 jdoss: jdoss 'Joe Doss' 17:00:01 it looks like all maintainers agree that if you are using wireguard you'll want the tools on the system to inspect connections 17:00:36 considering that fact, and the fact that the binary is tiny and doesn't bring in any other deps, should we include it? 17:00:57 +1 for including :) 17:02:19 i think kaeso[m]'s concern wasn't about the binary itself, but the fact that if we include it without making sure the NM workflow works, we'll have people using wg directly 17:02:45 Is that a bad thing? 17:02:56 jlebon: of course, we want to make sure the NM flow workflow works 17:03:36 making NM keyfiles the canonical way to set up networking via ignition helps, yes. vs. having systemd units run `wg` 17:04:24 can we maybe say "likely yes" but let it soak so that we first get 1) kernel 2) NM 3) docs? 17:04:47 so let me pick this apart a bit 17:05:06 I completely agree that we want the NM workflow to be a "happy path" to success here 17:05:32 but I think whether we include the tools or not is kind of independent of NM working or not 17:05:46 if you agree with that, then the real question is mostly "timeing" 17:05:51 sigh, and I can't spell 17:06:53 does anyone disagree with that? 17:07:28 Sounds good to me 17:07:33 From a users perspective, not having `wg` when it is in the kernel makes it really hard to use. Even if we are using NM when it has full support for WireGuard how is an operator going to troubleshoot an issue without it? 17:07:33 i.e. since both maintainers have said "you want the tools installed", that means even if someone *is* using NM, you still want the tools installed 17:08:01 I don't disagree with that, but if "custom wg script" is the only thing that works than I'd rather prefer a bit of delay to debugging creative scripts 17:08:21 But that isn't on FCOS but the users that are making them? 17:08:53 ok so let's move to the next step: not "if", but "when" 17:09:31 so I think we've agreed that we do want to include the tools in FCOS, but.. we need the new kernel first 17:09:57 and we want to actually test out the NM path (and hopefully see if the outstanding work is critical to the model we want to operate in) 17:10:47 jdoss: do i understand correctly then that until 5.6, one would have to literally do `rpm-ostree override replace kernel...` ? 17:10:58 or just load the kmod? 17:11:10 Yea, or use atomic-wireguard or dusty's stuff. 17:11:25 I think it can wait until 5.6 hits. 17:12:04 kaeso[m]: WDYT about the not "if", but "when" proposal above ? 17:12:09 ok yeah, agreed. the barrier to get this working is already so high until then, that not having `wg` isn't really a concern when one could just do `rpm-ostree install wg` to fool around 17:12:25 dustymabe: by outstanding work you mean https://gitlab.freedesktop.org/NetworkManager/NetworkManager/issues/358? 17:12:56 dustymabe: I was confused by that, as it seems to be a RFE to nmcli, which is not in our flow 17:12:57 kaeso[m]: possibly - basically we need to evaluate if that's required for our "happy path" or not 17:13:14 or any other work that is required for our happy path 17:13:41 I think having it by default when it comes with the 5.6 kernel is important for end users. If WireGuard is enabled in the kernel out of the box, wg should be too. 17:14:16 i.e. we probably want to come up with a user story for what we want the experience to look like for a FCOS user (i.e. using ignition) and then see if it works the way we want it to 17:14:27 and identify gaps and take those back as feature requests 17:15:09 dustymabe: that looks like a better plan to me 17:15:32 so that is the ideal thing for us to do, but if we fail to do that we also shouldn't keep it out because of our lack of ability to flesh out all of those use cases 17:15:48 so my proposal is something like this: 17:16:02 - yes, we will include wireguard tools (eventually) 17:16:25 - we'll investigate a "happy path" for how we'd recommend using wireguard with NM on FCOS 17:16:49 - we'll open issues to track missing features that block the "happy path" from being used 17:17:08 - we won't block the tools in FCOS after a certain amount of time has passed and the "happy path" doesn't exist yet 17:17:34 i.e. a contingency 17:18:01 this SGMT 17:18:11 Yep sounds good to me too. 17:18:20 Thanks for taking the time on this folks. 17:18:35 is the "yes" conditional to "if there is still a usecase for them"? 17:18:38 +1 17:19:17 * jlebon has to drop off early -- see y'all! 17:19:19 kaeso[m]: IOW if the wireguard-tools are obsolete or something? 17:19:22 that is, are we looking at `wg` as a debug tool or as something that we want people to build their things on? 17:19:48 * lorbus has to drop as well, see y'all soon! 17:19:58 kaeso[m]: at this point i'm basically condering `wg` and `ip` to be analogous 17:20:22 so replace `wg` with `ip` in your question and what is your answer? 17:20:28 dustymabe: no, just to spell out what are the usecases that require `wg` on the host 17:20:45 It can be used for both IMO. Why would FCOS want to dictate it's useage to users? 17:21:48 I haven't used wg specifically, but like `ip`, I would say: configuring connections, investigating connection state 17:22:16 so in our "happy path" we wouldn't use `wg` to configure connections, but we would for investigating connection state 17:22:23 dustymabe: ip (like iptables) are widely used by softwares and scripts to configure the host networking 17:23:24 kaeso[m]: what's your point? 17:24:55 dustymabe: my point is that we approached this backward and we failed so far to spell out usecases and intended usages 17:25:42 how about "investigating connection state" ? 17:26:32 * dustymabe notes we are running low on time 17:27:50 that's a point, but so we are boiling this down to "please include this network debugging tool" 17:28:26 generating key as well. I would like to generate keys on the nodes at the come up and register keys in hashicorp vault. 17:28:35 as they come up* 17:29:05 jdoss: we've yet to define our "happy path". It probably won't include generating the keys on the host during bringup 17:29:26 but I don't think we should stop users from doing that if they want to generate the keys and register it with some other service on bringup 17:29:44 The quick path for that use case is use `wg` 17:30:09 kaeso[m]: yes, it's basically a utlity, useful for debugging/insepcting the wireguard connections 17:30:18 jdoss: that's a better one IMHO. And if that is the intended usage, we should make sure it's actually possible with NM+wg 17:30:18 and also for generating keys 17:30:24 so like `ip` and `openssl` 17:31:27 kaeso[m]: some users will choose to not use NM, but we're not here to stop them from that. My understanding is that you just wanted to make sure we had the "happy path" working before people re-invented the wheel a million times 17:31:42 is that correct? 17:33:02 yes, but now we are heading to a different story which is "we need wg in order to bypass NM" 17:33:33 ehh, I think that's mostly tangential 17:33:41 I would agree 17:34:02 i.e. if they wanted wg they could deliver it as a binary with ignition to /usr/local/bin/ and execute it anyway 17:34:39 so the main use case is network inspection of a wireguard configured interface that was brought up via ignition 17:34:44 sorry, not ignition, NM 17:35:11 but ancillary use cases would be generating keys (that could maybe be used by NM) 17:35:17 yes 17:35:24 or even bringing up the connections using wg itself 17:35:35 though that wouldn't be what we document 17:36:12 kaeso[m]: does any of this help ? 17:36:30 I don't want to drag this forever and I don't have a strong opinion in either directions, I'm just trying to have actual reasons written in the ticket 17:36:48 ok, I can enumerate what we discussed 17:36:56 in the ticket if that would help? 17:38:39 yep 17:38:40 #action dusty to add agreed upon proposal to the ticket and also some points from the discussion about use cases and what we prefer as the "happy path" vs what we don't encourage users to do 17:38:55 #topic open floor 17:39:00 sorry we're running late everyone 17:39:22 #info we have a new testing and stable release that are rolling out now over the next few days, please let us know if you hit any issues 17:39:50 anybody with anything else for open floor 17:40:27 #endmeeting