by BrentOzar on 11/20/2017, 12:28:04 PM
I haven't yet seen a production problem that Docker containers solve better than IaaS VMs (AWS EC2, Azure VMs, Google Compute Engine.)
I've seen a lot of development problems that containers help solve, like quickly building out Development Edition VMs for continuous integration testing. Since Dev Edition is free, rapidly building/destroying containers makes sense. However...
> dynamically adding Always On Availability Group read-only replicas
Readable AG replicas require SQL Server Enterprise Edition, which is $7k USD per core. That pricing tends to dwarf the hardware it's running on, so it usually makes more sense to run bare metal on these if it's a long-term scale requirement. (I have indeed done temporary scale-out reads on VMs, it's just usually for things like Black Friday workloads for short periods of time.)
(And then at the end, I went to add a disclaimer about what I do and why I'm answering, and then I went, "Oh, wow, it's James Anderson asking this." OK, so we both know each other, but here's my answer anyway for the rest of the HN community.) So source: Microsoft SQL Server consultant.
by teddyuk on 11/21/2017, 8:25:45 AM
I would use them just to save the whole setup/install thing.
When sql releases were every 2-3 years you would upgrade the hardware at the same time, annually/semi-annually? Less likely.
Being able to change up a version within minutes is a significant improvement over the whole msi install thing even if you did script it.
I'm really interested to know if anyone is doing this, why they chose to do this and how they are getting on with it.
I've been thinking about this recently and what would be involved. Some of my thoughts / ideas are listed below.
Would need orchestration, probably K8s Windows containers or Linux containers? Possible to scale out reads by dynamically adding Always On Availability Group read-only replicas? Licensing would restrict large scale outs