Лекциите ми идват от практическа инженерна работа и повече от двадесет години опит с разпределени системи. Голяма част от работата ми днес е на границата между Kubernetes и инфраструктурата под него. Там и двете системи могат да изглеждат изправни, докато облакът, който образуват, не работи.

За покана за конференция, meetup, панел, подкаст или workshop пишете ми на szahariev@szahariev.com.

Готови лекции

Суверенността е свойство на контролната равнина, а не отметка за местоположението на данните

Местоположението на данните казва къде се намират байтовете. Не казва кой контролира ключовете за декриптиране и дали операторът може да премести системата другаде. Лекцията представя пет конкретни проверки и списък за проверка на твърденията за суверенност, който не зависи от конкретен доставчик.

  • Суверенен облак
  • Отворена инфраструктура
  • Сигурност
  • Platform engineering

Защо API за виртуални машини не е достатъчен за Kubernetes

Създаването на виртуална машина е само началото. Kubernetes се нуждае и от мрежова свързаност, дискове, информация за топологията и надежден резултат при прекъсната операция. Лекцията проследява тези отговорности през Cluster API, cloud controller manager и CSI driver.

  • Kubernetes
  • OpenInfra
  • Platform engineering

Идемпотентността е повече от "safe to retry"

Лесно е да добавиш идемпотентен ключ, но е трудно да определиш точните му гаранции. Лекцията разглежда заявки към доставчик, които завършват успешно, преди извикващата страна да получи отговор, повторно използвани ключове с различни данни и операции, отменени по-късно с компенсиращо действие.

  • Разпределени системи
  • API
  • Cloud native
  • Platform engineering

Изтриването на облачен ресурс е проблем на разпределените системи

Една DELETE заявка може да премахне локалния запис, но да остави ресурса активен при доставчика заедно с диск, който вече никой не следи. Лекцията проследява състоянията зад тази заявка и показва как изтриването може да продължи безопасно след отказ.

  • SRE
  • Cloud native
  • Разпределени системи
  • Облачни операции

Лекции в разработка

Availability zone не е просто низ

Изборът на availability zone при създаване на машина е лесен. Трудното е failure domain-ът в Kubernetes, машината, системният диск и дисковете, добавени по-късно, да останат в една и съща топология. Лекцията проследява този избор през контролната равнина.

Мрежата е облакът: къде се чупят абстракциите между tenant-и

Маршрутите, security groups и peering връзките обикновено се моделират като отделни CRUD ресурси, но заедно определят границата между tenant-ите. Записът на pod CIDR в routing table не помага, ако мрежовият интерфейс на node-а не може да пренася този трафик.

Два tenant-а, един CIDR: когато source IP адресът подвежда

Два tenant-а могат да използват един и същ частен адресен диапазон. Затова source IP не е достатъчен, за да определи към кой tenant принадлежи DNS заявката. Тази информация трябва да дойде от мрежовия път.

Можете ли да докажете, че архитектурата все още описва системата?

Архитектурната документация постепенно се отдалечава от кода. Регистърът на архитектурните твърдения свързва всяко важно твърдение с версия на кода, тест, който ще се провали при промяна, или ясен запис, че твърдението все още не е доказано.

AI може да генерира реализация, но не може да докаже, че тя работи

Генерираният код често идва с генерирани тестове, които са съгласни с него. Лекцията показва какво трябва да изпълните, за да проверите дали кодът и тестовете описват реалното поведение на системата.

Биография

Станислав Захариев е инженер по разпределени системи, който работи по контролни равнини за суверенен облак и отворена инфраструктура. Повече от двадесет години изгражда разпределени системи в телекомуникациите, финтех и AI. Пише и говори за Kubernetes, OpenStack и за това как облачната архитектура се държи при реални откази.

Портретна снимка · Квадратна снимка · LinkedIn · Bluesky