Installing SQL Server with Multiple Features: How to Size, Place, and Plan Resources

When installing SQL Server, one of the first screens you’ll see is the prerequisite check for memory and CPU cores. But those baselines only reflect the Database Engine itself. In reality, many deployments also add Replication, SSIS, SSRS, and SSAS on the same box. How should you size a server when all of these components are installed? Is there a single Microsoft guide that lists minimums for “everything on one server”? Or is it better to separate components by role?

Let’s go step by step—from novice to expert—so you know exactly how to plan.


Novice: Minimum vs. Recommended Resources

Microsoft publishes minimum and recommended requirements for the Database Engine, but not for every add-on. For the optional components, Microsoft gives performance/scaling guidance rather than strict minimums.

Here’s a consolidated baseline table (from Microsoft docs and industry practice):

ComponentMinimum CPUMinimum MemoryDisk (install)Notes
Database Engine1.4 GHz x64, 2 cores for production2 GB RAM6 GBOfficial Microsoft minimums.
Replication (Distributor)2 cores4 GB RAMShared with DB EngineLight footprint; separate server recommended for high volume.
SSIS (Integration Services)4 cores4–8 GB RAM (16 GB recommended)<1 GBETL packages vary; in-memory transforms can consume tens of GB.
SSRS (Reporting Services)2 cores4 GB RAM (8–16 GB recommended)2 GBNeeds CPU for rendering, memory for caching.
SSAS (Analysis Services)2 cores4 GB RAM (scale RAM = 2–3× compressed model size)2 GBVery memory dependent; separation from DB Engine recommended.

⚠️ Important: These are bare minimums or realistic baselines to get the service installed and running. Production deployments should be sized higher based on workload.


Intermediate: Feature-by-Feature Impact

Each major feature has its own footprint:


Advanced: Consolidation vs. Separation

  • All-in-one server: Simpler and cheaper, but risk of resource contention.
  • Separation by role (recommended best practice):
    • DB Engine: Isolated.
    • Distributor: Dedicated if high-volume.
    • SSIS: Separate if heavy ETL.
    • SSRS: Separate if lots of reports/concurrent users.
    • SSAS: Strongly recommended to isolate due to memory usage.

Memory & OS Considerations

SQL Server consumes all memory by default unless capped. Always:

  • Leave 10–20% of RAM for the OS and monitoring tools.
  • If SSIS or SSAS share the server:
  • Example: On 128 GB RAM → leave 12–16 GB for OS, 40 GB for SSAS (tabular model), 64 GB for DB Engine, 8 GB buffer for SSIS.

Practical Sizing Recommendations

  • CPU: 8–16 cores for mid-tier consolidated servers; scale up with concurrency.
  • Memory:
    • DB Engine: 16–32 GB+ for production.
    • SSIS: 8–16 GB baseline.
    • SSRS: 4–8 GB.
    • SSAS: 2–3× compressed model size.
    • Always leave OS + feature buffers.
  • Storage: SSD/NVMe for tempdb and staging; separate volumes for logs, data, backups.

Expert Notes

  • Watch NUMA boundaries on big servers.
  • Virtualization: pin cores/memory to avoid ballooning.
  • HA: Availability Groups only protect the DB Engine—SSRS/SSAS need separate HA planning.
  • Your approach (separate Distributor, separate SSRS) is exactly what Microsoft recommends.

Summary

  • SQL Server installer minimums only cover the Database Engine.
  • Add-on features (Replication, SSIS, SSRS, SSAS) don’t have hard Microsoft minimums—but baselines exist.
  • Always leave 10–20% RAM for the OS, and cap the DB Engine memory if sharing with SSIS/SSAS.
  • Consolidation is fine for dev/test; separation by role is best practice in production.

Final Thoughts

If you’re new, it’s tempting to put everything on one box. It works—but eventually SSIS packages, SSAS models, or SSRS reports will starve the Database Engine.

The right path is:

  • Follow minimums as a floor, not a target.
  • Leave memory for the OS and other features.
  • Scale out to dedicated servers as workloads grow.

You’ve already separated the Distributor and SSRS — that’s excellent. For SSIS and SSAS, monitor usage closely and split them when contention appears.


References


Discover more from SQLYARD

Subscribe to get the latest posts sent to your email.

Leave a Reply

Discover more from SQLYARD

Subscribe now to keep reading and get access to the full archive.

Continue reading