Overview

Cisco UCS Director Overview

Cisco UCS Director focuses on delivering Infrastructure as a Service (IaaS) through a highly secure, end-to-end management, orchestration, and automation solution for a wide array of Cisco and non-Cisco data center infrastructure components. Cisco UCS Director can deliver IaaS for individual components and for the industry's leading converged infrastructure solutions based on the Cisco Unified Computing System (Cisco UCS) and Cisco Nexus platforms.

For a complete list of supported infrastructure components and solutions, see the Cisco UCS Director Compatibility Matrix. In addition to the supported components, you can develop modules that extend support to unsupported third party devices that are not listed in the Compatibility Matrix with the Cisco UCS Director Open Automation Framework.

With Cisco UCS Director, you can manage, automate, and orchestrate your physical and virtual compute, network, and storage resources. In addition, through the End User Portal, you can use those infrastructure components to deploy the desired virtual machines to support applications in cloud environments. To support this functionality, Cisco UCS Director enables you to do the following:

  • Manage and support heterogeneous data centers that include compute, network, storage, and virtualization resources from multiple vendors.

  • Provision physical and virtual compute, Layer 4-7 network services, and storage resources.

  • Create and implement single and multi-tier application profiles.

  • Define application containers that describe a set of tiers that include physical and/or virtual compute resources, their connectivity policy and communication policy. You can further define those application containers with network services, such as load balancing and firewalls, across these tiers.

  • Establish secure multi-tenant environments, so that users, whether internal to your company or external, can work only within the secure constraints of their own resource pool. With the policies and user roles that you establish, your users can view, manage, and use only the infrastructure components appropriate for their roles.

  • Automate the IT processes necessary to accomplish infrastructure provisioning and decommissioning using a role- and policy-based model that limits administrator and user capabilities.

  • Implement a process-oriented approach to infrastructure orchestration that automates the processes you define using built-in workflows or customized workflows created from Cisco UCS Director task library or from tasks you create yourself.

  • Implement metering, chargeback, and showback features so your organization can be properly compensated for the IT services you provide.

System Overview

Cisco UCS Director connects all the elements of your data center infrastructure, including the users, and the physical and virtual infrastructure. You can not only provision, configure, monitor, and automate your data center management, you can also use the Cisco UCS Director REST API or Open Automation Framework to extend the out-of-the-box functionality.

Figure 1. Cisco UCS Director System Overview



Infrastructure Configuration and Management

Cisco UCS Director extends the unification of compute, network, virtualization, and storage layers and provides you with comprehensive visibility into your data center infrastructure. By communicating with the appropriate domain managers or domain controllers, Cisco UCS Director can act as a single appliance to manage all your infrastructure. This central management capability enables operations teams to configure, administer, manage, and monitor supported Cisco and non-Cisco physical and virtual compute, network, and storage components.

Cisco UCS Director provides out-of-the-box integration with virtual and physical components, including the following:

  • Hypervisors, such as VMware vSphere, Microsoft Hyper-V, and RedHat KVM

  • Compute servers and devices, such as Cisco UCS, HP, and Dell servers

  • Network devices, such as Cisco Nexus and Brocade

  • Storage components, such as NetApp, EMC, and IBM Storwize

  • Hyperconverged storage solutions, such as VMware Virtual SAN (VSAN)

For a complete list of supported infrastructure components and solutions, see the Cisco UCS Director Compatibility Matrix.

Orchestration and Automation

Cisco UCS Director provides model-based orchestration through workflows. These workflows can include complex logic, can be imported into or exported from Cisco UCS Director, and can configured to resume from the point of last failure. You can also include advanced orchestration features, such as rollback of workflows, that enable you to automate the provisioning and de-provisioning of resources, which provide much-needed agility in a cloud environment. Unlike script based execution systems, if you include rollback in a workflow, Cisco UCS Director intelligently deprovisions resources in reverse order of execution. This functionality is possible because Cisco UCS Director is model-aware and state-aware.

