Embracing the Ecosystem
As a platform-neutral orchestrator, Symphony is designed to work with existing ecosystems through its extensibility model. The following summary highlights how Symphony natively integrates with various projects, services, platforms, and tools, while allowing additional extensions to be introduced at any time.
Target Providers
Symphony Target Providers are responsible for applying updates to target devices or clusters. Symphony currently includes the following built-in target providers:
- Azure Device Update for IoT Hub
- Azure Resource Manager (ARM)
- Bash Script
- Docker
- Eclipse Ankaios
- Eclipse uProtocol
- Helm
- Kubernetes ConfigMap
- Kubernetes Ingress
- Kubernetes Pods
- PowerShell
- RESTful API
- Windows 10/11 Sideloading
Symphony Components
Symphony system components can be swapped out to support different deployment needs and scenarios. Symphony currently ships with the following swappable system components:
-
Identity Providers
- Local user/password
- Microsoft Azure Atteststation
- Microsoft Entra (including managed identities)
- OpenID Connect (OIDC) compatible identity providers
-
Message Bus
- In-memory pub-sub
- MQTT brokers
-
Secret Store
-
State Store
- In-memroy store
- Kubernetes state store
- Redis