Grab’s journey to automation
As Grab grew its customer base and number of drivers in Southeast Asia, it became more critical for the ride-hailing company to maintain, if not elevate the user experience that Grab drivers and their customers would have when using their app.
Clearly, the rapid rate of innovation to keep up with the market, meant that there had to be many changes made to the application; something to the tune of hundreds of new features are added to production each week.
This makes the development of the application and its upgrades, susceptible to human error, and before Red Hat’s solution was implemented, Grab’s app had an uptime of 87-percent on average.
To exacerbate the matter, Grab’s systems had grown around 300 times from what they were three years ago.
According to Red Hat’s VP and GM in ASEAN, Taiwan and Hong Kong, Damien Wong, “This was an issue which they had to resolve, to remove the human error, because it was causing about 40-percent of unplanned downtime.”
The solution came in the form of Red Hat’s Ansible, a IT automation technology which is notably, agentless.
Long story short, Ansible’s simple automation framework meant that previously isolated network admins can speak the same language as everyone else in the same IT organisation.
Wong said, “Using Ansible playbooks that were easy to develop, deployment was quick and easy.”
Being agentless was also important because it means the solution would consume less computing resources.
But, what are playbooks? Wong described them as instructions that can be written to automate manual tasks. For example, when it comes to updating a program like Grab’s, there may have to be changes made to the existing program.
These application changes are usually made in a development environment first before going into the live environment, and these changes have to be made in the right order.
“It is complex having to manage all these changes and managing the configurations. Automation also avoids developers from cutting corners,” Wong said.
Ansible serves as a consistent, reliable way to deploy new features to production, without affecting the quality of the app or its availability.
Today, Grab’s app enjoys 99-percent uptime and its users; drivers and passengers alike; enjoy a convenient way to find each other over 3.5 million times a day, across Southeast Asia countries.
Wong also observed that because Ansible is open source, more and more people are building playbooks.
“It is simple to create these playbooks and manage them all via Ansible Tower,” Wong said.
If playbooks were worker bees, Ansible Tower is like the Queen Bee.
This is the analogy that Wong used to describe these two technologies, but officially, Ansible Tower is an enterprise IT automation engine that simplifies and automates cloud provisioning, configuration management, application deployment, intra-service orchestration, and many other IT tasks and processes.
DevOps: Minimal but viable
What exactly does that mean?
Wong described that Ansible is being used for example, to implement changes in legacy apps used by banks and airlines. “Legacy apps are not based on microservices architecture, so any change to it, would impact it tremendously.”
Rather than build a large complex software application, which is what legacy apps usually are, the microservices approach emphasises minimum viable products/services that are faster to build and could stand on their own. An application would be a loosely combined collection of these services.
Ansible’s automation allows IT to take DevOps-type capabilities to legacy apps and implement changes in a continuous integration and continuous deployment, or CI/CD-like manner.
In conclusion about Ansible, Wong said, “Even non-IT people can write playbooks, and marketing may use it to automate their marketing campaigns, for example.”
According to him, Ansible is in the top 3 ranking of Red Hat’s fastest growing products. To date, there are nearly 3000 unique contributors and a user base that spans industries and the globe.