Pull to refresh
30.2
Karma
0
Rating

Senior Devops/SRE

  • Followers 1
  • Following 2
  • Posts
  • Comments

Устранение неполадок в Kubernetes: в каком направлении двигаться, если что-то идет не так

VK corporate blog DevOps *Kubernetes *
Translation

Источник


Команда Kubernetes as a Service в Mail.ru Cloud Solutions перевела статью, в которой автор помогает найти причины ошибок в Kubernetes, если вы совсем не понимаете, куда нужно смотреть. Далее текст от лица автора.


Kubernetes — непростая платформа, особенно когда что-то пошло не так и нужно срочно найти и устранить возникшую проблему. В основном трудности объясняются сложностью самой системы и отсутствием подробных сообщений об ошибках. Ситуация усугубляется еще и огромным количеством «шестеренок» в потоке оркестрации контейнеров — при том что для представления этого потока используется всего лишь несколько состояний. Например, есть как минимум шесть возможных причин, по которым под может зависнуть в состоянии ContainerCreating или CrashLoppBackOff.


Мы активно работаем с Kubernetes уже более трех лет и за это время составили длинный список сложных и в то же время трудно диагностируемых проблем. Большинство из них можно отнести к одной из трех категорий:


  1. Зависание пода в состоянии ContainerCreating.
  2. Ошибка CrashLoopBackOff и периодический перезапуск контейнера.
  3. Проблемы с сетью.
Читать дальше →
Total votes 28: ↑28 and ↓0 +28
Views 5.5K
Comments 0

Запуск проекта в Kubernetes за 60 минут

VK corporate blog Cloud computing *DevOps *Cloud services Kubernetes *


У Kubernetes высокий порог входа, не все готовы использовать его в своих проектах. Это достаточно сложная для внедрения технология, особенно если конфигурированием кластера заниматься самостоятельно. Но я попробую упростить для вас эту задачу.


Я Павел Селиванов, ведущий DevOps-инженер облачной платформы Mail.ru Cloud Solutions. Я расскажу про альтернативный способ развертывания Kubernetes — использование Managed-варианта от облачного провайдера. Мы запустим реальный API-сервис на примере нашего облака и пройдем основные шаги развертывания приложений в K8s, включая подготовку инфраструктуры, настройку CI/CD-конвейера и всех необходимых объектов Kubernetes: Deployment, Service, Ingress и так далее.


В результате попробуем убедиться, что 60 минут — вполне достаточное время для освоения азов работы с K8s при условии использования его в виде aaS.


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


Практикум в видеоформате можно посмотреть по ссылке.

Читать дальше →
Total votes 28: ↑27 and ↓1 +26
Views 8.1K
Comments 10

Различия между Docker, containerd, CRI-O и runc

ДомКлик corporate blog DevOps *Kubernetes *
Translation

Появление Docker привело к взрывному росту популярности контейнеров, но с тех пор появились и другие инструменты. К сожалению, разобраться в них может быть совсем непросто. Но мы попробуем! И если вы считаете себя единственным, кто всего этого пока не понимает, не волнуйтесь... Это не так!

Читать далее
Total votes 47: ↑47 and ↓0 +47
Views 18K
Comments 4

Интимный микробиом и как с ним сосуществовать

Гельтек-Медика corporate blog Popular science Health

Однажды ко мне пришли дамы из лаборатории и сказали, что мы будем делать гель для интимной гигиены. Женской. Дальше мы поговорили с большим количеством девочек, девушек и женщин — и я с удивлением узнала, что мракобесие есть не только в области прививок и состава медсредств, но и во вполне бытовых вещах вроде интимной гигиены. 

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

Особенность анатомии девушек подразумевает постоянное сообщение полости влагалища с внешним миром, что в свою очередь сделало их зависимыми от состояния микрофлоры. У мужчин не так.

Поэтому сегодня будем говорить про микрофлору влагалища и наружных половых органов, почему её так легко сломать и заработать, например, цистит. Которого, кстати, у мужчин почти не бывает. И про то, как сейчас пытаются продвигать средства гигиены с кучей странных эффектов, включая отбеливание ануса.

В общем, пора поговорить про пестики и тычинки.

Читать далее
Total votes 140: ↑116 and ↓24 +92
Views 48K
Comments 81

Гайд начинающего тимлида

Development Management *Project management *IT career

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

Всё это я проговаривал на вебинаре в Хекслете тут https://www.youtube.com/watch?v=y_HkXvFovAc

Однако я уверен, что есть такие люди, которым не хочется 2 часа смотреть вебинар, а хочется за 15 минут прочитать структурированный текст. Поэтому я размещу его тут, в надежде на то, что он найдет своего заинтересованного читателя.

