-
Notifications
You must be signed in to change notification settings - Fork 40
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix phased startup of zones when sled agent starts up #4588
Conversation
@@ -88,7 +88,7 @@ impl<T: Ledgerable> Ledger<T> { | |||
match T::read_from(log, &path).await { | |||
Ok(ledger) => ledgers.push(ledger), | |||
Err(err) => { | |||
error!(log, "Failed to read ledger: {err}"; "path" => %path) | |||
debug!(log, "Failed to read ledger: {err}"; "path" => %path) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This tiny change came along for the ride. This is not an error condition. It happens during normal operation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
What's the dependency here, being able to configure the boundary services for external network access? |
It's a dependency in the sled agent code that starts the boundary NTP zones, not the zones themselves. The comment from the code explains: omicron/sled-agent/src/services.rs Lines 839 to 843 in e3887d5
|
Got it thanks, it's a dependency needed for being able to find boundary services. |
Besides CI, I tested the tip of this branch (3320239) on madrid:
That all worked. |
@@ -184,7 +184,7 @@ pub trait Ledgerable: DeserializeOwned + Serialize + Send + Sync { | |||
err, | |||
}) | |||
} else { | |||
warn!(log, "No ledger in {path}"); | |||
info!(log, "No ledger in {path}"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This also happens during normal operation prior to the ledgers being initially written (during initial setup, if nothing else) so I found it misleading to make these warnings.
When sled agent starts up, it starts up the zones it's responsible for in a specific order:
At least, that's what the comments say, and that appears to be what it should do. But the first call to start internal DNS also starts the NTP zones today. This appears to work by accident because the DNS zones happen to get processed first.
This was discussed on #4466:
#4466 (comment)
#4466 (comment)
This change fixes that.