Съвети и трикове за Kubernetes: как да повишите производителността

Съвети и трикове за Kubernetes: как да повишите производителността

Kubectl е ефективен инструмент за команден ред на 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) (https://twitter.com/ahmetb) знае много за тях, научете повече за неговите алиаси на github

Съвети и трикове за Kubernetes: как да повишите производителността

Само не задавайте алиас за kubectl на начинаещ, иначе той никога няма да разбере всички команди. Нека първо да поработи в продължение на седмица-две.

Kubernetes + Helm-чартове

«Helm е най-добрият начин да намирате, разпространявате и използвате софтуер, разработен за Kubernetes.

Когато имате много приложения в Kubernetes, разгръщането и обновяването им се превръща в мъка, особено ако е необходимо да се обнови тагът на docker-образа преди разгръщането. Helm-чартовете създават пакети, с които можете да определяте, инсталирате и обновявате приложения и конфигурации, когато те се стартират на клъстера чрез системата за релизи.

Съвети и трикове за Kubernetes: как да повишите производителността

Пакетът 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

  • Файл:

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

  • Инициализирайте 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 или Helm, пишете ни.

Източник: habr.com

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster