Features Should Not Dictate Mission Critical System Designs

Posted by on June 11, 2015 in availability groups, failover clustering, high availability, mission critical, Mission Critical SQL Server, PASS, presenting, speaking | 2 comments

I was working up a new presentation for the upcoming 24 Hours of PASS on mission critical system design (a bit more on that later) when one of those puzzles of life we all have cooking away on the back burners of the mind suddenly snapped into focus. The story of that puzzle goes a little something like this…

The development team ships a great feature called ladders for changing those light bulbs in high ceilings. They also have a fashionable feature called yellow polka dot cloth, which is just perfect for those retro 70s swimming trunks and bikinis that are all the rage. And they put in a cleverly-engineered tricycle feature loved by our active 4 year olds. Nothing at all wrong here.

Yet many times I arrive onsite to help a new customer with their mission critical system only to find that they’ve currently got a three wheeled, yellow polka dot, monster truck jacked up on stilts. I always used to wonder just how on earth they ever got to this point.

Now, thanks to last week’s epiphany, I finally understand. There is a natural tendency of humans to map what they need to what they have – regardless of any actual correlation between the two. There’s probably a law of needs way down the list about this already, and if not there should be because it really is true.

I guess this was correct in most natural situations. If a caveman needed a weapon to fight off a sabertooth tiger, picking one that was close at hand would be a critical survival skill. Clearly this is no time to start with a blank page and work through exactly what the best weapon would be to kill a huge, hungry cat that is looking at you like you are the answer to all his culinary dreams.

But therein lies the real moral of the story, and it’s just as true for DBAs.

Under pressure you’ll have to take the existing features which are, after all, designed to implement high availability and disaster recovery. The funny thing is that this is relative cheap and fast, but just always seems to fit like that sweater your aunt knitted you for Christmas – one sleeve too short, one too long, a bit tight around the neck, and never draping just right.

The features that ship in the product are great. However, chances are that if you sat down and wrote out real wants and needs for your particular applications and environment you would find that those existing features can get you only part of the way to success. Suddenly the gaps that you never saw when you just implemented HA/DR features become all too noticeable. The plan becomes a bit more complex and you wind up using a feature for this, part of a feature for that, writing some scripts over here, and adding a bit of custom hardware over there. It starts to be, well, work. But now the solution fits. It just feels right and does what it should when it should.


Of course, some knowledge always helps, and I mentioned that I was working on a new session for 24 Hours of PASS called “The Art and the Science of Designing a Mission Critical SQL Server Solution”. If you’ve ever thought about taking out that blank page and starting from scratch, I believe you’ll find it gives you some fresh new ideas and a nice starting point.

I hope some of you will join me there on Wednesday, June 24th at 8PM Pacific/11PM Eastern. Alternatively, feel free to try to fend off that big cat with a convenient tree branch – but we both know down deep that it’s probably going to end with one very happy feline.

If I’ve achieved nothing else, I hope you take away that what you really need is rarely what you have conveniently at hand and that you must actively resist human nature to see that this is the case.

read more

Mission Critical SQL Server Book Update – May, 2015

Posted by on May 21, 2015 in Administration, AlwaysOn, availability groups, backups, Book, disaster recovery, failover clustering, FCI, high availability, Mission Critical SQL Server, SQL Server, SQL Server 2008 R2, SQL Server 2012, SQL Server 2014, SQL Server 2016, Windows Server 2008 R2, Windows Server 2012, Windows Server 2012 R2, Windows Server 2016 | 0 comments

These days, one of the things everyone asks me is related to the book – mainly “How is it coming?” – a nice way of asking “Is it done yet?” It’s been awhile since the last update, and I figured it is time for a new one. If you are subscribed to the pre-release content, look for new chapters starting the week of May 25 (next week). Everyone who is not subscribed will need to wait for the final, completed book. There is a chance I may decide to put a few preview chapters up, but only when some more hit the pre-release folks; it is only fair.

So why the delay? Writing a book and publishing it on your own is much harder. My previous books were all done through a publisher who had editors and other bits of infrastructure I do not have at my fingertips. For the most part, I am a single threaded, one man show on the production of this book.

When I put the book up for preorder in July of 2013, I had an idea what I was signing myself for because I had written books before. Writing and publishing – especially self-publishing – is a whole different ball game if you want to do it right and not just dump raw Word files into the world and call it a book.

The good news is that I recently found an editor so the book will have a nice level of spit and polish. I’ve worked with her in the past, and am looking forward to seeing what she delivers. Having said that, primary writing and reviews must be completed before I can turn it over to her.

The only thing I can equate this to is when I scored a friend’s musical in the mid-1990s. I had played in tons of pit bands going back to when I started playing bass in 1980, so I figured, “How hard could this be?” Oh, how naïve I was. Between learning the scoring program, writing and arranging for multiple instruments, rehearsals, corrections – you name it. This was not a one day or one week process. I learned a lot, but it was very painful. Arranging got a lot easier after that, and so, too, will any future projects I do in the self-publishing arena.

Add to that my normal day job (consulting, training, as well as running SQLHA with Max), presenting, eating, sleeping, and trying to live my life somewhere in there along with the writing – oy! There just is only so much time and energy I have. However, I do believe all of these things play into one reason I believe that my books have been well received in the past. I bring real world perspective and experience to the table. If I am not doing this stuff for real, it’s just lab work.

For example, Max and I spent the better part of last year working with a large customer on a virtualized SQL Server project which also leveraged quite a few new storage and networking technologies not usually used with SQL Server. What was gained there will be filtered into the book, so you will be getting a lot better content than if I was not also actively doing consulting projects.

In more good news, I have pretty much cleared the decks for the next month or two to get all of the primary writing completed. Chapters need to be reviewed, and then reviewer feedback and corrections incorporated. Once all of the chapters are done, they will be handed off to the editor. Last but not least, all of the final formatting needs to be finished on the edited chapters. This is the entire book process in a nutshell.

Below are some specific questions that I want to address now because I have been asked from time to time. I have also updated the FAQ accordingly.


What content/chapters will the book contain?

While it may change a little, this is the near-final chapter list with my working (read: not final) titles:

  1. Basics of Availability
  2. Data Center Principles
  3. Brief Intro to the SQL Server HA Features
  4. Windows
  5. Networking Part 1
  6. Networking Part 2
  7. Storage Part 1
  8. Storage Part 2
  9. Security
  10. WSFC
  11. Quorum Part 1
  12. Quorum Part 2
  13. Planning FCIs
  14. FCI 2008 R2
  15. FCI 2012
  16. FCI 2014
  17. Scripting Installations
  18. Planning AGs
  19. Implementing AGs
  20. Cluster Admin/Troubleshooting
  21. Backups Part 1
  22. Backups Part 2
  23. Admin/Monitoring
  24. Planning Highly Available Upgrades
  25. Solutions
  26. Building Your Own Virtualized Test Environment

As you can tell, this is quite a bit of content. Right now the book will weigh in somewhere between 1000 and 1500 pages in Word prior to any formatting. Many of these chapters are in process, so those of you that have seen the updates may have only seen a few chapters but a lot of these are in various states of completion. If you are subscribed to the pre-release content, you’ll see all of this content soon.

When will the book truly be done?

From a timing perspective, assuming no issues or problems, primary writing should be done by July, edits by late August/early September, and then onto formatting. It really should be released on or before PASS Summit 2015. That is what I am working towards, and I see no reason that cannot be achieved.

I know people have been waiting patiently for Mission Critical SQL Server. My mistake in hindsight was putting it up so soon for preorder and not anticipating some of the roadblocks that popped up since putting it up for sale. I know that now, and will never repeat that again. For that, I apologize and I do believe the wait will be worth it.

I paid forever and a day ago – where is my money?

No one has asked, but I’m being forthcoming here – it’s sitting in a bank account earmarked for paying book costs. It’s not long gone. I made sure this happened for a very good reason. I need to pay people like editors :)

I subscribed to get updates to the book once it is released – will I still get them?

Yes! Needless to say, I’ll make sure you are taken care of. See the next question for a touch more detail, too.

If you preorder with updates on or before May 31, 2015, look for an e-mail from me soon. Anyone preordering with the updates option post-June 1, 2015, will get updates for the specified term – one year post-book release.

Will you do anything for people who purchased Mission Critical SQL Server a long time ago and have been waiting patiently?

Yes! I’m figuring out what that will be. This is different than the post-release updates. But the same rules will generally apply: pre-May 31, 2015 and post-May 31, 2015. I do appreciate your patience, and trust me, no one wants this done more than me because it is a big thing on my plate. There are other things I’d like to do which cannot get done until the book is complete.

When you first announced the book, you said it would cover through SQL Server 2012. What about 2014 and 2016 now that they are out or announced? How about Windows Server 2016?

Here is even better news. With the book being delayed, SQL Server 2014 is now included in this version. I will touch on a few 2016 (SQL Server and Windows things) but the first updates to the book will arguably be SQL Server 2016 and Windows Server 2016. Once those are released, I’ll examine what needs to be updated or added, and go from there. It is too soon to tell.

Any current discounts?

Yes. 20% until May 31, 2015 off of anything in the store. Code to be entered at checkout: MAY31

read more

Need a User Interface for Windows Server Technical Preview 2? It’s Not On By Default

Posted by on May 5, 2015 in MinShell, Server Core, Windows Server 2016, Windows Server Technical Preview 2 | 1 comment

