# System Requirements

The CMS is delivered as a .NET-based application backed by a MySQL database. It is packaged for deployment in containerized or virtualized environments and can be operated either alongside Azure Stack Hub infrastructure or on external platforms.

#### Software Requirements

<div id="bkmrk-database%3A-mysql-8.0-">- **Database**: MySQL 8.0 or later
- **Application Runtime**: .NET 8
- **Frontend**: Blazor Server (runs as part of the API service or in a separate container)
- **Optional Components**: Docker or Kubernetes for container orchestration

</div>#### Hardware Requirements

<div id="bkmrk-production-deploymen">- **Production Deployment**
    
    
    - Minimum 4 vCPUs
    - 16 GB RAM
    - 100 GB storage (expandable based on retention of usage and billing data)
- **Development or Evaluation Deployment**
    
    
    - Minimum 2 vCPUs
    - 8 GB RAM
    - 50 GB storage

</div>#### Network Requirements

<div id="bkmrk-outbound-https-conne">- Outbound HTTPS connectivity to Azure Stack Hub administrative endpoints
- Inbound HTTPS (TCP 443) for API and portal access
- Optional VPN or ExpressRoute for hybrid or private connectivity scenarios

</div>#### Identity Requirements

<div id="bkmrk-integration-with-mic">- Integration with Microsoft Entra ID or another supported identity provider
- Federated authentication supported through token validation endpoints
- Role-based access control (RBAC) enforced throughout the portal and API

</div>#### High Availability and Recovery

The CMS can be deployed in a high-availability configuration using container clustering or database replication. Backup and recovery procedures should be established to protect the MySQL database and configuration state. For detailed operational guidance, see *Backups &amp; DR* in the Operations chapter.

<div id="bkmrk-"></div><div id="bkmrk--1"></div>