Server requirements for self-hosted installation
This document outlines the requirements for a basic single-server, self-hosted Comind installation suitable for small teams. Advanced deployments may incorporate additional features such as fault tolerance, load balancing, high-load processing, and enhanced security measures.
1. Hardware requirements
1.1 CPU specifications
- Minimum benchmark score: 12,000 or higher
- Reference: check http://www.cpubenchmark.net/high_end_cpus.html for current CPU benchmarks
- Performance: higher CPU performance will improve application responsiveness
1.2 Memory requirements
- Minimum RAM: 64 GB
- Performance impact: increased RAM will enhance application performance
- Recommendation: consider additional RAM for larger user bases or data volumes
1.3 Storage specifications
- Type: SSD (Solid State Drive) required
- Minimum capacity: 100 GB or more
- Limitation: storage capacity limits maximum data storage capacity
- Recommendation: plan storage based on expected data growth
2. Software requirements
2.1 Operating system
- Platform: Windows Server 2016 or newer
- Updates: ensure regular Windows updates and security patches
2.2 Web server configuration
- Role: IIS (Internet Information Services)
- Required components:
- .NET Framework 4.8+
- ASP.NET 4.8
- URL Rewrite 2 add-on
2.3 Frameworks and runtimes
- .NET Core: 8.0+ runtime and hosting bundle
- Node.js: latest LTS version with npm package manager
2.4 Database requirements
- Primary database: MS SQL Server 2016 or newer
- SQL Express edition is acceptable for smaller deployments
- Document database: MongoDB for document storage
2.5 Additional services
- Search engine: Elasticsearch for full-text search capabilities
- Caching: Redis for performance optimization
- Message queuing: RabbitMQ for asynchronous processing
2.6 Automated installation
- Installation script: Boxstarter and Chocolatey-based automated setup
- Reference: https://gist.github.com/comindwork/10f049fbaa8014e9a361e1c6e2a2d20f
- Includes: specific versions and recommended tools for consistent deployment
3. External services
3.1 Email services
- SMTP server: any standard SMTP server with SPF support
- POP3 mailbox: required for parsing incoming emails (e.g., Microsoft Exchange)
3.2 Backup requirements
- Separate storage: dedicated machine or storage system
- Management: handled by internal IT team
- Metrics: configure based on RPO (Recovery Point Objective) and MTTR (Mean Time To Recovery) requirements
4. Security requirements
4.1 SSO integration
Support for enterprise authentication systems:
- Microsoft Azure AD: Azure Active Directory integration
- Google Workspace: Google Workspace authentication
- Internal LDAP: on-premises LDAP directory services
4.2 SSL certificates
- Wildcard certificate: for subdomain support across all services
- Individual certificates: alternative option for each service (main domain, authentication, API, WebDAV)
- Certificate management: ensure proper certificate renewal and validation
4.3 Access and connectivity
- RDP access: direct Remote Desktop Protocol access required during initial setup and ongoing maintenance
- Network security: implement appropriate firewall and network security measures
4.4 System maintenance
- Windows updates: regular operating system updates and security patches managed by internal IT team
- Antivirus software: managed by internal IT team with performance monitoring to prevent system overload
Deployment considerations
Performance optimization
- Resource monitoring: track CPU, memory, and storage usage
- Scaling planning: plan for future growth and increased load
- Performance tuning: optimize database and application settings
Security best practices
- Regular audits: conduct periodic security assessments
- Access control: implement principle of least privilege
- Monitoring: set up logging and alerting for security events
Backup and disaster recovery
- Backup strategy: implement comprehensive backup procedures
- Recovery testing: regularly test backup restoration procedures
- Documentation: maintain detailed deployment and recovery documentation
These requirements provide a solid foundation for a self-hosted Comind installation that can scale with your organization's needs while maintaining security and performance standards.