Cisco UCS Director enables you to build workflows that provide automation services, and to publish those workflows and extend their services, on demand, to your users through Cisco UCS Director and the End User Portal. You develop your workflows in the Workflow Designer that is built in to Cisco UCS Director. The Workflow Designer is a drag and drop orchestration editor that includes a large library of out-of-the-box workflow tasks and workflows.

Depending upon your business needs, you can use or modify the out-of-the-box workflows and workflow tasks or you can develop your own custom workflows or workflow tasks. Custom workflow tasks can use CloupiaScript, a Javascript-like programming language, REST API or PowerShell cmdlets. In the workflows you can combine your custom tasks with out-of-the-box generic tasks that perform common tasks, such as executing scripts through SSH and PowerShell.

If required, you can embed approvals inside a workflow to ensure that resources are not provisioned until they have been approved.

Once built and validated, these workflows perform the same way every time, no matter who runs the workflows or where they run the workflows. An experienced data center administrator can run them from the Workflow Designer. You can also publish workflows to the End User Portal to implement Infrastructure as a Service (IaaS) and allow your users and customers to view and run the workflows that are applicable to their needs on a self-service, on demand basis.

For more information about orchestration and automation in Cisco UCS Director, see the Cisco UCS Director Orchestration Guide and Orchestration and Automation.

Infrastructure as a Service

Cisco UCS Director delivers Infrastructure as a Service (IaaS) for both virtual and physical infrastructure. With Cisco UCS Director, you can create an application container template that defines the infrastructure required for a specific application or how a customer or business unit is expected to use that application.

Cisco UCS Director helps you and your IT team define the rules for your business's infrastructure services. You first onboard tenants and then define the boundaries of the physical and virtual infrastructure that they can use, or you can allow your onboarded tenants to define the infrastructure boundaries. You can then create policies, orchestration workflows, and application container templates in Cisco UCS Director that define the requirements for a specific type of application that can be used by a tenant, such as a web server, database server, or generic virtual machine (VM).

You can then publish these templates as a catalog in the End User Portal. Your users can go to the End User Portal, select the catalog that meets their needs, and make a service request for that particular application or VM. Their service request triggers the appropriate orchestration workflow to allocate the required infrastructure and provision the application or VM. If you specified that this type of service request requires approvals, Cisco UCS Director sends emails to the specified approver(s). Once the service request is approved, Cisco UCS Director assigns the infrastructure to those users, creating a virtual machine if necessary, and doing the base configuration such as provisioning the operating system.

You can also configure an orchestration workflow to ask questions before allowing a user to choose a catalog item. For example, you could configure the workflow to ask the user what type of application they plan to run and automatically select a catalog for them based on the answers to those questions. The end user in this case does not have to worry about whether to request a physical server or a VM, what kind of storage they require, or which operating system to install. Everything is predefined and prepackaged in the catalog.

For example, you can create policies, orchestration workflows and an application container template for an SAP application that uses a minimum level of infrastructure, requires approvals from a director in the company, and has a chargeback to the department. When an end user makes a service request in the End User Portal for that catalog item, Cisco UCS Director does the following:

  1. Sends an email to the director, who is the required approver.

  2. When the approval is received, creates a VM in the appropriate pod with 4 CPUs, 10GB of memory, and 1TB of storage.

  3. Installs an operating system (OS) on the VM.

  4. Notifies the end user that the VM is available for them to use.

  5. Sets up the chargeback account for the cost of the VM.

With the available APIs from Cisco UCS Director, you can also script custom workflows to pre-install the SAP application in the VM after the OS is installed.

Extensibility of Cisco UCS Director

In addition to the built-in functionality, you can extend Cisco UCS Director to provide customized functionality and better meet the needs of your data center. The Cisco UCS Director extensibility model supports several extension and customization techniques at different levels of complexity.

For more information about how to extend Cisco UCS Director, see the Cisco UCS Director Orchestration Guide and the Cisco UCS Director Programming Guides.

Custom Workflows with Predefined Tasks

At the most basic level, you can extend the orchestration and automation functionality of Cisco UCS Director with custom workflows that you create with the tasks provided with Cisco UCS Director. You can use the workflows included with Cisco UCS Director as a base or you can develop a brand-new workflow.

