Skip to main content
Every Andromeda cluster runs Kubernetes, including clusters that run Slurm. You fetch a kubeconfig for the cluster from the Platform API, and kubectl signs you in to the cluster’s Kubernetes API with your own Andromeda account.

Before you start

You need:
  • The clusters.kubernetes organization permission, clusters.kubernetes.admin for full control, or a Kubernetes resource grant naming this cluster or a namespace in it. See Permissions.
  • ORG_ID and CLUSTER_ID set as in the quickstart.
  • kubectl.
  • The kubelogin plugin, which adds kubectl oidc-login. Install it with Homebrew (brew install kubelogin) or krew (kubectl krew install oidc-login).
Check the plugin is installed:
If you are outside the owning organization, use the granted cluster ID and the owning organization ID supplied by the person sharing it; see Access to a shared cluster.

Fetch the kubeconfig

The kubeconfig holds no credentials, so you can keep it anywhere and share it with other members of your organization. Each person signs in as themselves. The cluster, context, and user in it are all named after the cluster ID.

Sign in

Run a kubectl command allowed by your access. Set NAMESPACE to a namespace your grant or organization permission covers, then list its pods:
The first time, kubectl oidc-login prints a URL and a code. Open the URL, sign in with your Andromeda account, and enter the code. The plugin caches the token, so later commands run without prompting until it expires.

What you can do

Resource grants use kubernetes.viewer, kubernetes.developer, or kubernetes.admin. They map to view, edit, and admin within a granted namespace; a whole-cluster kubernetes.admin grant maps to cluster-admin. A custom role can narrow these further. The kubeconfig itself gives no permissions, so with a namespace grant you may not be able to list nodes or other namespaces. If your grant has an expiry, the kubeconfig response includes it as accessExpiresAt. When the grant expires or is revoked, your access ends as the cluster applies the change, even if kubectl still holds a cached sign-in. On a Slurm cluster, Slurm and the components Andromeda manages also run in Kubernetes. Changing them with cluster-admin can break the cluster; use the Slurm configuration API to change Slurm.

Troubleshooting

Reference