Setup - Linode
Setting up a Kubernetes Cluster with Linode (linode)
- 1.a Linode account
- 2.
linode-cli
and linode credentials configured - 3.
kubectl
LINUX/MAC is the preferred method of setup.
Windows should choose either:
- 1.Deploy a THORNode from a Linux VPS.
- 2.
You need to have pip (python) on your system.
pip install linode-cli --upgrade
Create a Linode API token for your account with read and write access from your profile page. The token string is only displayed once, so save it in a safe place.
Use the API token to grant linode-cli access to your Linode account. Pass in the token string when prompted by linode-cli.
linode-cli
To install the kubectl (Kubernetes CLI), follow these instructions or choose a package manager based on your operating system.
MacOS:
brew install kubernetes-cli
Windows:
choco install kubernetes-cli
To install the wget, follow these instructions or choose a package manager based on your operating system.
MacOS:
brew install wget
Windows:
choco install wget
Use the commands below to deploy a Kubernetes cluster.
You can run the make command that automates those command for you like this:
make linode
Or manually run each commands:
cd linode/
terraform init
terraform plan # to see the plan
terraform apply
Now that you've provisioned your Kubernetes cluster, you need to configure kubectl.
To configure authentication from the command line, use the following command, substituting the ID of your cluster.
# Store it - method #1
jq -r ".resources[].instances[].attributes.kubeconfig" linode/terraform.tfstate | base64 -D > ~/.kube/config-linode
# Store it - method #2
linode-cli lke kubeconfig-view <use_your_cluster_id> > ~/.kube/config-linode
# Merge it and set current context
KUBECONFIG=~/.kube/config:~/.kube/config-linode kubectl config view --flatten > ~/.kube/tmpcfg && mv -f ~/.kube/tmpcfg ~/.kube/config && kubectl config use-context $(kubectl config current-context --kubeconfig=~/.kube/config-linode)
# Or just view it - method #1
jq -r ".resources[].instances[].attributes.kubeconfig" linode/terraform.tfstate | base64 -D
# Or just view it - method #2
linode-cli lke kubeconfig-view <use_your_cluster_id>
Note: If the abovelinode-cli
command is broken you can download the file from the web dashboar for the respective cluster.
This replaces the existing configuration at ~/.kube/config.
Once done, you can check your cluster is responding correctly by running the command:
kubectl version
kubectl get nodes
To destroy and remove previously created resources, you can run the command below.
make destroy-linode
Or run the commands manually:
cd linode/
terraform destroy
Last modified 1yr ago