This customization requires that you understand the operation that you want to automate with the workflow. You must then break down that operation into steps, or smaller operations, that are represented by a workflow task. You then place the tasks into the sequence required to perform the more complex operation. That sequence is the workflow.

Generic Tasks for Custom Workflows

If Cisco UCS Director does not provide a predefined task for a step that requires SSH or a PowerShell script, you can modify a generic task with a custom script to perform that step. For example, you can use a generic task to connect with and execute commands on a Linux server or an unsupported device.

Cisco UCS Director includes the following generic tasks:

SSH Command Task

You can use the SSH Command task to connect to and have Cisco UCS Director execute CLI commands on a remote system as part of a workflow. This task is useful in a Linux environment. It requires that the Cisco UCS Director administrator has CLI access, including password and credentials, to the remote system. It also requires an investment in creating the shell scripts required for the commands that you want Cisco UCS Director to execute.

For example, you can use an SSH Command task to push firewall rules for iptables or patch Linux applications with yum.

Execute PowerShell Command Task

You can use the Execute PowerShell Command task to launch PowerShell scripts from Cisco UCS Director. This task is useful in a Microsoft environment. It requires an investment in creating the PowerShell scripts required for the commands you want Cisco UCS Director to execute.

For example, you can use the Execute PowerShell Command task to add a host to additional domains or DNS systems.

Custom Tasks for Custom Workflows

Custom tasks enable you to create functionality for a workflow that is not available in the predefined tasks and workflows that are included with Cisco UCS Director. A custom task includes inputs and outputs and works like any other task in the workflow. You can call other tasks from within a custom task.

You create custom tasks with CloupiaScript, a version of JavaScript with Cisco UCS Director Java libraries that enable orchestration operations. CloupiaScript supports all JavaScript syntax. The Cisco UCS Director Java libraries allow you to access Cisco UCS Director components from a custom task. However, because CloupiaScript runs only on the server, client-side objects are not supported

Custom tasks can perform a wide variety of functions. For example, you can create a custom task to get static IP pool policy attributes, get mail settings, invoke a service request, or move an ESXi host to a different cluster.

Northbound APIs and Integrations

Northbound integrations with the Cisco UCS Director APIs enable you to perform the following tasks:

  • Invoke operations and workflows

  • Access reports and data for the following:

    • Physical infrastructure

    • Virtual devices

    • Network and storage devices

  • User, groups, policies and other administrative functions

You can use the Cisco UCS Director REST API and PowerShell API to implement northbound integrations.

Cisco UCS Director REST API

Cisco UCS Director offers a REST API that enables applications to consume or manipulate the data stored in Cisco UCS Director. Cisco UCS Director REST API (hereafter, simply "the REST API") is a lightweight framework that requires little overhead for an application to use.

Applications use HTTP and HTTPS requests from the REST API to perform Create/Read/Update/Delete (CRUD) operations on Cisco UCS Director resources.

The REST API supports the following protocols and formats:

  • JSON (JavaScript Object Notation)

  • XML

  • Java

When to Use Cisco UCS Director REST API

Cisco UCS Director REST API is a language-independent interface that can be used by any program or script capable of making HTTP or HTTPS requests. Use the REST API when you want to invoke operations on Cisco UCS Director from a separate program or process.

Applications can use the REST API to do the following:

  • Retrieve Cisco UCS Director reports on physical and virtual devices, networks, appliances, groups and users, policies, resource accounting, funds, and other monitored entities within your Cisco UCS domains.

  • Invoke Cisco UCS Director Orchestrator workflow and task operations.

  • Invoke additional operations specific to Cisco UCS Director.

Cisco UCS Director PowerShell API

Cisco UCS Director offers JSON-based REST APIs that enable you to submit workflow requests, examine workflow inputs and output schemas, and fetch reports. You can integrate Cisco UCS Director APIs with the Cisco UCS Director PowerShell Console for improved automation of datacenter management.

