Пятничный деплой
4.37K subscribers
1.29K photos
24 videos
163 files
7.56K links
Подборка ссылок, статей и постов из мира DevOps\SRE\разработки. Если вы хотите прислать фидбек, интересную статью или просто поболтать пишите @count0ru https://t.me/s/count0_digest
Download Telegram
Forwarded from Mops DevOps
Kubernetes Cluster API

На прошедшей конференции БеКон коллеги не раз касались темы развертывания унифицированных кластеров Kubernetes и Cluster API - декларативного инструмента для упрощения подготовки, обновления и эксплуатации нескольких кластеров Kubernetes.

👉 https://github.com/kubernetes-sigs/cluster-api

The Cluster API Book
👉 https://cluster-api.sigs.k8s.io/

Cluster API and GitOps: the key to Kubernetes lifecycle management
👉 https://youtu.be/Pe3Z4dgtNuo

#kubernetes #cluster_api
Forwarded from Mops DevOps
Как мы боролись с овербукингом Kubernetes-кластеров

История о том, как коллеги пришли к своему варианту resource management через борьбу с овербукингом по CPU.

👉 https://habr.com/ru/companies/samokat_tech/articles/735638/

#kubernetes
Forwarded from Sysadmin Tools 🇺🇦
Migrating etcd between cloud Kubernetes clusters with no downtime

https://blog.palark.com/etcd-in-kubernetes-migration-tutorial

#k8s #kubernetes
Forwarded from Mops DevOps
Kubernetes Taints, Tolerations, and Understanding the PreferNoSchedule Effect

В статье описан процесс подсчета скорринга узлов кластера для развертывания pods на оптимальный узел. Также рассмотрено применение эффекта PreferNoSchedule который вы возможно еще не используете предпочитая NoExecute и NoSchedule.

👉 https://trstringer.com/understanding-prefernoschedule/

#kubernetes
Forwarded from KazDevOps
И еще один глобальный репозиторий на сегодня.

Более 1000 сценариев оболочки DevOps и расширенная среда Bash для быстрого, передового проектирования систем, автоматизации, API и т.д.

Вы найдете:
Скрипты для многих популярных технологий DevOps
Расширенные настройки для Git, vim, screen, tmux, PostgreSQL, psql и т. д.
Конфигурации CI и сценарии
Конфигурации Kubernetes
Скрипты API
SQL-скрипты

👉🏻 Сборка активно используется во многих репозиториях GitHub, десятках сборок Docker Hub (Dockerfiles) и более чем 600 сборках CI.

#devops #devsecops #kubernetes #cicd #k8s #linux #docker #sysadmin #automation #Azure #infrastructureascode #cloudcomputing #serverless #terraform #ansible #yaml #sre

@DevOpsKaz
Forwarded from Mops DevOps
kubepug - kubectl плагин который обнаруживает проблемы и потенциальные уязвимости в вашем конфигурационном файле Kubernetes и предлагает рекомендации по исправлению. Например, он поможет вам найти устаревшие и удаленные API в ваших ресурсах Kubernetes перед переходом на новую версию.

👉 https://github.com/rikatz/kubepug

Другие полезные плагины

👉 https://habr.com/ru/companies/southbridge/articles/750264/

#kubernetes
Forwarded from Mops DevOps
Как управлять сотнями sidecar-контейнеров без боли и сожаления

При использовании дополнительных контейнеров в Kubernetes важно развернуть их так, чтобы сократить количество YAML-кода и при этом не лишить платформенные команды возможности публиковать sidecar'ы без запроса на обновление приложение. Для этого подходят Sidecar Injector'ы — решения, которые позволяют писать свою логику изменения создаваемых ресурсов «на лету».

👉 https://habr.com/ru/companies/oleg-bunin/articles/768224

#kubernetes
Forwarded from Sysadmin Tools 🇺🇦
k8s-bootstrapper

Bootstrapping a Production-Ready DigitalOcean Kubernetes Cluster Using Terraform and Argo CD

#kubernetes #devops #terraform #grafana #prometheus #k8s #loki #argocd #gitops
Forwarded from Sysadmin Tools 🇺🇦
Helm Dashboard — a GUI for managing Helm releases in Kubernetes

https://blog.palark.com/helm-dashboard-gui-for-helm

#helm #k8s #kubernetes
Forwarded from Mops DevOps
Kubernetes: шпаргалка для собеседования

Вопросы по Kubernetes достаточно часты на собеседованиях на инженерные вакансии, связанные с администрированием и эксплуатацией. Они могут варьироваться от базовых, рассчитанных на механическую проверку теоретических знаний («объясните, что такое service») до более сложных и комплексных, требующих глубинного понимания внутренних принципов работы Kubernetes.

Часть 1
Часть 2

