Рубрики
Uncategorized

Топ -20 полезных инструментов K8S

Мониторинг K9S K9S — это пользовательский интерфейс на основе терминала для взаимодействия с вашим Kubernetes cl … Помечено Kubernetes, WebDev, производительность, DevOps.

Хорошие инструменты для повышения производительности (серия 12 деталей)

Мониторинг

K9s

K9S — это пользовательский интерфейс на основе терминала для взаимодействия с вашими кластерами Kubernetes. Цель этого проекта — облегчить навигацию, наблюдать и управлять развернутыми приложениями в дикой природе. K9s постоянно наблюдает за Kubernetes за изменениями и предлагает последующие команды взаимодействовать с вашими наблюдаемыми ресурсами.

Ссылка: https://github.com/derailed/k9s

Попай

Popeye — это утилита, которая сканирует Live Kubernetes Cluster и сообщает о потенциальных проблемах с развернутыми ресурсами и конфигурациями. Он продезинфицирует ваш кластер, основываясь на том, что развернуто, а не то, что сидит на диске.

Ссылка: https://github.com/derailed/popeye

Менеджер пакетов

Крю

Крю — это инструмент, который позволяет легко использовать плагины kubectl. Крю помогает вам открыть плагины, установить и управлять ими на вашей машине. Это похоже на такие инструменты, как APT, DNF или Brew. Сегодня на Krew доступны более 100 плагинов Kubectl.

Ссылка: https://github.com/kubernetes-sigs/krew

Плагины

Kubectx + Kubens

Kubectx помогает переключаться между кластерами взад и вперед:

Kubens помогает вам плавно переключаться между пространствами имен Kubernetes:

Ссылка: https://github.com/ahmetb/kubectx

Кубеспи

Kubespy — это небольшой инструмент, который позволяет легко наблюдать за тем, как изменяются ресурсы Kubernetes в режиме реального времени, полученная от работы, которую мы проделали, чтобы сделать развертывание Kubernetes предсказуемым в CLI Пулуми. Запустите Kubespy в любой момент времени, и он будет постоянно наблюдать и сообщать информацию о ресурсе Kubernetes, пока не убьете его.

Ссылка: https://github.com/pulumi/kubespy

Kube-Score

Kube-Score-это инструмент, который выполняет анализ статического кода ваших определений объектов Kubernetes.

Ссылка: https://github.com/zegl/kube-score

Kubectl-Doctor

Этот плагин вдохновлен Бревным Доктором:) Он сканирует ваш в настоящее время целевой кластер K8S, чтобы увидеть, есть ли аномалии или полезные пункты действия, которые он может сообщить вам.

Этот плагин не меняет какого -либо состояния или конфигурации, он просто сканирует и собирает информацию, чем отчеты обратно аномалии в формате YAML.

Ссылка: https://github.com/emirozer/kubectl-doctor

Ктуннел

Ktunnel — это инструмент CLI, который устанавливает обратный туннель между кластером Kubernetes и вашей локальной машиной. Это позволяет вам разоблачить свою машину в качестве услуги в кластере или выставлять ее на определенное развертывание

Ссылка: https://github.com/omrikiei/ktunnel

Kubectl-Tree

Плагин Kubectl для изучения отношений владельца между объектами Kubernetes с помощью версий владельцев.

Ссылка: https://github.com/ahmetb/kubectl-rere

Отчет об ошибках

Kubetail

Скрипт BASH, который позволяет агрегировать (хвост/следующий) журналы из нескольких стручков в один поток. Это то же самое, что и запуск «kubectl logs -f», но для нескольких стручков.

Ссылка: https://github.com/johanhaleby/kubetail

Kubectl-Debug

Kubectl-Debug-это решение вне дерева для устранения неисправностей, которые позволяют запустить новый контейнер в запуске стручков для отладки.

Ссылка: https://github.com/aylei/kubectl-debug

корм

Stern позволяет вам заводить несколько стручков на Kubernetes и несколько контейнеров в стручке. Каждый результат предназначен для более быстрой отладки

Ссылка: https://github.com/stern/stern

