CRM and SQL Server on same server -- pros and cons RRS feed

  • General discussion

  • What is gained and what is lost by having two servers?

    Is there any benefit when the only database application is CRM?

    Tuesday, July 29, 2014 3:55 PM

All replies

  • SQL Server is known for claiming all existing memory.  How does CRM control that?  Or is that a manual configuration?
    Tuesday, July 29, 2014 4:24 PM
  • SQL loves RAM.  IIS likes RAM, the ASync process also can like RAM if you use workflows to any volume. So you now have three services that are all hungry for memory.  Plus, SQL tends to do a lot of hard drive I/O, so that can lock up anything else that needs drive access.

    In all, you should never, ever put SQL and CRM on the same server in production.  It will lead to a sub-optimal user experience.  If the deployment of CRM is small enough in production that a single server is being considered, CRM Online is a much better option all around. No scaling issues, no deployment hassle, and if you have 25 users, an included test org or development and configuration.

    The postings on this site are solely my own and do not represent or constitute Hitachi Solutions' positions, views, strategies or opinions.

    Tuesday, July 29, 2014 5:08 PM
  • We only do this for Demos and slow ones at that.  In the CTP program we have in the past been able to download from Microsoft a virtual machine that was a DC, SQL server and application server all in one but it really is not practical even for a UAT environment given that you are going to have to emulate the environment that production will be in.

    The resources needed including SSRS will also prohibit performance.

    Do your self a favor and don't sit there looking at an hour glass.  Hardware is cheap and Virtualization is your friend if you do it right.

    Curtis J Spanburgh

    Tuesday, July 29, 2014 9:25 PM
  • Now that's what I don't get.  There is one processor with X amount of RAM and some sort of shared I/O.  Add the VM OS.  Then somehow adding two Windows Server OSes out performs adding just one into the mix.
    Friday, August 1, 2014 4:44 PM
  • Granted, you need to know a bit about Virtualization tools but you can assign cores of the Proc to a VM and manage memory.

    Memory given to the SQL VM should not be shared upon request in a virtual environment.

    Curtis J Spanburgh

    Monday, August 4, 2014 6:53 PM
  • As a rule of thumb, and based on the documentation from Microsoft, single box deployments are only to be used for demo/dev instances. For anything production ready, always use at least a database server and an app server. Depending on the scale of the solution, number of concurrent users, and a multitude of other factors, that can easily grow to much more. I would suggest, if in doubt, consult with a CRM solution architect, and ask for a proper design to fit your planned implementation.
    Monday, August 4, 2014 8:11 PM
  • Or drink the kool-ade about virtualization tools...

    So, I guess what we are saying is that we need two servers because SQL Server cannot be made to behave in terms of sharing resources.

    Thursday, August 14, 2014 4:00 PM
  • So, the reasons for the architecture decisions cannot be explained only shared from on-high?
    Thursday, August 14, 2014 4:01 PM
  • You can limit the amount of memory a SQL instance will use, and according to my friends to manage SQL VMs they use the 80/20 memory split for the average SQL instance and they do not "share memory" with other VMs on the host. In the ERP world we have also discovered security issues when techs deploy both the ERP application on the SQL server.

    Looking at all the roles that are on a single deployment of a CRM 2013 server it would make sense to split this out from the SQL instance.

    Curtis J Spanburgh

    Thursday, August 14, 2014 4:23 PM
  • Not at all, Download the CRM 2013 planning doc and you will get more details.

    For sure, you can get all this going and tune a machine for Dev.  I'm not sure how many folks will provide a quad core 128 GB Physical machine with multiple controllers and multiple disk for a dev environments.   There will be a bottleneck in there someplace. I would wire shark such a deployment to view the conversations going on and see some of the traffic that would impede performance of the application.

    Curtis J Spanburgh

    Thursday, August 14, 2014 4:31 PM