/
Odesa

Odesa

Release Date:  14 March 2025

Code Freeze:  12 Feb 2025

Namer: Farshid Tavakolizadeh and Mengyi Wang (both Canonical)

The Odesa release is EdgeX version 4.0 (the 14th overall release and the latest major version jump of the project). However at a user code and API level it will be compatible with V3 services and applications so migration and adoption will be straightforward. It was the largely transparent back-end changes like switching databases and the secret store implementation that triggered an increment in the major version for us. EdgeX 4.0 also becomes our latest Long Term Support (LTS) release with coverage that will run until March 2027.

Release Theme:

Proven Maturity, Continuously Open and Ready for Deployment

  • Odesa brings critical advancements, including PostgreSQL support and a time-based scheduler, ensuring trusted and efficient EdgeX deployments for industrial applications

  • Odesa proactively addresses the recent shift of some third-party components to business-source licenses by adopting Linux Foundation-compliant alternatives

Major Items and New Features

  • PostgreSQL as the default EdgeX database

    • Needed for the industrial-grade storage, integrity, performance, backup and restore capabilities that many of our industrial users requested

    • See new documentation here: https://docs.edgexfoundry.org/4.0/microservices/general/database/Ch-Postgres/

    • Redis licensing has also changed to a BSL so PostgreSQL becomes the default DB in EdgeX that can support all of our edge persistence needs

    • A Redis container is no longer delivered with EdgeX, but code remains if users wish to continue utilizing Redis or its Linux Foundation forked named Valkey

  • New Time-Based Support Scheduler service

  • Core-Keeper replaces Consul as the EdgeX configuration and registry service

    • Consul is completely removed from EdgeX and the App and Device Service SDKs

  • OpenBao replaces Vault as the EdgeX secret store

    • OpenBao is a Linux Foundation fork of Vault with an open source license more compatible with EdgeX

    • Vault is completely removed from EdgeX and the App and Device Service SDKs

  • MQTT replaces Redis PubSub as the EdgeX message bus

    • MQTT is the prevalent open source message bus with many implementations if needed

    • Redis PubSub is completely removed from EdgeX

  • New Python App Services SDK

    • A Python-based SDK for building custom application services in EdgeX Foundry

    • Supports similar capabilities as existing Go-Lang App Functions SDK

Additional Features/updates/project improvements or changes

  • Zero-Trust / Secure Distributed EdgeX (implemented with OpenZiti Integration)

  • Device discovery feedback added to the Device Services SDK

  • Support for running in Docker rootless mode

  • Support for multi-arch manifests on the EdgeX Docker repositories. Multi-arch containers allow one container to support multiple architectures/layers by hosting multiple architecture-specific manifests. The benefit is that it simplifies tag management, image management and related efforts for our downstream users

  • Continued redesign of the EdgeX documentation redesign including updating all device service docs to the new consistent formatting

 

Known Bugs

 

Changelogs

Core, Supporting and Security Services Changelog

Go Device Service SDK Changelog

C Device Service SDK Changelog

Go App Functions SDK Changelog

Python App Functions SDK Changelog

App Service Configurable Changelog

Device Services:

EdgeX User Interface Changelog

Related content