![]() | |
![]() |
| | Thread Tools | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
|
we have an active-active sql cluster configured as follow: server A - 4gb ram - sql server instance #1 server B - 4gb ram - sql server instance #2 currently each sql instance is configured to use at most 2gb of ram. in case of failover, both instances switch on one server, effectively usinge all 4gb without paging. but it's quite a waste. under normal condition each server is not using 2gb. one option we are evaluating is configuring each server to use min=1gb and max=3gb. and _disabling_ tha paging file. disabling tha paging file should overcome the problem that, in case of failover, the two instaces will start paging effectively rendering the server unusable. do you think it could work? do you have any other suggestions? thanks in advance, cheers /ettore |
#3
| |||
| |||
|
|
If you disable the paging file (which you can't as there is always some kernel code paged out), then the other instance could not fail over as there would be no RAM for it. So a failover cluster would be useless. With the /3GB switch, user addressable memory limit is 3GB. The OS keeps 1Gb for itself. Even with 2Gb, you are over committing memory. 1.5Gb maximum should be your limit per instance to cater for failover. Regards Mike |
#4
| |||
| |||
|
|
thanks for answering Mike, so, let's forget about disable paging. i understand it wont work. and, thanks for pointing out the /3GB switch stuff wich I wasn't aware of. but, from BoL, reading from this page: Dynamically Managing Memory Between Multiple Instances exactly from this sentence "Once the amount of memory reaches the point where only 4 MB to 10 MB is free, the instances begin competing with each other for memory." and forward on. it seems that when in competition, instances could free memory based on workload. so suppose this scenario: - instance configures as min=1.5GB, max=3.0GB - normally each intance expand their usage to 3gb - then one node fails - instance wich was on the failing node is moved - the two instances start competing - the other instance starts to free memory do you think it could work? regarding paging, in the same article, BoL states that the dynamic memory management algorithm will "ensures that the overall amount of allocated memory remains under the level that would generate paging" cheers, Ettore If you disable the paging file (which you can't as there is always some kernel code paged out), then the other instance could not fail over as there would be no RAM for it. So a failover cluster would be useless. With the /3GB switch, user addressable memory limit is 3GB. The OS keeps 1Gb for itself. Even with 2Gb, you are over committing memory. 1.5Gb maximum should be your limit per instance to cater for failover. Regards Mike |
![]() |
| Thread Tools | |
| Display Modes | |
| |