kubernetes-the-hard-way/docs/02-client-tools.md

103 lines
2.2 KiB
Markdown
Raw Normal View History

2017-08-29 00:19:25 +03:00
# Installing the Client Tools
2022-02-01 01:09:51 +03:00
In this lab you will install the command line utilities required to complete this tutorial: [step](https://github.com/smallstep/cli), and [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl).
2017-08-29 00:19:25 +03:00
## Install CFSSL
2022-02-01 01:09:51 +03:00
The `step` command line utility will be used to provision a [PKI Infrastructure](https://en.wikipedia.org/wiki/Public_key_infrastructure) and generate TLS certificates.
2017-08-29 00:19:25 +03:00
2022-02-01 01:09:51 +03:00
Download and install `step`:
2017-08-29 00:19:25 +03:00
### OS X
2022-02-01 01:09:51 +03:00
For Intel chips:
2017-08-29 00:19:25 +03:00
```
2022-02-01 01:09:51 +03:00
curl -L https://dl.step.sm/gh-release/cli/gh-release-header/v0.18.0/step_darwin_0.18.0_amd64.tar.gz | tar xz
sudo mv step_0.18.0/bin/step /usr/local/bin/
2017-08-29 00:19:25 +03:00
```
2022-02-01 01:09:51 +03:00
For Apple Silicon:
```
2022-02-01 01:09:51 +03:00
curl -L https://dl.step.sm/gh-release/cli/gh-release-header/v0.18.0/step_darwin_0.18.0_arm64.tar.gz | tar xz
sudo mv step_0.18.0/bin/step /usr/local/bin/
```
2022-02-01 01:09:51 +03:00
Or, if you'd like to use [Homebrew](https://brew.sh):
2017-08-29 00:19:25 +03:00
```
2022-02-01 01:09:51 +03:00
brew install step
2017-08-29 00:19:25 +03:00
```
2022-02-01 01:09:51 +03:00
### Linux
2017-08-29 00:19:25 +03:00
```
2022-02-01 01:09:51 +03:00
curl -L https://dl.step.sm/gh-release/cli/gh-release-header/v0.18.0/step_linux_0.18.0_amd64.tar.gz
sudo mv step_0.18.0/bin/step /usr/local/bin/
2017-08-29 00:19:25 +03:00
```
### Verification
2022-02-01 01:09:51 +03:00
Verify `step` version 0.18.0 or higher is installed:
2017-08-29 00:19:25 +03:00
```
2022-02-01 01:09:51 +03:00
step version
2017-08-29 00:19:25 +03:00
```
> output
```
2022-02-01 01:09:51 +03:00
Smallstep CLI/0.18.0 (linux/amd64)
Release Date: 2021-11-17 21:15 UTC
2019-09-14 21:41:56 +03:00
```
2017-08-29 00:19:25 +03:00
## Install kubectl
The `kubectl` command line utility is used to interact with the Kubernetes API Server. Download and install `kubectl` from the official release binaries:
### OS X
```
2021-05-02 08:33:46 +03:00
curl -o kubectl https://storage.googleapis.com/kubernetes-release/release/v1.21.0/bin/darwin/amd64/kubectl
2017-08-29 00:19:25 +03:00
```
```
chmod +x kubectl
```
```
sudo mv kubectl /usr/local/bin/
```
### Linux
```
2021-05-02 08:33:46 +03:00
wget https://storage.googleapis.com/kubernetes-release/release/v1.21.0/bin/linux/amd64/kubectl
2017-08-29 00:19:25 +03:00
```
```
chmod +x kubectl
```
```
sudo mv kubectl /usr/local/bin/
```
### Verification
2021-05-02 08:33:46 +03:00
Verify `kubectl` version 1.21.0 or higher is installed:
2017-08-29 00:19:25 +03:00
```
kubectl version --client
```
> output
```
2021-05-02 08:33:46 +03:00
Client Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.0", GitCommit:"cb303e613a121a29364f75cc67d3d580833a7479", GitTreeState:"clean", BuildDate:"2021-04-08T16:31:21Z", GoVersion:"go1.16.1", Compiler:"gc", Platform:"linux/amd64"}
2017-08-29 00:19:25 +03:00
```
Next: [Provisioning Compute Resources](03-compute-resources.md)