Обзор Kubernetes Patterns

  • Foundation patterns — базовые блоки k8s, на основе которых строится все остальное
  • Behavioral patterns — поведенческие паттерны, которые позволяют добиться желаемого поведения, например, запуска периодических job или приложения синглтона
  • Structural patterns — структурные паттерны, которые показывают как можно расширить функционал основного контейнера добавив другие контейнеры в pod
  • Configuration patterns — конфигурационные паттерны, которые позволяют эффективнее управлять конфигурацией ваших приложений
  • Advanced patterns — продвинутые паттерны, которые раскрывают темы того, как работает сам k8s и как его можно расширять

Foundational patterns

  • liveness — проба, которая позволяет понять живо еще приложение или его надо развернуть заново
  • readiness — проба, которая говорит о том, можно ли роутить запросы в приложение или оно не готово, например, в приложении возникли проблемы и мы не хот
  • startup — проба для стартующих медленно приложений, которые на старте прогреваются (привет java)
  • запросов конкретных контейнеров
  • доступных нод и ресурсов в рамках них (cpu, memory, volumes, …)
  • политик размещения (placement policies)
  • правил affinity и antiaffinity, а также taints и tolerations

Behavioral patterns

  • внутренние — ClusterIP, Manual IP, Manual FQDN, Headless Service
  • внешние — NodePort, LoadBalancer, Ingress

Structural patterns

Configuration patterns

Advanced patterns

  • Horizontal Pod Autoscaling — увеличение количества инстансов приложения путем увеличения количества подов
  • Vertical Pod Autoscaling — увеличение ресурсов, выделенных для конкретных подов
  • Cluster Autoscaling — увеличение размеров кластера, а именно доступных нод

Итого

--

--

--

Director of digital ecosystem development department at Tinkoff. Bachelor at applied math, Master at system analysis, Postgraduate studies at economics.

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Alexander Polomodov

Alexander Polomodov

Director of digital ecosystem development department at Tinkoff. Bachelor at applied math, Master at system analysis, Postgraduate studies at economics.

More from Medium

Using Telepresence to intercept microservices on a Kubernetes cluster

KEDA: Kubernetes Based Event-driven Autoscaling with SpringBoot and RabbitMQ

Injecting Fault in Azure Cache for Redis using Azure Chaos Studio through Rest API (Part 2)

Secure Microservices Configuration Properties via HashiCorp Vault