Skip to main content

Deploy a cluster

This how-to covers the deploy-and-verify steps shared across all NIC-managed providers: validating your config, provisioning with nic deploy, retrieving a kubeconfig, and confirming the cluster is healthy. For how nic provisions a cluster, see NKP architecture.

note

These steps are the same across all providers. For prerequisites, configuration, and cost notes specific to your environment, see your provider's page.

Configuration

Download a starter config from your provider's page. For the full schema, see the NIC configuration reference.

Deploy

From the directory containing your config file and .env:

# Quick syntax and shape check; no provider API calls.
nic validate -f <config-file>

# Validates config and credentials; no resources are created.
nic deploy -f <config-file> --dry-run

# Actually provision.
nic deploy -f <config-file>

If you need to extend the default timeout (large clusters, slow network), pass --timeout 1h.

Retrieve the kubeconfig

nic deploy does not set your kubectl context. Generate a kubeconfig for the new cluster and point kubectl at it:

# Write the kubeconfig to a file (omit -o to print to stdout).
nic kubeconfig -f <config-file> -o kubeconfig.yaml

export KUBECONFIG=$(pwd)/kubeconfig.yaml

Verify

note

The steps below use kubectl. Install it if you don't have it.

Check that the cluster is responsive:

kubectl get nodes
kubectl get pods -A

Then check the foundational ArgoCD applications are syncing:

kubectl get applications -n argocd

All ArgoCD applications should reach Healthy within a few minutes (some may briefly show Progressing or OutOfSync — this is normal).

tip

For an interactive view of all cluster resources (especially handy while watching ArgoCD apps sync), install k9s and run it after setting KUBECONFIG.