Information
- Rating
- 11,646-th
- Location
- Ялта, Республика Крым, Россия
- Works in
- Date of birth
- Registered
- Activity
Specialization
Site Reliability Engineer (SRE)
Lead
From 600,000 ₽
Git
Python
Linux
PostgreSQL
Kubernetes
Elasticsearch
High-loaded systems
Bash
CI/CD
Docker
etcd — распределенное key-value хранилище с высокой доступностью и строгой согласованностью данных (Raft-консенсус), ориентированное на хранение конфигураций и управление состоянием распределенных систем. Основное применение — бэкенд для оркестраторов (Kubernetes), сервис-дискавери и координация нод в кластере. Преимущества перед конкурентами (Consul, ZooKeeper): высокая производительность при интенсивных операциях записи/чтения, низкая задержка, встроенная поддержка TLS/SSL и RBAC, а также тесная интеграция с Kubernetes. Оптимален для систем, требующих гарантий линейной консистентности и отказоустойчивости в режиме реального времени.
Начиная с Kubernetes 1.30 больше не нужно вызывать команду `sleep N` в контейнере и хранить бинариник sleep для preStop hook: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/
Кстати, использовать лучше не
command: ["sleep", "15"]
, а что-то вида `/bin/sh -c /bin/sleep 15` т.к. не во всех образах корректно задана переменная $PATHДополнительно: Если используете HPA, уберите секцию replicas из ваших Deployment: https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/#migrating-deployments-and-statefulsets-to-horizontal-autoscaling (как альтернативное решение: выставьте replicas в максимальный лимит реплик HPA)
Привожу пример как это сделать: https://kyverno.io/policies/other/replace-image-registry/replace-image-registry/
Почему бы не использовать flagger https://docs.flagger.app/tutorials/istio-progressive-delivery для канарейки если вы уже используете istio? Зачем вручную переключать)