- Requirements
- Minikube nano-HowTo
- Preparing Helm
- Starting dCache
- Accessing admin interface with SSH
- Accessing with from client host
- Exposing admin pages and frontend
- Access to kubernetes cluster (or local minikube installation). All examples below should work with both, unless noted otherwise.
- Kubernetes cli client
- Helm cli client
Download the latest version of minikube:
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube
minikube config set rootless true
minikube start --driver=podman --container-runtime=containerd
Install helm as described in official docs and add helm repositories:
helm repo add bitnami https://charts.bitnami.com/bitnami
helm repo add dcache https://gitlab.desy.de/api/v4/projects/7648/packages/helm/test
helm repo update
To start dCache in kubernetes two steps are required:
- start required external components
- start dcache
It's recommended to run dCache instance in a dedicated kubernetes namespace, for example, dcache-test:
kubectl create namespace dcache-test
kubectl config set-context --current --namespace=dcache-test
All following commands assume that the namespace is set. Otherwise -n other-namespace
flag should be passed to all helm and kubeclt commands.
Then start required infrastructure (zookeeper, postgresql, kafka)
helm install --wait --set auth.username=dcache --set auth.password=let-me-in --set auth.database=chimera chimera bitnami/postgresql
helm install --wait cells bitnami/zookeeper
helm install --wait --set externalZookeeper.servers=cells-zookeeper --set kraft.enabled=false billing bitnami/kafka --version 23.0.7
Then start dCache
helm install --wait --set image.tag=9.2.1 store dcache/dcache
All running helm charts can be listed with:
helm list
kubectl run -ti --rm --image=kroniak/ssh-client admin -- ssh -p 22224 admin@store-door-svc
Starting a client host and attach to it.
kubectl run --image=almalinux:9 wn -- sleep inf
kubectl -ti exec wn -- /bin/bash
kubectl -ti exec wn -- curl -v -k -X HEAD https://store-door-svc:8083/
(For minikube users)
kubectl expose pod store-dcache-door-0 --type=NodePort --port=2288 --name="web-admin"
kubectl expose pod store-dcache-door-0 --type=NodePort --port=3880 --name="frontend"
minikube service web-admin -n dcache-test