Open sourcing Kube2Hadoop: Secure access to HDFS from Kubernetes

Frank (Cong) G.
10 min readadvanced
--
View Original

Overview

The article discusses the open-sourcing of Kube2Hadoop, a solution designed to provide secure access to HDFS from Kubernetes. It highlights the integration of Kubernetes with Hadoop's security model, enabling AI workloads at LinkedIn to utilize HDFS data effectively.

What You'll Learn

1

How to securely access HDFS from Kubernetes using Kube2Hadoop

2

Why the integration of Kubernetes and Hadoop is essential for AI workloads

3

How to implement user authentication for Kubernetes jobs accessing HDFS

Prerequisites & Requirements

  • Understanding of Kubernetes and Hadoop security models
  • Familiarity with Kubernetes and HDFS(optional)

Key Questions Answered

How does Kube2Hadoop enable secure access to HDFS from Kubernetes?
Kube2Hadoop integrates a Hadoop Token Service with Kubernetes, allowing AI workloads to fetch delegation tokens for secure access to HDFS. This is achieved through a Kubernetes-native solution that includes init containers and an Admission Controller to manage user authentication and token lifecycle.
What are the components of the Kube2Hadoop architecture?
Kube2Hadoop consists of three main components: the Hadoop Token Service, an init container in each worker pod for fetching delegation tokens, and an IDDecorator that writes authenticated user IDs as pod annotations. This architecture ensures secure and efficient access to HDFS data.
What security measures does Kube2Hadoop implement?
Kube2Hadoop employs several security measures, including the use of IP address validation to prevent impersonation, the IDDecorator to overwrite fake usernames, and separation of the Hadoop Token Service from the Kubernetes platform to minimize risks in case of admin account compromise.

Key Statistics & Figures

Number of users accessing Hadoop data at LinkedIn
4,500
This statistic highlights the scale at which Kube2Hadoop operates within LinkedIn's infrastructure.
Amount of data in LinkedIn's Hadoop data lake
500PB
This figure underscores the vast amount of data that Kube2Hadoop is designed to manage and secure.

Technologies & Tools

Some links below are affiliate links. We may earn a commission if you make a purchase.

Orchestration
Kubernetes
Used for managing containerized applications and workloads.
Data Storage
Hadoop
Provides the distributed file system (HDFS) for storing large datasets.

Key Actionable Insights

1
Implementing Kube2Hadoop can significantly enhance the security of your AI workloads by ensuring that only authenticated users can access HDFS data.
This is particularly important in environments where sensitive data is handled, as it mitigates the risk of unauthorized access through robust authentication mechanisms.
2
Utilizing the IDDecorator feature allows for better management of user identities within Kubernetes, ensuring that job submissions are accurately attributed to the correct users.
This is essential for maintaining accountability and traceability in data access, especially in collaborative projects involving multiple team members.

Common Pitfalls

1
Assuming that Kubernetes' native security features are sufficient for managing access to HDFS.
This can lead to vulnerabilities, as Kubernetes does not natively support the same authentication mechanisms as Hadoop. Kube2Hadoop addresses this gap by integrating Hadoop's security model.

Related Concepts

Kubernetes Security Best Practices
Hadoop Authentication Mechanisms
AI Workload Management