Funnel on Kubernetes is in active development and may involve frequent updates
Quick Start¶
1. Deploying with Helm¶
helm repo add ohsu https://ohsu-comp-bio.github.io/helm-charts
helm repo update
helm upgrade --install ohsu funnel
Alternative: Deploying with kubectl ⚙️"¶
1. Create a Service:¶
Deploy it:
2. Create Funnel config files¶
Get the clusterIP:
export HOSTNAME=$(kubectl get services funnel --output=jsonpath='{.spec.clusterIP}')
sed -i "s|\${HOSTNAME}|${HOSTNAME}|g" funnel-worker.yaml
3. Create a ConfigMap¶
kubectl create configmap funnel-config --from-file=funnel-server.yaml --from-file=funnel-worker.yaml
4. Create a Service Account for Funnel¶
Define a Role and RoleBinding:
kubectl create serviceaccount funnel-sa --namespace default
kubectl apply -f role.yml
kubectl apply -f role_binding.yml
5. Create a Persistent Volume Claim¶
6. Create a Deployment¶
{{< /details >}}
2. Proxy the Service for local testing¶
Now the funnel server can be accessed as if it were running locally. This can be verified by listing all tasks, which will return an empty JSON list:
A task can then be submitted following the standard workflow: