Analytical Consulting Engine (ACE)
Mon, 30 Mar 2020 15:27:16 -0000|
Read Time: 0 minutes
VxRail plays its ACE, now generally available
VxRail ACE (Analytical Consulting Engine), the new Artificial Intelligence infused component of the VxRail HCI System Software, was announced just a few months ago at Dell Technologies World and has been in global early access. Over 500 customers leveraged the early access program for ACE, allowing developers to collect feedback and implement enhancements prior to General Availability of the product. It is with great excitement that VxRail ACE is now generally available to all VxRail customers. By incorporating continuous innovation/continuous development (CIDC) utilizing the Pivotal Platform (also known as Pivotal Cloud Foundry) container-based framework, Dell EMC developers behind ACE have made rapid iterations to improve the offering; and customer demand has driven new features added to the roadmap. ACE is holding true to its design principles and commitment to deliver adaptive, frequent releases.
Figure 1 ACE Design Principles and Goals
VxRail ACE is a centralized data collection and analytics platform that uses machine learning capabilities to perform capacity forecasting and self-optimization helping you keep your HCI stack operating at peak performance and ready for future workloads. In addition to some of the initial features available during early access, ACE now provides new functionality for intelligent upgrades of multiple clusters (see image below). You can now see the current software version of each cluster along with all available upgrade versions. ACE will allow you to select the desired version per each VxRail cluster. You can now manage at scale to standardize across all sites and clusters with the ability to customize by cluster. This becomes advantageous when some sites or clusters might need to remain at a specific version of VxRail software.
If you haven’t seen ACE in action yet, check out the additional links and videos below that showcase the features described in this post. For our 6,000+ VxRail customers, please visit our support site and Admin Guide to learn how to access ACE.
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
Lifecycle Management for vSAN Ready Nodes and VxRail Clusters: Part 2 – Cloud Foundation Use Cases
Tue, 17 Nov 2020 22:10:26 -0000|
Read Time: 0 minutes
In my previous post I explored the customer experience between using vSphere Lifecycle Manager Images (vLCM Images) and VxRail Manager to maintain HCI stack integrity and completing full stack software updates for standard vSphere cluster use cases. It was clear to see that VxRail Manager optimized operational efficiencies while taking ownership of software validation of the complete cluster to remove the burden of testing and reducing the overall risk during a lifecycle management event. However, common questions I frequently get are: Do those same values carry over when using VxRail as part of a VMware Cloud Foundation on VxRail (Dell Technologies Cloud Platform) deployment? Is vLCM Images even used in VCF on VxRail deployments? In this post I want to dive into answering these questions.
There are some excellent resources available on the VxRail InfoHub web portal. Along with several blog posts that discuss the unique integration between SDDC Manager and VxRail Manager in the area of LCM (like this one), I suggest that you check them out if you are unfamiliar with VCF and SDDC Manager functionality as it will help in following along in this post.
Before we dive in, there are a few items that you should be aware of regarding SDDC Manager and vLCM. I won’t go into all of them here, but you can check out the VCF 4.1 Release Notes, vLCM Requirements and Limitations, VCF 4.1 Admin Guide, and Tanzu documentation for more details. A few worth highlighting include:
- You cannot deploy a Service VM to an NSX Manager that is associated with a workload domain that is using vSphere Lifecycle Manager Images
- Management domains, and thus VCF consolidated architecture deployments, can only support vSphere Lifecycle Manager Baselines (formerly known as VUM) based updates because vLCM Images use is not supported in the Management domain default cluster.
- VMware vSphere Replication is considered a non-integrated solution and cannot be used in conjunction with vLCM Images.
- While vLCM Images supports both NSX-T and vSphere with Kubernetes, it does not support both enabled at the same time within a cluster. This means you cannot use vLCM Images with vSphere with Kubernetes within a VCF workload domain deployment.
As in my last post, the main area of focus here is around the customer experience with VMware Cloud Foundation and VRSLCM and VxRail, specifically:
- Defining the initial baseline node image configuration
- Planning for a cluster update
- Executing the cluster update
- Sustaining cluster integrity over the long term
Oh, and one last important point to make before we get into the details. As of this writing, vLCM is only used when deploying VCF on server/vSAN Ready Nodes and is not used when deploying VCF on VxRail. As a result, all information covered here when comparing vLCM with VxRail Manager essentially compares the LCM experience of running VCF on servers/vSAN Ready Nodes vs VCF on VxRail.
Defining the Initial Baseline Node Image Configuration
How is it Done With vLCM Images?
We have covered this in detail in my previous post. The requirements for VCF-based systems also remains the same but one thing to highlight in VCF use cases is that the customer is still responsible for the installation, configuration, and ongoing updating of the hardware vendor HSM components used in the vLCM Images-based environment. SDDC Manager does not automatically deploy these components nor lifecycle them for you.
VCF deployments do differ in the area of initial VCF node imaging. In VCF deployments there are two initial node imaging options for customers:
- A manual install of ESXi and associated driver and firmware packages
- A semi-automated process using a service called VMware Imaging Appliance (VIA) that runs as a part of the Cloud Builder appliance.
The VIA service tool uses a PXE Boot environment to image nodes that need to be on the same L2 domain as the appliance and are reachable over an untagged VLAN (VLAN ID 0). ESXi Images and VIBs can be uploaded to the Cloud Builder appliance VIA service. Hostnames and IP address are assigned during the imaging process. Once initial imaging is complete, and Cloud Builder has run though its automated workflow, you are left with a provisioned Management Domain. (One important consideration here regarding initial node baseline images: customers need to ensure that the hardware and software components included in these images are validated against the VCF and ESXi software and hardware BOMs that have been certified for the version of VCF that will be installed in their environment.) This default cluster within the Management Domain cannot use vLCM Images for future cluster LCM updates.
When you are creating a new VI Workload Domain in a VCF on a vSAN Ready Nodes deployment, that is, when you can choose to enable vLCM Images as your method of choice for cluster updates or alternatively, you can also select vLCM Baselines. (Note: When using vLCM Baselines, firmware updates are not maintained as part of cluster lifecycle management). If you opt to use vLCM Images, you cannot revert to using vLCM Baselines for cluster management. So, it is very important to choose wisely and understand what LCM operating model is needed prior to deploying the workload domain. Because this blog post focuses on vLCM Images, let’s review what is involved when you select this option.
To begin, it’s important to know that you cannot create a vLCM Images-based workload domain until you import an image into SDDC Manager. But you cannot import an image into SDDC Manager until you have a vLCM Images enabled cluster.
To get over this chicken and egg scenario, the administrator needs to create an empty cluster within the Management Domain where you can set up the image requirements and assign firmware and driver profiles that you have validated during the planning and preparation phase for the initial cluster build. The following figure provides an example of creating the temporary cluster needed to configure vLCM Images.
Figure 1 Creating a temporary cluster to enable vLCM Images as part of the initial setup.
When defining vLCM images, similar to when defining the initial baseline node images, customers are responsible for ensuring that these images are validated against the VCF software BOM that has been certified for the version of VCF that is installed in the environment.
When you are satisfied with the image configuration and you have defined the Driver, Firmware and Cluster Profiles, export the required JSON, ESX ISO, and ZIP files from vSphere UI to your local file system, as shown in the following figure. These files include:
Figure 2 Exporting Images
Next, within the vCenter UI, go to the Development Center menu and choose the API Explorer Tab. At this stage you need to run several API commands.
To do this, first select your endpoint (vCenter Server) from the drop-down option, then select the vCenter Related APIs. When completed, you will be presented with all the applicable vCenter APIs for your chosen end point. Expand the Cluster section and execute the GET API command below for /rest/vCenter/Cluster as shown in the following figure.
Figure 3 In Developer Center: List all Clusters
This displays all the clusters managed by that vCenter and provides a variable for each cluster. Click on the vcenter.cluster.summary (Dell-VSRN-Temp) and copy this value (that is, Domain-c2022 in my example) that you will use in the next step.
Change the focus on the API explorer to ESX and execute a GET API command for /api/esx/settings/clusters/Domain-c2022/software.
Fill in the cluster id parameter (Domain-c2022) as the required value to run the API command (see the following figure). Once executed, click on the download json option and an additional json file downloads to your local file system.
Figure 4 Execute the Cluster software API Command
At this point in time, you have four files
Finally, within SDDC Manager, select Repository then Image Management and Import Cluster Image. Here you need to import the four files mentioned above. As you import the individual files, make sure that you specify a name for the cluster image and import them in the correct order. Once the import is successful, you can now start to deploy your first vLCM Images enabled workload domain.
How is it Done Using VxRail LCM?
VxRail key integrations with Cloud Foundation start even before any VCF on VxRail components are installed at Dell facilities, as part of the Dell manufacturing process. Here, the nodes are loaded with a VxRail Continuously Validated State image that includes all pre-validated vSphere, vSAN, and hardware firmware components. This means that once VxRail nodes are racked, stacked, and powered on within your datacenter, they are ready to be used to install a new VCF instance, create new workload domains, expand existing workload domains with new clusters, or a expand clusters on an existing system.
For new VCF deployments, Cloud Builder has unique integrated workflows that tailor a streamlined deployment process with VxRail, leveraging existing capabilities for VxRail cluster management operations. Once SDDC Manager is deployed using the Cloud Builder connectivity, two update bundle repositories can then be configured.
Figure 5 SDDC Manager Repository Settings
The first is to the VMware repository which is used for the VMware software such as vSphere, NSX, and SDDC Manager. The second is for the Dell EMC repository for the VxRail software. Once you configure and authenticate with the appropriate user account credentials in SDDC Manager, it will automatically connect to the VxRail repository at Dell EMC and pull down the next available VxRail update package. Each available VxRail update package will have already been validated, tested, and certified with the version of VCF running in the customer’s environment.
Figure 6 VxRail Software Bundle in SDDC Manager
The following figure summarizes the steps needed for defining initial baseline node images for VCF using vLCM Images and VCF using VxRail Manager.
Figure 7 Initial baseline node images and configuration
Planning for a Cluster Update
How is it Done Using vLCM Images?
Although we have reviewed this in detail before, it is worth mentioning here again. Ownership of this process lies on the shoulders of the administrator. In this model, customers would take on the responsibility validating and testing the software and driver combination of their desired state image to ensure full stack interoperability and integrity, and ensuring that the component versions fall within the supported VCF software BOM being used in their environment.
How is it Done Using VxRail LCM?
The VxRail approach is much different. The VxRail engineering teams spend 1000s of test hours across multiple platforms to validate each release. The end user is given a single image to leverage knowing that Dell Technologies has completed the very heavy lift for platform validation. As I mentioned above, SDDC Manager will download the correct bundle based on your VCF Release and mark it available within your SDDC Manager. When a customer sees a new image available, they are guaranteed that it is already compatible with their VCF deployment. This curated bundle management and validation is part of the turnkey experience customers gain with VCF on VxRail.
The following figure illustrates the differences in planning a cluster update for VCF with vLCM Images and VCF with VxRail.
Figure 8 Planning for a cluster update
Executing the Cluster Update
How is it Done Using vLCM Images?
Defining the baseline node image is vital for defining the hardware health of your cluster. Defining a target version for your system’s next update is equally as important. It should involve testing the specific combination of components for the image that is desired. This would be in addition to some of the standard interoperability validation performed by the Ready Node hardware vendor when updates to server hardware firmware and drivers are released. Once the hardware baseline is known, the ESXi image must be imported into vCenter. Drivers, firmware, and Cluster Profiles must then be defined in vCenter so they can be ready to be exported.
We use the same process as originally outlined for the initial setup: Export the images, run the relevant APIs calls, and import the files into SDDC Manager. Every future update will follow the same process as I’ve outlined. Additional firmware and driver profiles will have to be created if new workload domains or clusters are added with different server hardware configuration. Thus, a deployment that caters to multiple hardware use cases will end up with several driver/firmware profiles that will need to be managed and tested independently.
How is it Done Using VxRail LCM?
SDDC Manager is the orchestration engine, defining:
- When each update is applicable
- Ensuring that each update is made available in the correct order, and
- Ensuring that components such as SDDC Manager, vCenter, NSX-T, and VxRail components are updated and coordinated in the correct manner.
For VxRail LCM updates, SDDC Manager will send API calls directly to each VxRail Manager for every cluster being updated to initiate a cluster upgrade. From that point on VxRail Manager will take ownership of the VxRail update execution using the same native VxRail Manager LCM execution process that is used in non-VCF VxRail deployments. During LCM execution, VxRail Manager provides constant feedback to the SDDC Manager throughout the process. VxRail updates these components:
- VMware ESXi
- Hardware firmware
- Hardware drivers
To understand the full range of hardware components that are updated with each release, I urge you to check out the VxRail 7.0 Support Matrix.
The following figure summarizes the steps required to execute cluster updates for VCF with vLCM Images and VCF with VxRail.
Figure 9 Executing a cluster update workflow
Sustaining Cluster Integrity Over the Long Term
How is it Done Using vLCM Images?
Unlike standalone vSphere cluster deployments where vLCM Images manages images on a per cluster basis, VMware Cloud Foundation allows you to manage all cluster images, once imported and repurpose them for other clusters or workload domains. A definite improvement, but each new update requires you create the image, firmware, and driver combinations in vCenter first and then import into SDDC Manager. Of course, this is after you have repeated the planning phases and have completed all the driver and firmware interoperability testing.
Also, it is important to note that if your cluster is being managed by vLCM Images, and you need to expand your clusters with hardware that is not identical to the original hosts (this can happen in situations in which hardware components go end of sale or you have different hardware or firmware requirements for different nodes), you can no longer leverage vLCM Images or change back to using vLCM Baselines. So proper planning is very important.
How is it Done Using VxRail LCM?
VxRail LCM supports customers’ ability to grow their clusters with heterogenous nodes over time. Different generations of servers or servers with differing hardware characteristics can be mixed within a cluster, in accordance with application profile requirements. A single pre-validated image will be made available that will cover all hardware profiles. All of this is factored into each VxRail Continuously Validated State update bundle that is applied to each individual cluster based on its current component's version state.
When we piece together the bigger picture with all the LCM stages combined, it provides an excellent representation of the ease of management when VxRail is at the heart of your VCF deployment.
Figure 10 Comparing vLCM Images and VxRail LCM cluster update operations
It’s clear to see that VxRail, with its pre-validated engineered approach, can provide a differentiated customer experience when it comes to operational efficiency, during both the initial deployment phase and the continuous lifecycle management of the HCI.
While vLCM Images provides a significant improvement from manually applying the updates, the planning and testing required can become quite iterative. And when newer hardware profiles are introduced over the lifespan of the system, things could become more difficult to manage, introducing additional complexity.
By contrast, VxRail provides a single update file for each release that is curated and made accessible within SDDC Manager natively, with no additional administration effort required. It’s simplicity at its finest, and simplicity is at the core of the VxRail turnkey customer experience.
Dell EMC VxRail Engineering Technologist