Skip to content

Instantly share code, notes, and snippets.

@mattstratton
Created April 18, 2014 15:54
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mattstratton/11051196 to your computer and use it in GitHub Desktop.
Save mattstratton/11051196 to your computer and use it in GitHub Desktop.
SQL Server Challenges
The biggest challenge with the SQL install is that is monolithic. We install it with Chef using windows_package. This provider uses the package name ( in the registry uninstall key) to determine whether SQL is installed. This means that you can't really change the installed components or features because chef just sees it as SQL server. This not only limits our ability to add or remove features later, it also limits chefs ability to control configuration drift.
The install is also huge, and we have to map to a file share to do the install (as opposed to http). The install over the network takes over 30 minutes, and times out sometimes. I'm not sure how much anyone can really do about that though. Again, if there were a way to make it more modular, you could at least potentially install smaller packages, though more of them (perhaps similar to the way IIS features are installed?)
I haven't even attempted a multi-instance or clustered setup...
There were some challenges with the reporting services config as well since you need to use soap and the chef client doesn't package soap gems. I'm sure we could have bundled them and written some ruby, but I just called powershell from the chef recipe. There is a command line tool but it appears to require you to write vb.net. It all ends up being pretty hackish.
The other challenges were really windows issues. Change computer name. Reboot. Join domain. Reboot. Install SQL. Reboot. It takes forever to provision (and test) and needs more reboots than the Spider-man franchise.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment