Skip to content

Infra: Standardize RustFS setup across Iceberg repos - #4017

Open
kevinjqliu wants to merge 2 commits into
apache:mainfrom
kevinjqliu:kevinjqliu-rustfs-setup-cleanup
Open

kevinjqliu wants to merge 2 commits into
apache:mainfrom
kevinjqliu:kevinjqliu-rustfs-setup-cleanup

Conversation

@kevinjqliu

@kevinjqliu kevinjqliu commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor

Rationale for this change

Follow up to apache/iceberg#18246. Standardizes the RustFS setup across the Iceberg repos. Same change in:

The setup:

  • rustfs/rustfs:1.0.3, the latest stable.
  • Healthcheck on /health/ready. /health is just liveness and can pass before storage and IAM are ready, so bucket creation can race it.
  • RUSTFS_OBS_LOG_STDOUT_ENABLED=true. Otherwise docker logs is empty.
  • RUSTFS_CONSOLE_ENABLE=false and no port 9001. Nothing uses the console.
  • Nothing else. The rest are defaults.

Are these changes tested?

Ran docker compose config on both files and started rustfs/rustfs:1.0.3 with the new config: /health/ready returns 200 and logs show up in docker logs.

Are there any user-facing changes?

No.

AI Disclosure: Assisted by GitHub Copilot.

Use /health/ready so bucket creation waits for storage/IAM readiness,
enable stdout logging so `docker logs` shows output, and remove settings
that are already defaults in rustfs/rustfs:1.0.0.

Generated-by: GitHub Copilot
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot AI lite review requested due to automatic review settings September 25, 2026 04:08

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot review overview

🟢 Approval recommended

No unresolved issues were identified.

Review effort: Lite
Findings: None

What changed in this PR

Updates RustFS Docker Compose configurations to use readiness checks, stdout logging, and default settings.

Changes:

  • Switches healthchecks to /health/ready.
  • Enables RustFS stdout logging.
  • Removes redundant default settings.
File Description
dev/​docker-compose.yml Updates standalone RustFS configuration.
dev/​docker-compose-integration.yml Updates integration RustFS configuration.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@kevinjqliu
kevinjqliu marked this pull request as draft September 25, 2026 04:17
Align with the RustFS setup used across Iceberg repos: bump the image to
1.0.3, set RUSTFS_CONSOLE_ENABLE=false, and stop publishing port 9001.

Generated-by: GitHub Copilot
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
@kevinjqliu kevinjqliu changed the title Use RustFS readiness healthcheck and drop redundant settings Infra: Standardize RustFS setup across Iceberg repos Oct 20, 2026
- RUSTFS_ADDRESS=:9000
- RUSTFS_CONSOLE_ENABLE=true
- RUSTFS_CONSOLE_ADDRESS=:9001
- RUSTFS_OBS_LOG_STDOUT_ENABLED=true

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

show logs in CI

- RUSTFS_CONSOLE_ENABLE=true
- RUSTFS_CONSOLE_ADDRESS=:9001
- RUSTFS_OBS_LOG_STDOUT_ENABLED=true
- RUSTFS_CONSOLE_ENABLE=false

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

removes console port 9001, we dont need it

- RUSTFS_SERVER_DOMAINS=object-store
healthcheck:
test: ["CMD-SHELL", "curl --fail http://127.0.0.1:9000/health"]
test: ["CMD-SHELL", "curl --fail http://127.0.0.1:9000/health/ready"]

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

The RustFS Status Check docs define the two endpoints differently:

  • /health is a liveness check. It returns 200 "as long as the process is up".

  • /health/ready is a readiness check. It returns 200 "only when storage, IAM, and peer health are ready", and 503 otherwise.

- RUSTFS_VOLUMES=/data
- RUSTFS_ADDRESS=:9000
- RUSTFS_CONSOLE_ENABLE=true
- RUSTFS_CONSOLE_ADDRESS=:9001

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

these are all defaults, can remove

@kevinjqliu
kevinjqliu marked this pull request as ready for review October 20, 2026 18:19

This branch has not been deployed

No deployments
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.

2 participants