From Single-tenant IaaS to Multi-tenant PaaS — Multi-tenant Isolation with MaxCompute

In the big data session of the 2017 Computing Conference Beijing Summit, Li Xuefeng, a senior technical expert from Alibaba Cloud, talked about multi-tenant isolation on a financial big data platform. He started his speech with the problems of tenant isolation in a traditional single-tenant IaaS architecture and then talked about the multi-tenant PaaS architecture of Alibaba Cloud MaxCompute and how MaxCompute implemented secure isolation. We will discuss these architecture details in this article.

Problems with Single-tenant IaaS Architecture

Image for post
Image for post

Multi-tenant PaaS Architecture of MaxCompute

Image for post
Image for post
Image for post
Image for post
Image for post
Image for post
  1. Resource isolation: when running jobs of different tenants, MaxCompute offers the unified and globally optimal job scheduling capability and resource isolation capability.
  2. Operation isolation: MaxCompute supports user-defined logic (such as Python UDF) and offers a comprehensive operation isolation mechanism for user-defined logic running on MaxCompute.

Logical Isolation on MaxCompute

Currently, a MaxCompute instance provides a unified tenant system, no matter how many physical clusters the instance is running on. In this tenant system, the data resource view and privilege management model for the same tenant is unique and bound to the tenant model. In real-world applications, a tenant on MaxCompute maps to a project, which contains all resources, properties, and privileges of the tenant.

Image for post
Image for post
Image for post
Image for post

Resource Isolation on MaxCompute

The computing engine of MaxCompute depends on the Apsara operating system to offer resource operation and isolation capabilities.

Image for post
Image for post
Image for post
Image for post

Operation Isolation on MaxCompute

Finally, let’s have a look at the operation isolation mechanism provided by MaxCompute to ensure secure operation of user-defined logic. When the Fuxi module runs user-defined code logic, it pulls an isolated environment and runs the code in an isolated process. For the Fuxi module, this process is the same as other processes but runs in an isolated system. That is, this is a common process for the Fuxi module but is isolated from untrusted code processes.

Process Isolation

Image for post
Image for post

Device Isolation

Image for post
Image for post

Network Isolation

Image for post
Image for post

Conclusion

We have discussed how Alibaba Cloud MaxCompute uses logical isolation, resource isolation, and network isolation methods to provide secure isolation for big data processing. You can learn more about MaxCompute and other Alibaba Cloud products and solutions at www.alibabacloud.com.

Follow me to keep abreast with the latest technology news, industry insights, and developer trends.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store