Set Up Datum Tools
The Datum control plane is a collection of multiple projects developed with Kubernetes control plane technology, most of which can be installed into native Kubernetes clusters.
As a result, you will leverage common Kubernetes tooling such as kubectl to interact with Datum.
Install Tools
Section titled “Install Tools”datumctl
Section titled “datumctl”Install datumctl with the Homebrew package manager on macOS or Linux:
brew install datum-cloud/tap/datumctl
Install manually with curl on Linux or macOS
export OS=$(uname -s)export ARCH=$(uname -m)
curl -Lo ./datumctl.tar.gz https://github.com/datum-cloud/datumctl/releases/latest/download/datumctl_${OS}_${ARCH}.tar.gz
# Extract and install the datumctl binarytar zxvf datumctl.tar.gz datumctlchmod +x datumctlmkdir -p ~/.local/binmv ./datumctl ~/.local/bin/datumctl# and then append (or prepend) ~/.local/bin to $PATH
Install via Go
go install go.datum.net/datumctl@latest# Ensure that $GOPATH/bin is in your PATHexport PATH=$PATH:$(go env GOPATH)/bin
Install datumctl on Windows using PowerShell
Invoke-WebRequest -Uri "https://github.com/datum-cloud/datumctl/releases/latest/download/datumctl_Windows_x86_64.zip" -OutFile "datumctl.zip"Expand-Archive -Path "datumctl.zip" -DestinationPath "datumctl"
Move the datumctl.exe
file to a directory in your PATH
or simply run it from the current directory:
.\datumctl\datumctl.exe
kubectl
Section titled “kubectl”Refer to the official Kubernetes documentation for installation instructions, making sure to skip the Verify kubectl configuration section in the guide you choose.
Later in this guide, you will configure a kubeconfig file as required to interact with Datum via kubectl.
For convenience, homebrew instructions are below:
Install kubectl with the Homebrew package manager on macOS or Linux:
brew install kubectl
Configure Tools
Section titled “Configure Tools”Authentication
Section titled “Authentication”datumctl auth login
- Run the command to open a browser window and sign in with your organization’s identity provider.
- When Authentication successful appears, credentials are cached locally for subsequent datumctl and kubectl commands.
Add a kubeconfig context for your organization
Section titled “Add a kubeconfig context for your organization”Obtain your organization’s resource ID with datumctl by listing organizations that your user has access to:
datumctl get organizations
The output is similar to:
DISPLAY NAME RESOURCE IDPersonal Organization pp4zn7tiw5be3beygm2d6mbcfe
Create a kubeconfig context to access your organization’s resources by copying
the the RESOURCE ID
value and executing following command, replacing
RESOURCE_ID
with the value:
datumctl auth update-kubeconfig --organization RESOURCE_ID
The output is similar to:
Successfully updated kubeconfig at getting-started.kubeconfig
Verify kubectl configuration
Section titled “Verify kubectl configuration”Check that kubectl is properly configured by getting authorized user info:
kubectl auth whoami
The output is similar to:
ATTRIBUTE VALUEUsername datum@example.comGroups [system:authenticated]Extra: authentication.datum.net/datum-organization-uid [pp4zn7tiw5be3beygm2d6mbcfe]Extra: authentication.kubernetes.io/credential-id [JTI=01jgsr1m8fpb9cn0yrh05taa5v]