Today Pure Storage officially released support of NVMe-oF support on the FlashArray. This is another important step forward in the FlashArrays progress with NVMe. Prior to this, we have made a few incremental, but important improvements in the product to add full end-to-end support of NVMe:
Converting our NVRAM devices to use NVMe
Moving off of SSDs and adding custom NVMe-based flash modules in the FlashArray//X chassis
Adding support for drive shelves that are connected via NVMe-oF
Officially release NVMe-oF support for front-end workloads.
This has been a multi-step process that we spent a great deal of effort to make sure we were fully taking advantage of what NVMe in general has to offer.
This post is somewhat specific to Pure Storage–the cmdlets of course are universal, but behaviors may not correlate to your storage array. So if you are using VVols on a non-Pure array, certainly consult your vendor.
Furthermore, this is certainly specific to PowerCLI when it comes to the commands. With that being said, the fundamentals on how this works with Pure is common for all orchestration tools, so you should be able to use this information for other tools. Though of course the cmds/syntax will be different.
In my last post, I spoke about the ins and outs of using the Pure1 REST API–but it was a fairly manual process. Which of course is not how you really want to use a REST API. So the first part of this series will be using it with one of my favorite tools: PowerShell!
I will separate this into five parts:
Creating your certificate
Adding your public key into Pure1
Creating your JWT
Authenticating with Pure1
Making REST calls after authentication
UPDATE!!!! I made this much easier, you can use my module to connect to Pure1 which is on the PowerShell gallery.
Hello there! The FlashArray and FlashBlade products from Pure have always had a REST API service built in–this REST service allows you to manage, provision, and pull raw statistics from the array.
But there are two pieces missing:
You need to iterate through each array if you want to intelligently place a volume on it (or find a volume or whatever)
They only offer raw statistics–you need to do some crunching possibly to get what you want. Create projections and forecast, find how busy an array is, etc.
Luckily this is what Pure1 does for you. Every customer has access to our Pure1 web tool. This is something we host, all of your dial-home information gets fed into it. We use that information to figure out how “busy” an array is, when it will fill up from a capacity or performance perspective and much more. We now offer a REST API for Pure1 as well, so you can do some one-stop shopping for the information you need, that the arrays cannot natively provide.
Happy New Year!! I don’t plan on this being a long post, but as I type this I think “Well I don’t really even have a plan on what this post will be”. So I take that back–this post will be of an indeterminate length.
2018 was an interesting year–for better or for worse I suppose. Let’s put politics and world affairs aside for now. Not enough time in the day for that.
2018 was great year for me personally, I got married, enjoyed a lot of backpacking, camping, and traveling with my wife. Had more than a few Ballast Point Sculpins. Played the heck out of Zelda Breathe of the Wild.
The FlashArray implementation of Virtual Volumes surfaces VMs on the FlashArray as standard volume groups. The volume group being named by the virtual machine name. Each VVol is then added and removed to the volume group as they are provisioned or deleted. These objects though are fairly flexible–we do not use the volume group as a unique identifier of the virtual machine–internally we use key/value tags for that.
The benefit of that design is that you can delete the volume groups, rename them, or add and remove other volumes to it. Giving you some flexibility to group related VMs or whatever your use case might be to move things around, without breaking our VVol implementation.
This post I will talk about using PowerCLI to run a test failover for VVol-based virtual machines. One of the many nice things about VVols is that in the VASA 3.0 API this process is largely automated for you. The SRM-like workflow of a test failover is included–so the amount of storage-related PowerShell you have to manually write is fairly minimal.