Cisco UCS Director PowerShell Console provides cmdlet wrappers for the JSON-based APIs. Each cmdlet performs a single operation. The cmdlets are executed in a Microsoft Windows server. Depending on the data returned by the JSON-based APIs, the cmdlets automatically interpret the data and convert them to Windows PowerShell objects. You can chain multiple cmdlets together. To view a list of available cmdlets, see the Cmdlet List in the Cisco UCS Director PowerShell API Getting Started Guide. For more information about REST APIs, see the Cisco UCS Director REST API Getting Started Guide.

When to Use Cisco UCS Director PowerShell API

Use the Cisco UCS Director PowerShell API to execute the JSON API’s of Cisco UCS Director that are provided as cmdlets.

Cisco UCS Director Open Automation

Cisco UCS Director provides the Cisco UCS Director Open Automation module (hereafter, simply "Open Automation") to enable you to enhance the functionality of the Cisco UCS Director appliance.

Using Open Automation, you can add a module to Cisco UCS Director. The module adds a new capability to Cisco UCS Director, such as the ability to control a new device type or to generate a new type of report.

For more information about existing functionality in Cisco UCS Director, see the Cisco UCS Director Administration Guide, the Cisco UCS Director Application Container Guide, the Cisco UCS Director Orchestration Guide, and the numerous other guides that document functionality available using the Cisco UCS Director application.

For system requirements and information about how to set up a development environment, install libraries, and begin using the Open Automation SDK, see the Cisco UCS Director Open Automation Getting Started Guide.

For annotated examples of using the Open Automation SDK, see the Cisco UCS Director Open Automation Cookbook.

For a reference to the Cisco UCS Director Open Automation API, see the Cisco UCS Director API Javadoc.

When to Use Cisco UCS Director Open Automation

Open Automation is a Java SDK and framework for extending the functionality of Cisco UCS Director. Use Open Automation to enhance Cisco UCS Director in the following ways:

  • Develop your own or third-party components with Cisco UCS Director.

  • Design a custom menu for displaying your device or component.

  • Inventory your devices.

  • Provde the ability to test connections between your device and Cisco UCS Director.

  • Develop tasks that can be used in workflows.

  • Expose your tasks in the form of a REST API.

  • Develop and schedule repeatable tasks.

  • Develop your own Cisco UCS Director reports and report actions.

  • Develop new Cisco UCS Director Cloudsense reports.

  • Track changes made to the system through your module.

  • Customize your dashboard display by providing your own dashboard (stack) builder.

  • Develop your own items that can be displayed in your dropdown boxes.

  • Provide support for new account types.

Cisco UCS Director Components

Cisco UCS Director includes several components that are designed to assist you in the tasks involved in the management and automation of your infrastructure and cloud.

Cisco UCS Director Bare Metal Agent

Cisco UCS Director Bare Metal Agent (BMA) automates the process of using a Preboot Execution Environment (PXE) to install operating systems on bare metal servers or virtual machines. Bare Metal Agent provides the following services that are required for a functional PXE install environment:

  • Dynamic Host Control Protocol (DHCP)

  • Hypertext Transfer Protocol (HTTP)

  • Trivial File Transfer Protocol (TFTP)

When this environment is operational and Bare Metal Agent and Cisco UCS Director are correctly configured, you can build PXE installation tasks into any Cisco UCS Director infrastructure workflow.

You can access Bare Metal Agent through Secure Shell (SSH). You can also perform services on Bare Metal Agent, such as DHCP configuration and starting and stopping services, through Cisco UCS Director. A single Cisco UCS Director node can support multiple Bare Metal Agent applications.

For more information about Bare Metal Agent, see the Installation and Configuration Guides.

Cisco UCS Director Shell

The Cisco UCS Director Shell is a text-based menu that you access through a secure shell (SSH) application and Cisco UCS Director administrator credentials. With the Shell, you can execute commands to perform various system administration tasks, including:

  • Patch updates

  • Database backup and restore

  • Certificate imports

  • Services management

For more information about the Shell and its commands, see the Cisco UCS Director Shell Guide.

End User Portal

