What's Changed
Full Changelog: v0.21.0...v0.22.0
Release Notes
Added
backup.on_missing_topic: fail | warn— what to do when a literal (non-glob)
topics.includeentry does not exist in the cluster.fail(default) keeps
the current behaviour;warnlogs, records the absent names in the manifest's
newmissing_topicsfield, exposes thekafka_backup_missing_topicsgauge
(re-evaluated every cycle) and continues — a run with nothing left to back up
still fails.describeandvalidateshow the recorded topics (informational,
never an integrity failure). Globs that match nothing are unaffected.
(#167)describeandvalidateaccept--config backup.yaml(parity withstatus
andprune): storage — includingprefix— andbackup_idcome from the
backup configuration.--path+--backup-idstill work; the two forms are
mutually exclusive. (#168)- S3 config accepts
access_key_id/secret_access_keyas aliases of
access_key/secret_key— the configuration reference documented the
former, so configs written from it were silently dropping credentials.
(#166)
Fixed
- S3
path_stylewas discarded by the backend factory; path-style requests are
now used when set explicitly or implied by a customendpoint(plain-AWS
default unchanged). (#166) - A YAML
storage.endpointstarting withhttp://now impliesallow_http
(logged at info), matching the--pathURL behaviour, so on-prem HTTP stores
(Ceph RGW, MinIO) work withoutAWS_ALLOW_HTTP.
(#166) - Azure Workload Identity: YAML
client_id/tenant_idnow take precedence
over the webhook-injectedAZURE_CLIENT_ID/AZURE_TENANT_ID(they were
ignored on that path). offset_storage.sync_interval_secsis honoured: it overrides
backup.sync_interval_secsfor the offset-database sync; when unset the
backup value applies. (#161)- Documentation: the S3 and Azure sections of the configuration reference now
list the real option names (allow_http,use_workload_identity,client_id,
tenant_id,client_secret,endpoint), the Azure credential precedence and
environment variables (includingAZURE_FEDERATED_TOKEN_FILE), the--path
URL query parameters, and an AKS Workload Identity example as a Job.
(#166)
Deprecated
offset_storage.s3_key— ignored; the offset database is always stored at
{backup_id}/offsets.dbunder the storage prefix (prune,statusand the
operators rely on it). A warning is logged when set.
(#161)offset_storage.backend: memory— not implemented;sqliteis used and a
warning is logged. (#161)backup.checkpoint_interval_secs— never had an effect; offsets are
checkpointed at the end of every backup cycle. A warning is logged when set to
a non-default value. (#161)
Changed
- Breaking (library API):
BackupOptionsgainson_missing_topic,
BackupManifestgainsmissing_topics,OffsetStorageConfig::sync_interval_secs
is nowOption<u64>, andstorage::S3Configgainspath_style. Consumers
that build these structs by literal (the generic kafka-backup-operator does)
must add the fields —..Default::default()where available.
Install kafka-backup-cli 0.22.0
Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/osodevops/kafka-backup/releases/download/v0.22.0/kafka-backup-cli-installer.sh | shInstall prebuilt binaries via powershell script
powershell -ExecutionPolicy Bypass -c "irm https://github.com/osodevops/kafka-backup/releases/download/v0.22.0/kafka-backup-cli-installer.ps1 | iex"Install prebuilt binaries via Homebrew
brew install osodevops/tap/kafka-backupDownload kafka-backup-cli 0.22.0
| File | Platform | Checksum |
|---|---|---|
| kafka-backup-cli-aarch64-apple-darwin.tar.xz | Apple Silicon macOS | checksum |
| kafka-backup-cli-x86_64-apple-darwin.tar.xz | Intel macOS | checksum |
| kafka-backup-cli-x86_64-pc-windows-msvc.zip | x64 Windows | checksum |
| kafka-backup-cli-x86_64-unknown-linux-gnu.tar.xz | x64 Linux | checksum |