মূল বিষয়বস্তুতে যান

Ilum's MinIO via VS Code on Local Machine

This guide explains how to connect your local VS Code installation to Ilum's MinIO object storage, allowing you to browse, upload, download, and manage files directly from your preferred development environment.

Using with Remote-SSH

If you are connecting to Ilum's Jupyter via SSH (as described in VS Code Jupyter Integration), the MinIO extension must be configured in a separate local VS Code window, not in the remote SSH session. The extension connects directly to MinIO from your local machine.

পূর্বশর্ত

Before you begin, ensure you have the following:

  • Local VS Code Installation: Download and install VS Code on your machine
  • VS Code Extensions:
  • kubectl Access: Configured access to your Ilum cluster with appropriate permissions
  • MinIO Credentials: Access key and secret key for your Ilum MinIO instance (default: মিনিওঅ্যাডমিন / মিনিওঅ্যাডমিন )

Methods of Connecting to MinIO

There are two primary ways to expose MinIO to your local VS Code. Choose the method that best fits your environment:

বৈশিষ্ট্য Port Forwardingনোডপোর্ট
এর জন্য সেরা Quick access, secure connection, firewalled environmentsPersistent access, shared team access
Setup ComplexityLow (single command)Medium (requires NodePort configuration)
অধ্যবসায় Temporary (terminal must stay open)Persistent (survives terminal close)
নিরাপত্তা Higher (localhost only)Requires network security consideration

Step 1: Expose the MinIO Service

Port Forwarding (Recommended):

Port Forward MinIO API
কুবেক্টল পোর্ট-ফরোয়ার্ড এসভিসি / আইএলইউএম-মিনিও 9000: 9000 

This command creates a secure tunnel from your local machine's port 9000 to the Ilum MinIO service. Keep this terminal session open while working with MinIO.

Your MinIO endpoint will be: http://localhost:9000

Step 2: Install MinIO Extension

  1. Open VS Code
  2. Go to Extensions (Ctrl+Shift+X / Cmd+Shift+X)
  3. Search for "MinIO"
  4. টিপুন Install

Alternatively, install directly from the VS Code Marketplace.

Step 3: Configure the Extension

  1. Open VS Code Settings (Ctrl+, / Cmd+,)
  2. Search for "MinIO"
  3. Configure the extension with your connection details.
Configuration Keys

Since configuration keys may vary between extension versions, look for fields corresponding to Address/Server, Access Keyএবং Secret Key.

MinIO Extension Settings

Typically, you will need to provide:

  • Address/Server: The URL to your MinIO instance (e.g., http://localhost:9000বা http://<node_ip>:<nodeport>)
  • Access Key: Your MinIO user (default: মিনিওঅ্যাডমিন )
  • Secret Key: Your MinIO password (default: মিনিওঅ্যাডমিন )

Some versions may also ask for a default Bucket Nameবা Download Directory.

Available Buckets

Ilum typically creates the following buckets:

  • ইলুম-ফাইল — Spark job files and JARs
  • ilum-data — Data files and tables
  • ilum-mlflow — MLflow artifacts

Working with Ilum Spark Jobs

Once connected, you can use MinIO to:

  • Upload Spark JARs: Upload compiled job JARs to ইলুম-ফাইল bucket for execution
  • Browse Data: View data files stored in ilum-data bucket
  • Download Results: Download job output files to your local machine

Example Workflow

  1. Develop and compile your Spark job locally
  2. Upload the JAR file to ilum-files/jars/ via MinIO Explorer
  3. Submit the job via Ilum UI or REST API referencing the S3 path
  4. Download results from MinIO after job completion

সমস্যা সমাধান

Click to expand troubleshooting steps

Connection Issues

  • Connection refused: Ensure the port-forward command is running or NodePort is correctly configured

    Check Port Forward
    # Re-run port forward if connection is lost
    কুবেক্টল পোর্ট-ফরোয়ার্ড এসভিসি / আইএলইউএম-মিনিও 9000: 9000
  • Access denied: Verify the access key and secret key are correct

  • Bucket not found: Ensure the configured bucket name exists in MinIO

Extension Issues

  • Explorer not showing: Reload VS Code window (Ctrl+Shift+P → "Reload Window")
  • Settings not saving: Check that you're editing User settings, not Workspace settings

Performance Considerations

  • Large files: For very large files, consider using MinIO CLI (mc) instead
  • Network latency: Port-forward connections may have slight latency compared to direct access

Security Notes

  • All data transfers happen within your secure kubectl tunnel or cluster network
  • Avoid exposing MinIO via LoadBalancer without proper authentication
  • Use trusted networks when establishing these connections
  • Consider using MinIO's built-in access policies for production environments

পরবর্তী পদক্ষেপ

Once you have VS Code successfully connected to Ilum's MinIO storage, explore: