Skip to content
This repository was archived by the owner on Jul 13, 2023. It is now read-only.

network: Encode information for systemd-networkd-wait-online#10

Merged
pothos merged 1 commit intoflatcar-masterfrom
kai/networkd-online-test
Oct 15, 2020
Merged

network: Encode information for systemd-networkd-wait-online#10
pothos merged 1 commit intoflatcar-masterfrom
kai/networkd-online-test

Conversation

@pothos
Copy link
Copy Markdown
Contributor

@pothos pothos commented Oct 15, 2020

The network-online.target can use systemd-networkd-wait-online.service
to wait for all interfaces to come up. It will fail if the interfaces
didn't came up but sometimes it is actually ok for some interfaces to
be down because they are unused or they are just one of two parts of a
bond. We should encode when interfaces will never come up and when it
is acceptable to have interfaces in a degraded state and which.
Extend the network logic to handle this additional configuration. For
Packet we expect the metadata to give all interfaces and any other
physical NICs can be set to "unmanaged" so that we don't wait for them.
We also allow bonds to operate with only one working link, and we don't
wait for all bonded interfaces to be configured.

Note: Also use this for flatcar-2661

Should be upstreamed.

How to use

Use with the new Flatcar Alpha build 2661 having systemd 246 on Equinix Metal (fka Packet) t1.small.x86 and c3.small.x86 instances and check that /usr/lib/systemd/systemd-networkd-wait-online does not time out.

Testing done

cargo test and cargo build, full test for the image done in flatcar-archive/coreos-overlay#648

@pothos pothos requested a review from a team October 15, 2020 07:15
The network-online.target can use systemd-networkd-wait-online.service
to wait for all interfaces to come up. It will fail if the interfaces
didn't came up but sometimes it is actually ok for some interfaces to
be down because they are unused or they are just one of two parts of a
bond. We should encode when interfaces will never come up and when it
is acceptable to have interfaces in a degraded state and which.
Extend the network logic to handle this additional configuration. For
Packet we expect the metadata to give all interfaces and any other
physical NICs can be set to "unmanaged" so that we don't wait for them.
We also allow bonds to operate with only one working link, and we don't
wait for all bonded interfaces to be configured.
@pothos pothos force-pushed the kai/networkd-online-test branch from b3404d6 to e2e89fc Compare October 15, 2020 07:21
pothos added a commit to flatcar-archive/coreos-overlay that referenced this pull request Oct 15, 2020
This pulls in
flatcar-archive/afterburn#10
to fix systemd-networkd-wait-online on Equinix Metal (fka Packet).
@pothos pothos merged commit be818b9 into flatcar-master Oct 15, 2020
@pothos pothos deleted the kai/networkd-online-test branch October 15, 2020 13:41
pothos added a commit to flatcar-archive/coreos-overlay that referenced this pull request Oct 15, 2020
This pulls in
flatcar-archive/afterburn#10
to fix systemd-networkd-wait-online on Equinix Metal (fka Packet).
pothos added a commit to flatcar-archive/coreos-overlay that referenced this pull request Oct 15, 2020
This pulls in
flatcar-archive/afterburn#10
to fix systemd-networkd-wait-online on Equinix Metal (fka Packet).
pothos added a commit to pothos/afterburn that referenced this pull request Mar 28, 2022
The network-online.target can use systemd-networkd-wait-online.service
to wait for all interfaces to come up. It will fail if the interfaces
didn't came up but sometimes it is actually ok for some interfaces to
be down because they are unused or they are just one of two parts of a
bond. We should encode when interfaces will never come up and when it
is acceptable to have interfaces in a degraded state and which.
Extend the network logic to handle this additional configuration. For
Packet we expect the metadata to specify all interfaces, and any other
physical NICs can be set to "unmanaged" so that we don't wait for them.
Introduce "Path" matching in the networkd unit file for that.
We also allow bonds to operate with only one working link, and we don't
wait for all bonded interfaces to be configured.
This is a port of flatcar-archive/afterburn#10
to afterburn's main branch.
pothos added a commit to pothos/afterburn that referenced this pull request Apr 20, 2022
The network-online.target can use systemd-networkd-wait-online.service
to wait for all interfaces to come up. It will fail if the interfaces
didn't came up but sometimes it is actually ok for some interfaces to
be down because they are unused or they are just one of two parts of a
bond. We should encode when interfaces will never come up and when it
is acceptable to have interfaces in a degraded state and which.
Extend the network logic to handle this additional configuration. For
Packet we expect the metadata to specify all interfaces, and any other
physical NICs can be set to "unmanaged" so that we don't wait for them.
Introduce "Path" matching in the networkd unit file for that.
We also allow bonds to operate with only one working link, and we don't
wait for all bonded interfaces to be configured.
This is a port of flatcar-archive/afterburn#10
to afterburn's main branch.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant