Friday, September 14, 2018

New to or Thinking About Microsoft Storage Spaces Direct?





For those of you who are interested in moving off traditional compute/SAN converged infrastructure you are at the right place. Storage Spaces Direct provides an extremely high-performance hyper-converged infrastructure (HCI) that can be tuned and used in a myriad of different ways.

Over the course of the last 20 months, we at Bradley rolled out 10 different clusters of Storage Spaces Direct with use cases spanning archival backups, remote office/branch office VM, and high-performance Tier 0 VM workloads.

Here are a few things I have learned during this time.



Focus on a ‘keep it simple model’ and create a modular design. In my opinion, Microsoft has created a “choose your own adventure” model for its HCI offering. It’s an extremely customizable and feature-rich product and therefore CAN be complex if that is what you want. As I’ve architected/implemented our Storage Spaces Direct infrastructure I’ve found that a focus on modularity and simplicity is the key to a successful implementation. Break up your installation into chunks/modules, for example, Windows Server installs, Hyper-V/failover cluster, networking, Storage Spaces Direct. This will allow you to test each section/feature before implementing the next and dramatically reduce any troubleshooting you may have to perform. I also recommend for your initial deployments that you follow well laid out guides from Microsoft, Mellanox, and others to create your first clusters. As you become comfortable with the product you’ll be able to grow its capabilities in a linear and modular fashion on an as-needed basis. For an example of the full extent of what Storage Spaces Direct can provide, look no further than Azure, Microsoft’s public cloud-based platform, as it runs on Hyper-V with Storage Spaces Direct. 


Hardware is critical. What I mean by this is that your Storage Spaces Direct experience will only be as good as the hardware you choose to run it on. One of the major selling points of Storage Spaces Direct, in my opinion, is its use of off-the-shelf components. For the best experience make sure the components you choose to conform to the Windows Server Catalog and have the SDDC Premium/Standard certification. We looked at many different vendors offering Microsoft-validated designs during our proof of concept phase and found DataON to provide the best hardware at the best price. One of DataON’s recommendations was to use Intel Optane NVMe SSDs for the cache tier and that delivered a vast improvement in latency and IOPS. Finally, make sure you size your physical nodes’ CPU and RAM properly. While small and getting smaller all the time, Storage Spaces Direct and the ReFS file system does have some minimal overhead associated with its use. DataON can be instrumental in helping you size your nodes correctly. 


Take the time to build out a deployment PowerShell script that you can re-use. This is the perfect way to ensure that you are configuring each node of your cluster with the same features, functionality, and configuration in a repeatable fashion. Also, as a side benefit, by using a script you are automatically documenting your implementation at the same time. There are lots of resources in the blogosphere on examples of how to leverage PowerShell cmdlets to install all aspects of Windows Server, Hyper-V, and Storage Spaces Direct. On that note, GitHub is your friend. Microsoft has a phenomenal resource for Storage Spaces Direct help located here. Also, the PowerShell script I created to automate my Storage Spaces Direct cluster implementation is located here


Software Defined Networking (SDN). A big part of Hyper-V and Storage Spaces Direct revolves around the use of SDN. It is very important to layout an IP/Subnet and VLAN scheme before you install Storage Spaces Direct. Some features (vSwitches come to mind) can only be configured during creation and not after. A MUST read resource is provided by Microsoft here. Another item to consider is the costs/features of “white box” switches and Cisco/Arista/Juniper. I love Mellanox’s SN2700 Series switch coupled with Mellanox adapters. It is a fraction of the cost of a Cisco solution, is highly performing at 100Gb per port, and makes configuring RoCE RDMA solution very simple. Community support for configuration designs/questions is also really good at Mellanox. 


For management of your Storage Spaces Direct environment, I personally really like to use Failover Cluster Manager for most of my VM management tasks. As Windows Admin Center features continue to grow this will become more and more my go-to management tool. We also use System Center Virtual Machine Manager. I personally would only recommend using SCVMM if you have a Role Based Access requirement at your company as managing Hyper-V via Failover Cluster Manager or Hyper-V manager requires Administrator rights.


The best advice I have ever received in my 20 years of being in IT is to “make time every day to read the latest tech news and blogs.” This will help you to stay current, learn new ways of doing things, and discover pitfalls to avoid.

Here are a few sites I follow that provide information on Storage Spaces Direct and troubleshooting advice:
https://storagespacesdirect.slack.com
http://www.aidanfinn.com/
https://www.altaro.com/hyper-v/
https://www.thomasmaurer.ch/
https://blogs.technet.microsoft.com/virtualization/
https://blog.workinghardinit.work/

Twitter is also a great resource!

I hope you find the above information useful. Storage Spaces Direct coupled with DataON hardware is an amazing alternative to monolithic designs of storage and compute most companies are used to. I highly encourage companies of all sizes to try it for themselves.




http://blog.dataonstorage.com/2018/09/13/it-hero-blog-getting-started-with-storage-spaces-direct/


My HCI build of Microsoft Storage Spaces Direct featured as DataOn's IT Hero

http://blog.dataonstorage.com/2018/09/13/it-hero-blog-getting-started-with-storage-spaces-direct/

Oldie but goodie :)

Very few Physical to Virtual conversions going on now a days but nice to keep this in the back of your mind if you have a need to convert a physical machine to a Hyper-V Generation 2 VM:  https://blog.workinghardinit.work/2016/09/08/disk2vhd-on-a-generation-2-vm-results-in-an-unbootable-vhdx/

Friday, September 7, 2018

Very good read by Ethan Banks

The Most Fragile Engineers I Know

by Ethan Banks

This tweet crossed my Twitter timeline recently. I’m confident it’s not actually by the legendary investor Warren Buffett because it’s not a verified account, and the last name is spelled wrong. Besides, I suspect Mr. Buffett has better things to do than fuss with social media--empire building must be quite time consuming.

Even so, I liked the sentiments expressed.


I’ve decided to make my own list from an IT engineering perspective. And instead of listing the smartest traits, I’ll explore the characteristics of the most fragile.

The most fragile engineers I know:

  1. Are easily offended. Engineers I’ve met with fragile egos lack confidence and are offended by everything. New technology. Having to integrate with other tech silos. Having to make design compromises. Criticism. They are argumentative, angry, and hypercritical of others, describing them as “idiots,” “morons,” and other vociferous denigrations. And since managers (senior executives especially) are obviously useless, every managerial directive is a new source of outrage and offense.
  2. Talk more than they listen. Fragile engineers need to prove to everyone that they know everything. When explaining a problem to them, they cut you off as if they already know what to do about your issue. They think they know better than the business stakeholders, and like to implement technology instead of solve problems.
  3. Enjoy arguing. The most fragile engineers I’ve worked with are contradictory people. Their perspective is rarely “we can figure out a way to make this work.” Instead, they want to prove why the new thing can’t work, didn’t work the last time, and won’t ever work in the future. They are a barrier and not an enabler.
  4. Never admit when they are wrong. Fragile engineers are never wrong. They never make a configuration mistake. They never unplug the wrong cable. They never shut down the interface that cuts them off from the management plane of an entire campus. They never power down the wrong router in the rack. They never make a bad recommendation. I mean, they do all of these things. We all have. But fragile engineers never admit their screw-ups, covering up with ambiguity. Truly evil engineers will blame others.
  5. Doggedly hold an opinion. When confronted with evidence, they will contradict and fight despite what the data says. These folks seem to think that changing an opinion is some admission of inadequacy, and fragile egos can’t tolerate that. Facts be damned.
  6. Keep smart people away. Fragile engineers are threatened by more skilled engineers, and will do their best to keep them away. After all, a skilled engineer might make them look bad, and that just won’t do. It’s not about growing into something better. It’s about protecting the existing situation.
  7. Force others to accept their perspective. The fragile engineer doesn’t want to hear other points of view. Why bother when one’s own point of view is clearly the only correct way to think? For these folks, the best way forward is to convince everyone else of their idiocy, and wrestle them to the ground with their opinion.

After more than two decades of working with technology, I hope I’m more mature and less fragile. Writing my contrary points above, I found myself wincing at a career’s worth of memories tied to such people.

A fragile ego can steamroll relationships. The data center rack you stand up today is the one you’ll tear back out eventually. It’s not that important that you won the argument about the cable coloring scheme.

Interpersonal relationships have the potential to last much longer, and can make you better in the process. They are worth investing in. However, you need to be vulnerable before that growth can occur. Vulnerability isn’t fragility--it’s admitting you don’t know everything.


Vulnerability is a sign of maturity.

Good read on latest server hardware sales

https://www.nextplatform.com/2018/09/06/are-hyperscalers-and-clouds-builders-smashing-up-an-it-pangea/