Hadoop Handler
An interactive, cross-platform command-line tool suite designed to automate the installation, configuration, verification, and management of Apache Hadoop 3.4.2 Single-Node clusters on Linux, macOS, and Windows.
Developed by Aditya Pidurkar (@itsadityap).
Installation & Usage
Method 1: Install via Pip / PyPI (Recommended)
Install the global CLI directly using Python and pip:
pip install hadoop-handler
Launch the interactive control panel from anywhere:
hadoop-handler
You can also run subcommands and flags directly:
# Check version and help
hadoop-handler --version
hadoop-handler --help
# Direct subcommands
hadoop-handler verify # Verify Hadoop, Java, and running daemons
hadoop-handler start # Start HDFS and YARN daemons
hadoop-handler stop # Stop services
hadoop-handler restart # Restart cluster daemons
hadoop-handler diagnose # Check and repair dependencies
hadoop-handler install # Run automated installation with smooth progress
hadoop-handler delete # Wipe and uninstall cluster
hadoop-handler service enable # Register cluster as systemd user service
hadoop-handler service status # Check systemd service status
hadoop-handler update # In-place self update via git or pip
hadoop-handler --install-completion # Install shell autocompletion (bash, zsh, fish, powershell)
Method 2: Unix One-Liner (Linux & macOS)
Run this command from any terminal:
curl -fsSL https://adityapidurkar.in/install.sh | sh
(This clones the repository to ~/.hadoop-handler, sets up execution permissions, and registers the command globally).
Method 3: Windows PowerShell One-Liner
Open a PowerShell terminal as Administrator and run:
irm https://adityapidurkar.in/install.ps1 | iex
Method 4: Manual Clone (Linux & macOS)
git clone https://github.com/itsadityapidurkar/hadoop-handler.git
cd hadoop-handler
chmod +x setup.sh
./setup.sh
Features & Menu Overview
- Arrow-Key Navigation (TUI Menu): Navigate menu items effortlessly with
Up/Downarrow keys, Vim keys (j/k), direct numbers (0-9), orEnterto select. - Live Visual Status Badges: Instant status display at the top of the menu:
- Hadoop:
[Installed (3.4.2)]or[Not Installed] - Java:
[OpenJDK 21]or[Missing] - Services:
[5/5 Daemons Running]or[Stopped]
- Hadoop:
- Smooth Download Progress Bar: Live, single-line progress indicator with byte counter, download rate (MB/s), and ETA calculation.
- Desktop Notifications: Native desktop alerts via
notify-send(Linux), Notification Center (macOS), or Toast (Windows) when downloads and cluster tasks complete. - System Service Integration (systemd / launchd): Manage Hadoop daemons via
systemctl --useron Linux orlaunchdon macOS so services can run automatically on boot. - Shell Autocompletion: Native autocompletion support for
bash,zsh,fish, andpowershell. - One-Command Self-Update: Run
hadoop-handler updateto automatically pull updates from PyPI or git repositories. - Version Update Banner: Non-intrusive cached checks alerting you when a newer version is available.
- Diagnose / Auto-Repair: Scans for missing utilities (
curl,tar,rsync, OpenJDK 21,sshd) and safely installs them using your native package manager (apt,dnf,yum,pacman,brew). - Idempotent Installation: Secure downloads, SSH keypair generation, firewall port configuration, and safe NameNode formatting without wiping existing HDFS data blocks.
Windows Daemon Management
On Windows, open a Command Prompt (CMD) as Administrator and run:
- Start HDFS:
start-dfs.cmd - Start YARN:
start-yarn.cmd - Stop services:
stop-all.cmdor close the daemon windows.
Repository Structure
hadoop_handler/: The core Python package with cross-platform CLI runner and templates.cli.py: Platform-aware launcher for Linux, macOS, and Windows.scripts/: Embedded shell scripts (hadoop-handler,install.ps1).configs/: Pre-configured XML templates (core-site.xml,hdfs-site.xml,mapred-site.xml,yarn-site.xml,workers).
pyproject.toml: Modern PEP 517/621 build configuration for PyPI.setup.sh: Global setup script for Unix systems.install.sh: One-liner bootstrap script for Unix systems.install.ps1: Native PowerShell installer for Windows.configs/: Fallback cluster templates.
Roadmap / Upcoming Features (TODO)
- Arrow-Key Navigation (TUI Menu): Interactive navigation with live cluster status badges.
- Smooth Download Progress Bar: Single-line progress bar with transfer rate and ETA.
- Desktop Notifications: Native desktop alerts for task completion.
- System Service Integration: Manage cluster via systemd user units on Linux or launchd on macOS.
- Shell Autocompletion: Subcommand autocompletion for Bash, Zsh, Fish, and PowerShell.
- One-Command Self-Update: In-place CLI updates (
hadoop-handler update) and update check banner. - Multiple Hadoop Version Support: Side-by-side installations of multiple Hadoop versions (e.g. 3.3.6, 3.4.1, 3.4.2) with instant switching (
hadoop-handler use <version>). - Cross-Compatibility Checker: Automated verification of Hadoop and Java runtime matrix to prevent JVM reflection crashes.
- In-Place Upgrades & Downgrades: Upgrade or downgrade Hadoop versions seamlessly while preserving XML configurations and existing HDFS data blocks.
License
Licensed under the Apache License 2.0.
Metadata
Release files for hadoop-handler 1.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| hadoop_handler-1.1.0.tar.gz | 48.3 kB | Without provenance | Details for hadoop_handler-1.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| hadoop_handler-1.1.0-py3-none-any.whl | Python 3 | none | any | Details for hadoop_handler-1.1.0-py3-none-any.whl |
Total release size: 78.7 kB
Release files / hadoop_handler-1.1.0.tar.gz
| Download URL | hadoop_handler-1.1.0.tar.gz |
|---|---|
| Size | 48.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7f4772fa20e483dfda0242c379ec74ea872d207b0d84878850f6cf3b3107fd1a
|
|
BLAKE2b-256 checksum How to use checksums |
2f55bb573297412d61609c1bc2a333588723f8825f76bb4458362eb92da66204
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / hadoop_handler-1.1.0-py3-none-any.whl
| Download URL | hadoop_handler-1.1.0-py3-none-any.whl |
|---|---|
| Size | 30.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
db6424c54a2d3f50ffacb6decb640a7f75cf327386cbaaa93702d4620fc14863
|
|
BLAKE2b-256 checksum How to use checksums |
265b4d2a3eb30595277b748292ec5d418f83dff92c9f1b7496a5203dbf86cfb2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Security for hadoop-handler 1.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.