Skip to content

Helm Installation

Deploy Jibril to Kubernetes using the Garnet Helm chart.

First Steps

Add Helm Repository

bash
helm repo add garnet https://helm.garnet.ai
helm repo update

Install

Standalone Mode

Deploy Jibril in standalone mode without Garnet API connection for testing, evaluation, or custom integrations:

bash
helm install jibril garnet/garnet \
  --namespace jibril-system \
  --create-namespace \
  --set standalone.enabled=true
To specify a particular Jibril version
bash
helm install jibril garnet/garnet \
  --namespace jibril-system \
  --create-namespace \
  --set standalone.enabled=true \
  --set standalone.jibrilVersion=v2.9.1

Garnet Mode

Deploy Jibril in Garnet mode with full Garnet API integration for centralized policy management:

bash
helm install jibril garnet/garnet \
  --namespace jibril-system \
  --create-namespace \
  --set garnet.token=YOUR_GARNET_API_TOKEN
Garnet API

Find more information about the Garnet API.

Configure the Helm Chart

Key Helm Chart Parameters

ParameterDescription
standalone.enabledEnable Jibril standalone mode
Default: false
standalone.jibrilVersionOverride Jibril version
Default: ""
garnet.urlGarnet API URL
Default: https://api.garnet.ai
garnet.tokenGarnet API token
Default: ""
cluster.nameName of the cluster
Default: garnet-cluster
jibril.image.repositoryRepository for Jibril image
Default: garnetlabs/jibril
jibril.image.tagTag for Jibril image
Default: v2.9.1
Resource Limits
bash
helm install jibril garnet/garnet \
  --namespace jibril-system \
  --create-namespace \
  --set standalone.enabled=true \
  --set jibril.resources.requests.memory=512Mi \
  --set jibril.resources.requests.cpu=200m \
  --set jibril.resources.limits.memory=1Gi \
  --set jibril.resources.limits.cpu=500m
Custom Registry
bash
helm install jibril garnet/garnet \
  --namespace jibril-system \
  --create-namespace \
  --set standalone.enabled=true \
  --set image.registry=my-registry.example.com/ \
  --set image.pullSecrets[0]=my-registry-secret

Custom Configuration (optional)

See Configuration for more details.
bash
helm install jibril garnet/garnet \
  --namespace jibril-system \
  --create-namespace \
  --set standalone.enabled=true \
  --set jibrilConfig.customConfig=true \
  --set-file jibrilConfig.configYaml=./config.yaml

Network Policy Support

Create a Network Policy file
yaml
# netpolicy.yaml
version: v1
policies:
  - name: block-malicious
    rules:
      - action: drop
        domains:
          - malicious.com
        ips:
          - 10.0.0.1
Deploy with Network Policy
bash
helm install jibril garnet/garnet \
  --namespace jibril-system \
  --create-namespace \
  --set standalone.enabled=true \
  --set networkPolicyConfig.enabled=true \
  --set-file networkPolicyConfig.policyYaml=./netpolicy.yaml

In order to use the network policy, make sure your configuration file includes the following features and events:

yaml
features:
  # Use netpolicy to detect suspicious behavior.
  - netpolicy
yaml
events:
  # Drop IP addresses that match the network policy.
  - dropip

Verify Deployment

Check the deployment
bash
# Check pods
kubectl get pods -n jibril-system

# Check logs
kubectl logs -n jibril-system daemonset/jibril-jibril

# Run helm tests
helm test jibril -n jibril-system
Pod Management Commands
bash
# Get detailed pod information
kubectl describe pod -n jibril-system -l app.kubernetes.io/name=jibril

# Check configuration
kubectl exec -n jibril-system daemonset/jibril-jibril -- cat /etc/jibril/config.yaml

# Check network policy (if enabled)
kubectl exec -n jibril-system daemonset/jibril-jibril -- cat /var/run/secrets/jibril/network-policy.yaml

Upgrading

Upgrade the Helm chart
bash
helm repo update

helm upgrade jibril garnet/garnet \
  --namespace jibril-system \
  --set standalone.enabled=true
Update the network policy

To update network policy:

bash
helm upgrade jibril garnet/garnet \
  --namespace jibril-system \
  --set standalone.enabled=true \
  --set networkPolicyConfig.enabled=true \
  --set-file networkPolicyConfig.policyYaml=./netpolicy.yaml

Pods will automatically restart to apply changes.

Uninstalling

bash
helm uninstall jibril -n jibril-system

Next Steps