🗓 18 декабря в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «CI/CD на основе GitLab».
На вебинаре разберем:
После вебинара вы сможете:
- Навести порядок в .gitlab-ci.yml и убрать дублирование шагов.
- Создавать гибкие, масштабируемые пайплайны для разных проектов.
- Стандартизировать CI/CD-процессы в команде без потери гибкости.
🔗 Ссылка на регистрацию: https://vk.cc/cSsoef
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
📌Что такое userspace, kernelspace? Чем они отличаются?
Под пользовательским пространством понимается весь код операционной системы, который находится вне ядра.
Большинство Unix-подобных операционных систем (включая Linux) поставляются с разнообразными предустановленными утилитами, средствами разработки и графическими инструментами — это все приложения пространства пользователя.
Все пользовательские приложения (и контейнеризированные, и нет) при работе используют различные данные, но где эти данные хранятся?
Ядро обеспечивает абстракцию для безопасности, оборудования и внутренних структур данных. Например, системный вызов open() используется для получения дескриптора файла в Python, C, Ruby и других языках программирования. Вряд ли бы вы хотели, чтобы ваша программа работала с XFS на уровне битов, поэтому ядро предоставляет системные вызовы и работает с драйверами. Фактически этот системный вызов настолько распространен, что является частью библиотеки POSIX .
Краткое определение:
👉 Пользовательское пространство представляющее собой набор местоположений, в которых выполняются обычные пользовательские процессы (т. е. все, кроме ядра). Роль ядра состоит в том, чтобы управлять приложениями, работающими в этом пространстве, от взаимодействия друг с другом и с машиной.
👉 Пространство ядра , то есть место, где хранится и выполняется код ядра.
Пользовательское пространство имеет доступ к ограниченной памяти, ядро имеет всю память.
И чтобы работать, приложения взаимодействуют через интерфейс, которое называется системным вызовом.
📌В чем разница между docker stop и docker pause?
В том, что они посылают разные сигналы.
docker pause — SIGSTOP(19), что приостанавливает процессы в контейнере.
docker stop — sigterm и sigkill использует к главному процессу контейнера.
📌В чем разница между SQL и NoSQL?
Основное отличие состоит в том, что базы данных SQL структурированы (данные хранятся в виде таблиц со строками и столбцами — как таблица электронной таблицы Excel), тогда как базы данных NoSQL неструктурированы, и хранение данных может варьироваться в зависимости от того, как настроена база данных NoSQL. Например, пары ключ-значение, документо-ориентированная и т. д.
👉 @devops_star
Под пользовательским пространством понимается весь код операционной системы, который находится вне ядра.
Большинство Unix-подобных операционных систем (включая Linux) поставляются с разнообразными предустановленными утилитами, средствами разработки и графическими инструментами — это все приложения пространства пользователя.
Все пользовательские приложения (и контейнеризированные, и нет) при работе используют различные данные, но где эти данные хранятся?
Ядро обеспечивает абстракцию для безопасности, оборудования и внутренних структур данных. Например, системный вызов open() используется для получения дескриптора файла в Python, C, Ruby и других языках программирования. Вряд ли бы вы хотели, чтобы ваша программа работала с XFS на уровне битов, поэтому ядро предоставляет системные вызовы и работает с драйверами. Фактически этот системный вызов настолько распространен, что является частью библиотеки POSIX .
Краткое определение:
👉 Пользовательское пространство представляющее собой набор местоположений, в которых выполняются обычные пользовательские процессы (т. е. все, кроме ядра). Роль ядра состоит в том, чтобы управлять приложениями, работающими в этом пространстве, от взаимодействия друг с другом и с машиной.
👉 Пространство ядра , то есть место, где хранится и выполняется код ядра.
Пользовательское пространство имеет доступ к ограниченной памяти, ядро имеет всю память.
И чтобы работать, приложения взаимодействуют через интерфейс, которое называется системным вызовом.
📌В чем разница между docker stop и docker pause?
В том, что они посылают разные сигналы.
docker pause — SIGSTOP(19), что приостанавливает процессы в контейнере.
docker stop — sigterm и sigkill использует к главному процессу контейнера.
📌В чем разница между SQL и NoSQL?
Основное отличие состоит в том, что базы данных SQL структурированы (данные хранятся в виде таблиц со строками и столбцами — как таблица электронной таблицы Excel), тогда как базы данных NoSQL неструктурированы, и хранение данных может варьироваться в зависимости от того, как настроена база данных NoSQL. Например, пары ключ-значение, документо-ориентированная и т. д.
👉 @devops_star
👍1
📌Что такое диспетчер контроллеров Kubernetes?
Менеджер контроллеров Kubernetes встраивает контроллеры и отвечает за создание пространства имен. Здесь контроллеры представляют собой контуры управления, которые следят за состоянием вашего кластера, а затем при необходимости вносят или запрашивают изменения. Каждый контроллер пытается перевести текущее состояние кластера в желаемое.
📌Что такое VLAN?
VLAN (виртуальная локальная сеть) — это логическая сеть, которая группирует набор устройств в физической сети независимо от их физического местоположения. Сети VLAN создаются путем настройки сетевых коммутаторов для назначения определенного идентификатора VLAN кадрам, отправляемым устройствами, подключенными к определенному порту или группе портов коммутатора.
📌Знаете ли вы, что такое мониторинг ресурсов контейнера?
Мониторинг ресурсов контейнера — это процесс постоянного сбора метрик. Кроме того, он отслеживает состояние контейнерных приложений, чтобы улучшить их работоспособность и производительность, а также обеспечить бесперебойную работу. Мониторинг ресурсов контейнеров стал популярным, поскольку обеспечивает надежные возможности отслеживания потенциальных сбоев.
📌Что такое автоматизация? Чем это связано или отличается от оркестровки?
Автоматизация — это процесс автоматизации задач, позволяющий уменьшить вмешательство человека или взаимодействие с ИТ-технологиями и системами.
В то время как автоматизация фокусируется на уровне задач, оркестровка — это процесс автоматизации процессов и/или рабочих процессов, который состоит из множества задач, обычно выполняемых в нескольких системах.
👉 @devops_star
Менеджер контроллеров Kubernetes встраивает контроллеры и отвечает за создание пространства имен. Здесь контроллеры представляют собой контуры управления, которые следят за состоянием вашего кластера, а затем при необходимости вносят или запрашивают изменения. Каждый контроллер пытается перевести текущее состояние кластера в желаемое.
📌Что такое VLAN?
VLAN (виртуальная локальная сеть) — это логическая сеть, которая группирует набор устройств в физической сети независимо от их физического местоположения. Сети VLAN создаются путем настройки сетевых коммутаторов для назначения определенного идентификатора VLAN кадрам, отправляемым устройствами, подключенными к определенному порту или группе портов коммутатора.
📌Знаете ли вы, что такое мониторинг ресурсов контейнера?
Мониторинг ресурсов контейнера — это процесс постоянного сбора метрик. Кроме того, он отслеживает состояние контейнерных приложений, чтобы улучшить их работоспособность и производительность, а также обеспечить бесперебойную работу. Мониторинг ресурсов контейнеров стал популярным, поскольку обеспечивает надежные возможности отслеживания потенциальных сбоев.
📌Что такое автоматизация? Чем это связано или отличается от оркестровки?
Автоматизация — это процесс автоматизации задач, позволяющий уменьшить вмешательство человека или взаимодействие с ИТ-технологиями и системами.
В то время как автоматизация фокусируется на уровне задач, оркестровка — это процесс автоматизации процессов и/или рабочих процессов, который состоит из множества задач, обычно выполняемых в нескольких системах.
👉 @devops_star
👍1
Автоматическая генерация CI/CD пайплайна для развёртывания инфраструктуры
Подход «Инфраструктура как код» означает, что инфраструктура создаётся, развёртывается и управляется при помощи кода. Это позволяет автоматизировать процессы, делать их более гибкими и масштабируемыми. Код для инфраструктуры фиксирует конфигурацию, обеспечивает воспроизводимость и упрощает управление настройками. Также благодаря этому подходу возрастает эффективность работы команды, поскольку он позволяет вести совместное развитие инфраструктуры и обеспечивает удобство отслеживания изменений.
Именно этот подход мы используем при нашей работе. Однако в процессе его использования мы столкнулись с проблемой написания пайплайнов для инфраструктуры.
Мы были вынуждены сделать процесс выкатки инфраструктуры максимально точечным из-за использования terragrunt. Каждый его модуль должен выкатываться отдельно, иначе будут получены десятки планов, и понять, что делает каждый из них, будет невозможно. Это означает, что каждому модулю terragrunt нужна отдельная джоба в пайплайне на plan и apply, но для каждого модуля они во многом повторяют друг друга. Подобное постоянное написание одинаковых частей CI/CD пайплайна при добавлении новых баз и бакетов навевало тоску.
Меня зовут Татьяна Мигулаева, я DevOps-инженер в «Магните». Поделюсь тем, как мы создали генератор джоб в GitLab CI/CD и навсегда забыли о ручном написании пайплайнов для развёртывания элементов инфраструктуры.
https://habr.com/ru/companies/magnit/articles/776214/
👉 @devops_star
Подход «Инфраструктура как код» означает, что инфраструктура создаётся, развёртывается и управляется при помощи кода. Это позволяет автоматизировать процессы, делать их более гибкими и масштабируемыми. Код для инфраструктуры фиксирует конфигурацию, обеспечивает воспроизводимость и упрощает управление настройками. Также благодаря этому подходу возрастает эффективность работы команды, поскольку он позволяет вести совместное развитие инфраструктуры и обеспечивает удобство отслеживания изменений.
Именно этот подход мы используем при нашей работе. Однако в процессе его использования мы столкнулись с проблемой написания пайплайнов для инфраструктуры.
Мы были вынуждены сделать процесс выкатки инфраструктуры максимально точечным из-за использования terragrunt. Каждый его модуль должен выкатываться отдельно, иначе будут получены десятки планов, и понять, что делает каждый из них, будет невозможно. Это означает, что каждому модулю terragrunt нужна отдельная джоба в пайплайне на plan и apply, но для каждого модуля они во многом повторяют друг друга. Подобное постоянное написание одинаковых частей CI/CD пайплайна при добавлении новых баз и бакетов навевало тоску.
Меня зовут Татьяна Мигулаева, я DevOps-инженер в «Магните». Поделюсь тем, как мы создали генератор джоб в GitLab CI/CD и навсегда забыли о ручном написании пайплайнов для развёртывания элементов инфраструктуры.
https://habr.com/ru/companies/magnit/articles/776214/
👉 @devops_star
👍1
Введение в Istio для Kubernetes: основы и начальная настройка
Работая DevOps‑инженером в Т1 Иннотех, я часто сталкиваюсь с необходимостью глубоко погружаться в механизмы работы контейнерных оркестраторов. Важность хорошего знания архитектуры и оптимизации управления контейнерами трудно переоценить, особенно когда речь идёт о Kubernetes. Эта технология стала неотъемлемой частью моего инструментария благодаря её возможностям в автоматизации развёртывания, масштабирования и управления контейнерными приложениями.
Однако управлять микросервисной архитектурой в Kubernetes порой весьма сложно. И здесь на помощь приходит Istio — мощная платформа, обеспечивающая сетевое взаимодействие, безопасность и наблюдаемость в кластере Kubernetes. В этой статье мы рассмотрим основы Istio и её начальную настройку.
https://habr.com/ru/companies/T1Holding/articles/837896/
👉 @devops_star
Работая DevOps‑инженером в Т1 Иннотех, я часто сталкиваюсь с необходимостью глубоко погружаться в механизмы работы контейнерных оркестраторов. Важность хорошего знания архитектуры и оптимизации управления контейнерами трудно переоценить, особенно когда речь идёт о Kubernetes. Эта технология стала неотъемлемой частью моего инструментария благодаря её возможностям в автоматизации развёртывания, масштабирования и управления контейнерными приложениями.
Однако управлять микросервисной архитектурой в Kubernetes порой весьма сложно. И здесь на помощь приходит Istio — мощная платформа, обеспечивающая сетевое взаимодействие, безопасность и наблюдаемость в кластере Kubernetes. В этой статье мы рассмотрим основы Istio и её начальную настройку.
https://habr.com/ru/companies/T1Holding/articles/837896/
👉 @devops_star
👍1
📌Какие типы сетевых драйверов используются в docker?
Основные драйвера сетей docker: bridge, host, overlay, ipvlan, macvlan, none.
📌Что вы можете найти в разделе «Discover» Kibana?
Необработанные данные в том виде, в каком они хранятся в индексе. Вы можете искать и фильтровать их.
📌Как данные хранятся в Elasticsearch?
Данные хранятся в индексе, он распределяется по кластеру с помощью шардов.
📌Что такое плагины Logstash? Какие типы плагинов существуют?
Плагины ввода — как собирать данные из разных источников;
Плагины фильтров — обработка данных;
Плагины вывода — передача данных на различные выходы/сервисы/платформы.
👉 @devops_star
Основные драйвера сетей docker: bridge, host, overlay, ipvlan, macvlan, none.
📌Что вы можете найти в разделе «Discover» Kibana?
Необработанные данные в том виде, в каком они хранятся в индексе. Вы можете искать и фильтровать их.
📌Как данные хранятся в Elasticsearch?
Данные хранятся в индексе, он распределяется по кластеру с помощью шардов.
📌Что такое плагины Logstash? Какие типы плагинов существуют?
Плагины ввода — как собирать данные из разных источников;
Плагины фильтров — обработка данных;
Плагины вывода — передача данных на различные выходы/сервисы/платформы.
👉 @devops_star
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
ContainerSSH
SSH-сервер, который запускает контейнеры в Kubernetes и Docker
https://github.com/ContainerSSH/ContainerSSH
👉 @devops_star
SSH-сервер, который запускает контейнеры в Kubernetes и Docker
https://github.com/ContainerSSH/ContainerSSH
👉 @devops_star
👍1
Media is too big
VIEW IN TELEGRAM
Что такое CI/CD? // Зачем и как работает
Что такое CI/CD: простое объяснение для новичков про Continuous Integration, Continuous Delivery/Deployment. Они же - непрерывная интеграция и непрерывная доставка или развертывание. Что там за магия происходит под капотом, зачем это вообще придумали и какие цели преследуются?
Расскажу про то, какие есть процессы внутри, как и где это запускается без привязки к конкретным инструментам вроде Gitlab и Jenkins. Про артефакты, Nexus, тест-гейты, агенты и раннеры.
источник
👉 @devops_star
Что такое CI/CD: простое объяснение для новичков про Continuous Integration, Continuous Delivery/Deployment. Они же - непрерывная интеграция и непрерывная доставка или развертывание. Что там за магия происходит под капотом, зачем это вообще придумали и какие цели преследуются?
Расскажу про то, какие есть процессы внутри, как и где это запускается без привязки к конкретным инструментам вроде Gitlab и Jenkins. Про артефакты, Nexus, тест-гейты, агенты и раннеры.
источник
👉 @devops_star
👍2
Код для облака: Освоение DevOps с помощью Python, Terraform и Kubernetes на AWS
Как инженер DevOps, я обычно связан с конвейерами, автоматизацией и облачными сервисами. Однако мне всегда было интересно узнать о другой стороне технологического мира - разработке приложений. Поэтому я подумал, почему бы не разнообразить мир? Так я пришел к созданию финансового приложения на Python, дополненного REST API.
В этом блоге я рассказываю о разработке и развертывании моего финансового приложения с нуля, от кода начального приложения до его развертывания на AWS с помощью Docker, Kubernetes (EKS), Terraform и Ansible. И знаете что? Я автоматизировал весь процесс - каждый его кусочек!
https://towardsaws.com/coding-to-cloud-mastering-devops-with-python-terraform-and-kubernetes-on-aws-6251a910511f
👉 @devops_star
Как инженер DevOps, я обычно связан с конвейерами, автоматизацией и облачными сервисами. Однако мне всегда было интересно узнать о другой стороне технологического мира - разработке приложений. Поэтому я подумал, почему бы не разнообразить мир? Так я пришел к созданию финансового приложения на Python, дополненного REST API.
В этом блоге я рассказываю о разработке и развертывании моего финансового приложения с нуля, от кода начального приложения до его развертывания на AWS с помощью Docker, Kubernetes (EKS), Terraform и Ansible. И знаете что? Я автоматизировал весь процесс - каждый его кусочек!
https://towardsaws.com/coding-to-cloud-mastering-devops-with-python-terraform-and-kubernetes-on-aws-6251a910511f
👉 @devops_star
👍1
Media is too big
VIEW IN TELEGRAM
Современный GitOps - противостояние манифестов
Вначале мы деплоили код на физические серверы через FTP и SSH. Потом научились использовать контейнеры, но окружение для управления ими все равно приходилось разворачивать админам. Сейчас на фронтире DevOps мы учимся разворачивать не только код, но и всю инфраструктуру с помощью yaml файлов.
В докладе я расскажу про современный подход GitOps, который объединяет развертывание как инфраструктуры, так и приложений. Расскажу про существующие решения, и как мы в Evrone их используем.
И да, мы разворачиваем Kubernets с помощью Kubernetes :)
Слушатели узнают о лучших практиках работы с окружениями, как правильно и безопасно настроить процессы проверки качества и доставки кода на серверы, получат представление о том, куда развивается индустрия.
источник
👉 @devops_star
Вначале мы деплоили код на физические серверы через FTP и SSH. Потом научились использовать контейнеры, но окружение для управления ими все равно приходилось разворачивать админам. Сейчас на фронтире DevOps мы учимся разворачивать не только код, но и всю инфраструктуру с помощью yaml файлов.
В докладе я расскажу про современный подход GitOps, который объединяет развертывание как инфраструктуры, так и приложений. Расскажу про существующие решения, и как мы в Evrone их используем.
И да, мы разворачиваем Kubernets с помощью Kubernetes :)
Слушатели узнают о лучших практиках работы с окружениями, как правильно и безопасно настроить процессы проверки качества и доставки кода на серверы, получат представление о том, куда развивается индустрия.
источник
👉 @devops_star
👍2❤1
Фильтры Ansible: превращаем сложное в простое
Используя Ansible в качестве инструмента автоматизации, часто приходится сталкиваться с задачей обработки и фильтрации структурированных данных. Как правило, это набор фактов, полученных с управляемых серверов, или ответ на запрос к внешним API, которые возвращают данные в виде стандартного json. Многие неопытные инженеры, используя Ansible в таких случаях, начинают прибегать к помощи привычных консольных команд и начинают городить то, что среди специалистов получило название bashsible. В общем, вспоминается известный мем:
В этой статье мы покажем, как легко и просто можно обрабатывать данные прямо в Ansible, используя его собственные мощные возможности. Речь идет о фильтрах Jinja2, которые представляют собой мощный, но в то же время интуитивно понятный инструмент для трансформации данных. Эти фильтры позволяют эффективно сортировать, выбирать и преобразовывать данные, устраняя необходимость в сложных внешних командах и скриптах.
https://habr.com/ru/articles/778206/
👉 @devops_star
Используя Ansible в качестве инструмента автоматизации, часто приходится сталкиваться с задачей обработки и фильтрации структурированных данных. Как правило, это набор фактов, полученных с управляемых серверов, или ответ на запрос к внешним API, которые возвращают данные в виде стандартного json. Многие неопытные инженеры, используя Ansible в таких случаях, начинают прибегать к помощи привычных консольных команд и начинают городить то, что среди специалистов получило название bashsible. В общем, вспоминается известный мем:
В этой статье мы покажем, как легко и просто можно обрабатывать данные прямо в Ansible, используя его собственные мощные возможности. Речь идет о фильтрах Jinja2, которые представляют собой мощный, но в то же время интуитивно понятный инструмент для трансформации данных. Эти фильтры позволяют эффективно сортировать, выбирать и преобразовывать данные, устраняя необходимость в сложных внешних командах и скриптах.
https://habr.com/ru/articles/778206/
👉 @devops_star
👍1
Media is too big
VIEW IN TELEGRAM
Как анализировать двоичные файлы в Linux: Введение в Binsider
😼🕵️♂️ Binsider может выполнять статический и динамический анализ, проверять строки, исследовать связанные библиотеки и выполнять hexdumps, и все это в удобном интерфейсе терминала!
https://github.com/orhun/binsider
https://binsider.dev/installation/binary-releases/
👉 @devops_star
😼🕵️♂️ Binsider может выполнять статический и динамический анализ, проверять строки, исследовать связанные библиотеки и выполнять hexdumps, и все это в удобном интерфейсе терминала!
https://github.com/orhun/binsider
https://binsider.dev/installation/binary-releases/
👉 @devops_star
👍1