Mops DevOps
2.45K subscribers
384 photos
2 videos
3 files
727 links
Kubernetes и Docker 🚢 Облачные сервисы ☁️ Infrastructure as Code ⚙️ DevOps и DevSecOps 😎 SRE 👌 Мониторинг и логирование 🔥


По всем вопросам обращайтесь: mopsdevops @собака gmail.com
Download Telegram
Поддержка mTLS в своём Service Mesh: чему мы научились

Команда платформы Авито рассказывает как они готовят service mesh.

У Авито самописный service mesh — сначала это был Netramesh, который потом трансформировался в собственный control-plane и envoy в качестве data-plane. В начале этого года я добавлял в него поддержку mTLS, а сейчас мы успешно раскатываем это решение для межсервисного взаимодействия.

Взаимная аутентификация делает сервисы безопаснее и помогает защитить передаваемые по сети данные. Такая фича уже есть в разных готовых решениях. Тем не менее, я узнал для себя ряд интересных моментов при создании своей реализации и теперь хотел бы поделиться этим опытом с вами.

👉 https://bit.ly/3OX2vQm

#kubernetes #mesh
This media is not supported in your browser
VIEW IN TELEGRAM
LearnGitBranching - это вероятно самый наглядный и интерактивный способ изучения Git.

👉 https://bit.ly/3ybSTuF

Можно посмотреть демо
👉 https://bit.ly/3Ozb8kH

#git #study
В компаниях с большим количеством проектов часто возникает ситуация, когда при разработке пайплайнов мы начинаем повторять себя, добавляя в разные сервисы одинаковые конструкции. Это противоречит основному принципу программирования DRY (Don’t Repeat Yourself), а ещё усложняет внесение изменений в код. Справиться с описанными проблемами помогает Jenkins Shared Library.

👉 https://bit.ly/3NAKJRW

#jenkins #slurm
Keep your Terragrunt Architecture DRY

👉 https://bit.ly/3AyEBXs

#terragrunt
Братцы, если кто не знает: принцип DRY — это "Don't Repeat Yourself" (не повторяйся)
В каких случаях придерживаться принципа, а в каких избегать можно прочитать в статье

Ошибочное понимание принципа DRY

👉 https://bit.ly/3upyUrc
Six critical blindspots while securing Argo CD

🔹 Use a dedicated project for the control plane
🔹 Argo resources are for Argo admins only
🔹 Delete the “default” project
🔹 Block ClusterRoleBindings in (most) projects
🔹 Narrow roles on remote clusters
🔹 Have a CVE response plan ready

👉 https://bit.ly/3bTjh4V

#argocd #security
Kubernetes Audit Logs | Use Cases & Best Practices

Kubernetes audit logs будут полезны только в том случае, если они включены и правильно настроены. Эта статья поможет вам начать использовать журналы аудита и покажет, как извлечь из них максимальную пользу 🤝

👉 https://bit.ly/3OOA5IJ

#kubernetes
Update Istio the GitOps way

Коллеги из BlaBlaCar рассказывают о проблемах управления (и обновления) Istio с помощью GitOps.

В статье рассмотрено обновление через istioctl generate и Helm Chart.

👉 https://bit.ly/3uCv1PE

#kuberntes #istio
Kubernetes Ephemeral Container Security

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

Но что происходит, когда вы используете их в защищенном кластере?

Ответ не так очевиден, поскольку OPA, Kyverno, PSP и т. д. сделают все возможное, чтобы (справедливо) предотвратить его запуск

👉 https://bit.ly/3azOABh

#kubernetes #security
Kubernetes ingress as reverse proxy to Application running outside cluster

Статья рассказывает как настроить взаимодействие с приложением, работающим вне Kubernetes, как если бы оно было частью кластера, путем настройки Ingress Controller и использования ExternalName Service.

👉 https://bit.ly/3uKkySj

#kubernetes
Чем отличаются инструменты Chaos-инжиниринга для рабочих нагрузок Kubernetes?
🔹Chaos Toolkit
🔹Pumba
🔹Litmus
🔹Chaos Mesh

Рассмотрим их сильные и слабые стороны 💪

👉 https://bit.ly/3Pjrv4C

#kubernetes
Governing Multi-Tenant Kubernetes Clusters with Kyverno

👉 https://bit.ly/3PrKVEy

#kubernetes #kyverno
Dynamic Kubernetes Cluster Scaling at Airbnb

Коллеги из Airbnb рассказывают как масштабируют свои кластера с помощью Kubernetes Cluster Autoscaler, и о развитии сообщества sig-autoscaling.

👉 https://bit.ly/3yKPbrY

#kubernetes
Репозиторий с бесплатными учебными материалами от разных компаний, поддерживающих проекты CNCF (Cloud Native Computing Foundations) и Kubernetes.

👉 https://github.com/joseadanof/awesome-cloudnative-trainings
Снапшоты в Kubernetes: что это и как ими пользоваться

С появлением snapshot-controller в Kubernetes появилась возможность создавать снапшоты для совместимых с ними CSI-драйверов и облачных провайдеров. Рассказываем о снапшотах в K8s с листингами примеров их использования.

👉 https://bit.ly/3vGUF6z

#kubernetes
Kubernetes Ephemeral Containers and kubectl debug Command

Братцы, вы уже испольуете Ephemeral Containers? Разберемся как их использовать для решения проблем с рабочими нагрузками в Kubernetes с командой kubectl debug и без нее 🤩

👉 https://bit.ly/3vTCs5F

#kubernetes
Progressive Delivery with Argo Rollouts : Blue-Green Deployment

Еще одна статья в копилку сине-зеленого 🤟 Узнаете, как выполнить blue-green deployment с помощью Argo Rollouts controller и CRD.

👉 https://bit.ly/3Qk5BiN

#argo
How to Autoscale Kubernetes pods based on ingress request — Prometheus, KEDA, and K6

Горизонтального масштабирования на основе метрик CPU и Memory часто бывает недостаточно. В качестве альтернативы рассмотрим KEDA для автомасштабирования на основе Prometheus и метрик из ingress-nginx.

👉 https://bit.ly/3C1cscA

#kubernetes #keda
ArgoCD Best Practices You Should Know

Argo Best Practices:
1. Disallow providing an empty retryStrategy
2. Ensure that Workflow pods are not configured to use the default service account
3. Ensure label part-of: argocd exists for ConfigMaps
4. Disable with DAG to set FailFast=false
5. Ensure Rollout pause step has a configured duration
6. Specify Rollout’s revisionHistoryLimit
7. Set scaleDownDelaySeconds to 30s to ensure IP table propagation across the nodes in a cluster
8. Ensure retry on both Error and TransientError
9. Ensure progressDeadlineAbort set to true, especially if progressDeadlineSeconds has been set
10. Ensure custom resources match the namespace of the ArgoCD instance

👉 https://bit.ly/3Qyyrfn

#argo
Kubernetes 1.25: обзор нововведений

Этой ночью представят новую версию Kubernetes. Среди главных изменений на первое место разработчики поставили стабилизацию функции CSI Migration — отказ от внутренних плагинов хранилищ в пользу CSI-драйверов. Также в этой версии устаревший контроллер PodSecurityPolicy заменен на новый PodSecurity Admission.

👉 https://bit.ly/3ACk2cp

#kubernetes