Long time no see, everyone. I’ve been busy with work as well as the book. I’ll be posting an update about the book soon, but I wanted to do a technical post since it’s not only been awhile, but there’s a lot happening – especially with Ignite going on in Chicago right now (not the least of which was the formal announcement of SQL Server 2016 – that will be covered in yet another blog post sometime soon).

Microsoft released Windows Server Technical Preview 2 (aka Windows Server 2016) on Monday, May 4 (download link in the article; it’s also on MSDN). I have been looking forward to this release for quite some time. All the known issues so far with Windows Server Technical Preview 2 can be found at this link. Keep that one bookmarked.

Since Windows Server 2008, Microsoft has offered two main variants of Windows outside of edition: Server Core (no graphical user interface, or GUI) and the full server with a GUI. Windows Server 2012 introduced something in the middle called MinShell, which is GUI-less but allows certain GUI-based administration tools such as Failover Cluster Manager and Server Manager to be run.

A few of us have joked over the years that Microsoft has been pushing people towards Server Core. Guess what? That day has arrived. Nearly everyone I know – SQL Server or Windows person – has been telling you to learn PowerShell or command line. Here is where your procrastination bites you. Welcome to the year 2015.

There are two options for installing Technical Preview 2. The first  (Windows Server Technical Preview 2) is the default. It is pure Server Core. Option two adds the local administrator tools and is MinShell. There is no option to install with a full graphical user interface in this build, and if they keep it this way, also not in the final version.


Figure 1. Installation options for WSTP2

Even changing the administrator password is text based in the default option. This can be seen in Figure 2.

Figure 2. Changing the admin password after installation

Figure 2. Changing the admin password after installation

To verify it’s pure Server Core, I looked for one specific feature (Server-Gui-Mgmt-Infra), and it was disabled (status of Removed). See Figure 3.

Figure 3. Missing GUI admin features

Figure 3. Missing GUI admin features in the default WSTP2 installation option

Figure 4 shows the value for Server-Gui-Mgmt-Infra for the second installation option. Notice it is checked and has a status of Installed. This means it’s MinShell.

Figure X. Foo

Figure 4. GUI admin features present in the non-default WSTP2 installation option

Figure 5 shows what you see after logging in. If you’ve seen Server Core or MinShell, this is familiar.


Figure 5. What you see after logging into WSTP2

One thing I do find annoying all these years into Server Core/MinShell (and with Nano on the horizon) – these variants default to a command prompt – not PowerShell! I change a registry key to alter this, but Microsoft really should in my not so humble opinion default MinShell, Nano, and Server Core to a PowerShell prompt.

EDIT: I put an item up on User Voice for this. Go upvote it!

Having said all of the above, you can still add the full GUI in, but it is only done via PowerShell or the command line-based dism. Figure 6 is an example of using PowerShell after installing Technical Preview using the second option to add in the full Windows UI.

Figure X. Adding in the full shell

Figure 6. Adding in the full shell

After rebooting, you will see something which many of you are much more familiar with – the desktop. This is shown in Figure 7.


Figure 7. WSTP2 with a GUI

You can force a reboot with the -Reboot option when adding the feature. You should also note that depending on the option you chose, you may also have to add the GUI admin tools (Server-Gui-Mgmt-Infra mentioned above). Adding both of these can also be done via Server Manager (assuming MinShell), and adding the tools can be done after adding the full UI.

I’m excited to play with what WSTP2 has to offer, but this change will be a shock to many – hence this blog post. I’ll be doing more WSTP2 posts regarding some features as they relate to SQL Server soon …

read more

Application Vendors and SQL Server – A Cautionary Tale

Posted by on February 19, 2015 in annoyed, AppAssure, backups, Dell, SQL Server, vendor | 0 comments

Earlier today I tweeted this: “Dear Third Party V […]

read more

CONTEST – Win a Seat In Allan’s Mission Critical SQL Server Class in Dallas

Posted by on January 5, 2015 in SQLHA University, SQLHAU, training | 0 comments

Would you like to attend Allan’s Mission Critical SQL Server class for free in Dallas? Here’s how …

read more

Mission Critical SQL Server Class Sale Now Through December 5th

Posted by on November 23, 2014 in Mission Critical SQL Server, SQLHA University, SQLHAU, training | 0 comments

Take advantage of these great discounts on the Mission Critical SQL Server class before they are gone.

read more

SQL Server Coming to a Linux Distribution Near You?

Posted by on November 12, 2014 in .NET Framework, Linux, SQL Server | 1 comment

What’s next: open source SQL Server? Don’t laugh …

read more

SQLHA Has Given Birth

Posted by on October 30, 2014 in PASS Summit, SQLHA, SQLHA University, SQLHAU | 0 comments

SQLHA welcomes Fortified Data

read more