Kubectl - гэта эфектыўны інструмент каманднага радка Kubernetes і для Kubernetes, карыстаемся мы ім штодня. У яго шмат функцый, і з ім можна разгортваць сістэму Kubernetes ці яго базавыя фічы.
Вось вам карысныя парады, як хутчэй кадзіць і дэплоіць у Kubernetes.
Аўтазапаўненне kubectl
Kubectl вы будзеце выкарыстоўваць увесь час, так што з аўтазапаўненнем не прыйдзецца лішні раз стукаць па клавішах.
Спачатку ўсталюеце пакет bash-completion (па змаўчанні ён не ўсталяваны).
- Linux
## 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
Як відаць у выходных дадзеных brew install (частка Caveats), трэба дадаць наступныя радкі ў файл ~/.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-aliases на Github. Ахмет Алп Балкан (Ahmet Alp Balkan) (
Толькі не ўсталёўвайце аліяс kubectl для пачаткоўца, інакш ён у жыцці не разбярэцца са ўсімі камандамі. Няхай спачатку папрактыкуецца тыдзень-другі.
Kubernetes + Helm-чарты
«
Калі ў вас заводзіцца куча прыкладанняў Kubernetes, іх разгортванне і абнаўленне ператвараецца ў муку, асабліва калі трэба абнавіць тэг docker-выявы да разгортвання. Helm-чарты ствараюць пакеты, з якімі можна вызначаць, усталёўваць і абнаўляць прыкладанні і канфігурацыю, калі яны запускаюцца на кластары сістэмай рэлізаў.
Пакет Kubernetes у Helm завецца чартам і ўтрымоўвае шмат інфармацыі, па якой ствараецца асобнік Kubernetes.
Канфігурацыя вельмі карысная: яна змяшчае дынамічныя звесткі аб наладзе чарта. Рэліз - гэта існуючы асобнік у кластары ў спалучэнні з пэўнай канфігурацыяй.
У адрозненне ад apt або yum, Helm-чарты (гэта значыць пакеты) збіраюцца па-над Kubernetes і выкарыстоўваюць усе перавагі яго кластарнай архітэктуры, і самае класнае з іх – магчымасць улічваць маштабаванасць з самага пачатку. Чарты ўсіх выяў, якія выкарыстоўвае Helm, захоўваюцца ў рэестры пад назовам Helm Workspace. Пасля разгортвання вашыя каманды DevOps змогуць у два рахункі знаходзіць чарты і дадаваць іх у свае праекты.
Helm можна ўсталяваць іншымі спосабамі:
- Snap / Linux:
sudo snap install helm --classic
- Homebrew / macOS :
brew install kubernetes-helm
- Скрыпт:
curl -L https://git.io/get_helm.sh | bash
- Cпасылка:
- Ініцыялізаваць Helm і ўсталяваць Tiller у кластары:
helm init --history-max 200
- Усталяваць прыклад чарта:
helm repo update
helm install --name releasemysql stable/mysql
Гэтыя каманды рэлізуюць чарт stable/mysql, а рэліз завецца releasemysql.
Праверце рэліз helm з дапамогай helm list.
- Нарэшце, рэліз можна выдаліць:
helm delete --purge releasemysql
Выконвайце гэтым парад, і праца з Kubernetes пойдзе больш жыва. Які вызваліўся час прысвяціце галоўнай мэты сваіх прыкладанняў Kubernetes у кластары. Калі ёсць пытанні аб Kubernetes або Helm,
Крыніца: habr.com