Как стать автором
Обновить
231.16

DevOps *

Методология разработки программного обеспечения

Сначала показывать
Порог рейтинга

Всем привет! Не docker'ом единым мы живы. Хочу показать, какими ещё вариантами обхода блокировки Docker Hub в России пользуется наша команда.

cri-o
Добавьте в файл /etc/containers/registries.conf следующий блок:
[[registry]]
location = "docker.io"

[[registry.mirror]]
location = "mirror.gcr.io"

и перезагрузите cri-o. Можно не переживать за контейнеры, они ребутаться не будут.

containerd
Нужно добавить или отредактировать блок plugins в /etc/containerd/config.toml:
[plugins]
[plugins."io.containerd.grpc.v1.cri"]
[plugins."io.containerd.grpc.v1.cri".registry]

[plugins."io.containerd.grpc.v1.cri".registry.mirrors]

[plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]
endpoint = ["https://registry-1.docker.io", "https://mirror.gcr.io"]

и перезагрузить containerd. Здесь тоже можно не переживать за запущенные контейнеры.

Kaniko
Если возникли проблемы при билде с помощью Kaniko, то можно решить проблему либо добавлением аргумента --registry-mirror mirror.gcr.io, либо с помощью переменной окружения KANIKO_REGISTRY_MIRROR="mirror.gcr.io". Мы, например, вынесли её на уровень админки GitLab, чтобы вообще не трогать .gitlab-ci.yml, поэтому рекомендуем воспользоваться именно переменной для более комфортного обхода блокировки.

Теги:
+5
Комментарии0

Всем DevOps! Наш DevOps-инженер Данил выпустил очень полезный туториал для тех, кто только начинает своё знакомство с Kubernetes.

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

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

💻 Для того чтобы начать читать, тыкайте сюда.

Теги:
+4
Комментарии0

Docker Hub ушел из России. Чем это грозит?

Сегодня Docker Hub перестал работать для российских пользователей. Вместо репозитория открывается сообщение о блокировке IP-адресов в нескольких регионах мира, в том числе в Крыму. Однако сайт недоступен для всех россиян. Head of DevOps в AGIMA Дамир Грачев объясняет, почему это стало головной болью для большинства IT-компаний.

Стресс сегодня пережили многие, потому что тема микросервисной архитектуры стала модной в последние годы и Docker Hub был популярен. Из-за его отключения, по сути, упала инфраструктура многих проектов, остановился процесс выпуска релизов. Ломается сборка докеров, пайплайны и т. д. Могут даже ломаться кластеры Kubernetes, если в них ссылка на Docker Hub без зеркала.

Эта ситуация приводит к производственным сбоям. Все отвлекаются на решение этой проблемы. А если говорить глобально, то у каких-то компаний могут возникнуть проблемы с безопасностью. Сегодня мы увидели кучу странных зеркал на Docker Hub, которым сложно доверять. При их использовании произойти может что угодно — вплоть до повторении истории со СДЭКом.

Сейчас мы работаем в двух направлениях. Первое: чтобы мы могли продолжить работу, используем публичное зеркало, которому можно доверять. В нашем случае это зеркало от Яндекса. Второе направление: ищем способ решить проблему надолго. Поэтому у нас есть направление инфраструктурной разработки, делаем собственный кэширующий прокси. Рассчитываем уже сегодня закончить, на внедрение в проекты уйдет пара дней.

Теги:
+13
Комментарии0

Наша статья по DevSecOps победила в премии «Технотекст» в категории «Информационная безопасность», грейд Senior. Очень рад!

Расскажу в двух словах, о чём статья:
- В статье мы мы рассказали, что такое концепция Shift Left, и как она помогает сократить стоимость исправления ошибок и сроки разработки: чем раньше в процессе разработки начинаются проверки безопасности, тем лучше.
- Затем разобрали структуру DevSecOps-пайплайна и посмотрели, какие проверки безопасности проводят на каждом этапе пайплайна: от pre-commit до post-deploy.
- В конце рассказали о Security Dashboards — инструментах визуализации данных, которые помогают эффективно анализировать уязвимости и управлять процессом их устранения.

Читать статью

Все результаты премии «Технотекст»

Теги:
+6
Комментарии1

Друзья, у Миши, нашего DevOps-инженера, вышла вторая часть серии про создание почтового сервера с чистого поля.

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

В новой статье он показывает, как его настроить с помощью PostfixAdmin, Dovecot и RainLoop. А ещё в тексте вы найдёте немного экзотики, а именно best practices по Dovecot.

💻 Если вы ещё не читали, то вот ссылка. А здесь опубликована первая часть серии.

Теги:
+4
Комментарии2