The End User Portal is a self-service portal that includes a catalog of services provided by your administrator. After you request one of the services available to you, the End User Portal completes the service request workflow configured by your administrator. This workflow may include approval of your self-service provisioning request, assignment of the necessary compute, storage and network resources, and configuration of security and performance settings. After your service is provisioned, you can track the status of your services through the summary dashlets and summary reports on your landing page, and through the service request report available within the End User Portal.

As an end user, based on your administration setup, you can perform one or more of the following operations:

  • Provision virtual machines (VMs), application specific infrastructure, and bare metal servers

  • Review and manage your service requests

  • Upload and deploy OVFs and other images

  • Monitor and create reports for your provisioned virtual and physical resources

  • Approve service requests to provision infrastructure

Additional functionality may be available to you if your administrator provides you with the necessary permissions.

For more information about the End User Portal, see the Cisco UCS Director End User Portal Guide.

Cisco UCS Director Express for Big Data

Cisco UCS Director Express for Big Data is a single-touch solution within Cisco UCS Director that automates deployment of Big Data infrastructure. Cisco UCS Director Express for Big Data provides a single management pane across physical infrastructure and across Hadoop and Splunk Enterprise software. It supports key Hadoop distributions, including Cloudera, MapR, and Hortonworks.

Cisco UCS Director Express for Big Data delivers end-to-end automation of Hadoop cluster deployment, allowing you to spin up and expand clusters on-demand. The physical infrastructure configuration is handled automatically, with minimal user input. The configuration includes compute, internal storage, network, and installation of operating system, Java packages, and Hadoop, along with the provisioning of Hadoop services. This is achieved through Cisco UCS service profiles wherein both the physical infrastructure and Hadoop configuration are incorporated into a Hadoop cluster deployment profile.

Cisco UCS Director Express for Big Data also delivers end-to-end automation of Splunk cluster deployment, with minimal user input. This is achieved through Cisco UCS service profiles wherein both the physical infrastructure and Splunk configuration are incorporated into a Splunk cluster deployment profile.

For more information about Cisco UCS Director Express for Big Data, see the Cisco UCS Director Express for Big Data Documentation Roadmap.

Cisco UCS Director SDK

The Cisco UCS Director SDK is a collection of technologies that enable you to extend the capabilities of Cisco UCS Director, access Cisco UCS Director data, and invoke Cisco UCS Director's automation and orchestration operations from any application. The Cisco UCS Director SDK includes the REST APIs and Open Automation. Scripting technologies include the Cisco UCS Director PowerShell API, custom tasks bundled in Cisco UCS Director script modules, and the ability to write your own custom tasks using CloupiaScript, a server-side JavaScript implementation.

With Cisco UCS Director SDK technologies, you can:

  • Access Cisco UCS Director programmatically—Use the Cisco UCS Director REST API to invoke workflows and obtain reports.

  • Customize Cisco UCS Director—Create custom workflow tasks. Customize Cisco UCS Director by deploying your own jar files and script libraries in script modules. Use custom tasks from script bundles.

  • Extend Cisco UCS Director—Use Cisco UCS Director Open Automation to build connectors that support additional devices and systems. Use the Cisco UCS Director PowerShell API to connect to Microsoft System Center Virtual Machine Manager (SCVMM) and other PowerShell enabled devices.

For more information about Cisco UCS Director SDK, see the Cisco UCS Director API Integration and Customization Guide.

Guided Setup Wizards in Cisco UCS Director

Cisco UCS Director includes a set of wizards that guide you through configuring important features. The following are the available guided setup wizards:

  • Device Discovery—This wizard enables you to discover devices and assign them to a pod.

  • Initial System Configuration—This wizard helps you complete initial tasks to set up Cisco UCS Director, such as uploading licenses, and setting up SMTP, NTP, and DNS servers.

  • vDC Creation—This wizard enables you to configure the policies required to provision VMs in private clouds.

  • FlexPod Configuration—This wizard helps you set up a FlexPod account.

  • Vblock Pod Configuration—This wizard enables you to discover and assign accounts to Vblock pods.

  • VSPEX Pod Configuration—This wizard enables you to discover and assign accounts to VSPEX pods.

  • Virtual SAN Pod Configuration—This wizard enables you to set up a Virtual SAN Pod and add devices.