#kubernetes
Forwarded from Mops DevOps
Квоты в Kubernetes: очевидные, менее очевидные и совсем не очевидные

Разберемся как работают квоты в Kubernetes. Там есть немало граблей. Чем квоты хороши, что у них под капотом, в каких задачах используются и почему нужны даже в среде single-tenant?

👉 https://habr.com/ru/companies/oleg-bunin/articles/790112/

#kubernetes
Forwarded from Mops DevOps
Что делать, когда кластер превращается в тыкву?

Обсудим с какими потенциальными проблемами можно столкнуться при значительном росте размеров K8s кластеров. Вопрос не праздный потому что зачастую командам эксплуатации приходится решать их самостоятельно не полагаясь на community и известные best practices.

👉 https://habr.com/ru/companies/dbraincloud/articles/793180/

#kubernetes
Forwarded from DevOps FM
👩‍💻 В этот понедельник разбираемся, как Kubernetes API Server Proxy может стать слабым звеном в безопасности вашего кластера.

В своем блоге Рори опубликовал разбор, где наглядно показал механизм работы и скрытые подводные камни. Как сервер Kubernetes API может выступать в качестве HTTP-прокси-сервера? Есть ли ограничения использования и лазейки для атак?

Узнаем все плюсы, минусы и советы по работе — тут.

#devops #kubernetes #безопасность
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Mops DevOps
Kubernetes в изоляции: когда ваш кластер не должен знать о существовании интернета

Вы думаете, что развернуть Kubernetes без интернета — это просто kubeadm init плюс пара манифестов? Посмотрим, как скрипты решают проблемы, о которых вы даже не задумывались.

Спойлер: здесь есть чему удивиться.
И философский вопрос: зачем это всё?

Потому что настоящий DevOps — не тот, кто умеет копировать команды из интернета, а тот, кто может развернуть production‑кластер:
- на заброшенной арктической станции,
- на сервере с доступом только через 3G‑модем,
- в подвале банка с железобетонными стенами.

👉 https://habr.com/ru/companies/slsoft/articles/897102/

#kubernetes
Forwarded from Mops DevOps
OS Talos Linux. Хайп или реальный продукт

OS Talos Linux спроектирован специально под Kubernetes.
На трансляции разберем почему поднялся хайп вокруг этой OS и на сколько она функциональна, а так же:
• архитектуру и философию проекта
• эксплуатацию
• кейсы
• примеры решений

👉 https://www.youtube.com/watch?v=liso5CNn4G4&t=1458s

#kubernetes #talos
Forwarded from Azalio_tech (Mikhail [azalio] Petrov)
🔒 Отключаем анонимный доступ к kube-apiserver, но оставляем health checks!

Привет! Недавно ко мне пришел коллега-безопасник (Дима привет!) с интересным вопросом: как полностью отключить анонимный доступ к API-серверу Kubernetes, но оставить рабочими проверки /livez, /readyz и /healthz? 🤔 Сходу не ответил, полез копаться в исходниках и KEPах.

Проблема в том, что по умолчанию (`--anonymous-auth=true`) любой может дернуть эндпоинты health-чеков и не только health-чеков:

curl -k https://<API_SERVER_IP>:6443/livez
# Output: ok

Это удобно, но создает потенциальный вектор атаки, если RBAC настроен не идеально или найдется уязвимость. Безопасники такое не любят. 😟

К счастью, в KEP-4633 сообщество Kubernetes предложило решение! Теперь можно тонко настроить, к каким путям разрешен анонимный доступ, даже если глобально он выключен.

Сделать это можно так:

Сначала выключаем глобальный анонимный доступ в манифесте kube-apiserver:

spec:
containers:
- command:
- kube-apiserver
# ... другие флаги ...
- --anonymous-auth=false # <--- Выключаем!
- --authentication-config=/etc/kubernetes/auth-config.yaml # <--- Указываем конфиг


Затем создаем файл конфигурации /etc/kubernetes/auth-config.yaml на control plane нодах и монтируем его в под kube-apiserver:

# /etc/kubernetes/auth-config.yaml
apiVersion: apiserver.config.k8s.io/v1beta1
kind: AuthenticationConfiguration
anonymous:
enabled: true # Включаем анонимный доступ *только* для указанных путей
conditions:
- path: /livez
- path: /readyz
- path: /healthz

*(Не забудьте добавить volume и volumeMount в манифест kube-apiserver для этого файла)*

В итоге получаем:
- Запросы к /livez, /readyz, /healthz проходят как system:anonymous.
- Запросы к другим путям (например, /apis) без аутентификации получают 401 Unauthorized.

Кстати, эта функциональность появилась как Alpha в Kubernetes 1.31 и стала Beta в 1.32.

Теперь можно спать спокойнее, зная, что анонимный доступ под контролем!

#kubernetes #k8s #security #authentication #kubeadm #devops #infosec