21 мая проводим воркшоп «Приватные инсталляции Kubernetes»

Хотите узнать, как развернуть приватную инсталляцию Kubernetes в публичном облаке с помощью Terraform?

На практическом вебинаре поделимся тонкостями:
🔹 расскажем, как построить частное облако внутри публичного;
🔹 разберем клиентские кейсы;
🔹 покажем, как создать кластер Kubernetes с приватным API с помощью Terraform;


Задавайте вопросы через форму регистрации или в чате трансляции — ответим на них в конце вебинара. Авторам самых интересных подарим плюшевых Тирексов 🦖


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

Регистрируйтесь по ссылке →

Теги:
+6
Комментарии0

Всем DevOps! Станислав Тибекин, CEO компании Nixys, публикует перевод огромного и полезного чек-листа по разработке облачного приложения. Первая часть посвящена бизнес-требованиям.

Вы узнаете, что нужно учесть при разработке приложения, чтобы обеспечить отказоустойчивость, масштабируемость и непрерывность бизнеса.

А ещё вы найдёте полезную информацию про:

  • Базы данных;

  • Хранилища данных;

  • Инструменты;

  • Мониторинг;

  • Экологию.

Чтобы начать читать — кликайте сюда.

Теги:
+4
Комментарии0

💻 90 дней DevOps — обновлённый сборник

Цель данного цикла статей — быстрый обзор и прохождение основных понятий DevOps.

Вот некоторые из покрываемых тем: 

 — Использование Terraform

 — Сетевое взаимодействие Docker и безопасность

 — Установка minikube

 — Автоматизация сети с помощью Python

 — Работа с Jenkins

 — Визуализация данных в Grafana

 — Обзор ArgoCD

 — State и Ingress в Kubernetes

 — Ansible - контроллер автоматизации (Tower), AWX, Vault

 — Docker Compose

📎 Цикл статей

Если интересуетесь темой Devops, здесь я публикую разбор свежих devops инструментов, статей и гайдов, кладешь полезной информации.

#devops

Теги:
+3
Комментарии0

В 19:00 начинаем Selectel Admin Meetup.

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

Смотрите трансляцию прямо в этом посте или переходите на YouTube.

Теги:
Всего голосов 7: ↑7 и ↓0+10
Комментарии0

Всем привет! Мы продолжаем обзор Redis — системы хранения данных в виде структур. 

Новая статья Петра, нашего DevOps-инженера, — это детальное руководство по базовой репликации Redis. Благодаря ему вы сможете настроить эту СУБД на высокий уровень отказоустойчивости. 

Если суперкратко:

  • Репликация в Redis ассинхронна. 

  • Репликация не блокируется на стороне мастера. 

  • Репликация (почти) не блокируется на стороне слейвов. 

  • У мастера может быть любое количество реплик.

  • Каждый слейв может выступать мастером для другого инстанса.

А ещё в конце вас ждёт приятный бонус в виде разбора атаки на Redis через H2Miner, из-за которой можно полностью потерять данные на инстансе Redis

Нажмите сюда, что начать читать.

Теги:
Всего голосов 4: ↑4 и ↓0+5
Комментарии0

Привет, админы! 25 апреля проводим Selectel Admin Meetup.

Обсудим применение IAC для тестирования облачной платформы. Понаблюдаем за эволюцией установщиков ОС. Устроим дискуссию о том, кем становиться в 2024 году — DevOps-инженером или системным администратором.

Темы докладов и спикеры

Применяем IAC для тестирования облачной платформы — не terraform’ом единым
Олег Зайцев, архитектор клиентских решений, Selectel.

Эволюция установщиков ОС — нельзя автоматизировать?!
Александр Никифоров, старший системный администратор, Selectel.

Баттл «DevOps и системный администратор — в чем разница и куда стоит развиваться в 2024 году?»
Михаил Морев, старший эксперт по развитию DevOps-практик, Райффайзенбанк.
Александр Никифоров, старший системный администратор, Selectel.
Антон Алексеев, DevOps-инженер, Selectel.

Смотрите подробную программу и регистрируйтесь →

Теги:
Всего голосов 8: ↑8 и ↓0+11
Комментарии0

Друзья, у нас вышла заключительная часть серии «Б значит не Безумие, а Безопасность».

В финальной статье наш DevOps‑инженер Алексей покажет, как защитить ваши базы данных. В роли БД рассматривается PostgreSQL версии 14 с управлением через patroni.

Вы узнаете, как повысить скорость анализа потенциальных инцидентов, как настроить процессы шифрования дисков, как сгенерировать SSL‑сертификаты для базы данных и обеспечить их двухстороннюю проверку. А ещё познакомитесь с wal‑g-backup.

Если ещё не читали, то сейчас самое время;) Нажмите сюда, чтобы начать.

Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

Большая подборка вопросов с  собеседований: Системного администратора Linux / Devops

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

Вопросы для интервью системного администратора Linux/DevOps

Вопросы системного администратора

100 важных вопросов на собеседовании по Linux с ответами

Подборка вопросов для собеса с системным администратором linux/devops. 

Дополнительные вопросы для собеседования с системным администратором

Полезный материал для подготовки к собеседованию на должность инженера DevOps: Исчерпывающее руководство



Теги:
Всего голосов 8: ↑6 и ↓2+4
Комментарии1

Ближайшие события

Конференция «IT IS CONF 2024»
Дата20 июня
Время09:00 – 19:00
Место
Екатеринбург
Summer Merge
Дата28 – 30 июня
Время11:00
Место
Ульяновская область

Приглашаем на новый бесплатный вебинар «Стратегии успешной непрерывной интеграции».

На вебинаре поговорим о непрерывной интеграции, обсудим ее преимущества, стратегии и необходимые инструменты.

Дата: 11.04.2024
Время: 15:00-16:00 (МСК)

В рамках вебинара:
• обсудим, что такое непрерывная интеграция и задачи, которые она решает;
• поговорим про проблемы непрерывной интеграции и способы их решения;
• расскажем про скоростной конвейер и быструю обратную связь;
• поговорим про лучшие практики CI;
• обсудим процесс непрерывной интеграции и платформы для непрерывной интеграции;
• поделимся опытом работы с ограничениями;
• подискутируем про плюсы непрерывной интеграции.

Спикер вебинара: Никонов Герман работает в ИТ с 2012 года. Начал свою карьеру как системный администратор Windows и перешел к администрированию Linux и DevOps в 2018 от Junior Engineer до DevOps Engineer.

Регистрация по ссылке.

Теги:
Рейтинг0
Комментарии0

Прекрасный и ужасный Kubernetes

Сегодня на очереди пост по докладу Василия Мермера из Fland о кубернизации приложений. В полной версии Василий в деталях рассказывает о плюсах и минусах Kubernetes, о критериях хорошего приложения и его жизненном цикле.

Kubernetes — полезный инструмент для развертывания, масштабирования и управления контейнезированными приложениями. Но если с ним неправильно обращаться, он может работать против вас. Наверняка так и появилось мнение, что Kubernetes — не торт. Но проблема в том, что люди часто используют один контейнер для всего:

👎 Помещают внутрь Supervisorctl несколько процессов.

👎 У каждого свои лог-файлы для разных мест.

👎 Состояние лежит рядом в виде файла.

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

Чтобы ехать хорошо и быстро, нужно правильно написать, собрать и доставить код.

👍 Если конвейер CI/CD построен правильно, мы успешно доедем до финиша.

👍 Чтобы было куда доставить код, нужен правильно приготовленный Kubernetes.

👍 Приложение должно быть написано в соответствии с 12 факторами:

Источник тут


👍 И еще 7 факторами:

  • наблюдаемость (observable);

  • прогнозируемость (schedulable);

  • обновляемость (upgradable);

  • минимальные привилегии (least privilege);

  • контролируемость (auditable);

  • защищенность (securable);

  • измеримость (measurable).

Теги:
Всего голосов 14: ↑14 и ↓0+14
Комментарии0

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

Схема взаимодействия контейнерных технологий
Схема взаимодействия контейнерных технологий
  1. Утилита podman с помощью Libpod API обращается к библиотеке libpod, которая вызывает низкоуровневый container runtime (по умолчанию утилиту runc)
    containers/podman
    Podman Commands

  2. Утилита docker с помощью Docker API вызывает сервис dockerd
    docker/cli
    Docker CLI reference
    Docker architecture
    Docker API

  3. Сервис dockerd вызывает сервис containerd
    Dockerd reference

  4. Сервис containerd вызывает низкоуровневый container runtime (по умолчанию утилиту runc)
    containerd/containerd
    Containerd Scope and principles

  5. Сервис kubelet с помощью протокола CRI вызывает сервис container runtime (например, containerd или crio)
    Container Runtime Interface
    Container Runtimes
    CRI: the Container Runtime Interface

  6. Сервис containerd вызывает низкоуровневый container runtime (по умолчанию runc)
    Containerd CRI

  7. Сервис cri-o вызывает низкоуровневый container runtime (по умолчанию runc)
    cri-o/cri-o

  8. Утилита OCI container runtime (по умолчанию runc):

  • runc с помощью библиотеки libcontainer создает контейнер по runtime-spec, взаимодействуя с подсистемами ядра Linux – пространствами имен (namespaces) и контрольными группами (cgroups)
    opencontainers/runc
    runc man
    opencontainers/runc/libcontainer

  • crun создает контейнер по runtime-spec, взаимодействуя с подсистемами ядра Linux – пространствами имен (namespaces) и контрольными группами (cgroups)
    containers/crun

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии6

