В прошлой статье (https://habr.com/ru/articles/794508/) я писал как поставить Proxmox 8 на Orange Pi 5(b). Это даже получилось, но я уперся в то, что производитель железки не выпускает свежие ядра под нее. Для железки есть 5.10.160 и оно устарело для Proxmox 8. Виртуалки работают, но есть проблемы с фаерволом. Производитель обещает вот-вот выпустить новое, но ждать я не стал и решил сделать инфраструктуру по другому. О чем и напишу. Получается уже цикл статей. Эта будет описывать цель и первые шаги к ней.
User
Terraform для инженерии данных
В облачной инфраструктуре вам на выбор предлагаются виртуальные машины (инфраструктура как услуга — IaaS) или бессерверные службы, такие как Azure SQL и Databricks. Мне кажется, что бессерверные сервисы не только обеспечивают гибкость, но и упрощают и конфигурирование системы, и её техническую поддержку. В этой статье будут показаны сильные стороны Terraform, надёжного инструмента для обслуживания инфраструктуры на уровне кода (IaaC). При помощи Terraform можно без труда обустроить облачную платформу для работы с данными.
10 самых распространенных проблем при линтинге Dockerfile'ов
Весной 2023 года разработчики Depot добавили в свой сервис возможность проверять Dockerfile'ы при каждой сборке.
В этой статье они делятся десятью наиболее распространенными проблемами при линтинге Dockerfile'ов, разбирают каждую проблему и объясняют, почему она возникает и как ее решить. Авторы отмечают, что со временем список может измениться, но даже в таком виде он станет хорошей отправной точкой для оптимизации Dockerfile'ов.
Как автоматизировать построение архитектурных схем в большой микросервисной системе
Если у вас есть большая система, состоящая из множества микросервисов, то вы наверняка задавались вопросом: «Что сделать, чтобы архитектурная схема всей системы была всегда на 100% актуальной?».
Обычно, в компаниях есть свои практики формирования архитектурных схем и ведения документации, что частично решает поставленный вопрос. Но проблема такова, что часто схемы со временем начинают расходиться с реальностью: новые интеграции добавляются, а старые — уходят, а актуализация схем вручную происходит не всегда своевременно.
Чтобы решить проблему мы автоматизировали отрисовку схем опираясь на метаданные IT-систем. Мы создали отдельный микросервис, который этим занимается и назвали его «Architect». О том как это происходит и как работает Architect я расскажу в этой статье, а также дам несколько советов, которые помогут внедрить то же самое у вас в компании.
Прикручиваем ActiveDirectory авторизацию к Kubernetes c помощью Keycloak
В этой статье я расскажу как установить и настроить:
- Keycloak — это проект с открытым исходным кодом. Который обеспечивает единую точку входа для приложений. Работает с множеством протоколов, в том числе с LDAP и OpenID которые нас интересуют.
- Keycloak gatekeeper — реверс прокси приложения, позволяющее интегрировать авторизаию через Keycloak.
- Gangway — приложение которе генерирует конфиг для kubectl с помощью которого через OpenID можно авторизоваться и подключиться к Kubernetes API.
Что такое GitOps [по версии Weaveworks]?
Год назад мы опубликовали введение в GitOps. Тогда мы рассказали, как команда Weaveworks запустила SaaS, целиком основанную на Kubernetes, и разработала набор предписывающих лучших практик для развертывания, управления и мониторинга в среде cloud native.
11 способов (не) стать жертвой взлома в Kubernetes
Безопасность в Kubernetes прошла длинный путь с момента появления проекта, однако в ней по-прежнему встречаются подводные камни. Предлагаем список полезных рекомендаций по тому, как защитить кластеры и повысить их устойчивость в случае взлома: начнём с control plane, продолжим с рабочими нагрузками и сетевой безопасностью, а закончим оценкой будущего безопасности.
Прикручиваем LDAP-авторизацию к Kubernetes
Небольшая инструкция о том, как используя Keycloak можно связать Kubernetes с вашим LDAP-сервером и настроить импорт пользователей и групп. Это позволит настраивать RBAC для ваших пользователей и использовать auth-proxy чтобы защитить Kubernetes Dashboard и другие приложения, которые не умеют производить авторизацию самостоятельно.
Подготовка приложения для Istio
Istio — это удобный инструмент для соединения, защиты и мониторинга распределенных приложений. В Istio используются разные технологии для масштабного запуска ПО и управления им, включая контейнеры для упаковки кода приложения и зависимостей для развертывания и Kubernetes — для управления этими контейнерами. Поэтому для работы с Istio вы должны знать, как приложение с несколькими сервисами на основе этих технологий работает без Istio. Если эти инструменты и понятия вам уже знакомы, смело пропускайте это руководство и переходите прямо к разделу Установка Istio на Google Kubernetes Engine (GKE) или установке расширения Istio on GKE.
Это пошаговое руководство, где мы рассмотрим весь процесс от исходного кода до контейнера на GKE, чтобы вы получили базовое представление об этих технологиях на примере. Также вы увидите, как Istio использует возможности этих технологий. Предполагается, что вы не знаете ничего о контейнерах, Kubernetes, service mesh или Istio.
Визуальное руководство по диагностике неисправностей в Kubernetes
TL;DR: вот схема, которая поможет вам отладить deployment в Kubernetes:
Помощь девопсам по внедрению PKI
Ключевые интеграции Venafi
У девопсов и так много работы, а от них ещё требуют экспертных знаний по криптографии и инфраструктуре открытых ключей (PKI). Это неправильно.
Действительно, у каждой машины должен быть валидный TLS-сертификат. Они нужны для серверов, контейнеров, виртуальных машин, в сетках service mesh. Но количество ключей и сертификатов растёт как снежный ком, а управление быстро становится хаотичным, дорогостоящим и рискованным, если всё делать самостоятельно. При отсутствии надлежащей практики применения политик и мониторинга бизнес может пострадать из-за слабых сертификатов или неожиданного истечения срока действия.
GlobalSign и Venafi организовали два вебкаста в помощь девопсам. Первый — вводный, а второй — с более конкретными техническими советами по подключению системы PKI от GlobalSign через облако Venafi с помощью опенсорсных инструментов через HashiCorp Vault из конвейера Jenkins CI/CD.
Запуск кластера RabbitMQ в Kubernetes
В наших решениях мы используем интеграцию и с помощью Kafka, и с помощью gRPC, и с помощью RabbitMQ.
В этой статье мы поделимся нашим опытом кластеризации RabbitMQ, ноды которого размещены в Kubernetes.
До RabbitMQ версии 3.7 его кластеризация в K8S была не очень тривиальной задачей, со множеством хаков и не очень красивых решений. В версии 3.6 использовался autocluster плагин из RabbitMQ Community. А в 3.7 появился Kubernetes Peer Discovery Backend. Он встроен плагином в базовую поставку RabbitMQ и не требует отдельной сборки и установки.
Мы опишем итоговую конфигурацию целиком, попутно комментируя происходящее.
Groovy за 15 минут – краткий обзор
Groovy использует Java-подобный синтаксис с динамической компиляцией в JVM байт-код и напрямую работает с другим Java кодом и библиотеками. Язык может использоваться в любом Java проекте или как скриптовый язык.
Возможности Groovy (отличающие его от Java):
— Статическая и динамическая типизация
— Встроенный синтаксис для списков, ассоциативных массивов, массивов и регулярных выражений
— Замыкания
— Перегрузка операций
[http://ru.wikipedia.org/wiki/Groovy]
Более того, почти всегда java-код — это валидный groovy-код.
Возможно, вам не нужен Kubernetes
Девушка на скутере. Иллюстрация freepik, логотип Nomad от HashiCorp
Kubernetes — это 300-килограммовая горилла для оркестровки контейнеров. Она работает в некоторых самых крупных контейнерных системах в мире, но дорого обходится.
Особенно дорого для небольших команд, которым придётся потратить много времени на поддержку и крутую кривую обучения. Для нашей команды из четырёх человек это слишком много накладных расходов. Поэтому мы стали искать альтернативы — и влюбились в Nomad.
Иллюстрированное руководство по устройству сети в Kubernetes. Части 1 и 2
Вот вы запустили множество сервисов в кластере Kubernetes и пожинаете плоды… или хотя бы собираетесь это сделать. Однако, даже несмотря на существование ряда утилит для настройки кластера и управления им, вам всё же интересно, как всё работает «под капотом». Куда смотреть, если что-то сломается? По себе знаю, что это важно.
Сети Kubernetes: поды
За кулисами сети в Kubernetes
Помимо того факта, что руководство Kubernetes The Hard Way от Kelsey Hightower просто работает (даже на AWS!), мне понравилось, что сеть поддерживается в чистоте и простоте; и это замечательная возможность понять, какова роль, например, Container Network Interface (CNI). Сказав это, добавлю, что сеть Kubernetes в действительности не очень-то интуитивно понятна, особенно для новичков… а также не забывайте, что «такой вещи, как сети для контейнеров, попросту не существует».
Руководство по Kubernetes, часть 1: приложения, микросервисы и контейнеры
По нашей просьбе Хабр создал хаб Kubernetes и нам приятно разместить первую публикацию в нём. Подписывайтесь!
Kubernetes — это просто. Почему же банки платят мне за работу в этой сфере большие деньги, в то время как любой может освоить эту технологию буквально за несколько часов?
Начало работы в Kubernetes с помощью Minikube
Предисловие переводчика: Minikube — удобный инструмент, который мы применяем в компании для локальных экспериментов с Kubernetes (в частности, для выполнения лабораторных работ по этой системе при обучении сотрудников). Эта статья показалась мне полезной во время моего знакомства с Kubernetes. Она написана год назад автором, использующим Mac OS X, а я проделывал все операции в Ubuntu 16.04 совсем недавно и с актуальными версиями основного софта: Minikube 0.20, Docker 17.06.0-ce, kubectl 1.7.0. Поэтому все выводы команд были переделаны под новые версии и незначительно отличаются от приведённых в оригинальной статье.
Управление логгированием в systemd
Демон инициализации systemd де-факто уже стал стандартом в современных Linux-системах. На него перешли многие популярные дистрибутивы: Debian, RHEL/CentOS, Ubuntu (начиная с версии 15.04). В systemd используется принципиально иной (по сравнению с традиционным инструментом syslog) подход к логгированию.
В его основе лежит централизация: специализированный компонент journal cобирает все системные сообщения (сообщения ядра, различных служб и приложений). При этом специально настраивать отправку логов не нужно: приложения могут просто писать в stdout и stderr, a journal сохранит эти сообщения автоматически. Работа в таком режиме возможна и с Upstart, но он сохраняет все логи в отдельный файл, тогда как systemd сохраняет их в бинарной базе, что существенно упрощает систематизацию и поиск.
Хранение логов в бинарных файлах также позволяет избежать сложностей с использованием парсеров для разных видов логов. При необходимости логи можно без проблем переконвертировать в другие форматы (более подробно об этом будет рассказано ниже).
Journal может работать как совместно с syslog, так и полностью заменить его.
Для просмотра логов используется утилита journalctl. Об особенностях и тонкостях работы с ней мы расскажем в этой статье.
Information
- Rating
- Does not participate
- Registered
- Activity