Minikube is a tool that quickly sets up a local Kubernetes cluster on macOS, Linux, and Windows. It’s a great solution for trying out Pachyderm locally.
Before You Start #
- You must have Homebrew installed.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
- You must have Docker Desktop installed with Kubernetes enabled.
- You must have Docker Desktop installed with Kubernetes enabled.
- You must have WSL enabled (
wsl --install
) and a Linux distribution installed; if Linux does not boot in your WSL terminal after downloading from the Microsoft store, see the manual installation guide.
Manual Step Summary:
- Open a Powershell terminal.
- Run each of the following:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
- Download the latest WSL2 Linux Kernel for x64 machines.
- Run each the following:
wsl --set-default-version 2
wsl --install -d Ubuntu
- Restart your machine.
- Start a WSL terminal and set up your first Ubuntu user.
- Update Ubuntu.
sudo apt update
sudo apt upgrade -y
- Install Homebrew in Ubuntu so you can complete the rest of this guide:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
All installation steps after this point must be run through the WSL terminal (Ubuntu) and not in Powershell.
You are now ready to continue to Step 1.
- You can optionally install Homebrew to easily install tools like Docker, Minikube, and Helm.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
- You must have Docker Desktop installed.
1. Install Docker #
brew install docker
See the official Docker getting started guide for the most up-to-date installation steps.
2. Install & Start Minikube #
Install #
brew install minikube
See the official Minikube getting started guide for the most up-to-date installation steps.
Start #
- Launch Docker Desktop.
- Start Minikube:
minikube start
3. Install Pachctl CLI #
brew tap pachyderm/tap && brew install pachyderm/tap/pachctl@2.8
curl -o /tmp/pachctl.deb -L https://github.com/pachyderm/pachyderm/releases/download/v2.8.7/pachctl_2.8.7_amd64.deb && sudo dpkg -i /tmp/pachctl.deb
AMD
curl -o /tmp/pachctl.tar.gz -L https://github.com/pachyderm/pachyderm/releases/download/v2.8.7/pachctl_2.8.7_linux_amd64.tar.gz && tar -xvf /tmp/pachctl.tar.gz -C /tmp && sudo cp /tmp/pachctl_2.8.7_linux_amd64/pachctl /usr/local/bin
ARM
curl -o /tmp/pachctl.tar.gz -L https://github.com/pachyderm/pachyderm/releases/download/v2.8.7/pachctl_2.8.7_linux_arm64.tar.gz && tar -xvf /tmp/pachctl.tar.gz -C /tmp && sudo cp /tmp/pachctl_2.8.7_linux_arm64/pachctl /usr/local/bin
4. Install & Configure Helm #
- Install Helm:
brew install helm
- Add the Pachyderm repo to Helm:
helm repo add pachyderm https://helm.pachyderm.com
helm repo update
- Install Pachyderm:
Are you using an Enterprise trial key? If so, you can set up Enterprise Pachyderm locally by storing your trial key in a This unlocks Enterprise features but also requires user authentication to access Console. A mock user is created by default to get you started, with the username: helm install pachyderm pachyderm/pachyderm --set deployTarget=LOCAL --set proxy.enabled=true --set proxy.service.type=LoadBalancer
license.txt
file and passing it into the following Helm command:helm install pachyderm pachyderm/pachyderm --set deployTarget=LOCAL --set proxy.enabled=true --set proxy.service.type=LoadBalancer --set pachd.enterpriseLicenseKey=$(cat license.txt) --set ingress.host=localhost
admin
and password: password
.
5. Verify Installation #
- Run the following command in a new terminal to check the status of your pods:
kubectl get po -A
NAMESPACE NAME READY STATUS RESTARTS AGE
default console-6b9bb8766d-f2gm4 1/1 Running 0 41m
default etcd-0 1/1 Running 0 41m
default pachd-76896d6b5d-kmfvw 1/1 Running 0 41m
default pachd-loki-0 1/1 Running 0 41m
default pachd-promtail-rm5ss 1/1 Running 0 41m
default pachyderm-kube-event-tail-b9b554fb6-dpcsr 1/1 Running 0 41m
default pg-bouncer-5c9494c678-z57qh 1/1 Running 0 41m
default postgres-0 1/1 Running 0 41m
kube-system coredns-6d4b75cb6d-jnl5f 1/1 Running 3 (42m ago) 97d
kube-system etcd-minikube 1/1 Running 4 (42m ago) 97d
kube-system kube-apiserver-minikube 1/1 Running 3 (42m ago) 97d
kube-system kube-controller-manager-minikube 1/1 Running 4 (42m ago) 97d
kube-system kube-proxy-bngzv 1/1 Running 3 (42m ago) 97d
kube-system kube-scheduler-minikube 1/1 Running 3 (42m ago) 97d
kube-system storage-provisioner 1/1 Running 5 (42m ago) 97d
kubernetes-dashboard dashboard-metrics-scraper-78dbd9dbf5-swttf 1/1 Running 3 (42m ago) 97d
kubernetes-dashboard kubernetes-dashboard-5fd5574d9f-c7ptx 1/1 Running 4 (42m ago) 97d
- Re-run this command after a few minutes if
pachd
is not ready.
6. Connect to Cluster #
- Run
minikube tunnel
to start a tunnel. - In a separate terminal, get the external IP address of the
pachyderm-proxy
service:kubectl get all
service/pachyderm-proxy LoadBalancer 10.110.148.228 127.0.0.1 80:32024/TCP
- Run the following command to connect to your cluster:
pachctl connect 127.0.0.1:80
Optionally open your browser and navigate to the Console UI.
You can check your Pachyderm version and connection to pachd
at any time with the following command:
pachctl version
COMPONENT VERSION
pachctl 2.8.7
pachd 2.8.7