Предупреждение

Botkube

Интеграция Botkube с Slack, Matter Moster или Microsoft Teams помогает вам контролировать свой кластер Kubernetes, отлаживать критические развертывания и дает рекомендации для стандартных практик, проводя чеки на ресурсах Kubernetes. Вы также можете попросить Botkube выполнить команды Kubectl на кластере K8S, который помогает отладки приложения или кластера

Ссылка: https://github.com/infracloudio/botkube

Проверка

Polaris

Polaris Fairwinds держит ваши кластеры плавно плавать. Он проходит различные проверки, чтобы гарантировать, что капсулы Kubernetes и контроллеры настроены с использованием лучших практик, помогая вам избежать проблем в будущем.

Ссылка: https://github.com/fairwindsops/polaris

Златовласка

Златовласка — это утилита, которая может помочь вам определить отправную точку для запросов и ограничений ресурсов.

Ссылка: https://github.com/fairwindsops/goldilocks

Шлем

Счетер

Командная линия помощника для русла. Эта утилита добавляет функциональности руля несколькими способами:

  • Создает декларативный синтаксис для управления несколькими выпусками в одном месте
  • Позволяет установить диаграммы из GIT Commit/Branch/Release

Пример:

# course.yml
charts:
  nginx-ingress:
    namespace: ingress-controllers
    version: 1.15.1
    values:
      controller.ingressClass: "my-ingress-class-name"

Ссылка: https://github.com/fairwindsops/reckoner

Helmfile

Развернуть Helm Helm Helm Helmfile Helmfile

releases:
- name: prom-norbac-ubuntu
  namespace: prometheus
  chart: stable/prometheus
  set:
  - name: rbac.create
    value: false
helmfile apply

Ссылка: https://github.com/roboll/helmfile

Судно

Kubevela

Kubevela — это платформный двигатель, позволяющий проектировать и доставку приложений с минимальными усилиями.

$ vela up -f https://raw.githubusercontent.com/oam-dev/kubevela/master/docs/examples/vela.yaml
Parsing vela.yaml ...
Loading templates ...

Rendering configs for service (testsvc)...
Writing deploy config to (.vela/deploy.yaml)

Applying deploy configs ...
Checking if app has been deployed...
App has not been deployed, creating a new deployment...
✅ App has been deployed 🚀🚀🚀
    Port forward: vela port-forward first-vela-app
             SSH: vela exec first-vela-app
         Logging: vela logs first-vela-app
      App status: vela status first-vela-app
  Service status: vela status first-vela-app --svc testsvc

Ссылка: https://github.com/oam-dev/kubevela

Секреты руля

запечатанные секреты

Чтобы безопасно хранить секреты в государственном или частном репозитории GIT, вы можете использовать контроллер Bitnami запечатанных секундов и шифровать ваши секреты Kubernetes в герметичные секторы. Запечатанные секреты могут быть расшифрованы только контроллером, работающим в вашем кластере, и никто другой не может получить первоначальный секрет, даже если у них есть доступ к репозиторию GIT.

# Create a json/yaml-encoded Secret somehow:
# (note use of `--dry-run` - this is just a local file!)
$ echo -n bar | kubectl create secret generic mysecret --dry-run=client --from-file=foo=/dev/stdin -o json >mysecret.json

# This is the important bit:
# (note default format is json!)
$ kubeseal mysealedsecret.json

# mysealedsecret.json is safe to upload to github, post to twitter,
# etc.  Eventually:
$ kubectl create -f mysealedsecret.json

# Profit!
$ kubectl get secret mysecret

Ссылка: https://github.com/bitnami-labs/sealed-secrets

Kubernetes-External-Secret

Внешние секреты оператор Kubernetes считывает информацию из сторонней службы, такой как Manager AWS Secrets, и автоматически вводит значения как секреты Kubernetes.

Ссылка: https://github.com/external-secrets/external-secrets

Хорошие инструменты для повышения производительности (серия 12 деталей)

Оригинал: «https://dev.to/javidjms/top-20-useful-k8s-tools-53g3»