Общий стаж моей работы в ИТ - около 14 лет. Я начинал с системного администрирования, потом перешел в разработку, поработав как в аутсорсе, так и в продукте. Не один раз проходил путь от рядового разработчика до тимлида.

Читать далее
Total votes 51: ↑49 and ↓2 +47
Views 28K
Comments 16

Функции Terraform

System administration *System Programming *DevOps *
Translation


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

Читать дальше →
Total votes 10: ↑6 and ↓4 +2
Views 2.6K
Comments 6

Тариф «100к+», или как вельми зело огорчить спамера

Spamming and anti-spamming Legislation in IT

Уже не впервые сталкиваюсь, что читатели Хабра не все поголовно умеют правильно бороться со спамом. И я не про SpamAssasin, «Ктозвонил» и прочие приложения для фильтрации информационного мусора, а про несложную, но весьма доставляющую всем сторонам процесса подачу жалобы в ФАС.

Давайте расскажу, как буквально за 15 минут не отрываясь от любимого компьютера подключить спамеру задораздирающий тариф линейки «Административный»: «Административный 100к», «Административный 150к» и вплоть до «Административный 500к» – как повезет.
Читать дальше →
Total votes 272: ↑268 and ↓4 +264
Views 56K
Comments 256

Знакомство с типичными примерами использования встроенных функций Terraform

DevOps *
Translation

Небольшая инструкция по использованию Terraform, чтобы изучить и применить различные типы встроенных функций, в том числе Numeric, String, и Date, и Time в этом инструменте IaC.

Читать дальше →
Total votes 10: ↑10 and ↓0 +10
Views 1.8K
Comments 1

Как Лёха стал инженером по SRE: выдуманная история про невыдуманные проблемы

Southbridge corporate blog System administration *IT Infrastructure *Development Management *DevOps *

Направление Site Reliability Engineering становится всё более популярным. Хайп не на пустом месте: проблемы и задачи, которые решает SRE, действительно насущны для многих компаний.

Популярность SRE растёт, но знаний о нём всё ещё недостаточно. Я не буду повторять формальные определения, а вместо этого расскажу несколько историй из жизни системного инженера Лёхи. Путь выдуманного Лёхи во многом похож на путь, который прошли реальные крупные компании, где впервые и возникли SRE-инженеры (даже если назывались иначе).

Через историю Лёхи вы узнаете о задачах, которые решает SRE, и причинах, по которым для решения этих задач пришлось выделять отдельный класс инженеров.

Читать дальше
Total votes 31: ↑30 and ↓1 +29
Views 9.5K
Comments 14

Как pod в Kubernetes получает IP-адрес

Флант corporate blog System administration *Network technologies *Kubernetes *
Translation
Прим. перев.: эта статья, написанная SRE-инженером из LinkedIn, в деталях рассказывает о той «внутренней магии» в Kubernetes — точнее, взаимодействии CRI, CNI и kube-apiserver, — что происходит, когда очередному pod'у требуется назначить IP-адрес.

Одно из базовых требований сетевой модели Kubernetes состоит в том, что у каждого pod'а должен быть свой собственный IP-адрес и любой другой pod в кластере должен иметь возможность связаться с ним по этому адресу. Есть множество сетевых «провайдеров» (Flannel, Calico, Canal и т.п.), которые помогают реализовать данную сетевую модель.

Когда я только начинал работать с Kubernetes, мне было не совсем ясно, как именно pod'ы получают свои IP-адреса. Даже с пониманием, как функционируют отдельные компоненты, было сложно представить их совместную работу. Например, я знал, для чего нужны плагины CNI, но не представлял, как именно они вызываются. Поэтому решил написать эту статью, чтобы поделиться знаниями о различных сетевых компонентах и их совместной работе в кластере Kubernetes, которые и позволяют каждому pod'у получить свой уникальный IP-адрес.
Читать дальше →
Total votes 44: ↑41 and ↓3 +38
Views 12K
Comments 2

Автоскейлинг приложений Kubernetes при помощи Prometheus и KEDA

VK corporate blog DevOps *Kubernetes *
Translation
Balloon Man by Cimuanos

Масштабируемость — ключевое требование для облачных приложений. С Kubernetes масштабировать приложение так же просто, как и увеличить количество реплик для соответствующего развертывания или ReplicaSet — но это ручной процесс. Команда Kubernetes aaS от Mail.ru реализовала в своем сервисе автоматическое машстабирование на уровне кластеров. Ну а если вы хотите оптимизироваться на уровне подов — то следуйте рекомендациям этого перевода.

Kubernetes позволяет автоматически масштабировать приложения (то есть Pod в развертывании или ReplicaSet) декларативным образом с использованием спецификации Horizontal Pod Autoscaler. По умолчанию критерий для автоматического масштабирования — метрики использования CPU (метрики ресурсов), но можно интегрировать пользовательские метрики и метрики, предоставляемые извне.

Это статья о том, как использовать внешние метрики для автоматического масштабирования приложения Kubernetes. Чтобы показать, как все работает, автор использует метрики запросов HTTP-доступа, они собираются с помощью Prometheus.

Вместо горизонтального автомасштабирования подов, применяется Kubernetes Event Driven Autoscaling (KEDA) — оператор Kubernetes с открытым исходным кодом. Он изначально интегрируется с Horizontal Pod Autoscaler, чтобы обеспечить плавное автомасштабирование (в том числе до/от нуля) для управляемых событиями рабочих нагрузок. Код доступен на GitHub.
Читать дальше →
Total votes 27: ↑27 and ↓0 +27
Views 3.9K
Comments 0

Canary Deployment в Kubernetes #3: Istio

Nixys corporate blog IT Infrastructure *Web services testing *DevOps *Kubernetes *
Translation
Tutorial

Использование Istio+Kiali для запуска и визуализации Canary деплоя





Статьи этого цикла


  1. Canary Deployment в Kubernetes #1: Gitlab CI
  2. Canary Deployment в Kubernetes #2: Argo Rollouts
  3. (эта статья)
  4. Canary Deployment с Jenkins-X, Istio и Flagger
Читать дальше →
Total votes 4: ↑4 and ↓0 +4
Views 2.3K
Comments 0

Kubernetes tips & tricks: удобные заготовки для kubectl

Флант corporate blog System administration *DevOps *Kubernetes *
Внутри компании мы активно делимся между собой полученными знаниями: не только в виде формальных wiki-инструкций, но и сообщениями в Slack (а чтобы ничего не терялось, предусмотрена умная система поиска, но это уже отдельная история…). У нас накопилось уже большое количество разнообразных заготовок для консольных операций в Kubernetes с kubectl. Про них и пойдет речь в этой статье.



Какие-то команды могут оказаться повседневной обыденностью для некоторых читателей, но если найдутся и те, кто откроет для себя новое, улучшив тем самым свою эффективность, — цель статьи будет достигнута.
Читать дальше →
Total votes 50: ↑50 and ↓0 +50
Views 10K
Comments 5

Canary Deployment в Kubernetes #2: Argo Rollouts

Nixys corporate blog System administration *Web services testing *DevOps *Kubernetes *
Translation
Tutorial

Мы будем использовать k8s-нативный контроллер развертывания Argo Rollouts и GitlabCI для запуска Canary деплоя в Kubernetes



https://unsplash.com/photos/V41PulGL1z0


Статьи этого цикла


  1. Canary Deployment в Kubernetes #1: Gitlab CI
  2. (Эта статья)
  3. Canary Deployment using Istio
  4. Canary Deployment с Jenkins-X, Istio и Flagger
Читать дальше →
Total votes 5: ↑5 and ↓0 +5
Views 2.5K
Comments 1

Canary Deployment в Kubernetes #1: Gitlab CI

Nixys corporate blog System administration *Web services testing *DevOps *Kubernetes *
Translation
Tutorial

Мы будем использовать Gitlab CI и ручной GitOps для внедрения и использования Canary-деплоя в Kubernetes





Статьи из этого цикла:


  1. (эта статья)
  2. Canary Deployment при помощи ArgoCI
  3. Canary Deployment при помощи Istio
  4. Canary Deployment с Jenkins-X, Istio и Flagger

Выполнять Canary-деплой мы будем руками через GitOps и создание/изменение основных ресурсов Kubernetes. Эта статья предназначена в первую очередь для знакомства с тем, как работает в Kubernetes Canary деплой, так как есть более эффективные способы автоматизации, которые мы рассмотрим в следующих статьях.

Читать дальше →
Total votes 6: ↑6 and ↓0 +6
Views 6.3K
Comments 4

Стратегии деплоя в Kubernetes: rolling, recreate, blue/green, canary, dark (A/B-тестирование)

Флант corporate blog System administration *DevOps *Kubernetes *
Translation
Прим. перев.: Этот обзорный материал от Weaveworks знакомит с наиболее популярными стратегиями выката приложений и рассказывает о возможности реализации наиболее продвинутых из них с помощью Kubernetes-оператора Flagger. Он написан простым языком и содержит наглядные схемы, позволяющие разобраться в вопросе даже начинающим инженерам.


Схема взята из другого обзора стратегий выката, сделанного в Container Solutions

Одной из самых больших проблем при разработке cloud native-приложений сегодня является ускорение деплоя. При микросервисном подходе разработчики уже работают с полностью модульными приложениями и проектируют их, позволяя различным командам одновременно писать код и вносить изменения в приложение.

Более короткие и частые развертывания имеют следующие преимущества:

  • Сокращается время выхода на рынок.
  • Новые функции быстрее попадают к пользователям.
  • Отклики пользователей быстрее доходят до команды разработчиков. Это означает, что команда может дополнять функции и исправлять проблемы более оперативно.
  • Повышается моральный дух разработчиков: с большим количеством функций в разработке интереснее работать.
Читать дальше →
Total votes 43: ↑40 and ↓3 +37
Views 30K
Comments 2

Валидация Kubernetes YAML на соответствие лучшим практикам и политикам

Флант corporate blog System administration *DevOps *Kubernetes *
Translation

Прим. перев.: С ростом числа YAML-конфигураций для K8s-окружений всё более актуальной становится потребность в их автоматизированной проверке. Автор этого обзора не просто отобрал существующие решения для этой задачи, но и на примере Deployment'а посмотрел, как они работают. Получилось весьма информативно для тех, кому эта тема интересна.



TL;DR: В статье сравниваются шесть статических инструментов проверки и оценки YAML-файлов Kubernetes на соответствие лучшим практикам и требованиям.


Рабочие нагрузки Kubernetes, как правило, определяются в форме YAML-документов. Одна из проблем с YAML'ом — сложность задания ограничений или взаимоотношений между файлами манифестов.

Читать дальше →
Total votes 41: ↑41 and ↓0 +41
Views 7.7K
Comments 3

Экономим на облачных затратах Kubernetes на AWS

OTUS corporate blog Cloud services Kubernetes *
Translation
Перевод статьи подготовлен в преддверии старта курса «Инфраструктурная платформа на основе Kubernetes».




Как сэкономить на облачных затратах при работе с Kubernetes? Единственно правильного решения не существует, но в этой статье описано несколько инструментов, которые помогут вам эффективнее управлять ресурсами и сократить расходы на облачные вычисления.

Я написал эту статью с оглядкой на Kubernetes для AWS, но она будет применима (почти) точно так же и для других облачных провайдеров. Я предполагаю, что ваш кластер(ы) уже имеет настроенное автоматическое масштабирование (cluster-autoscaler). Удаление ресурсов и уменьшение масштаба развертывания позволит сэкономить только в том случае, если это также сократит ваш парк рабочих узлов (EC2 инстансов).

В этой статье будут рассмотрены:

  • очистка неиспользуемых ресурсов (kube-janitor)
  • уменьшение масштабирования в нерабочее время (kube-downscaler)
  • использование горизонтального автомасштабирования (HPA),
  • уменьшение избыточного резервирования ресурсов (kube-resource-report, VPA)
  • использование Spot инстансов
Читать дальше →
Total votes 12: ↑10 and ↓2 +8
Views 2.6K
Comments 0

Про перевод «начал» и «начинаний» без begin, start и first

IT Terminology Language localisation *Learning languages
Tutorial

Если в переводном тексте кто-то что-то где-то начинает — то у меня сразу всплывают три дежурных варианта: begin/beginning, start/starting, first/firstly.


Судя по тому, что я вижу в присылаемых мне на проверку переводах, эта бедность речи наблюдается не только у меня. Зато у наших американских переводчиков я такого не наблюдаю — тут тебе и синонимы красивые, или вообще без всяких begin/start дело обходится.


Я подумал, что пришло время устранить этот пробел в знаниях, делюсь наиболее интересными находками.


Самые экзотические варианты (напр. ignite) сюда впихивать не стал, вроде и без них есть из чего выбрать (но если в будущем экзотика тоже интересует, напишите в комментах).


Поехали.


image



Слова-синонимы


Через последовательность действий


Я принял все предложения без споров и оправданий и начал действовать.
I accepted their advice without arguing or defending and acted on it.
Читать дальше →
Total votes 14: ↑14 and ↓0 +14
Views 3.6K
Comments 4

Артикли в английском: безжалостная война правил и исключений

Learning languages


В русском языке есть такие сложные грамматические понятия как род и падеж существительных. Даже нам, носителям языка, порой бывает сложно. А что уже говорить об иностранцах, изучающих русский?

В английском языке у существительных нет ни рода, ни падежа. Чтобы жизнь мёдом не казалась, мы должны уметь правильно использовать артикли. Они помогают понять конкретное ли это существительное или нет, исчисляемое или неисчисляемое, стоит ли оно в единственном или множественном числе. Проблема в том, что они непостоянны и могут меняться в зависимости от значения и контекста. Да и наличие исключений не упрощает нам жизнь.

Нет смысла писать ещё одну статью о базовых правилах употребления артиклей в английском. Сегодня я расскажу о правилах и о способах их нарушить.
Читать дальше →
Total votes 42: ↑40 and ↓2 +38
Views 35K
Comments 68
1

Information

Rating
4,368-th
Location
Австралия
Registered
Activity