Organizations have turned to the cloud to increase operational efficiency while decreasing costs. Recent studies have shown that these same organizations are turning to hybrid cloud infrastructure powered by a mixture of open source technologies for additional flexibility around workload repatriation. Within production hybrid clouds, OpenInfra technologies provide container security, edge nodes, CI/CD, secure private clouds and the largest footprint of public cloud data centers in the world.
What clouds do you leverage for your hybrid cloud use case?
AWS, GCE, Azure, and OpenStack
Who are your end users?
Medium to large size companies, educational institutes, and government agencies.
Why did you choose to use OpenStack in your hybrid cloud environment?
We chose OpenStack as the virtualization platform eight years ago because it was open source, had a rich set of APIs that made integration with other automation tools easy, and it allowed us to avoid vendor lock-in. Being open source and easily configurable, OpenStack also allowed us to customize it to meet Workday’s internal security and to policy requirements. As Workday grew, we continued to grow our private cloud on OpenStack because it proved resilient and scalable. In the past 2 years, the OpenStack based private cloud has maintained greater than 99% SLO (Service Level Objective) and near zero downtime.
Describe how you’re using OpenStack in your hybrid cloud environment.
We are using OpenStack in our private cloud to primarily provide compute resources or virtual machines on demand. Workday application developers build applications which need to get deployed across multiple data centers. The application code gets packaged as RPMs or container images.Then, we create immutable virtual machine images for each service. During weekly maintenance time, we roll out the changes by destroying all the virtual machines that hosted the previous version of the application and creating virtual machines using the new version. Some home grown orchestration tools use OpenStack APIs to perform these weekly updates.
What does your hybrid cloud architecture look like?
On our private cloud, we have a bare metal fleet, OpenStack based cloud and VMware. Depending on the performance or customer requirements, a service can be deployed on one platform or the other. Generally, persistent services like databases and big data run on bare metal. Services that are virtualized or containerized are deployed on OpenStack.
On a public cloud, most Workday services are deployed on Kubernetes. We currently manage our own Kubernetes instances. While the core Workday services can run on public or private cloud, there are some services that only run on the public cloud. These are typically services that do not host any customer data.
How do you decide where to run your workloads in your hybrid cloud environment? Are there scenarios where you migrate workloads between cloud environments?
Except for a few services which do not deal with customer data, all services required to host a customer run either in public or in a private cloud. The customers can choose where they prefer to be hosted. Often data residency or governance rules dictate in which region or cloud we can host a customer.
How has using OpenStack impacted your organization?
OpenStack has a big impact on Workday. Initially, it helped us achieve the company’s goal to virtualize most of Workday’s workloads. Virtualization helped to reduce infrastructure cost significantly. OpenStack’s REST APIs helped us transform how Workday deployed its applications. With some internal tools that integrate with OpenStack, we are able to deploy applications in a reliable, repeatable and predictable way. This reliability is critical for Workday to maintain its SLA commitments with its customers.
What is the scale of your OpenStack environment?
We are running OpenStack on five different data centers. Currently, we have 64 Clusters in production, a total of 16,198 hypervisors hosting over 51,000 virtual machines. There are 70 Workday Services running on this platform.
What other open source technologies are integrated with your hybrid cloud environment?
We use many open source technologies in our environment:
- Kubernetes is used for container deployment and orchestration
- Terraform is used to build and configure a common set of infrastructure and services across different clouds
- Argo CD for managing different clusters and keeping the clusters in their desired states
- Some other technologies used to facilitate inter-service communications are Istio, Consul and Envoy.
Are you running OpenStack in your hybrid cloud environment? Share your feedback in the OpenStack User Survey.