ื˜ื™ืคื™ื ื•ื˜ืจื™ืงื™ื ืฉืœ Kubernetes: ื›ื™ืฆื“ ืœื”ื’ื“ื™ืœ ืืช ื”ืคืจื•ื“ื•ืงื˜ื™ื‘ื™ื•ืช

ื˜ื™ืคื™ื ื•ื˜ืจื™ืงื™ื ืฉืœ Kubernetes: ื›ื™ืฆื“ ืœื”ื’ื“ื™ืœ ืืช ื”ืคืจื•ื“ื•ืงื˜ื™ื‘ื™ื•ืช

Kubectl ื”ื•ื ื›ืœื™ ืฉื•ืจืช ืคืงื•ื“ื” ืจื‘ ืขื•ืฆืžื” ืขื‘ื•ืจ Kubernetes ื•ืขื‘ื•ืจ Kubernetes, ื•ืื ื—ื ื• ืžืฉืชืžืฉื™ื ื‘ื• ื›ืœ ื™ื•ื. ื™ืฉ ืœื• ืชื›ื•ื ื•ืช ืจื‘ื•ืช ื•ืืชื” ื™ื›ื•ืœ ืœืคืจื•ืก ืืช ืžืขืจื›ืช Kubernetes ืื• ืืช ื”ืชื›ื•ื ื•ืช ื”ื‘ืกื™ืกื™ื•ืช ืฉืœื” ืื™ืชื”.

ื”ื ื” ื›ืžื” ืขืฆื•ืช ืžื•ืขื™ืœื•ืช ื›ื™ืฆื“ ืœืงื•ื“ ื•ืœืคืจื•ืก ืžื”ืจ ื™ื•ืชืจ ื‘-Kubernetes.

ื”ืฉืœืžื” ืื•ื˜ื•ืžื˜ื™ืช ืฉืœ kubectl

ืืชื” ืชืฉืชืžืฉ ื‘-Kubectl ื›ืœ ื”ื–ืžืŸ, ื›ืš ืฉืขื ื”ืฉืœืžื” ืื•ื˜ื•ืžื˜ื™ืช ืœื ืชืฆื˜ืจืš ืœืœื—ื•ืฅ ืฉื•ื‘ ืขืœ ื”ืžืงืฉื™ื.

ืจืืฉื™ืช ื”ืชืงืŸ ืืช ื—ื‘ื™ืœืช bash-completion (ื”ื™ื ืื™ื ื” ืžื•ืชืงื ืช ื›ื‘ืจื™ืจืช ืžื—ื“ืœ).

  • ืœื™ื ื•ืงืก

## Install
apt-get install bash-completion
## Bash
echo 'source <(kubectl completion bash)' >>~/.bashrc
## Zsh
source <(kubectl completion zsh)

  • MacOS

## Install
brew install bash-completion@2

ื›ืคื™ ืฉืืชื” ื™ื›ื•ืœ ืœืจืื•ืช ื‘ืคืœื˜ ื”ืชืงื ืช ื—ืœื™ื˜ื” (ืกืขื™ืฃ ืื–ื”ืจื•ืช), ืขืœื™ืš ืœื”ื•ืกื™ืฃ ืืช ื”ืฉื•ืจื•ืช ื”ื‘ืื•ืช ืœืงื•ื‘ืฅ ~/.bashrc ะธะปะธ ~/.bash_profile:

export BASH_COMPLETION_COMPAT_DIR=/usr/local/etc/bash_completion.d
[[ -r /usr/local/etc/profile.d/bash_completion.sh ]] && . /usr/local/etc/profile.d/bash_completion.sh

ื›ื™ื ื•ื™ื™ื ืฉืœ kubectl

ื›ืฉืืชื” ืžืชื—ื™ืœ ืœื”ืฉืชืžืฉ ื‘-kubectl, ื”ื“ื‘ืจ ื”ื˜ื•ื‘ ื‘ื™ื•ืชืจ ื”ื•ื ืฉื™ืฉ ื”ืจื‘ื” ื›ื™ื ื•ื™ื™ื, ื”ื—ืœ ืžื–ื”:

alias k='kubectl'

ื”ื•ืกืคื ื• ืืช ื–ื” - ืื– ืชืกืชื›ืœ ืขืœ kubectl-ื›ื™ื ื•ื™ื™ื ื‘-Github. ืื—ืžื˜ ืืœืค ื‘ืœืงืŸ (https://twitter.com/ahmetb) ื™ื•ื“ืข ืขืœื™ื”ื ื”ืจื‘ื”, ื’ืœื” ืขื•ื“ ืขืœ ื”ื›ื™ื ื•ื™ื™ื ืฉืœื• ื‘-github

ื˜ื™ืคื™ื ื•ื˜ืจื™ืงื™ื ืฉืœ Kubernetes: ื›ื™ืฆื“ ืœื”ื’ื“ื™ืœ ืืช ื”ืคืจื•ื“ื•ืงื˜ื™ื‘ื™ื•ืช

ืจืง ืืœ ืชื’ื“ื™ืจ ืืช ื”ื›ื™ื ื•ื™ kubectl ืœืžืชื—ื™ืœื™ื, ืื—ืจืช ื”ื•ื ืœืขื•ืœื ืœื ื™ื‘ื™ืŸ ืืช ื›ืœ ื”ืคืงื•ื“ื•ืช. ืชืŸ ืœื• ืœื”ืชืืžืŸ ืงื•ื“ื ืฉื‘ื•ืข ืื• ืฉื‘ื•ืขื™ื™ื.

ืชืจืฉื™ืžื™ Kubernetes + Helm

ยซื”ื’ื” ื”ื™ื ื”ื“ืจืš ื”ื˜ื•ื‘ื” ื‘ื™ื•ืชืจ ืœื’ืœื•ืช, ืœื”ืคื™ืฅ ื•ืœื”ืฉืชืžืฉ ื‘ืชื•ื›ื ื” ืฉื ื‘ื ืชื” ืขื‘ื•ืจ Kubernetes."

ื›ืืฉืจ ื™ืฉ ืœืš ื—ื‘ื•ืจื” ืฉืœ ื™ื™ืฉื•ืžื™ Kubernetes ืคื•ืขืœื™ื, ื”ืคืจื™ืกื” ื•ื”ืขื“ื›ื•ืŸ ืฉืœื”ื ื”ื•ืคื›ื™ื ืœื›ืื‘, ื‘ืžื™ื•ื—ื“ ืื ืืชื” ืฆืจื™ืš ืœืขื“ื›ืŸ ืืช ืชื’ ื”ืชืžื•ื ื” ืฉืœ docker ืœืคื ื™ ื”ืคืจื™ืกื”. ืชืจืฉื™ืžื™ ื”ื’ื” ื™ื•ืฆืจื™ื ื—ื‘ื™ืœื•ืช ืฉื‘ืขื–ืจืชืŸ ื ื™ืชืŸ ืœื”ื’ื“ื™ืจ, ืœื”ืชืงื™ืŸ ื•ืœืขื“ื›ืŸ ื™ื™ืฉื•ืžื™ื ื•ืชืฆื•ืจื” ื›ืืฉืจ ื”ื ืžื•ืคืขืœื™ื ื‘ืืฉื›ื•ืœ ืขืœ ื™ื“ื™ ืžืขืจื›ืช ื”ืฉื—ืจื•ืจ.

ื˜ื™ืคื™ื ื•ื˜ืจื™ืงื™ื ืฉืœ Kubernetes: ื›ื™ืฆื“ ืœื”ื’ื“ื™ืœ ืืช ื”ืคืจื•ื“ื•ืงื˜ื™ื‘ื™ื•ืช

ื—ื‘ื™ืœืช Kubernetes ื‘ื”ืœื ื ืงืจืืช ืชืจืฉื™ื ื•ืžื›ื™ืœื” ืžื™ื“ืข ืจื‘ ืฉื™ื•ืฆืจ ืžื•ืคืข Kubernetes.

ื”ืชืฆื•ืจื” ืฉื™ืžื•ืฉื™ืช ืžืื•ื“: ื”ื™ื ืžื›ื™ืœื” ืžื™ื“ืข ื“ื™ื ืžื™ ืขืœ ืื•ืคืŸ ืชืฆื•ืจืช ื”ืชืจืฉื™ื. ืžื”ื“ื•ืจื” ื”ื™ื ืžื•ืคืข ืงื™ื™ื ื‘ืืฉื›ื•ืœ ื‘ืฉื™ืœื•ื‘ ืขื ืชืฆื•ืจื” ืกืคืฆื™ืคื™ืช.

ื‘ื ื™ื’ื•ื“ ืœ-apt ืื• yum, ืชืจืฉื™ืžื™ Helm (ื›ืœื•ืžืจ ื—ื‘ื™ืœื•ืช) ื‘ื ื•ื™ื™ื ืขืœ ื’ื‘ื™ Kubernetes ื•ืžื ืฆืœื™ื ืืช ืžืœื•ื ื”ื™ืชืจื•ื ื•ืช ืฉืœ ืืจื›ื™ื˜ืงื˜ื•ืจืช ื”ืืฉื›ื•ืœื•ืช ืฉืœื•, ื•ื”ื“ื‘ืจ ื”ื›ื™ ืžื’ื ื™ื‘ ื”ื•ื ื”ื™ื›ื•ืœืช ืœืงื—ืช ื‘ื—ืฉื‘ื•ืŸ ืืช ื”ืžื“ืจื’ื™ื•ืช ื›ื‘ืจ ืžื”ื”ืชื—ืœื”. ืชืจืฉื™ืžื™ื ืฉืœ ื›ืœ ื”ืชืžื•ื ื•ืช ืฉื‘ื”ืŸ ืžืฉืชืžืฉ Helm ืžืื•ื—ืกื ื™ื ื‘ืจื™ืฉื•ื ืฉื ืงืจื Helm Workspace. ืœืื—ืจ ื”ืคืจื™ืกื”, ืฆื•ื•ืชื™ ื”-DevOps ืฉืœืš ื™ื•ื›ืœื• ืœืžืฆื•ื ืชืจืฉื™ืžื™ื ื•ืœื”ื•ืกื™ืฃ ืื•ืชื ืœืคืจื•ื™ืงื˜ื™ื ืฉืœื”ื ืชื•ืš ื–ืžืŸ ืงืฆืจ.

ื ื™ืชืŸ ืœื”ืชืงื™ืŸ ืืช ื”ื”ื’ื” ื‘ื“ืจื›ื™ื ืื—ืจื•ืช:

  • Snap/Linux:

sudo snap install helm --classic

  • Homebrew/macOS:

brew install kubernetes-helm

  • ืชึทืกืจึดื™ื˜:

curl -L https://git.io/get_helm.sh | bash

  • ืงื•ื‘ืฅ:

https://github.com/helm/helm/releases

  • ืืชื—ืœ ืืช Helm ื•ื”ืชืงืŸ ืืช Tiller ื‘ืืฉื›ื•ืœ:

helm init --history-max 200

  • ื”ืชืงืŸ ืชืจืฉื™ื ืœื“ื•ื’ืžื”:

helm repo update
helm install --name releasemysql stable/mysql

ืคืงื•ื“ื•ืช ืืœื• ืžืฉื—ืจืจื•ืช ืืช ืชืจืฉื™ื ื”ื™ืฆื™ื‘/mysql, ื•ื”ืฉื—ืจื•ืจ ื ืงืจื releasemysql.
ื‘ื“ื•ืง ืืช ืฉื—ืจื•ืจ ื”ื”ื’ื” ื‘ืืžืฆืขื•ืช ืจืฉื™ืžืช ื”ื”ื’ื”.

  • ืœื‘ืกื•ืฃ, ื ื™ืชืŸ ืœืžื—ื•ืง ืืช ื”ืžื”ื“ื•ืจื”:

helm delete --purge releasemysql

ืขืงื•ื‘ ืื—ืจ ื”ืขืฆื•ืช ื”ืืœื” ื•ื—ื•ื•ื™ื™ืช Kubernetes ืฉืœืš ืชื”ื™ื” ื—ืœืงื” ื™ื•ืชืจ. ื”ืงื“ืฉ ืืช ื–ืžื ืš ื”ืคื ื•ื™ ืœืžื˜ืจื” ื”ืขื™ืงืจื™ืช ืฉืœ ื™ื™ืฉื•ืžื™ Kubernetes ืฉืœืš ื‘ืืฉื›ื•ืœ. ืื ื™ืฉ ืœืš ืฉืืœื•ืช ืœื’ื‘ื™ Kubernetes ืื• Helm, ื›ืชื•ื‘ ืœื ื•.

ืžืงื•ืจ: www.habr.com

ื”ื•ืกืคืช ืชื’ื•ื‘ื”