nClouds Client StoryOzlo

How nClouds helped Ozlo accelerate the throughput rate of data infrastructure builds to improve cost optimization, scalability, and developer productivity on AWS.

About Ozlo

Before being acquired by Facebook in 2017 and integrated into Messenger, Ozlo was a startup tech company with a vision for an interactive and personable AI app that aided customers in finding nearby and well-rated service industry businesses. Known as "Your friendly AI sidekick,” it was the first chatbot with a persona that used individual chat history and geolocation to understand a question’s context. It collected data across various sources such as Facebook, YouTube, Yelp, etc., to perform tasks such as finding restaurants, discovering recipes, ordering delivery, or buying movie tickets. Ozlo’s vision and work proved successful. It was acquired by Facebook about a year after its entry into the marketplace. nClouds is proud to have been a part of Ozlo’s success story.

Ozlo Logo
Industry

Software, Artificial intelligence (AI), Machine Learning (ML)

Location

Palo Alto, CA

Challenge

Accelerate the throughput rate of data infrastructure builds to improve cost optimization, scalability, and developer productivity on AWS.

Featured Services

Application Modernization, Containerization, DevOps

Benefits Summary

icon

Increased developer productivity

icon

Improved scalability

icon

Cost optimization

Challenge

Challenge: Accelerate the throughput rate of data infrastructure builds to improve cost optimization, scalability, and developer productivity on AWS.

Ozlo began with a single massive test suite that validated the integrity of all application components. Each pull request triggered a data infrastructure build. As the size of its team grew, builds became backlogged, which affected developer productivity. It needed to accelerate the throughput rate of data infrastructure builds to improve cost optimization, scalability, and developer productivity on AWS.

Why AWS and nClouds

Ozlo selected nClouds to create this solution based on its application modernization, containerization, and DevOps expertise.


Ozlo leveraged several Amazon Web Services:

  • Amazon EC2 Reserved Instances (RI) - Provides Ozlo with a significant discount (up to 75%) compared to On-Demand pricing and provides a capacity reservation when used in a specific Availability Zone (AZ).
  • Amazon EC2 Spot Instances - Enable Ozlo to take advantage of unused EC2 capacity in the AWS cloud. Spot Instances are available at up to a 90% discount compared to On-Demand prices.
  • Amazon ECS Cluster CPU reservation - The total CPU units reserved by Amazon ECS tasks on the cluster divided by the total CPU units registered for all the container instances in the cluster.
  • Amazon Elastic Container Service (Amazon ECS) - A highly scalable, high-performance container orchestration service that supports Docker containers and enables Ozlo to run and scale containerized applications on AWS easily.
  • Amazon Elastic File System (Amazon EFS) - Provides Ozlo with a simple, scalable, fully managed elastic network file system (NFS) for use with AWS services and on-premises resources.
  • AWS Auto Scaling group - Monitors Ozlo’s applications and automatically adjusts capacity to maintain steady, predictable performance at the lowest possible cost.
  • AWS CloudFormation - Allows Ozlo to treat its infrastructure as code, automate operations, and bring up new environments.

Ozlo’s solution stack also included additional, essential third-party tools:

  • Jenkins - An open-source automation server written in Java to support CI/CD.
  • Troposphere - A library that facilitates the creation of AWS CloudFormation JSON template by writing Python code to describe the AWS resources. It also includes some basic support for OpenStack resources via Heat.

nClouds' Solution Architecture for Ozlo

Using Troposphere and an AWS CloudFormation template, nClouds teamed with Ozlo to create an Amazon ECS cluster, a Docker registry, and two AWS Auto Scaling Groups (one group with a single RI and three Amazon EC2 Spot Instances).

The Amazon ECS cluster provides containers that can act as Jenkins agents. nClouds moved shared data to Amazon EFS to provide a strong data consistency model with a high throughput rate and shared file access. By mounting the volume to the container agent, Ozlo can more quickly perform these jobs and consolidate multiple local file repositories into a single location for all users.

nClouds reserved 95% of the CPU for each build job and defined scaling policies based on the Amazon ECS Cluster CPU reservation. Using Amazon EC2 Auto Scaling groups, Ozlo can maintain, scale up, or scale down the Amazon EC2 Spot Instance cluster based on its application’s demands. As a result, configurable cluster agents can automatically scale up to 4X based on the demand for running multiple jobs.

High-level architecture diagram:

Solution Architecture

The Benefits

Teaming with nClouds, Ozlo now has a faster throughput rate for its data infrastructure builds. The project has yielded numerous benefits:

icon

Increased developer productivity

Build results are now delivered 3X faster for multiple parallel builds, increasing Ozlo’s developers’ productivity.

icon

Improved scalability

Amazon ECS, Amazon EFS, and AWS Auto Scaling group provide Ozlo with improved scalability. Configurable cluster agents can automatically scale up to 4X based on the demand for running multiple jobs.

icon

Cost optimization

nClouds optimized Ozlo’s costs by implementing RIs and Spot Instances that provide significant discounts compared to On-Demand pricing. Amazon ECS, Amazon EFS, and AWS Auto Scaling group automatically adjust capacity to maintain steady, predictable performance at the lowest possible cost.

Contact Us Now

You can also email us directly at sales@nclouds.com for your inquiries or use the form below