Skip to content

Conversation

@smklein
Copy link
Collaborator

@smklein smklein commented Feb 16, 2022

This PR provides support for launching and managing services as zones.

What's happening here

Nexus

  • Exposes types in a way which can interoperate with Sled Agent.

Sled Agent

  • Parse a config file, rather than taking arguments over CLI
  • Add a "Service Manager", responsible for zones that run independently of datasets (e.g., Nexus, Oximeter)

Networking

  • Allow specifying static IP addresses for Zone addresses
  • In doing so: Add some utilities to sled-agent/src/illumos/zone.rs to ensure that link-local addresses are available for IPv6 addressing. This lets us provide static IPv6 addresses for services, which we use elsewhere in the PR when setting up zones.

Storage

  • Adds a "filesystem_put" endpoint to the Sled Agent, which allows a caller to request the creation of a local filesystem.
  • Adds a "service_put" endpoint to the Sled Agent, which allows a caller to request the creation of a local service.
  • Enable installation of omicron1 branded zones.
  • Overhaul the process of auto-loading installed zones and managing running zones.

Bootstrapping

  • Enable the parsing of a config-rss.toml file, which provides requests that would normally arrive from the Rack Setup Service.
  • Process the "rss requests" in the bootstrap agent, where they are injected before starting any local services.

Packaging Tools

  • Rely on omicron-package for package construction.
  • Adds a new "zone" type package to omicron-package, allowing the creation of omicron1-branded *.tar.gz files.
  • Adds a "cockroachdb", "clickhouse" packages to package-manifest.toml, with an associated manifest.xml file.

@smklein smklein marked this pull request as ready for review March 5, 2022 00:38
@smklein smklein requested review from iliana and jmpesp March 5, 2022 00:38
@smklein smklein changed the title [WIP] Launching services within a omicron1 branded zones Overhaul packaging, launching services within a omicron1 branded zones Mar 5, 2022
Copy link
Contributor

@jmpesp jmpesp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎉 :shipit: 🚀

@smklein smklein enabled auto-merge (squash) March 7, 2022 23:16
@smklein smklein disabled auto-merge March 7, 2022 23:26
@smklein smklein merged commit b4ccadd into main Mar 8, 2022
@smklein smklein deleted the package-zone branch March 8, 2022 14:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants