miroir/docs/ctl
jedarden 634cb0c888 feat(alias): implement multi-target alias ILM integration
Implements complete multi-target alias ILM integration (plan §13.7):

- Add TaskStore::upsert_alias for ILM multi-target alias updates
- Update ILM to use upsert_alias instead of create_alias for rollovers
- Implement miroir-ctl alias commands (create, delete, list, show)
- Add alias kind and manager display to CLI output
- Document multi-target alias lifecycle and ILM ownership

Acceptance criteria met:
1. ✓ Operator edits to multi-target aliases return HTTP 409 miroir_multi_alias_not_writable
2. ✓ ILM exclusively manages multi-target aliases via kind='multi'
3. ✓ ILM atomic flips update target_uids and version correctly
4. ✓ Multi-target reads fan-out across all targets
5. ✓ Multi-target aliases reject writes with miroir_multi_alias_not_writable
6. ✓ miroir-ctl alias commands show alias kind and manager
7. ✓ Document multi-target alias lifecycle and ILM ownership

Closes: bf-5thu9

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-26 19:13:00 -04:00
..
alias.md feat(alias): implement multi-target alias ILM integration 2026-05-26 19:13:00 -04:00
canary.md docs(miroir-ctl): add subcommand runbooks and help text (P11.4, miroir-uyx.4) 2026-05-24 11:47:36 -04:00
cdc.md docs(miroir-ctl): add subcommand runbooks and help text (P11.4, miroir-uyx.4) 2026-05-24 11:47:36 -04:00
dump.md docs(miroir-ctl): add subcommand runbooks and help text (P11.4, miroir-uyx.4) 2026-05-24 11:47:36 -04:00
explain.md docs(miroir-ctl): add subcommand runbooks and help text (P11.4, miroir-uyx.4) 2026-05-24 11:47:36 -04:00
key.md docs(miroir-ctl): add subcommand runbooks and help text (P11.4, miroir-uyx.4) 2026-05-24 11:47:36 -04:00
node.md docs(miroir-ctl): add subcommand runbooks and help text (P11.4, miroir-uyx.4) 2026-05-24 11:47:36 -04:00
README.md docs(miroir-ctl): add subcommand runbooks and help text (P11.4, miroir-uyx.4) 2026-05-24 11:47:36 -04:00
rebalance.md docs(miroir-ctl): add subcommand runbooks and help text (P11.4, miroir-uyx.4) 2026-05-24 11:47:36 -04:00
reshard.md docs(miroir-ctl): add subcommand runbooks and help text (P11.4, miroir-uyx.4) 2026-05-24 11:47:36 -04:00
shadow.md docs(miroir-ctl): add subcommand runbooks and help text (P11.4, miroir-uyx.4) 2026-05-24 11:47:36 -04:00
status.md docs(miroir-ctl): add subcommand runbooks and help text (P11.4, miroir-uyx.4) 2026-05-24 11:47:36 -04:00
task.md docs(miroir-ctl): add subcommand runbooks and help text (P11.4, miroir-uyx.4) 2026-05-24 11:47:36 -04:00
tenant.md docs(miroir-ctl): add subcommand runbooks and help text (P11.4, miroir-uyx.4) 2026-05-24 11:47:36 -04:00
ttl.md docs(miroir-ctl): add subcommand runbooks and help text (P11.4, miroir-uyx.4) 2026-05-24 11:47:36 -04:00
ui.md docs(miroir-ctl): add subcommand runbooks and help text (P11.4, miroir-uyx.4) 2026-05-24 11:47:36 -04:00
verify.md docs(miroir-ctl): add subcommand runbooks and help text (P11.4, miroir-uyx.4) 2026-05-24 11:47:36 -04:00

miroir-ctl Runbooks

This directory contains runbooks for each miroir-ctl subcommand. Each runbook includes:

  • Purpose (one sentence)
  • Preconditions (what must be true before running)
  • Examples (common invocations)
  • Gotchas (edge cases and warnings)
  • See also (plan section references)

Runbooks

Command Runbook Description
status status.md Show cluster health and node status
node node.md Add, remove, drain, and list nodes
rebalance rebalance.md Monitor shard migrations
reshard reshard.md Change index shard count
verify verify.md Check data integrity across replicas
task task.md Monitor background tasks
dump dump.md Export and import index data
alias alias.md Manage index aliases
canary canary.md Control canary deployments
ttl ttl.md Manage document expiration policies
cdc cdc.md Configure change data capture
shadow shadow.md Manage shadow indexing
ui ui.md Launch the Admin UI
tenant tenant.md Manage multi-tenancy
explain explain.md Analyze query plans
key key.md Manage API keys

Quick Reference

# Cluster health
miroir-ctl status --watch

# Node operations
miroir-ctl node add --id node-3 --address http://node-3:7700 --replica-group 0
miroir-ctl node drain node-2
miroir-ctl node remove node-2

# Monitor operations
miroir-ctl rebalance status --watch
miroir-ctl task status

# Data operations
miroir-ctl dump export --index myindex --output myindex.dump
miroir-ctl verify --index myindex

# Admin UI
miroir-ctl ui

Authentication

All commands require an admin API key. Set it via:

  1. Environment variable: export MIROIR_ADMIN_API_KEY=...
  2. Credentials file: ~/.config/miroir/credentials with [default].admin_api_key
  3. Command line flag: --admin-key ... (WARNING: visible in process list)

See also