How ovirt/ovirt-engine works
oVirt Engine is the management plane for virtualized infrastructure. The visible workflow is an authenticated management request handled by the backend command/query layer, which manages compute, storage, and cluster resources and returns results; the tree also shows host communication, SSO, and extension support. The excerpts confirm authentication persistence, storage discovery/query behavior, and database access, but do not establish all wiring among the wider subsystems. Major product areas are represented at their exact enclosing source directories where individual implementations were not sampled.
Main entry points: bll Commands and queries · dao Resource DAOs · GetUnregisteredBlockStorageDomainsQuery.java Storage discovery · EngineBackupAwarenessManager.java Backup monitoring
Components 18
Identity and sessions
- Authentication filters
backend/manager/modules/aaa/src/main/java/org/ovirt/engine/core/aaa/filters - SSO authentication
backend/manager/modules/enginesso/src/main/java/org/ovirt/engine/core/sso/service/AuthenticationService.java - Engine session
backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/businessentities/EngineSession.java
Management logic
- Backend
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/Backend.java - Commands and queries
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll - VM and cluster management
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll - Storage discovery
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/storage/domain/GetUnregisteredBlockStorageDomainsQuery.java - Disk snapshots
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/snapshots/GetAllDiskSnapshotsByStorageDomainIdQuery.java - Gluster task status
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/gluster/GlusterAsyncTaskStatusQueryBase.java - Engine extensions
backend/manager/modules/utils/src/main/java/org/ovirt/engine/core/utils/extensionsmgr/EngineExtensionsManager.java - Backup monitoring
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/EngineBackupAwarenessManager.java
Infrastructure access
- Host communication
backend/manager/modules/vdsbroker/src/main/java/org/ovirt/engine/core/vdsbroker/jsonrpc/EngineManagerProvider.java
Persistent state
- Session DAO
backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao/EngineSessionDaoImpl.java - Engine database
- Resource DAOs
backend/manager/modules/dal/src/main/java/org/ovirt/engine/core/dao - Audit log
backend/manager/modules/bll/src/main/java/org/ovirt/engine/core/bll/EngineBackupAwarenessManager.java
Other components
- Administrator
- Managed hosts
Connections 17
- Administrator → Authentication filters: sends request
- Authentication filters → SSO authentication: authenticates
- SSO authentication → Engine session: creates session
- Session DAO → Engine database: reads and writes
- Backend → Commands and queries: dispatches
- Commands and queries → VM and cluster management: handles operations
- Commands and queries → Storage discovery: runs query
- Commands and queries → Disk snapshots: runs query
- Commands and queries → Gluster task status: runs query
- Storage discovery → Managed hosts: connects and queries
- Storage discovery → Resource DAOs: reads domains
- Disk snapshots → Resource DAOs: reads images and snapshots
- Gluster task status → Resource DAOs: reads task state
- Host communication → Managed hosts: secures communication
- Backup monitoring → Resource DAOs: checks backup records
- Backup monitoring → Audit log: raises alerts
- Engine extensions → Commands and queries: enables extensions