DevOps Star (Звезда Девопса)
2.08K subscribers
191 photos
166 videos
14 files
232 links
Devops, Linux, SRE, Kubernetes, Сисадмин, Девопс, Python, JS, Java, Git, IT канал, программирование, безопасность, ИТ, Sysadmin

По всем вопросам @evgenycarter
加入频道
This media is not supported in your browser
VIEW IN TELEGRAM
Snips.sh ✂️

Безпарольный, анонимный pastebin на основе SSH с удобным текстовым и веб-интерфейсом

Фичи:
Нулевая установка: используйте с любого устройства, где установлен SSH-клиент
🌐 Веб-интерфейс: код с подсветкой синтаксиса, короткие ссылки и поддержка рендеринга Markdown
💻 Текстовый интерфейс: управление и просмотр сниппетов прямо из терминала
🔑 Без паролей: всё, что вам нужно — это SSH-ключ
🕵️ Анонимность: без регистрации, без логинов, без необходимости указывать email
URL с временем жизни: ограниченный по времени доступ для безопасного обмена
📦 Возможность самостоятельного хостинга: контейнеризированный и малозатратный в плане ресурсов
🧠 Определение языка с помощью ИИ: интеллектуальное распознавание исходного кода

https://github.com/robherley/snips.sh

👉 @devops_star
👍2
Шпаргалка по CLI-командам Kubernetes Kubectl

👉 @devops_star
Kubernetes-Kubectl-CLI-Cheat-Sheet.pdf
14 MB
Шпаргалка по CLI-командам Kubernetes Kubectl PDF

👉 @devops_star
👍5
Шпаргалка по kubectl

Автодополнение ввода для Kubectl


source <(kubectl completion bash) # настройка автодополнения в текущую сессию bash, предварительно должен быть установлен пакет bash-completion .
echo "source <(kubectl completion bash)" >> ~/.bashrc # добавление автодополнения autocomplete постоянно в командную оболочку bash.


Вы также можете использовать короткий псевдоним для kubectl, который можно интегрировать с автодополнениями:

alias k=kubectl
complete -F __start_kubectl k



https://kubernetes.io/ru/docs/reference/kubectl/cheatsheet/

👉 @devops_star
👍3
Лекторий по SRE

Примеры сбоев
Что такое SRE
Цели мониторинга, логи и метрики
Детектирование проблем до и во время сбоя
SLA, SLO, SLI
Причины сбоев
Устранение сбоев
Постмортемы
Приемы уменьшения количества сбоев
Устойчивый к сбою код

источник

👉 @devops_star
👍6
Docker справочник cli

docker images — показать все локальные образы docker
docker rmi [-f] <id|label> — удалить образ c локальной машины
docker rmi -f $(docker images -q) — удалить все докер образы
docker build [-t <label>] <path> — построить образ на основе докерфайла
docker run [-dt] [--name <name>] [-v <path:path>] [-p <port:port>] [--...] <id|label> [cmd] — запустить образ в контейнере c cmd-командой (необязательно)
-d — в фоновом режиме
-t — прикрепляет к контейнеру терминал
-i — перенаправляет ввод/вывод на текущий терминал
--name — явно указать имя контейнера, по которому можно будет обращаться к нему (иначе будет сгенерировано рэндомно)
-p <external_port:internal_port> — проброс портов
-v --volume <external_path:internal_path> — монтирует папки хоста в контейнер
--rm — удаляет контейнер после завершения работы
--memory <n> — позволяет указать количество ОЗУ, доступной контейнеру
-P — пробрасывает все порты контейнера в хост-систему
--expose — позволяет пробросить несколько портов из контейнера в хост-систему
-e <"FOO=bar"> — добавляет переменную окружения в контейнер
docker ps [-a] — показать все запущенные [существующие] докер контейнеры
`docker ps -q | xargs docker stats —no-stream` — посмотреть ресурсы, потребляемые запущенными контейнерами
docker stop <name> — останавливает указанный образ (с сохранением данных)
docker kill <name> — то же самое без сохранения данных
docker rm <name> — удаляет указанный контейнер
docker attach <name> — подключиться к выбранному докер-контейнеру
docker exec [-ti] <name> <cmd> — выполняет команду в докер-контейнере
docker push <imagename> — отправить образ в удаленный реестр
docker ps -q | xargs docker stats --no-stream — посмотреть нагрузку на процессор и память каждого из контейнеров
docker stats — похожа на предыдущую команду, но более короткая
docker info --format '{{.LoggingDriver}}' — посмотреть используемый по умолчанию лог драйвер (json-file)
docker logs [<container_name>] [-f --tail 100] — показать логи [конкретного контейнера] в терминал [последние 100 строк]
docker inspect --format='{{.LogPath}}' <containername> -показать, где хранятся логи для конкретного контейнера

👉 @devops_star
👍5
Как работает Docker

👉 @devops_star
👍4
Media is too big
VIEW IN TELEGRAM
Нюансы Kubernetes

Контейнеризация и, в частности, Kubernetes – стандарт для запуска приложений в бою. Это несложно, но есть нюансы. Вместе с Андреем Новиковым из Evil Martians обсуждаем, что нужно сделать, чтобы приложение работало быстро и надежно. Смотрим, как работают requests и limits на ресурсы, чем должны отличаться liveness и readiness пробы и на что следует обращать внимание в мониторинге.

👉 @devops_star
👍42
Задаём порядок деплоя ресурсов в Kubernetes с помощью werf/Helm

При деплое в Kubernetes часто требуется выкатывать ресурсы в определённом порядке, а иногда и дожидаться готовности сторонних ресурсов. Например, сначала нужно запустить БД, дождаться создания динамического Secret’а сторонним оператором, потом выполнить инициализацию/миграции БД, а уже затем запустить само приложение.

Рассмотрим, как решать такие задачи с помощью Helm, а также сравним с более быстрым и удобным вариантом, который предлагает Open Source-утилита werf.

https://habr.com/ru/companies/flant/articles/682804/

👉 @devops_star
👍2
Buildg - Интерактивный отладчик для Dockerfile, с поддержкой IDE (VS Code, Emacs, Neovim и т.д.).

Source-level inspection
Breakpoints and step execution
Interactive shell on a step with your own debugigng tools
Based on BuildKit (with unmerged patches)
Supports rootless

https://github.com/ktock/buildg

👉 @devops_star
👍5🫡1
Grafana OnCall — Open Source хаб для алертов и инцидентов

Если кратко, OnCall — это инструмент, который поможет организовать надежные оповещения/реагирование на инциденты в команде, соблюдать SLA и не просыпаться ночью от звонков.

OnCall — новичок в мире Open Source, но уже совсем не новичок как продукт. Он начался как отдельный SaaS под названием Amixr. IO несколько лет назад. Потом Amixr. IO приобрела Grafana Labs и интегрировала в свою экосистему. И вот недавно, наконец, мы смогли выложить исходный код OnCall в открытый доступ 🎉 А это значит, что он стал доступен большему кругу пользователей — и тем, кто работает в инфраструктуре без интернета, и тем, кто просто любит Open Source. Далее

https://habr.com/ru/articles/688794/

👉 @devops_star
👍5🫡1