Akri v0.8.4 is a pre-release of Akri.
To find out more about Akri, check out our documentation and start contributing today!
The v0.8.4 release contains the following major changes:
- Support for Kubernetes Job brokers (#437). Now Akri has support for deploying Jobs to devices discovered by the Akri Agent. Previously, Akri only supported deploying Pods that were not intended to terminate (and would be restarted if they did). Adding Jobs enables more device use scenarios. More background can be found in the Jobs proposal. This is a breaking change as it required changes to Akri's Configuration CRD.
- Fix to re-enable applying multiple Configurations that use the same Discovery Handler (#432). This adds back functionality that was removed in
v0.6.5
when enabling Akri's new extensibility model. - Akri depends on
crictl
to track whether Pods deployed by the Akri Controller are still running. This release adds new functionality (#418) such that crictl is pre-installed in the Agent container so that it does not need to be installed on each node.
Fixes, features, and optimizations
- fix: Make debug echo capacity configurable (#419)
- fix: Return okay if get 404 when trying to delete an Instance (#420)
- opt: Update .NET dependencies, removing vulnerabilities and reducing size (#422)
- feat: Execute test workloads based on labels instead of flags in PR titles (#426)
- opt: Set K8s distribution with Helm to simplify choosing container runtime socket (#427)
- fix: Fix all clippy errors and update dependency versions (#442)
View the full change log
Akri's Configuration CRD has been updated to support Job brokers. If Akri has previously been installed on a cluster, delete the previous Configuration CRD before installing the latest version of Akri:
kubectl delete crd configurations.akri.sh
N/A
Distribution | Version |
---|---|
Kubernetes | v1.21.0 |
Kubernetes | v1.20.1 |
Kubernetes | v1.19.4 |
Kubernetes | v1.18.12 |
Kubernetes | v1.17.14 |
Kubernetes | v1.16.15 |
K3s | v1.22.6+k3s1 |
K3s | v1.21.5+k3s1 |
K3s | v1.20.6+k3s1 |
K3s | v1.19.10+k3s1 |
K3s | v1.18.9+k3s1 |
K3s | v1.17.17+k3s1 |
K3s | v1.16.14+k3s1 |
MicroK8s | 1.23/stable |
MicroK8s | 1.22/stable |
MicroK8s | 1.21/stable |
MicroK8s | 1.20/stable |
MicroK8s | 1.19/stable |
MicroK8s | 1.18/stable |
MicroK8s | 1.17/stable |
MicroK8s | 1.16/stable |
Check out our roadmap to see the features we are looking forward to!
Thank you everyone in the community who helped Akri get to this release! Your interest and contributions help Akri prosper.
⭐ Contributors to v0.8.4 ⭐
- @bfjelds
- @kate-goldenring
- @romoh
- @vincepnguyen
- @Ragnyll
- (Please send us (
@Kate Goldenring
or@Edrick Wong
) a direct message on Slack if we left you out!)
Akri is packaged as a Helm chart. Check out our installation doc on how to install Akri.
helm repo add akri-helm-charts https://project-akri.github.io/akri/
helm install akri akri-helm-charts/akri --version 0.8.4 \
# additional configuration
See CHANGELOG.md for more information on what changed in this and previous releases.
Akri v0.7.0 is a pre-release of Akri.
To find out more about Akri, check out our documentation and start contributing today!
The v0.7.0 release marks the first release of Akri in a new project-akri
GitHub organization. While no
breaking changes were introduced, Akri's minor version was bumped to clearly mark this transition of Akri to a Cloud
Native Computing Foundation (CNCF) Sandbox project.
This release also introduces:
- Open governance documentation
- The switch from MIT to Apache 2 license (#401)
- The introduction of the Linux Foundation (LF) Core Infrastructure Initiative (CII) Best Practices badge on Akri's README (#403)
- The enablement of a Developer Certificate of Origin (DCO) of pull requests, which requires requires all commit messages to contain the Signed-off-by line with an email address that matches the commit author.
View the full change log
N/A
A Rust security issue was raised on the time
crate, which is used
ultimately by Akri's k8s-openapi
, kube-rs
and opcua-client
dependencies via chrono
. It appears that the version
of time
that chrono
is using is not
vulnerable. This
issue tracks the progress on chrono
and Akri's dependencies.
Distribution | Version |
---|---|
Kubernetes | v1.21.0 |
Kubernetes | v1.20.1 |
Kubernetes | v1.19.4 |
Kubernetes | v1.18.12 |
Kubernetes | v1.17.14 |
Kubernetes | v1.16.15 |
K3s | v1.21.5+k3s1 |
K3s | v1.20.6+k3s1 |
K3s | v1.19.10+k3s1 |
K3s | v1.18.9+k3s1 |
K3s | v1.17.17+k3s1 |
K3s | v1.16.14+k3s1 |
MicroK8s | 1.21/stable |
MicroK8s | 1.20/stable |
MicroK8s | 1.19/stable |
MicroK8s | 1.18/stable |
MicroK8s | 1.17/stable |
MicroK8s | 1.16/stable |
Check out our roadmap to see the features we are looking forward to!
Thank you everyone in the community who helped Akri get to this release! You're interest and contributions help Akri prosper.
Contributors to v0.7.0
- @bfjelds
- @kate-goldenring
- @romoh
- @edrickwong
- (Please send us (
@Kate Goldenring
or@Edrick Wong
) a direct message on Slack if we left you out!)
Akri is packaged as a Helm chart. Check out our installation doc on how to install Akri.
helm repo add akri-helm-charts https://project-akri.github.io/akri/
helm install akri akri-helm-charts/akri --version 0.7.0 \
# additional configuration
See CHANGELOG.md for more information on what changed in this and previous releases.
Akri v0.6.19 is a pre-release of Akri.
To find out more about Akri, check out our documentation and start contributing today!
The v0.6.19 release features ONVIF Discovery Handler and broker optimizations, long-awaited runtime and Kubernetes dependency updates, and moves Akri's documentation to a docs repository.
Fixes, features, and optimizations
- opt: Updated Akri's runtime (
tokio
) and Kubernetes dependencies (kube-rs
andk8s-openapi
), along with the major versions of all other dependencies where possible. (#361) - opt: ONVIF Discovery handler optimized to be more performant (#351)
- opt: Reduced size of ONVIF broker by decreasing size of OpenCV container (#353)
- feat: Removed documentation from repository (#360) and placed in
project-akri/akri-docs
. Created documentation site that points to documentation repository. - feat: Workflow to mark inactive issues/PRs as stale and eventually close them (#363)
- fix: Make Discovery Handlers check channel health each discovery loop (#385)
- fix: Handle multicast response duplicates in ONVIF Discovery Handler (#393)
- fix: Use
kube-rs
resourcewatcher
instead ofApi::watch
(#378) - fix: Prevent re-creation instances when only Configuration metadata or status changes (#373)
- feat: Enable configuring Prometheus metrics port for local runs (#377)
View the full change log
N/A
ONVIF discovery does not work in development versions v0.6.17
and v0.6.18
due to (#382). Issue was resolved for v0.6.19
and beyond in (#393).
Distribution | Version |
---|---|
Kubernetes | v1.21.0 |
Kubernetes | v1.20.1 |
Kubernetes | v1.19.4 |
Kubernetes | v1.18.12 |
Kubernetes | v1.17.14 |
Kubernetes | v1.16.15 |
K3s | v1.21.5+k3s1 |
K3s | v1.20.6+k3s1 |
K3s | v1.19.10+k3s1 |
K3s | v1.18.9+k3s1 |
K3s | v1.17.17+k3s1 |
K3s | v1.16.14+k3s1 |
MicroK8s | 1.21/stable |
MicroK8s | 1.20/stable |
MicroK8s | 1.19/stable |
MicroK8s | 1.18/stable |
MicroK8s | 1.17/stable |
MicroK8s | 1.16/stable |
Check out our roadmap to see the features we are looking forward to!
Thank you everyone in the community who helped Akri get to this release! You're interest and contributions help Akri prosper.
Contributors to v0.6.19
- @ammmze
- @bfjelds
- @kate-goldenring
- @romoh
- @shantanoo-desai
- (Please let us know via Slack if we left you out!)
Akri is packaged as a Helm chart. Check out our installation doc on how to install Akri.
helm repo add akri-helm-charts https://project-akri.github.io/akri/
helm install akri akri-helm-charts/akri --version 0.6.19 \
# additional configuration
See CHANGELOG.md for more information on what changed in this and previous releases.
Akri v0.6.5 is a pre-release of Akri.
To find out more about Akri, check out our README and start contributing today!
The v0.6.5 release introduces Akri's Logo, new features such as a new extensibility model for Discovery Handlers and a Configuration validating webhook, DevOps improvements, and more.
New Discovery Handler extensibility model
- feat: Discovery Handlers now live behind a gRPC interface (#252), so Discovery Handlers can be written in any language without forking Akri and working within its code. See the [Discovery Handler development document] to get started creating a Discovery Handler.
- feat: Support of both default "slim" and old "full" Agent images (#279). Prior to this release, the Agent contained udev, ONVIF, and OPC UA Discovery Handlers. As of this release, Akri is moving towards a default of having no embedded Discovery Handlers in the Agent; rather, the desired Discovery Handlers can be deployed separately using Akri's Helm chart. This decreases the attack surface of the Agent and will keep it from exponential growth as new Discovery Handlers are continually supported. Discovery Handlers written in Rust can be conditionally compiled into the Agent -- reference the development documentation for more details. For the time being, Akri will continue to support a an Agent image with udev, ONVIF, and OPC UA Discovery Handlers. It will be used if
agent.full=true
is set when installing Akri's Helm chart. - feat: Updates to Akri's Helm charts with templates for Akri's Discovery Handlers and renaming of values to better fit the new model.
DevOps improvements
- feat: Workflow to auto-update dependencies (#224)
- feat: Security audit workflow (#264)
- feat: Workflow for canceling previously running workflows on PRs, reducing environmental footprint and queuing of GitHub Actions (#284)
- feat: Build all rust components in one workflow instead of previous strategy for a workflow for each build (#270)
- fix: More exhaustive linting of Akri Helm charts (#306)
Other enhancements
- feat: Webhook for validating Configurations (#206)
- feat: Support for Akri monitoring via Prometheus (#190)
Misc
- feat: Akri Logo (#149)
- fix: Allow overwriting Controller's
nodeSelectors
(#194) - fix: Updated
mockall
version (#214) - fix: Changed default image
PullPolicy
fromAlways
to Kubernetes default (IfNotPresent
) (#207) - fix: Improved video streaming application (for udev demo) that polls for new service creation (#173)
- fix: Patched anomaly detection application (for OPC UA demo) to show values from all brokers (#229)
- feat: Timestamped labels for local container builds (#234)
- fix: Removed udev directory mount from Agent DaemonSet (#304)
- fix: Modified Debug Echo Discovery Handler to specify
Device.properties
and added check to e2e tests (#288) - feat: Support for specifying environment variables broker Pods via a Configuration's
brokerProperties
. - fix: Default memory and CPU resource requests and limits for Akri containers (#305)
View the full change log
Akri's Configuration and Instance CRDs were modified. The old version of the CRDs should be deleted with kubectl delete instances.akri.sh configurations.akri.sh
, and the new ones will be applied with a new Akri Helm installation.
- Akri's Configuration CRD's
protocol
field was replaced withdiscoveryHandler
in order to fit Akri's new Discovery Handler extensibility model and make the Configuration no longer strongly tied to Discovery Handlers. It's unusedunits
field was removed andproperties
was renamedbrokerProperties
to be more descriptive. - Akri's Instance CRD's unused
rbac
field was removed andmetadate
was renamedbrokerProperties
to be more descriptive and aligned with the Configuration CRD.
Significant changes were made to Akri's Helm chart. Consult the latest user guide and Configurations documentation.
By default, the Agent contains no Discovery Handlers. To deploy Discovery Handlers, they must be explicitly enabled in Akri's Helm chart.
N/A
Distribution | Version |
---|---|
Kubernetes | v1.21.0 |
Kubernetes | v1.20.1 |
Kubernetes | v1.19.4 |
Kubernetes | v1.18.12 |
Kubernetes | v1.17.14 |
Kubernetes | v1.16.15 |
K3s | v1.20.6+k3s1 |
K3s | v1.19.10+k3s1 |
K3s | v1.18.9+k3s1 |
K3s | v1.17.17+k3s1 |
K3s | v1.16.14+k3s1 |
MicroK8s | 1.21/stable |
MicroK8s | 1.20/stable |
MicroK8s | 1.19/stable |
MicroK8s | 1.18/stable |
MicroK8s | 1.17/stable |
MicroK8s | 1.16/stable |
Check out our roadmap to see the features we are looking forward to!
See CHANGELOG.md for more information on what changed in this and previous releases.
Akri v0.1.5 is a pre-release of Akri.
To find out more about Akri, check out our README and start contributing today!
The v0.1.5 release introduces support for OPC UA discovery along with:
- End to end demo for discovering and utilizing OPC UA servers
- Sample anomaly detection application for OPC UA demo
- Sample OPC UA broker
- OPC UA certificate generator
View the full change log
N/A
N/A
Distribution | Version |
---|---|
Kubernetes | v1.20.1 |
Kubernetes | v1.19.4 |
Kubernetes | v1.18.12 |
Kubernetes | v1.17.14 |
Kubernetes | v1.16.15 |
K3s | v1.20.0+k3s2 |
K3s | v1.19.4+k3s1 |
K3s | v1.18.9+k3s1 |
MicroK8s | 1.20/stable |
MicroK8s | 1.19/stable |
MicroK8s | 1.18/stable |
Check out our roadmap to see the features we are looking forward to!
See CHANGELOG.md for more information on what changed in this and previous releases.
Akri v0.0.44 is a pre-release of Akri.
To find out more about Akri, check out our README and start contributing today!
The v0.0.44 release introduces a number of significant improvements!
- Enable Akri for armv7
- Create separate Helm charts for releases (akri) and merges (akri-dev)
- Parameterize Helm for udev beyond simple video scenario
- Expand udev discovery by supporting filtering by udev rules that look up the device hierarchy such as SUBSYSTEMS, ATTRIBUTES, DRIVERS, KERNELS, and TAGS
- Parameterize Helm for udev to allow security context
- Remove requirement for agent to execute in privileged container
View the full change log
N/A
- Documented Helm settings are not currently compatible with K3s v1.19.4+k3s1
Distribution | Version |
---|---|
Kubernetes | v1.19.4 |
K3s | v1.18.9+k3s1 |
MicroK8s | 1.18/stable |
Check out our roadmap to see the features we are looking forward to!
See CHANGELOG.md for more information on what changed in this and previous releases.
Akri v0.0.35 is the first pre-release of Akri.
To find out more about Akri, check out our README and start contributing today!
The v0.0.35 release introduces a number of significant features!
- CRDs to allow the discovery and utilization of leaf devices
- An agent and controller to find, advertise, and utilize leaf devices
- Discovery for IP cameras using the ONVIF protocol
- An ONVIF broker to serve the camera frames
- Discovery for leaf devices exposed through udev
- A udev camera broker to serve the camera frames
- A Helm chart to simplify Akri deployment
View the full change log
N/A
N/A
Check out our roadmap to see the features we are looking forward to!
See CHANGELOG.md for more information on what changed in this and previous releases.