Announcing the 0.7.0 Release
This new release contains the first release of the Armory Console, a web-based interface for Armory. It also introduces the concept of EventHubs, a new way of configuring external systems like Kafka.
Furthermore, this release extends the existing Credentials with new types, such as SASL and mTLS.
It also features partition roll-over triggers, node scheduling configuration options, performance improvements, and a number of other improvements and bug fixes.
Finally, we also restructured the documentation website to make it easier to navigate and find the information you need.
Installation
For new installations, see the Installation guide.
For upgrading existing installations, see the associated Upgrading to 0.7.x guide.
Console
The Console is new a web-based interface for Armory. It is designed to be a user-friendly way to interact with the Kannika Armory.
The Console is still in its early stages, and it is not yet feature-complete, but we are excited to share it with you. Features include configuration of new resources, pausing backups, topic management, deleting resources, etc.
During configuration, you can create new resources such as:
- The EventHub to connect to.
- The Storage to use.
- The Credentials to authenticate with.
You can also configure various options, including:
- Restoring until a certain point in time
- Compression
- Resource requirements
- Adding original offsets to the headers
- And much more!
Hello EventHubs, Goodbye Endpoints
The EventHub is a new resource in Armory. It is the final piece of the puzzle to replace the old (Kafka) Endpoint concept, which is significantly simpler to configure.
In the previous releases, we had already introduced the Storage and Credentials resources to replace the old Volume Endpoint and GCS Endpoint configurations. In this release, the old Kafka Endpoint is finally replaced by the EventHub, which was the last remaining Endpoint to be migrated.
The EventHub is a central resource that can be used by multiple backups and restores. It contains the configuration towards the underlying Kafka cluster, excluding the authentication details.
Authentication for Kafka is now configured using the new SASL Credentials or mTLS Credentials.
Make sure to follow the Upgrading to 0.7.x guide to migrate your existing Endpoints to the new EventHubs.
Partition Roll-over Triggers
Armory writes its data to a series of files called partitions.
Partition roll-over triggers allow you to configure when a new partition should be created. This gives you more control over the size of the partitions and the number of files that are created.
This can be particularly useful when working with topics that have a low throughput, which are being offloaded to remote storage, as it may take a long time to fill up a partition and flush it to the remote storage.
In previous releases, a new partition is created every 100MiB. This remains the default if no triggers are specified.
Node Scheduling Support
This release now contains configuration options for the default tolerations, affinity and node selector for all backups and restores. This will allow you to control on which nodes the backups and restores are scheduled by Kubernetes.
It is also possible to set these on each Backup Pod and Restore Pod separately.
Performance Improvements
This release includes a number of performance improvements, particularly for the restore process when restoring a lot of small messages. You may see an increase up to 70% in restore speed in such cases.
Other Changes
-
The
.spec.config
field of a Restore resource is now optional. -
The
.spec.storageClass
field of a Backup resource has been removed. -
The
.spec.storageClass
field of a Restore resource has been removed.
Breaking Changes
-
Endpoints have been removed in favor of the new EventHubs and Storages.
-
The default security context for all pods has been removed. If you were relying on the default security context, you will need to configure it yourself
-
The default resource requirements for all pods have been removed. If you were relying on the default resource requirements, you will need to configure them yourself
Make sure to follow the Upgrading to 0.7.x guide to handle these breaking changes.
Upcoming Features
The Console is still in its early stages, and we are working on adding more features to it.
Some features that we are working on include:
- Metrics: The ability to view metrics, so you can easily see how your backups and restores are performing.
- OIDC support: You will be able to authenticate with the console and the API using OIDC.
- Updating existing configurations: You will get full control over the configuration of existing backups and restores via the console.
- Data retention policies: You will be able to define how long data should be retained.
Please check the Roadmap for more information on upcoming features.
Release Notes
For a full list of changes, see the Changelog.