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

Command Reference

1. Global Options

FlagShortডিফল্ট বর্ণনা
--output-ও সারণী Output format: সারণী , json, yaml, সিএসভি .
--শান্ত -কিউ FalseSuppress informational output (errors still shown).
--verbose-vFalseEnable verbose/debug output.
--no-headersFalseOmit column headers from table and CSV output.
--field-selectorNoneComma-separated list of fields to include in output (e.g. name,status).
--version-VPrint version and exit.
$ ilum --version
$ ilum -v install
$ ilum --output json status
$ ilum --quiet --output json module list

2. ilum init

Interactive setup wizard for the Ilum CLI.

Synopsis

ilum init [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--yes-yFalseNon-interactive mode with defaults.
--profile-pডিফল্ট Profile name to create.

Wizard Steps

StepAction
1. PreflightCheck for helm (>= 3.12), kubectl (>= 1.28), and docker (>= 24.0). In interactive mode, offers to install any missing or outdated tool automatically using platform-appropriate methods (see পূর্বশর্ত ). In non-interactive mode (--yes), raises an error if a tool is missing.
2. ClusterDetect kubecontexts or create a local cluster (k3d, minikube, kind). If creating a cluster, also checks for the cluster provider binary and offers to install it.
3. ProfilePrompt for profile name, release name, namespace.
4. ModulesInteractive checkbox grouped by category with dependency resolution.
5. ConfirmDisplay summary table and ask for confirmation.
6. SaveWrite the profile to config.yaml.

উদাহরণ

# Interactive wizard
$ ilum init

# Non-interactive with defaults
$ ilum init --yes

# Create a named profile
$ ilum init --profile staging

3. ilum quickstart

Install Ilum in one command with sensible defaults.

Synopsis

ilum quickstart [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--providerminikubeLocal cluster provider if a new cluster is needed (minikube, k3d, প্রকার ).
--profile-pডিফল্ট Profile name to create.
--module-মি NoneAdditional module to enable (repeatable).
--presetNoneDeployment preset to apply (e.g. tiny, ডিফল্ট , data-engineering, production).
--timeout15mHelm install timeout.

Steps Performed

StepAction
1. PreflightCheck for helm (>= 3.12), kubectl (>= 1.28), docker (>= 24.0). In interactive mode, offers to install missing tools automatically (see পূর্বশর্ত ). In non-interactive mode, raises an error if a tool is missing.
2. ClusterProbe current kubecontext. If unreachable, create a local cluster with the দেব preset (4 CPUs, 8 GB). Also checks for the cluster provider binary and offers to install it.
3. ProfileCreate a profile with default modules plus any extras from --module.
4. InstallRun helm installসাথে --atomic, auto-resolve NodePort conflicts.

Cluster Auto-Detection

Quickstart probes the current kubeconfig context by listing namespaces. If the API server responds within 5 seconds, the existing cluster is used. Otherwise, a new local cluster is created using the provider specified by --provider (default: minikube).

উদাহরণ

# Install with all defaults (detects cluster, default modules)
$ ilum quickstart

# Create a k3d cluster instead of minikube
$ ilum quickstart --provider k3d

# Enable additional modules beyond defaults
$ ilum quickstart -m sql -m airflow

# Use a named profile
$ ilum quickstart --profile staging

# Increase Helm install timeout
$ ilum quickstart --timeout 20m

4. ilum install

Install the Ilum platform via Helm.

Synopsis

ilum install [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--version"" (latest)Chart version to install.
--values-চ NoneValues file (repeatable).
--সেট Noneহেলম --সেট flag (repeatable).
--module-মি NoneModule to enable (repeatable).
--presetNoneDeployment preset to apply (e.g. tiny, ডিফল্ট , data-engineering, production).
--atomicসত্য ব্যবহার --atomic for Helm install.
--yes-yFalseSkip confirmation prompt.
--dry-runFalsePreview without executing.
--timeout10mHelm timeout.

Module Priority Rule

Modules are resolved in this order:

  1. Modules passed via --module flags.
  2. Modules saved in the active profile (get_enabled_modules).
  3. Default-enabled modules from the module registry.

NodePort Conflict Resolution

Before Helm install, the CLI checks for NodePort conflicts on the cluster. If a default NodePort (e.g. 31777 for ilum-ui) is already allocated, the user is prompted to select a free port. In --yes mode, a free port is auto-assigned.

উদাহরণ

# Install with defaults
$ ilum install

# Install a specific version with modules
$ ilum install --version 6.7.0 --module jupyter --module sql

# Install into a custom namespace, non-interactive
$ ilum install -n ilum-prod -r ilum-prod --yes

# Dry-run preview
$ ilum install --dry-run

# Install with custom values file and overrides
$ ilum install -f custom-values.yaml --set ilum-core.replicaCount=3

5. ilum upgrade

Upgrade an existing Ilum installation.

Synopsis

ilum upgrade [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--version"" (latest)Chart version to upgrade to.
--values-চ NoneValues file (repeatable).
--সেট Noneহেলম --সেট flag (repeatable).
--module-মি NoneModule to enable (repeatable).
--atomicসত্য ব্যবহার --atomic for Helm upgrade.
--force-rollbackFalseRollback a stuck release before upgrading.
--reset-defaultsFalseReset to new chart defaults before applying user values (uses Helm's --reset-then-reuse-values). Enabled automatically when the chart version changes.
--পুনঃব্যবহার-মান FalseForce reuse of previous values even when chart version changes. Overrides the automatic --reset-defaults behavior.
--yes-yFalseSkip confirmation prompt.
--dry-runFalsePreview without executing.
--timeout10mHelm timeout.

Values Safety Pipeline

  1. Stuck release detection -- if the release is in pending-install, pending-upgradeবা pending-rollback state, the CLI blocks unless --force-rollback is passed.
  2. Auto-reset chart defaults -- when the chart version changes, the CLI automatically uses --reset-then-reuse-values so new chart defaults (e.g. updated image tags) take effect. Pass --পুনঃব্যবহার-মান to opt out.
  3. Drift detection -- external changes made since the last CLI operation are displayed as a diff table and preserved during upgrade.
  4. Breaking change warnings -- version transitions are checked for known breaking changes.
  5. No-op detection -- if the target version matches the current version and there are no value changes or new modules, the CLI exits early with a success message.

উদাহরণ

# Upgrade to latest
$ ilum upgrade

# Upgrade to a specific version
$ ilum upgrade --version 6.8.0

# Recover a stuck release and upgrade
$ ilum upgrade --force-rollback

# Upgrade with additional modules
$ ilum upgrade --module airflow --module superset

# Dry-run preview
$ ilum upgrade --dry-run

6. ilum uninstall

Uninstall the Ilum platform.

Synopsis

ilum uninstall [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--yes-yFalseSkip confirmation prompt.
--dry-runFalsePreview without executing.
--delete-dataFalseDelete PersistentVolumeClaims after uninstall.
--delete-namespaceFalseDelete the namespace after uninstall.

Idempotent Behavior

If the release does not exist, ilum uninstall exits with code 0 and prints an informational message. It does not fail.

Destructive Flag Confirmation

When --delete-dataবা --delete-namespace is passed (without --yes), the user must type the release name to confirm.

উদাহরণ

# Standard uninstall
$ ilum uninstall

# Uninstall and delete all data
$ ilum uninstall --delete-data

# Uninstall, delete data, and delete namespace
$ ilum uninstall --delete-data --delete-namespace --yes

# Dry-run preview
$ ilum uninstall --dry-run

6b. ilum cleanup

Full environment teardown with tiered, opt-in destructiveness. Combines uninstall, cluster deletion, config removal, dependency removal, and CLI self-uninstall into a single command.

Synopsis

ilum cleanup [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--clusterFalseAlso delete CLI-managed local k8s cluster.
--configFalseAlso remove CLI config/state/cache directories.
--depsFalseAlso remove dependencies (helm, kubectl, minikube, k3d, kind, docker).
--selfFalseAlso uninstall the CLI itself (always last, never included in --all).
--allFalseShorthand for --cluster --config --deps.
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--yes-yFalseSkip all confirmations.
--dry-runFalsePreview without executing.

Tiers

The command executes in order:

  1. Tier 1 (always): Uninstall Helm release + delete PVCs + delete namespace. Requires typing release name to confirm.
  2. Tier 2( --cluster): Delete CLI-managed local cluster. Requires typing cluster name.
  3. Tier 3( --config): Remove CLI directories and Helm repo. Requires typing বিলোপ .
  4. Tier 4( --deps): Remove dependencies. Requires typing REMOVE per tool (or REMOVE DOCKER for Docker).
  5. Tier 5( --self): Uninstall the CLI itself. Requires typing UNINSTALL.

Each tier is independent -- if one fails, the next still runs.

উদাহরণ

# Preview what would be removed
$ ilum cleanup --all --dry-run

# Uninstall release only (Tier 1)
$ ilum cleanup --yes

# Full teardown: release + cluster + config + dependencies
$ ilum cleanup --all --yes

# Full teardown including CLI itself
$ ilum cleanup --all --self --yes

# Just release + cluster, skip deps
$ ilum cleanup --cluster --yes

7. ilum connect

Connect the CLI to an existing Ilum installation.

Synopsis

ilum connect [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--release-rNoneHelm release name (skips auto-detection).
--namespace-n NoneKubernetes namespace (scans all if omitted).
--contextNoneKubernetes context.
--profile-pডিফল্ট Profile name to create or update.
--yes-yFalseSkip confirmation prompts.
--no-switchFalseDon't switch active profile after connecting.

Auto-detect vs Direct Mode

ConditionModeBehavior
--releaseএবং --namespace both setDirectValidate the specific release in the given namespace.
--release set, --namespace omittedScanScan all namespaces for the named release.
Neither setScanScan all namespaces for any Ilum releases.

When multiple releases are found in scan mode, a table is displayed and the user selects one. In --yes mode, the first release is auto-selected.

Post-connect Actions

  • Enabled modules are detected from live Helm values and synced to the profile.
  • A values snapshot is saved for drift detection.
  • Stuck releases produce a warning with recovery instructions.

উদাহরণ

# Auto-detect
$ ilum connect

# Direct mode
$ ilum connect --release ilum --namespace production

# Connect to a named profile
$ ilum connect --profile staging

# Non-interactive
$ ilum connect --yes

8. ilum status

Show the status of an Ilum installation.

Synopsis

ilum status [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--pods/--no-podsসত্য Show pod readiness.
--modules/--no-modulesসত্য Show enabled modules.
--wait-wFalseBlock until all pods are ready.
--wait-timeout300 Seconds to wait when --wait is used (0 = unlimited).
--eventsFalseInclude recent Kubernetes events in output.
--events-typeNoneFilter events by type: Normal, সতর্কীকরণ .
--events-since5mShow events newer than this duration (e.g. 10m, 1h).

উদাহরণ

# Full status
$ ilum status

# Status without pod details
$ ilum status --no-pods

# Status for a specific release
$ ilum status -r my-ilum -n staging

# Wait for all pods to become ready (up to 5 minutes)
$ ilum status --wait

# Wait with a custom timeout
$ ilum status --wait --wait-timeout 600

# Include recent warning events
$ ilum status --events --events-type Warning

# Show events from the last hour
$ ilum status --events --events-since 1h

8b. ilum values

View or export live Helm values for the current release.

Synopsis

ilum values [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--pathNoneDot-notation path to a specific key (e.g. ilum-core.replicaCount).
--all-aFalseShow all computed values (chart defaults + overrides), not just user-supplied.
--diffFalseShow a diff between user-supplied values and chart defaults.
--revisionNoneShow values from a specific Helm revision number.
--exportNoneExport values to a file path instead of printing to stdout.

উদাহরণ

# Show user-supplied values
$ ilum values

# Show a specific key
$ ilum values --path ilum-core.replicaCount

# Show all computed values
$ ilum values --all

# Show values from a previous revision
$ ilum values --revision 3

# Diff user values against chart defaults
$ ilum values --diff

# Export values to a file
$ ilum values --export my-values.yaml

# Combine path filter with JSON output
$ ilum values --path mongodb --output json

8c. ilum diff

Compare Helm values across different sources.

Synopsis

ilum diff [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--source-এস defaultsSource to compare live values against: defaults, ফাইল , revision, snapshot.
--values-file-চ NoneValues file to compare against (required when --source file).
--revisionNoneHelm revision number to compare against (required when --source revision).
--pathNoneDot-notation path to limit comparison scope (e.g. ইলুম-কোর ).

Source Modes

Sourceবর্ণনা
defaultsCompare live values against chart default values.
ফাইল Compare live values against a local values file.
revisionCompare live values against a previous Helm revision.
snapshotCompare live values against the last CLI snapshot (drift detection).

উদাহরণ

# Diff live values against chart defaults
$ ilum diff

# Diff against a local values file
$ ilum diff --source file --values-file custom-values.yaml

# Diff against a specific revision
$ ilum diff --source revision --revision 2

# Diff against the last CLI snapshot (detect drift)
$ ilum diff --source snapshot

# Limit diff to a specific path
$ ilum diff --path ilum-core

8d. ilum rollback

Roll back the Ilum release to a previous Helm revision.

Synopsis

ilum rollback [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--revisionNoneTarget revision number (defaults to previous revision if omitted).
--dry-runFalsePreview the rollback without executing.
--yes-yFalseSkip confirmation prompt.
--timeout10mHelm timeout.

উদাহরণ

# Rollback to the previous revision
$ ilum rollback

# Rollback to a specific revision
$ ilum rollback --revision 3

# Dry-run preview
$ ilum rollback --dry-run

# Non-interactive rollback
$ ilum rollback --revision 5 --yes

# Rollback with a longer timeout
$ ilum rollback --timeout 15m

8e. ilum exec

Open an interactive shell session inside a module's pod.

Synopsis

ilum exec MODULE [OPTIONS]

Arguments

ArgumentRequiredবর্ণনা
MODULEহ্যাঁ Module name (e.g. কোর , জুপিটার , এসকিউএল ).

Options

FlagShortডিফল্ট বর্ণনা
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--shell/bin/shShell binary to use (e.g. /bin/bash).
--container-cNoneContainer name (auto-detected if omitted).
--podNoneSpecific pod name (auto-detected if omitted).
--commandNoneRun a single command instead of opening an interactive shell.

উদাহরণ

# Open a shell in the core pod
$ ilum exec core

# Use bash instead of sh
$ ilum exec core --shell /bin/bash

# Exec into a specific container
$ ilum exec jupyter --container ilum-jupyter

# Run a single command
$ ilum exec core --command "cat /opt/ilum/conf/application.conf"

# Exec into a specific pod
$ ilum exec core --pod ilum-core-0

8f. ilum top

Show resource usage (CPU and memory) for module pods.

Synopsis

ilum top [MODULE] [OPTIONS]

Arguments

ArgumentRequiredবর্ণনা
MODULEনা Module name to filter (shows all modules if omitted).

Options

FlagShortডিফল্ট বর্ণনা
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--sort-bycpuSort column: cpu, memory, নাম .
--watch-wFalseContinuously refresh the display.
--interval5 Refresh interval in seconds when --watch is used.

উদাহরণ

# Show resource usage for all modules
$ ilum top

# Show resource usage for a specific module
$ ilum top core

# Sort by memory usage
$ ilum top --sort-by memory

# Watch mode with 10-second refresh
$ ilum top --watch --interval 10

# JSON output for scripting
$ ilum top --output json

9. ilum logs

Show logs for an Ilum module's pod.

Synopsis

ilum logs MODULE [OPTIONS]

Arguments

ArgumentRequiredবর্ণনা
MODULEহ্যাঁ Module name (e.g. কোর , জুপিটার , এসকিউএল ).

Options

FlagShortডিফল্ট বর্ণনা
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--follow-চ FalseStream logs in real time.
--tail100 Number of lines to show (0 for all).
--container-cNoneContainer name (auto-detected if omitted).
--previous-pFalseShow logs from previously terminated container.
--max-duration0 থামান --follow after N seconds (0 = unlimited).

Piping Note

Output is written to stdout via typer.echo, so logs can be piped to other tools:

$ ilum logs core --tail 0 | grep ERROR
$ ilum logs core -f | tee /tmp/core.log

উদাহরণ

# Last 100 lines from core
$ ilum logs core

# Stream jupyter logs
$ ilum logs jupyter --follow

# All logs from a specific container
$ ilum logs core --tail 0 --container ilum-core

# Previous container logs (after restart)
$ ilum logs core --previous

10. ilum doctor

Run health checks on the Ilum installation.

Synopsis

ilum doctor [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--release-rfrom profileHelm release name.
--check-cNoneRun a single check by name.
--failures-onlyFalseOnly show failed and warning checks.
--fixFalseAuto-fix simple issues (e.g., add missing Helm repo).

Checks Table

Check NamePhaseWhat it verifies
helm1 - BinariesHelm is installed and version >= 3.12
কুবেক্টল 1 - Binarieskubectl is installed and version >= 1.28
docker1 - BinariesDocker is installed and version >= 24.0
helm-repo2 - Helm repoইলুম Helm repo is configured (charts.ilum.cloud)
ক্লাস্টার 3 - ConnectivityKubernetes cluster is reachable
নামস্থান 4 - Cluster-dependentTarget namespace exists
pods4 - Cluster-dependentAll pods are healthy (detects CrashLoopBackOff)
pvcs4 - Cluster-dependentAll PVCs are bound (detects Pending PVCs)
rbac4 - Cluster-dependentRequired RBAC permissions are granted
release4 - Cluster-dependentHelm release exists and is not stuck or failed
compatibility4 - Cluster-dependentKubernetes version >= 1.28
service-endpoints4 - Cluster-dependentService endpoints have ready addresses
health-endpoints4 - Cluster-dependentHealth check endpoints respond for core, airflow, superset, minio

Phase Gating

If the ক্লাস্টার check fails (phase 3), all phase-4 checks are skipped with status SKIP.

উদাহরণ

# Run all checks
$ ilum doctor

# Run a single check
$ ilum doctor --check pods

# Check against a specific release
$ ilum doctor -r my-ilum -n staging

11. ilum module

Manage Ilum platform modules.

11.1 ilum module list

List all available Ilum modules.

Synopsis

ilum module list [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--category-cNoneFilter by category.
--enabled/--disabledNoneFilter by default-enabled status.
--search-এস NoneSearch modules by name or description.

উদাহরণ

# List all modules
$ ilum module list

# List only notebook modules
$ ilum module list --category notebook

# List only default-enabled modules
$ ilum module list --enabled

# Search for modules matching a term
$ ilum module list --search kafka

11.2 ilum module show

Show detailed information about a module.

Synopsis

ilum module show NAME

Arguments

ArgumentRequiredবর্ণনা
NAMEহ্যাঁ Module name to inspect.

উদাহরণ

$ ilum module show sql
$ ilum module show hive-metastore

11.3 ilum module tree

Show the dependency tree for a module with resource estimates.

Synopsis

ilum module tree NAME

Arguments

ArgumentRequiredবর্ণনা
NAMEহ্যাঁ Module name to display tree for.

উদাহরণ

$ ilum module tree sql
$ ilum module tree langfuse

11.4 ilum module enable

Enable one or more modules on a running Ilum release.

Synopsis

ilum module enable MODULES... [OPTIONS]

Arguments

ArgumentRequiredবর্ণনা
MODULESহ্যাঁ Modules to enable (one or more).

Options

FlagShortডিফল্ট বর্ণনা
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--সেট NoneAdditional Helm --সেট flag (repeatable).
--reset-defaultsFalseReset to new chart defaults before applying user values. Use when upgrading across chart versions with breaking changes.
--yes-yFalseSkip confirmation prompt.
--dry-runFalsePreview without executing.
--timeout10mHelm timeout.

উদাহরণ

# Enable a single module
$ ilum module enable jupyter

# Enable multiple modules
$ ilum module enable airflow superset

# Enable with additional Helm overrides
$ ilum module enable sql --set ilum-sql.replicaCount=2

# Dry-run preview
$ ilum module enable trino --dry-run

11.5 ilum module disable

Disable one or more modules on a running Ilum release.

Synopsis

ilum module disable MODULES... [OPTIONS]

Arguments

ArgumentRequiredবর্ণনা
MODULESহ্যাঁ Modules to disable (one or more).

Options

FlagShortডিফল্ট বর্ণনা
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--সেট NoneAdditional Helm --সেট flag (repeatable).
--reset-defaultsFalseReset to new chart defaults before applying user values. Use when upgrading across chart versions with breaking changes.
--yes-yFalseSkip confirmation prompt.
--dry-runFalsePreview without executing.
--timeout10mHelm timeout.

উদাহরণ

# Disable a module
$ ilum module disable zeppelin

# Disable multiple modules
$ ilum module disable airflow superset

# Dry-run preview
$ ilum module disable kafka --dry-run

11.6 ilum module status

Show live module status on a running Ilum release.

Synopsis

ilum module status [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--category-cNoneFilter by module category.
--timeout10mHelm timeout.

উদাহরণ

# Show all module statuses
$ ilum module status

# Filter by category
$ ilum module status --category orchestration

12. ilum config

Manage Ilum CLI configuration.

12.1 ilum config show

Show the current configuration (or a specific key).

Synopsis

ilum config show [KEY]

Arguments

ArgumentRequiredবর্ণনা
KEYনা Dot-notation key to display (e.g. active_profile).

উদাহরণ

# Show full config
$ ilum config show

# Show a specific key
$ ilum config show active_profile

12.2 ilum config set

Set a configuration value.

Synopsis

ilum config set KEY VALUE

Arguments

ArgumentRequiredবর্ণনা
KEYহ্যাঁ Dot-notation key (e.g. active_profile).
VALUEহ্যাঁ Value to set.

উদাহরণ

$ ilum config set active_profile staging

12.3 ilum config path

Print the configuration file path.

Synopsis

ilum config path

উদাহরণ

# Linux / macOS
$ ilum config path
/home/user/.config/ilum/config.yaml

# Windows
PS> ilum config path
C:\Users\user\AppData\Roaming\ilum\config.yaml

12.4 ilum config init

Create a default configuration file.

Synopsis

ilum config init [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--force-চ FalseOverwrite existing config.

উদাহরণ

# Create config if it doesn't exist
$ ilum config init

# Overwrite existing config
$ ilum config init --force

12.5 ilum config edit

Open the configuration file in $EDITOR (falls back to vi on Linux/macOS, notepad on Windows).

Synopsis

ilum config edit

উদাহরণ

$ EDITOR=nano ilum config edit

12.6 ilum config use

Switch the active profile.

Synopsis

ilum config use PROFILE

Arguments

ArgumentRequiredবর্ণনা
PROFILEহ্যাঁ Profile name to switch to.

উদাহরণ

$ ilum config use staging
$ ilum config use production

12.7 ilum config list-profiles

List all configured profiles.

Synopsis

ilum config list-profiles

উদাহরণ

$ ilum config list-profiles

12.8 ilum config validate

Validate the configuration file for correctness.

Synopsis

ilum config validate

উদাহরণ

$ ilum config validate

12.9 ilum config backup

Create a backup copy of the configuration file.

Synopsis

ilum config backup

উদাহরণ

$ ilum config backup

12.10 ilum config export

Export a profile for team sharing.

Synopsis

ilum config export PROFILE [OPTIONS]

Arguments

ArgumentRequiredবর্ণনা
PROFILEহ্যাঁ Profile name to export.

Options

FlagShortডিফল্ট বর্ণনা
--out-ও <profile>.yamlOutput file path.

উদাহরণ

# Export to default filename
$ ilum config export production

# Export to a specific file
$ ilum config export production --out prod-profile.yaml

12.11 ilum config import

Import a profile from a file.

Synopsis

ilum config import FILE [OPTIONS]

Arguments

ArgumentRequiredবর্ণনা
FILEহ্যাঁ Path to the profile file to import.

Options

FlagShortডিফল্ট বর্ণনা
--নাম -n from fileProfile name to use.

উদাহরণ

# Import with the name from the file
$ ilum config import prod-profile.yaml

# Import with a custom name
$ ilum config import prod-profile.yaml --name production

13. ilum cluster

Manage local Kubernetes clusters.

13.1 ilum cluster create

Create a local Kubernetes cluster.

Synopsis

ilum cluster create [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--providerk3dCluster provider: minikube, k3d, প্রকার .
--presetদেব Resource preset: দেব , full.
--নাম "" (from preset)Cluster name.

Presets Table

PresetCPUsস্মৃতি Default Name
দেব 6 12gilum-dev
full8 18gইলুম

উদাহরণ

# Create with defaults (k3d, dev preset)
$ ilum cluster create

# Create a minikube cluster with full resources
$ ilum cluster create --provider minikube --preset full

# Create with a custom name
$ ilum cluster create --name my-ilum-cluster

13.2 ilum cluster delete

Delete a local Kubernetes cluster.

Synopsis

ilum cluster delete NAME

Arguments

ArgumentRequiredবর্ণনা
NAMEহ্যাঁ Cluster name to delete.

উদাহরণ

$ ilum cluster delete ilum-dev

13.3 ilum cluster list

List tracked local Kubernetes clusters.

Synopsis

ilum cluster list

উদাহরণ

$ ilum cluster list

14. ilum preset list

List all available deployment presets.

Synopsis

ilum preset list

বর্ণনা

Lists all available deployment presets with their names, descriptions, and module counts. Presets are curated collections of modules designed for common deployment scenarios. The output is a Rich table with three columns: Name, Description, and Modules.

Output Columns

স্তম্ভ বর্ণনা
নাম Preset identifier used with --preset flags.
বর্ণনা Short summary of the preset's purpose.
মডিউল Number of modules included in the preset.

উদাহরণ

# List all presets
$ ilum preset list

15. ilum airgap images

List container images required by selected modules.

Synopsis

ilum airgap images [OPTIONS]

বর্ণনা

Lists all container images required by the selected modules. Image references are extracted by running helm template against the chart and parsing the rendered manifests for container image fields. This is useful for pre-pulling images or preparing air-gapped environments.

Options

FlagShortডিফল্ট বর্ণনা
--presetNoneDeployment preset to select modules from.
--module-মি NoneModule to include (repeatable).
--version"" (latest)Chart version to template.
--formatসারণী Output format: সারণী বা plain.

উদাহরণ

# List images for default modules
$ ilum airgap images

# List images for a preset
$ ilum airgap images --preset production

# List images for specific modules
$ ilum airgap images -m core -m jupyter -m mongodb

# Plain output for scripting
$ ilum airgap images --preset tiny --format plain

# List images for a specific chart version
$ ilum airgap images --version 6.7.0

16. ilum airgap export

Export images and chart into a portable air-gapped bundle.

Synopsis

ilum airgap export OUTPUT_DIR [OPTIONS]

বর্ণনা

Exports the Helm chart and all required container images into a portable bundle directory. The bundle includes a manifest.json file describing the contents, chart version, and image list. This bundle can be transferred to an air-gapped environment and imported with ilum airgap import.

Arguments

ArgumentRequiredবর্ণনা
OUTPUT_DIRহ্যাঁ Directory to write the bundle to. Created if it does not exist.

Options

FlagShortডিফল্ট বর্ণনা
--presetNoneDeployment preset to select modules from.
--module-মি NoneModule to include (repeatable).
--version"" (latest)Chart version to export.

উদাহরণ

# Export default modules
$ ilum airgap export ./bundle

# Export a specific preset
$ ilum airgap export ./bundle --preset analyst

# Export specific modules and version
$ ilum airgap export ./bundle -m core -m jupyter --version 6.7.0

17. ilum airgap import

Import an air-gapped bundle into a private container registry.

Synopsis

ilum airgap import BUNDLE_DIR --registry URL

বর্ণনা

Imports a previously exported air-gapped bundle into a private container registry. Reads the manifest.json from the bundle directory, loads the container images, re-tags them for the target registry, and pushes them. The Helm chart is also made available for installation from the bundle.

Arguments

ArgumentRequiredবর্ণনা
BUNDLE_DIRহ্যাঁ Path to the bundle directory created by ilum airgap export.

Options

FlagShortডিফল্ট বর্ণনা
--registryপ্রয়োজনীয় Target container registry URL (e.g. registry.internal:5000).

উদাহরণ

# Import bundle into a private registry
$ ilum airgap import ./bundle --registry registry.internal:5000

# Import from an absolute path
$ ilum airgap import /mnt/usb/ilum-bundle --registry harbor.corp.local/ilum

18. ilum history

View the operation audit log.

Synopsis

ilum history [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--last-n 20 Number of recent operations to show.
--operationNoneFilter by operation type (install, upgrade, enable, disable, uninstall).
--release-rfrom profileFilter by Helm release name.

উদাহরণ

# Show recent operations
$ ilum history

# Show last 5 operations
$ ilum history --last 5

# Filter by operation type
$ ilum history --operation upgrade

# JSON output for CI/CD
$ ilum history --last 10 --output json

19. ilum deps

Manage CLI dependencies (helm, kubectl, docker, k3d, etc.).

ilum deps install

Install missing CLI dependencies.

Synopsis

ilum deps install [TOOL...] [OPTIONS]

Arguments

ArgumentRequiredবর্ণনা
TOOLনা One or more tool names to install. If omitted, installs all core tools (helm, kubectl, docker) plus the selected provider.

Options

Flagডিফল্ট বর্ণনা
--providerk3dCluster provider to install: k3d, minikube, প্রকার .
--dry-runFalsePreview what would be installed without executing.

উদাহরণ

# Install all missing core tools + default provider (k3d)
$ ilum deps install

# Install only specific tools
$ ilum deps install helm kubectl

# Install with a different provider
$ ilum deps install --provider kind

# Preview without executing
$ ilum deps install --dry-run

ilum deps list

List CLI dependencies and their status.

Synopsis

ilum deps list

উদাহরণ

$ ilum deps list

19b. ilum access

Manage access to the Ilum UI via port-forward, NodePort, or ingress.

ilum access open

Open the Ilum UI in a browser.

Synopsis

ilum access open [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--access-afrom profileAccess method: nodeport, port-forwardবা অনুপ্রবেশ .
--port-p9777 Local port to forward to (port-forward mode).
--address127.0.0.1Local address to bind to (port-forward mode).
--no-browserFalseDon't open a browser automatically.

উদাহরণ

# Open UI with default access method (from profile)
$ ilum access open

# Open via port-forward on a custom port
$ ilum access open --access port-forward --port 8080

# Open via NodePort without launching browser
$ ilum access open --access nodeport --no-browser

# Open via ingress
$ ilum access open --access ingress

ilum access ingress enable

Enable ingress for the Ilum UI via Helm upgrade.

Synopsis

ilum access ingress enable --host HOSTNAME [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--hostপ্রয়োজনীয় Ingress hostname.
--tlsFalseEnable TLS.
--tls-secret"" TLS secret name.
--শ্রেণী "" Ingress class name.
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--সেট NoneAdditional Helm --সেট flag (repeatable).
--yes-yFalseSkip confirmation prompt.
--dry-runFalsePreview without executing.
--timeout10mHelm timeout.

উদাহরণ

# Enable ingress with a hostname
$ ilum access ingress enable --host ilum.example.com

# Enable ingress with TLS
$ ilum access ingress enable --host ilum.example.com --tls

# Enable with a specific ingress class
$ ilum access ingress enable --host ilum.example.com --class nginx

ilum access ingress disable

Disable ingress for the Ilum UI.

Synopsis

ilum access ingress disable [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--সেট NoneAdditional Helm --সেট flag (repeatable).
--yes-yFalseSkip confirmation prompt.
--dry-runFalsePreview without executing.
--timeout10mHelm timeout.

উদাহরণ

# Disable ingress
$ ilum access ingress disable --yes

ilum access ingress show

Show the current ingress configuration.

Synopsis

ilum access ingress show [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.

উদাহরণ

# Show ingress config
$ ilum access ingress show

# JSON output
$ ilum access ingress show --output json

19c. ilum auth

Manage authentication and OAuth configuration.

ilum auth setup

Interactive authentication setup wizard. Guides you through selecting an auth mode (internal Hydra, external OAuth2, or disable), choosing a provider, and collecting required parameters.

Synopsis

ilum auth setup [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--সেট NoneAdditional Helm --সেট flag (repeatable).
--yes-yFalseSkip confirmation prompt.
--dry-runFalsePreview without executing.
--timeout10mHelm timeout.

উদাহরণ

# Launch the interactive auth wizard
$ ilum auth setup

# Dry-run preview of auth changes
$ ilum auth setup --dry-run

ilum auth enable

Enable authentication with a specific provider non-interactively.

Synopsis

ilum auth enable PROVIDER [OPTIONS]

Arguments

ArgumentRequiredবর্ণনা
PROVIDERহ্যাঁ Provider name (e.g. google, হাইড্রা , oidc, okta, gitlab, চাবির আলখাল্লা , cognito, azure).

Options

FlagShortডিফল্ট বর্ণনা
--client-idNoneOAuth2 Client ID.
--client-secretNoneOAuth2 Client Secret.
--domainNoneDomain (Hydra UI domain or Okta domain).
--protocolNoneProtocol — Hydra: এইচটিটিপি বা এইচটিটিপিএস .
--urlNoneProvider URL (GitLab, Keycloak).
--realmNoneKeycloak realm name.
--regionNoneAWS region (Cognito).
--user-pool-idNoneCognito User Pool ID.
--tenant-idNoneAzure AD Tenant ID.
--issuer-uriNoneOIDC Issuer URI.
--scopeNoneOAuth2 scopes.
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--সেট NoneAdditional Helm --সেট flag (repeatable).
--yes-yFalseSkip confirmation prompt.
--dry-runFalsePreview without executing.
--timeout10mHelm timeout.

উদাহরণ

# Enable Hydra (internal) auth
$ ilum auth enable hydra --domain ilum.example.com --yes

# Enable Google OAuth2
$ ilum auth enable google --client-id MY_ID --client-secret MY_SECRET --yes

# Enable a generic OIDC provider
$ ilum auth enable oidc --issuer-uri https://auth.example.com --client-id MY_ID --client-secret MY_SECRET

ilum auth disable

Disable OAuth and revert to internal authentication.

Synopsis

ilum auth disable [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.
--সেট NoneAdditional Helm --সেট flag (repeatable).
--yes-yFalseSkip confirmation prompt.
--dry-runFalsePreview without executing.
--timeout10mHelm timeout.

উদাহরণ

# Disable OAuth
$ ilum auth disable --yes

ilum auth status

Show the current authentication configuration from live Helm values.

Synopsis

ilum auth status [OPTIONS]

Options

FlagShortডিফল্ট বর্ণনা
--release-rfrom profileHelm release name.
--namespace-n from profileKubernetes namespace.
--contextfrom profileKubernetes context.

উদাহরণ

# Show auth status
$ ilum auth status

# JSON output
$ ilum auth status --output json

ilum auth list

List all available authentication providers.

Synopsis

ilum auth list

উদাহরণ

$ ilum auth list

20. Prerequisites

The CLI requires the following tools to be installed on your system. These are checked during the preflight step of ilum init, ilum quickstart, and before operations like ilum installএবং ilum upgrade.

Required Tools

ToolMinimum VersionPurpose
helm>= 3.12Deploys and manages the Ilum Helm chart
কুবেক্টল >= 1.28Communicates with the Kubernetes cluster
docker>= 24.0Container runtime for local clusters and image operations

Cluster Providers (optional)

One of these is required only if creating a local cluster via ilum cluster create:

Providerবর্ণনা
k3dLightweight k3s clusters in Docker containers (default provider)
minikubeFull Kubernetes in a VM or container
প্রকার Kubernetes-in-Docker for testing

Automatic Installation

When running in an interactive terminal (TTY connected to stdin), the CLI offers to install missing or outdated tools automatically. This applies to:

  • ilum init (wizard preflight step)
  • ilum quickstart (preflight step)
  • ilum cluster create (cluster provider check)
  • Any command that calls ensure_tool() internally

The install methods are platform-specific:

PlatformMethodযেমন
LinuxOfficial install scripts or direct binary downloadscurl -fsSL https://get.docker.com | sh
macOSHomebrewbrew install helm
Windowswingetwinget install --id Helm.Helm

After installation, the CLI re-checks the tool version. If the check fails, it displays the tool's manual install URL.

Non-Interactive Behavior

মধ্যে non-interactive environments (CI/CD, scripts, piped output, --yes mode without TTY), the CLI does না offer auto-installation. Instead, it raises a PrerequisiteError (error code ILUM-001) with a manual install link:

Error: kubectl is required but not available [ILUM-001]
Suggestion: Install manually: https://kubernetes.io/docs/tasks/tools/

For CI/CD pipelines, install all required tools before invoking the CLI. See the guide's CI/CD section for an example GitHub Actions workflow.

Supported Tools and Install URLs

ToolManual Install URL
helmhttps://helm.sh/docs/intro/install/
কুবেক্টল https://kubernetes.io/docs/tasks/tools/
dockerhttps://docs.docker.com/get-docker/
minikubehttps://minikube.sigs.k8s.io/docs/start/
k3dhttps://k3d.io/
প্রকার https://kind.sigs.k8s.io/docs/user/quick-start/#installation

Docker Post-Install (Linux)

On Linux, after installing Docker the CLI automatically:

  1. Adds the current user to the docker group (requires sudo)
  2. Starts the Docker daemon via systemctl
  3. Warns that a logout/login (or newgrp docker) may be required for group permissions

If passwordless sudo is not available, the CLI prints the manual commands instead.


21. Error Codes

Structured error codes for programmatic error handling (see also পূর্বশর্ত জন্য ILUM-001এবং ILUM-002):

কোড CategoryTitle
ILUM-001prerequisiteTool not found
ILUM-002prerequisiteTool version too old
ILUM-010ক্লাস্টার Cluster unreachable
ILUM-011ক্লাস্টার Namespace not found
ILUM-020helmHelm command failed
ILUM-021helmHelm timeout
ILUM-022helmRelease stuck
ILUM-023helmRelease not found
ILUM-024helmRelease already exists
ILUM-030কনফিগার Config file invalid
ILUM-031কনফিগার Config key not found
ILUM-040moduleUnknown module
ILUM-041moduleModule conflict
ILUM-050মানসমূহ Values parse error
ILUM-051মানসমূহ Values drift detected
ILUM-070execExec failed / No pods found
ILUM-071eventsEvents query failed
ILUM-072মেট্রিক্স Metrics unavailable
ILUM-073helmRollback failed

Error codes appear in both human-readable output and structured JSON/YAML output, enabling CI/CD pipelines to handle specific error conditions programmatically.


22. Module Registry

All 32 modules registered in MODULE_REGISTRY, grouped by category.

Core

নাম বর্ণনা ডিফল্ট DependenciesConflicts
কোর Ilum backend API (Spring Boot on Spark)হ্যাঁ
ইউআই Ilum web frontend (React + Nginx reverse proxy)হ্যাঁ কোর
livy-proxyLivy-compatible Spark session proxyনা কোর
এপিআই Ilum REST API for module managementহ্যাঁ কোর

Infrastructure

নাম বর্ণনা ডিফল্ট DependenciesConflicts
mongodbMongoDB document store for metadataহ্যাঁ
কাফকা Apache Kafka event busনা কোর
postgresqlPostgreSQL relational databaseহ্যাঁ
clickhouseClickHouse columnar analytics databaseনা
গিটিয়া Gitea self-hosted Git serviceহ্যাঁ postgresql

সঞ্চয়

নাম বর্ণনা ডিফল্ট DependenciesConflicts
মিনিও MinIO S3-compatible object storageহ্যাঁ

নোটবুক

নাম বর্ণনা ডিফল্ট DependenciesConflicts
জুপিটার Jupyter notebook server with Sparkmagicহ্যাঁ কোর
jupyterhubMulti-user JupyterHub (Kubernetes >= 1.28)না কোর
zeppelinApache Zeppelin notebook serverনা কোর

এসকিউএল

নাম বর্ণনা ডিফল্ট DependenciesConflicts
এসকিউএল Ilum SQL engine (Kyuubi)হ্যাঁ postgresql, কোর
তৃণমূল Trino distributed SQL query engineনা hive-metastore, এসকিউএল
hive-metastoreHive Metastore serviceহ্যাঁ postgresql, কোর nessie, unity-catalog
nessieNessie versioned data catalogনা postgresqlhive-metastore, unity-catalog
unity-catalogUnity Catalog for data governanceনা postgresqlhive-metastore, nessie

অর্কেস্ট্রেশন

নাম বর্ণনা ডিফল্ট DependenciesConflicts
airflowApache Airflow workflow orchestrationনা postgresql
kestraKestra declarative orchestration engineনা postgresql
n8n n8n workflow automation platformনা postgresql
nifiApache NiFi data integrationনা কোর
mageaiMage.ai data pipeline toolনা postgresql

Analytics

নাম বর্ণনা ডিফল্ট DependenciesConflicts
supersetApache Superset BI dashboardsনা postgresql
streamlitStreamlit interactive data applicationsনা কোর
marquezMarquez data lineage trackingহ্যাঁ postgresql

AI

নাম বর্ণনা ডিফল্ট DependenciesConflicts
এমএলফ্লো MLflow experiment tracking and model registryনা postgresql
langfuseLangfuse LLM observability platformনা postgresql, clickhouse

নজরদারি

নাম বর্ণনা ডিফল্ট DependenciesConflicts
নজরদারি Prometheus + Grafana monitoring stackনা
lokiGrafana Loki log aggregationনা
graphiteGraphite metrics exporterনা

নিরাপত্তা

নাম বর্ণনা ডিফল্ট DependenciesConflicts
Openldap OpenLDAP directory serviceনা

Enable/Disable Flags Reference

ModuleEnable FlagsDisable Flags
কোর ilum-core.enabled=trueilum-core.enabled=false
ইউআই ilum-ui.enabled=trueilum-ui.enabled=false
livy-proxyilum-livy-proxy.legacy.enabled=trueilum-livy-proxy.legacy.enabled=false
mongodbmongodb.enabled=truemongodb.enabled=false
কাফকা kafka.enabled=true, ilum-core.communication.type=kafkakafka.enabled=false, ilum-core.communication.type=grpc
postgresqlpostgresql.enabled=truepostgresql.enabled=false
clickhouseclickhouse.enabled=trueclickhouse.enabled=false
গিটিয়া gitea.enabled=truegitea.enabled=false
মিনিও minio.enabled=trueminio.enabled=false
জুপিটার ilum-jupyter.enabled=trueilum-jupyter.enabled=false
jupyterhubilum-jupyterhub.enabled=trueilum-jupyterhub.enabled=false
zeppelinilum-zeppelin.enabled=trueilum-zeppelin.enabled=false
এসকিউএল ilum-sql.enabled=true, ilum-core.sql.enabled=trueilum-sql.enabled=false, ilum-core.sql.enabled=false
তৃণমূল trino.enabled=true, ilum-sql.config.trino.enabled=truetrino.enabled=false, ilum-sql.config.trino.enabled=false
hive-metastoreilum-hive-metastore.enabled=true, ilum-core.metastore.enabled=true, ilum-core.metastore.type=hiveilum-hive-metastore.enabled=false, ilum-core.metastore.enabled=false, ilum-core.metastore.type=hive
nessienessie.enabled=true, ilum-core.metastore.enabled=true, ilum-core.metastore.type=nessienessie.enabled=false, ilum-core.metastore.enabled=false, ilum-core.metastore.type=hive
unity-catalogilum-unity-catalog.enabled=true, ilum-core.metastore.enabled=true, ilum-core.metastore.type=unityilum-unity-catalog.enabled=false, ilum-core.metastore.enabled=false, ilum-core.metastore.type=hive
airflowairflow.enabled=trueairflow.enabled=false
kestrakestra.enabled=truekestra.enabled=false
n8n ilum-n8n.enabled=trueilum-n8n.enabled=false
nifinifi.enabled=truenifi.enabled=false
mageaimageai.enabled=truemageai.enabled=false
supersetsuperset.enabled=truesuperset.enabled=false
streamlitstreamlit.enabled=truestreamlit.enabled=false
marquezglobal.lineage.enabled=trueglobal.lineage.enabled=false
এমএলফ্লো mlflow.enabled=truemlflow.enabled=false
langfuselangfuse.enabled=truelangfuse.enabled=false
নজরদারি kube-prometheus-stack.enabled=truekube-prometheus-stack.enabled=false
lokiglobal.logAggregation.enabled=true, global.logAggregation.loki.enabled=true, global.logAggregation.promtail.enabled=trueglobal.logAggregation.enabled=false, global.logAggregation.loki.enabled=false, global.logAggregation.promtail.enabled=false
graphitegraphite-exporter.graphite.enabled=true, ilum-core.job.graphite.enabled=truegraphite-exporter.graphite.enabled=false, ilum-core.job.graphite.enabled=false
এপিআই ilum-api.enabled=trueilum-api.enabled=false
Openldap openldap.enabled=trueopenldap.enabled=false

23. Doctor Checks

Check NamePhaseWhat it verifies
helm1 - BinariesHelm is on PATH and version >= 3.12
কুবেক্টল 1 - Binarieskubectl is on PATH and version >= 1.28
docker1 - BinariesDocker is on PATH and version >= 24.0
helm-repo2 - Helm repoইলুম chart repository (charts.ilum.cloud) is configured
ক্লাস্টার 3 - ConnectivityKubernetes cluster is reachable via current kubeconfig
নামস্থান 4 - Cluster-dependentThe target namespace exists on the cluster
pods4 - Cluster-dependentAll pods in the namespace are healthy; detects CrashLoopBackOff (>5 restarts)
pvcs4 - Cluster-dependentAll PersistentVolumeClaims are Bound; detects Pending PVCs
rbac4 - Cluster-dependentRequired RBAC permissions are granted to the current user
release4 - Cluster-dependentHelm release exists and is not in stuck (pending-*) or failedঅবস্থা
compatibility4 - Cluster-dependentKubernetes server version >= 1.28
service-endpoints4 - Cluster-dependentService endpoints have ready addresses
health-endpoints4 - Cluster-dependentHealth check endpoints respond for core, airflow, superset, minio

24. Error Reference

শ্রেণী ParentWhen RaisedTypical Suggestion
IlumErrorExceptionBase exception for all Ilum CLI errors.
PrerequisiteErrorIlumErrorA required tool or resource (helm, kubectl, docker) is missing.Install the missing tool.
ClusterConnectionErrorIlumErrorCannot connect to the Kubernetes cluster.Check kubeconfig: kubectl cluster-info.
HelmErrorIlumErrorA Helm operation failed.Check helm output for details.
HelmTimeoutErrorHelmErrorA Helm operation timed out.Increase --timeout or check cluster resources.
HelmReleaseErrorHelmErrorA Helm release is in a bad state (e.g. pending-install, pending-upgrade). ব্যবহার ilum upgrade --force-rollback to recover.
ConfigErrorIlumErrorConfiguration is missing or invalid.Run ilum config initবা ilum init.
ValuesErrorIlumErrorProblem with Helm values files.Validate your values YAML syntax.
ModuleErrorIlumErrorModule dependency or conflict error.Check ilum module show <name> for dependencies.
ReleaseExistsErrorIlumErrorA Helm release already exists when a fresh install was requested.ব্যবহার ilum upgrade instead, or ilum uninstall first.
ReleaseNotFoundErrorIlumErrorA Helm release was expected but does not exist.ব্যবহার ilum install to create the release, or ilum connect to attach to an existing one.

25. Exit Codes

কোড Meaning
0 Success.
1 Error (any IlumError, invalid input, failed check, or failed Helm operation).
130Interrupted by user (Ctrl+C during ilum init).

ilum uninstall exits with code 0 even when the release does not exist (idempotent behavior).