Eleven years into the development and adoption of OpenStack, organizations with clouds of all sizes are continuing to grow their footprint and diversify the workloads they are running. In this series of case studies, we talked to different users around the world, learned about the scale and growth of their OpenStack cloud, and what kind of future growth they are expecting.
Today, Andrew Kong, cloud technical director at Kakao, presented Kakao’s OpenInfra use case and explained why their OpenStack deployment is growing so quickly.
What is the name of your organization and what does your organization do?
My company is Kakao. It’s the number 1 internet mobile content (messaging, webtoon and music) service company in Korea.
Why did you choose to use OpenStack in your hybrid cloud environment?
OpenStack cloud in Kakao (We call it 9rum , the pronunciation is ‘gu-rum’. 9rum is homonym of 구름 which means cloud in Korean) is already standard development and service platform in Kakao Corp. To make the best use of existing cloud, we have to select OpenStack as a base/starting point for hybrid cloud environment
Describe how you’re using OpenStack in your hybrid cloud environment (are you using it for private cloud?)
The demand/request for a public cloud resource from our company member is getting increased due to the increased need/desire for expanding the service to a global market, making new product faster as well. We named our 9rum cloud into Kakao Cloud Platform (KCP) to embrace it. KCP’s main strategy is to make the same usage pattern over the hybrid cloud. To achieve the goal, we create hybrid connecting service, the name is Public Infra API (PIA). PIA uses OpenStack’s Keystone as a service provider and connects the private ID provider and public ID provider through the OpenID. We changed our private IDP from LDAP to OpenID, and it gives most of resource control over the private OpenStack API and public cloud API (AWS mostly). From a user perspective, additional region like kakao-usa-east1 is shown from their region selection list. Creating/managing the resources is not changed at all; actually, Kubernetes is orchestrating the resources.
What does your hybrid cloud architecture look like?
To achieve the goal ( maintaining the same cloud usage over private and public), we think that four software architecture should be improved. Authorization and authentication (A&A), cloud service orchestration, cloud telemetry and cloud service deployment. For A&A as I mentioned earlier question, we used openID and OpenStack Keystone for authentication and used Open Policy Agent (OPA) for authorization standard framework. These two changes can make our cloud can easily connected with private cloud and public cloud as well. We make PIA so that our container orchestrator (DKOS) can have abstract resource controlling over the private and public cloud. For cloud service orchestration, we revised our Configuration Management Database to have metadata for a hybrid resources. For telemetry, we developed new telemetric system call KOCOON which works in container orchestrator. We also make new cloud service deployment system called KARGO which can deploy cloud-native services over hybrid environment.
Do you have a diagram of your hybrid cloud architecture that can be referenced/published?
How do you decide where to run your workloads in your hybrid cloud environment? Are there scenarios where you migrate workloads between cloud environments?
There is no automated way to decide the workload location in hybrid cloud. Instead of having workload based scheduling over hybrid cloud, we make our container orchestrator work swiftly and maintain the similar usage in hybrid environment. We let the business decide for an optimal environment for their services.
How has using OpenStack impacted your organization?
OpenStack cloud and development environment give more efficiency to develop and operate service. Developers in Kakao can claim enough cloud resource as much as they want. We modified and devised our OpenStack cloud to comply with compliances and regulations which accelerated developing cycles so fast that we can build no-show COVID-19 vaccine reservation within 10 day.
What is the scale of your OpenStack environment?
- Number of Instances : more than 200,000
- Number of Servers : more than 50,000
- Number of Regions: 6 (excluding the us-east1 amazon region, just for fun)
- The growth rate was 30% YOY, and it’s getting steeper.
What other open source technologies are integrated with your hybrid cloud environment?
We get help from OpenId and Kubernetes mostly for orchestration as well as argoCD and k-native for service orchestration and deployment.
If you want to share your OpenStack use case, please complete the OpenStack User Survey.
- Inside Open Infrastructure: The Latest from the OpenInfra Foundation - September 7, 2022
- Inside Open Infrastructure: The Latest from the OpenInfra Foundation - August 10, 2022
- 12 Years of OpenStack | OpenInfra Live Recap - July 22, 2022