Приглашаем на бесплатный вебинар «Безопасность контейнеров Docker: уязвимости образов и сканеры проверки, методы обеспечения безопасности».

На вебинаре мы рассмотрим наиболее популярные инструменты, применяемые для поиска уязвимостей в образах, методы повышения безопасности при разработке и развертывании контейнерных приложений.

В рамках вебинара мы:

  • изучим инструменты проверки уязвимости образов;

  • проанализируем примеры проведения проверок для open‑source проектов и для enterprise;

  • рассмотрим разработку образов, обеспечивающих большую безопасность сред;

  • обсудим развертывание контейнеров — угрозы ИБ и их минимизация при выборе сетевых параметров.

Спикер вебинара: Буравцов Евгений — тимлид команды DevOps‑инженеров, DBA, системных администраторов в компании АО «БАРС Груп». Более 15 лет работает с государственными и частными заказчиками по различным ИТ‑проектам.

Дата: 14.03.2024

Время: 18:00–19:00 по МСК.

Регистрация по ссылке.

Теги:
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Как внедрить телеметрию в on-premise-инфраструктуре

На предстоящий DevOpsConf 2024 выступлю с докладом по телеметрии и расскажу:
— Какие инструменты вам помогут в деле формирования, сбора, хранения и отображения данных телеметрии.
— Как выбрать тот или иной продукт и не наткнуться на несовместимость решений.
— Какой набор инструментов использовать, если вы работаете исключительно с on-premise инфраструктурой.
Материалы доклада помогут собрать решение для вашего случая.

Кому будет полезен доклад:
DevOps-инженерам и архитекторам.

Обо мне:
Ведущий DevOps-инженер Hilbert Team. Более 15 лет в IТ. Cоавтор курсов Yandex Cloud: «DevSecOps в облачном CI/CD», «Аутентификация и управление доступами», «Managed Service for ClickHouse», «Масштабирование нагрузки в K8s».

Если планируете посетить DevOpsConf, приходите 4 марта в 10:00 в Зал «Кейптаун».

Теги:
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Kubernetes 1.29: Mandala

Основные апдейты

На этой неделе выпускаем в релиз версию 1.29: Mandala в Managed Kubernetes и рассказываем вам про значимые фичи, перешедшие в статус стабильных.

⬜Режим доступа для особо конфиденциальных данных. Если вы создаете под с PVC, который использует режим доступа ReadWriteOncePod, Kubernetes гарантирует, что ни один другой модуль во всем кластере не сможет считать или записать в PV данные.

⬜KMS версии 2. Теперь она обеспечивает многочисленные улучшения производительности, ротацию ключей, проверку работоспособности статуса и его мониторинг.

⬜NodeExpandSecret в GA. Эта функция добавляет Node Expand Secret к источникам постоянных томов SCSI и позволяет клиентам CSI отправлять его как часть запросов NodeExpandVolume драйверу CSI.

Посмотреть полный список изменений вы сможете в панели управления перед обновлением.
А чтобы протестировать сервис Managed Kubernetes в Selectel, переходите на наш сайт.

Теги:
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Один из самых недооцененных компонентов в разработке это «Developer Tools» – различные инструменты и утилиты для разработки и тестирования.
В каждой крупной компании есть своя «секретная формула крабсбургеров», просто некоторые компании охотнее делятся этими внутренними инструментами с сообществом.
Клон AWS crosvm для ChromeOS в конечном итоге лег в основу Firecracker, который AWS использует для Lambda.
Использование простой песочницы (на базе Linux KVM) позволяет сильно сэкономить время при проверке какой-то гипотезы или отладки ошибок.

Инженеры из RedHat пилят аналог crossvm для Linux и macOS.

https://github.com/containers/krunvm

Установка на MacOS:

brew tap slp/krun
brew install -s buildah libkrunfw libkrun krunvm

С помощью этой команды можно создать виртуальную машину из образа Docker:

krunvm create --name builder postgres:12.17-alpine3.18 --mem 4096

«Задебажить» какую-то проблему в гостевой системе:

krunvm start builder /bin/bash

Затем можно внести необходимые корректировки в конфиг образа Docker который используется в CI/CD конвейере.

Сложно не надо – надо просто. Чем проще и быстрее, тем лучше. Не надо писать тестовые фреймворки – надо писать инструменты.

Теги:
Рейтинг0
Комментарии0
1

Вклад авторов

Работа

DevOps инженер
44 вакансии