Connect to the cluster
You’ll do this once. After that, kubectl just works.
1. Join the tailnet
Section titled “1. Join the tailnet”The cluster isn’t on the public internet — you reach it over Tailscale, a private mesh network.
-
Install Tailscale on your machine and sign in.
-
Accept the invite to the tailnet that you were sent.
-
Confirm you can see the cluster:
Terminal window tailscale status # you should be connectedping 100.73.243.2 # the cluster API server
2. Install the tools
Section titled “2. Install the tools”You need two things: kubectl (the Kubernetes CLI) and kubelogin (the plugin that handles the
Google login).
macOS (Homebrew):
brew install kubectl int128/kubelogin/kubeloginWindows (Scoop) or download the binaries:
scoop install kubectl# kubelogin: download from https://github.com/int128/kubelogin/releases,# rename the binary to kubectl-oidc_login.exe, and put it on your PATH.Linux:
# kubectl: https://kubernetes.io/docs/tasks/tools/# kubelogin via krew:kubectl krew install oidc-login3. Drop in your kubeconfig
Section titled “3. Drop in your kubeconfig”You were sent a kubeconfig file named something like dubcluster-<you>.yaml. Save it:
mkdir -p ~/.kubemv ~/Downloads/dubcluster-<you>.yaml ~/.kube/dubcluster.yaml4. Log in
Section titled “4. Log in”Run any kubectl command against the file. The first time, your browser opens for a Google login —
use the Google account you were onboarded with.
kubectl --kubeconfig ~/.kube/dubcluster.yaml get podsSuccess looks like:
No resources found in tenant-<you> namespace.That empty result is correct — your namespace is empty because you haven’t deployed anything yet. You’re connected.
Next: Deploy an app.