Take VxRail automation to the next level by leveraging APIs
Mon, 30 Mar 2020 15:20:04 -0000|
Read Time: 0 minutes
VxRail REST APIs
VxRail Manager, available as a part of HCI System Software, drastically simplifies the lifecycle management and operations of a single VxRail cluster. With a “single click” user experience available directly in vCenter interface, you can perform a full upgrade off all software components of the cluster, including not only vSphere and vSAN, but also complete server hardware firmware and drivers, such as NICs, disk controller(s), drives, etc. That’s a simplified experience that you won’t find in any other VMware-based HCI solution.
But what if you need to manage not a single cluster, but a farm consisting of dozens or hundreds of VxRail clusters? Or maybe you’re using some orchestration tool to holistically automate the IT infrastructure and processes? Would you still need to login manually as an operator to each of these clusters separately and click a button to maybe shutdown a cluster, collect log information or health data or perform LCM operations?
This is where VxRail REST APIs come in handy.
The VxRail API Solution
REST APIs are very important for customers who would like to programmatically automate operations of their VxRail-based IT environment and integrate with external configuration management or cloud management tools.
In VxRail HCI System Software 4.7.300 we’ve introduced very significant improvements in this space:
- Swagger integration - which allows for simplified consumption of the APIs and their documentation;
- Comprehensiveness – we’ve almost doubled the number of public APIs available;
- PowerShell integration – that allows consumption of the APIs from the Microsoft PowerShell or VMware PowerCLI.
The easiest way to start using and access these APIs is through the web browser, thanks to the Swagger integration. Swagger is an Open Source toolkit that simplifies Open API development and can be launched from within the VxRail Manager virtual appliance. To access the documentation, simply open the following URL in the web browser: https://<VxM_IP>/rest/vxm/api-doc.html (where <VxM IP> stands for the IP address of the VxRail Manager) and you should see a page similar to the one shown below:
Figure 1. Sample view into VxRail REST APIs via Swagger
This interface is dedicated for customers, who are leveraging orchestration or configuration management tools – they can use it to accelerate integration of VxRail clusters into their automation workflows. VxRail API is complementary to the APIs offered by VMware.
Would you like to see this in action? Watch the first part of the recorded demo available in the additional resources section.
PowerShell integration for Windows environments
Customers, who prefer scripting in Windows environment, using Microsoft PowerShell or VMware PowerCLI, will benefit from VxRail.API PowerShell Modules Package. It simplifies the consumption of the VxRail REST APIs from PowerShell and focuses more on the physical infrastructure layer, while management of VMware vSphere and solutions layered on the top (such as Software-Defined Data Center, Horizon, etc.), can be scripted using similar interface available in VMware PowerCLI.
Figure 2. VxRail.API PowerShell Modules Package
To see that in action, check the second part of the recorded demo available in the additional resources section.
Bringing it all together
VxRail REST APIs further simplify IT Operations, fostering operational freedom and a reduction in OPEX for large enterprises, service providers and midsize enterprises. Integrations with Swagger and PowerShell make them much more convenient to use. This is an area of VxRail HCI System Software that rapidly gains new capabilities, so please make sure to check the latest advancements with every new VxRail release.
Demo: VxRail API - Overview
Author: Karol Boguniewicz, Sr Principal Engineer, VxRail Tech Marketing
Related Blog Posts
VxRail API—Updated List of Useful Public Resources
Fri, 20 Nov 2020 18:16:21 -0000|
Read Time: 0 minutes
Well-managed companies are always looking for new ways to increase efficiency and reduce costs while maintaining excellence in the quality of their products and services. Hence, IT departments and service providers look at the cloud and APIs (Application Programming Interfaces) as the enablers for automation, driving efficiency, consistency, and cost-savings.
This blog will help you get started with VxRail API by grouping in one place the most useful VxRail API resources available from various public sources. This list of resources will be updated every few months with new material, so consider bookmarking it for your reference as a useful map to help you navigate this topic.
Before jumping into the list, I think it's essential to answer some of the most obvious questions:
What is VxRail API?
VxRail API is a feature of VxRail HCI System Software that exposes management functions with a RESTful application programming interface. It’s designed for ease of use by VxRail customers and ecosystem partners who would like to better integrate third party products with VxRail systems. VxRail API is:
- Simple to use – Thanks to Swagger and PowerShell integration, you can consume the API very easily using a supported web browser or from a familiar command-line interface for Windows and VMware vSphere admins.
- Powerful – VxRail offers dozens of API calls for essential operations such as automated lifecycle management (LCM), and its capabilities are growing with every new release.
- Extensible – This API is designed to complement REST APIs from VMware (such as vSphere Automation API, PowerCLI, VMware Cloud Foundation on Dell EMC VxRail API), offering a familiar look and feel and vast capabilities.
Why is it relevant?
VxRail API enables you to leverage the full power of automation and orchestration services across your data center. This extensibility enables you to build and operate infrastructure with cloud-like scale and agility. It also streamlines the integration of the infrastructure into your IT environment and processes. Instead of manually managing your environment through the graphical user interface, repeatable operations can be triggered and executed programmatically by software.
More and more customers are embracing DevOps and Infrastructure as Code (IaC) models as they need reliable and repeatable processes to configure the underlying infrastructure resources required for applications. IaC leverages APIs to store configurations in code, making operations repeatable and greatly reducing errors.
How can I start? Where can I find more information?
To help you navigate through all the resources available, I've grouped them by their level of technical difficulty, starting with 101 (the simplest, explaining the basics, use cases, and value proposition), through 201, up to 301 (the most in-depth technical level).
- Solution Brief: Dell EMC VxRail API – Solution Brief – this is a very concise (three page) brochure that briefly explains on a high-level what VxRail API is, the typical use cases, and where you can find additional resources for a quick start. I would highly recommend starting your exploration from this resource.
- Infographic: Dell EMC VxRail HCI System Software RESTful API – one of the infographics that brings together quick facts about VxRail HCI System Software differentiation, this specific one explains the value of VxRail API.
- Blog Post: Take VxRail automation to the next level by leveraging APIs – this is my first blog post focused on VxRail API. It touches on some of the challenges related to managing a farm of VxRail clusters and how VxRail API can fit as a solution. It also covers the enhancements introduced in VxRail HCI System Software 4.7.300, such as Swagger and PowerShell integration.
- Blog Post: Protecting VxRail from Power Disturbances – my second API-related blog post, where I explain an exciting use case by Eaton, our ecosystem partner, and the first UPS vendor who integrated their power management solution with VxRail using VxRail API.
- Demo: VxRail API – Overview – this is our first VxRail API demo published on the official Dell EMC YouTube channel. It was recorded using VxRail HCI System Software 4.7.300, explains VxRail API basics, API enhancements introduced in this version, and how you can explore the API using Swagger UI.
- Demo: VxRail API – PowerShell Package – a continuation of the API overview demo referenced above, focused on PowerShell integration. It was recorded using VxRail HCI System Software 4.7.300.
- Interactive Demo: VxRail 7.0 – this updated VxRail 7.0 Interactive Demo contains a dedicated section “VxRail 7.0 API” focused on the API. It includes three modules:
- Getting Started – explains how you can interact with Swagger-based documentation and the Developer Center available from vCenter with a couple of practical examples, such as getting information about the VxRail cluster, collecting inventory, exporting a log bundle, and creating a VM from a template.
- Day 1 – Bring Up – explains the API-driven deployment of the VxRail cluster using PowerShell. Note that when using the Day 1 API for the VxRail cluster deployment, Professional Services are still required at this time to provide the best customer experience.
- Day 2 – Operations and Extensibility – discusses some of the "day 2" operations and extensibility with API cookbook examples, the VxRail PowerShell Modules package, VMware PowerCLI, and Ansible.
The VxRail 7.0 Interactive Demo is a very recent asset prepared by our team for the Dell Technologies World 2020 virtual conference. I would highly recommend it. It was recorded with VxRail HCI System Software version 7.0.010, which introduced Day 1 API for VxRail cluster deployment.
- Manual: Dell EMC VxRail RESTful API Cookbook – this is a handy resource for anyone who would like to jumpstart their VxRail API journey by using code samples documented and tested by our Engineering team for three automation frameworks: CURL for shell/CLI available for various operating systems, PowerShell, and Ansible. Dell Technologies Support portal access is required.
- vBrownBag session: vSphere and VxRail REST API: Get Started in an Easy Way – this is a recent vBrownBag community session that took place at a VMworld 2020 TechTalks Live event - no slides, no “marketing fluff”, but an extensive demo showing the following:
- how you can begin your API journey by leveraging interactive, web-based API documentation
- how you can use these APIs from different frameworks (such as scripting with PowerShell in Windows environments) and configuration management tools (such as Ansible on Linux)
- how you can consume these APIs virtually from ANY application in ANY programming language.
This very recent asset was prepared at the VMworld 2020 virtual conference, and recorded with VxRail HCI System Software version 7.0.0.
- Manual: Dell EMC VxRail Appliance – API User Guide – this is an official reference manual for VxRail API. It provides a detailed description of each available API function, support information for specific VxRail HCI System Software versions, request parameters and possible response codes, successful call response data models, and example values returned. Dell Technologies Support portal access is required.
- PowerShell Package: VxRail API PowerShell Modules – a package with VxRail.API PowerShell Modules which allow simplified access to the VxRail API, using dedicated PowerShell commands and built-in help. This version supports VxRail HCI System Software 7.0.010 or higher. Dell Technologies Support portal access is required.
- API Reference: vSphere Automation API – an official vSphere REST API Reference that provides API documentation, request/response samples, and usage descriptions of the vSphere services.
- API Reference: VMware Cloud Foundation on Dell EMC VxRail API Reference Guide – an official VCF on VxRail REST API Reference that provides API documentation, request/response samples, and usage descriptions of the VCF on VxRail services.
- Blog Post: Deployment of Workload Domains on VMware Cloud Foundation 4.0 on Dell EMC VxRail using Public API – this is a blog post from VMware explaining how you can deploy a workload domain on VCF on VxRail using the API with the CURL shell command.
I hope you’ve found this list useful. If that’s the case, don’t forget to bookmark this blog post for your reference. I’m going to update it over time to include the latest collateral.
Enjoy your Infrastructure as Code journey with VxRail API!
Author: Karol Boguniewicz, Senior Principal Engineer, VxRail Technical Marketing
Protecting VxRail from Power Disturbances
Fri, 12 Jun 2020 13:03:51 -0000|
Read Time: 0 minutes
Preserving data integrity in case of unplanned power events
Over the last few years, VxRail has evolved significantly -- becoming an ideal platform for most use cases and applications, spanning the core data center, edge locations, and the cloud. With its simplicity, scalability, and flexibility, it’s a great foundation for customers’ digital transformation initiatives, as well as high value and more demanding workloads, such as SAP HANA.
Running more business-critical workloads requires following best practices regarding data protection and availability. Dell Technologies specializes in data protection solutions and offers a portfolio of products that can fulfill even the most demanding RPO/RTO requirements from our customers. However, we are probably not giving enough attention to the other area related to this topic: protection against power disturbances and outages. Uninterruptible Power Supply (UPS) systems are at the heart of a data center’s electrical systems, and because VxRail is running critical workloads, it is a best practice to leverage a UPS to protect them and to ensure data integrity in case of unplanned power events. I want to highlight a solution from one of our partners – Eaton.
Eaton is an Advantage member of the Dell EMC Technology Connect Partner Program and the first UPS vendor who integrated their solution with VxRail. Eaton’s solution is a great example of how Dell Technologies partners can leverage VxRail APIs to provide additional value for our joint customers. Having integrated Eaton’s Intelligent Power Manager (IPM) software with VxRail APIs, and leveraged Eaton’s Gigabit Network Card, the solution can run on the same protected VxRail cluster. This removes the need for additional external compute infrastructure to host the power management software - just a compatible Eaton UPS is required.
The solution consists of:
- VxRail version min. 4.5.300, 4.7.x, 7.0.x and above
- Eaton IPM SW v 1.67.243 or above
- Eaton UPS – 5P, 5PX, 9PX, 9SX, 93PM, 93E, 9PXM
- Eaton M2 Network Card FW v 1.7.5
- IPM Gold License Perpetual
The main benefits are:
- Preserving data integrity and business continuity by enabling automated and graceful shutdown of VxRail clusters that are experiencing unplanned extended power events
- Reducing the need for onsite IT staff with simple set-up and remote management of power infrastructure using familiar VMware tools
- Safeguarding the VxRail system from power anomalies and environmental threats
How does it work?
It’s quite simple (see the figure below). What’s interesting and unique is that the IPM software, which is running on the cluster, delegates the final shutdown of the system VMs and cluster to the card in the UPS device, and the card uses VxRail APIs to execute the cluster shutdown.
Figure 1. Eaton UPS and VxRail integration explained
Protection against unplanned power events should be a part of a business continuity strategy for all customers who run their critical workloads on VxRail. This ensures data integrity by enabling automated and graceful shutdown of VxRail cluster(s). Eaton’s solution is a great example of providing such protection and how Dell Technologies partners can leverage VxRail APIs to provide additional value for our joint customers.
Author: Karol Boguniewicz, Senior Principal Engineer, VxRail Technical Marketing