Kubernetes — решение проблем. Он позволяет запускать контейнеризированные приложения и масштабировать их без утопания в деталях. С ним просто балансировать нагрузку, сетевые контейнеры, обеспечивать высокую доступность для приложений и управлять обновлениями или откатами. Но применение Kubernetes не лишено проблем. Запуск и использование Kubernetes требует работы, и многие задачи управления и обслуживания Kubernetes являются трудными.
Рубрика: Статьи чтобы набрать классы
Оптимизируем веб-серверы под высокую пропускную способность и низкую задержку
Эта статья — расширенная версия моего выступления на NginxConf 2017 6 сентября 2017 года. Являясь SRE в команде Dropbox Traffic, я отвечаю за нашу сеть Edge: ее надежность, производительность и эффективность. Dropbox edge network представляет собой прокси-уровень на основе nginx, предназначенный для обработки как транзакций с метаданными, чувствительными к задержкам, так и высокопроизводительных передач […]
Принципы шардинга реляционных баз данных
Когда ваша база данных небольшая (10 ГБ), вы можете легко добавить больше ресурсов и таким образом масштабировать ее. Однако, поскольку таблицы растут, нужно подумать и о других способах масштабирования базы данных. С одной стороны шардинг — лучший способ масштабирования. Он позволяет линейно масштабировать ресурсы базы данных, памяти и диска, дробя базу данных […]
Оптимизация баз данных под высокую доступность
Для важных платформ, ориентированных на клиента, высокая доступность — первоочередная задача. Однако доступность — постоянно движущаяся цель. Чем больше используется платформа, тем доступнее она должна быть, обеспечивая согласованную производительность и правильное выполнение задачи. Я расскажу вам о стратегии дизайна, уникальной для платформ, требующих как высокой масштабируемости, так и высокой доступности. Эта стратегия проектирования предусматривает сокращение баз […]
Kured — демон перезагрузки Kubernetes
Kured (KUbernetes REboot Daemon) — это демон Kubernetes, который выполняет безопасные автоматические перезагрузки узлов. Он запускается системой управления пакетами базовой ОС. По сути Kured: Следит за наличием напоминания о перезагрузке, например, /var/run/reboot-required. Использует блокировку на сервере API, чтобы обеспечить одновременную перезагрузку только одного узла. Опционально отменяет перезагрузку при наличии активных предупреждений Prometheus. Выполняет […]
Конфигурация Ingress в Kubernetes с использованием Azure Container Service
В посте о запуске приложения .NET Core 2 в Kubernetes я создам Service, чтобы открыть доступ к .NET Core 2 Webapi. Service получит публичный IP-адрес. Конфигурация выглядит так: apiVersion: v1 kind: Service metadata: name: myapiservice spec: ports: — port: 80 selector: app: mywebapi type: LoadBalancer Схема выглядит так:
Статус ядра Linux, Meltdown и Spectre
Все знают, что что-то «крупное» ожидается от компьютерной безопасности. И когда даже Daily Mail публикует статьи о уязвимостях Meltdown и Spectre, вы знаете, ситуация настораживает… В любом случае я не собираюсь вдаваться в подробности публикуемых Daily Mail проблем, но укажу на замечательно написанный материал Project Zero, посвященный обсуждаемым вопросам. Им нужно выдать […]
Хватит зацикливаться на командах
Речь идет о Scrum-командах. Функциональных командах. Каждая команда нуждается в PO. Самоорганизующаяся команда. Командные мероприятия / ритуалы. Помогите команде. Служите команде! Защитите команду. Фокусируйтесь локально! Будьте shit umbrella! Звучит знакомо? В этом посте я расскажу, почему не нужно фокусироваться на «командах», пока не будут созданы условия дляэффективных команд.
Эпический обзор на Google App Engine
Последние 3 года я занимался приложением, которое работает на Google App Engine. Google предлагает увлекательный, уникальный сервис. Все, что вы прочитаете здесь, — мое личное мнение.
Введение в современную балансировку сетевой нагрузки и проксирование
Не так давно я услышал, что существует недостаток вступительных образовательных материалов о современной балансировке сетевой нагрузки и проксировании. И я подумал: как это возможно? Балансировка нагрузки — одна из основных концепций, необходимых для построения надежных распределенных систем. Разумеется, должна быть доступна качественная информация. К сожалению, это не так. Я искал и обнаружил, […]