<?xml version="1.0" encoding="utf-8" ?><rss version="2.0" xmlns:tt="http://teletype.in/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:media="http://search.yahoo.com/mrss/"><channel><title>VibeAdmin</title><generator>teletype.in</generator><description><![CDATA[VibeAdmin]]></description><image><url>https://img3.teletype.in/files/a2/1c/a21c09da-59b5-4642-b23f-4b6250251a68.png</url><title>VibeAdmin</title><link>https://teletype.in/@undercode_ii</link></image><link>https://teletype.in/@undercode_ii?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=undercode_ii</link><atom:link rel="self" type="application/rss+xml" href="https://teletype.in/rss/undercode_ii?offset=0"></atom:link><atom:link rel="next" type="application/rss+xml" href="https://teletype.in/rss/undercode_ii?offset=10"></atom:link><atom:link rel="search" type="application/opensearchdescription+xml" title="Teletype" href="https://teletype.in/opensearch.xml"></atom:link><pubDate>Thu, 28 May 2026 07:17:03 GMT</pubDate><lastBuildDate>Thu, 28 May 2026 07:17:03 GMT</lastBuildDate><item><guid isPermaLink="true">https://teletype.in/@undercode_ii/vibecoding_1</guid><link>https://teletype.in/@undercode_ii/vibecoding_1?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=undercode_ii</link><comments>https://teletype.in/@undercode_ii/vibecoding_1?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=undercode_ii#comments</comments><dc:creator>undercode_ii</dc:creator><title>Урок 1: Как начать работать через ИИ и собрать основу для вайб кодинга за 30 минут</title><pubDate>Thu, 26 Mar 2026 18:18:21 GMT</pubDate><media:content medium="image" url="https://img3.teletype.in/files/26/5c/265ce418-da9d-4535-904f-6758c344b5d6.png"></media:content><description><![CDATA[<img src="https://img4.teletype.in/files/7f/90/7f906a69-ad37-49e9-b0cc-bc41791dc1fc.png"></img>Добро пожаловать на первый урок! Если вы здесь, значит, у вас есть идея, которая давно просится в мир. Возможно, вы давно хотели запустить свой сервис или протестировать бизнес-гипотезу, но каждый раз, когда дело доходило до старта, включался внутренний тормоз.]]></description><content:encoded><![CDATA[
  <figure id="lw1U" class="m_retina">
    <img src="https://img4.teletype.in/files/7f/90/7f906a69-ad37-49e9-b0cc-bc41791dc1fc.png" width="512" />
    <figcaption>https://t.me/Undercode_ai</figcaption>
  </figure>
  <p id="bFwH">Добро пожаловать на первый урок! Если вы здесь, значит, у вас есть идея, которая давно просится в мир. Возможно, вы давно хотели запустить свой сервис или протестировать бизнес-гипотезу, но каждый раз, когда дело доходило до старта, включался внутренний тормоз.</p>
  <p id="K8Ng">Дайте угадаю, что вас останавливало.</p>
  <ul id="wJHH">
    <li id="A2kE"><strong>&quot;Темный лес&quot;</strong> - нужно с нуля учить языки программирования, копаться в серверах и настраивать базы данных.</li>
    <li id="GDIO"><strong>&quot;Долго запрягаем&quot;</strong> - на создание даже самого простого IT-продукта уйдут месяцы, а то и годы тяжелой работы.</li>
    <li id="c0Qh"><strong>&quot;Влетит в копеечку&quot;</strong> - нужно нанимать целую команду разработчиков, платить им зарплату и надеяться, что они сделают то, что нужно, а не &quot;как всегда&quot;.</li>
  </ul>
  <p id="dt9A">Раньше все эти страхи были абсолютно оправданы. Без вариантов. Но сейчас лед тронулся! Правила игры изменились кардинально.</p>
  <h3 id="WY4n">Что изменилось в разработке?</h3>
  <p id="0s3o">Мы перешли от эпохи &quot;писать код руками&quot; к эпохе &quot;управлять искусственным интеллектом&quot;.</p>
  <p id="Px0Y">Раньше программист был эдаким Левшой - он вручную вытачивал каждую деталь, каждую строчку кода, чтобы кнопка просто заработала. Сегодня всю эту черновую работу нейросети берут на себя. ИИ знает синтаксис всех языков программирования в мире лучше любого сеньора-разработчика.</p>
  <p id="i970"><strong>Ваша новая роль - это архитектор и прораб на стройке.</strong> Вам больше не нужно знать, <em>как именно</em> замешивать бетон (писать код). Вам нужно понимать, <em>что</em> вы хотите построить, и уметь четко поставить задачу своему цифровому напарнику.</p>
  <h3 id="aDav">Что такое Vibe Coding?</h3>
  <p id="mzyy"><strong>Vibe Coding (вайб-кодинг)</strong> - это современный подход к созданию продуктов, при котором вы общаетесь с ИИ на нормальном, человеческом языке. Вы описываете логику и внешний вид приложения, а нейросеть сама пишет, тестирует и внедряет готовый код.</p>
  <p id="oOiE">Вы буквально передаете ИИ &quot;вайб&quot; - настроение, суть и бизнес-логику вашей идеи.</p>
  <ul id="ziUj">
    <li id="Q8gR"><strong>Пример из прошлого:</strong> Чтобы создать форму регистрации, вы бы писали десятки строк на HTML, CSS и JavaScript, ломая голову, почему поля разъехались на мобильном телефоне.</li>
    <li id="GyZ6"><strong>Пример Vibe Coding:</strong> Вы пишете ИИ: <em>&quot;Сделай современный лендинг с bento-сетками (как у топовых B2B SaaS проектов). Нужна форма регистрации: email, пароль и черная кнопка &#x27;Войти&#x27;. Если пользователь ввел пароль короче 6 символов - покажи красную ошибку&quot;</em>.</li>
  </ul>
  <p id="1u3u">Через 5 секунд у вас есть готовый рабочий код, и все выглядит с иголочки.</p>
  <h3 id="T1hm">Анатомия приложения (просто о сложном)</h3>
  <p id="LpDv">Чтобы ИИ понимал вас с полуслова, нужно говорить на одном языке. Любое приложение в мире состоит из трех китов. Представьте себе обычный ресторан:</p>
  <ol id="eoKl">
    <li id="uRuY"><strong>Frontend (Фронтенд)</strong> - это зал ресторана, красивые столики, меню и вежливые официанты. Это все, что видит пользователь и с чем он взаимодействует: кнопки, модные сетки дизайна, картинки, тексты, анимации. Когда вы просите ИИ &quot;сделать красивую карточку товара&quot; - вы строите фронтенд.</li>
    <li id="4afs"><strong>Backend (Бэкенд)</strong> - это святая святых, кухня ресторана и шеф-повар. Посетитель не видит, как жарится стейк, он только получает готовое блюдо. Бэкенд скрыт от глаз: он принимает запрос (клик по кнопке оплаты), проверяет безопасность, проводит транзакцию и отправляет письма. Это мозг системы.</li>
    <li id="kBqe"><strong>База данных</strong> - это ваша кладовка с продуктами и амбарная книга. Здесь надежно, как в швейцарском банке, хранится вся информация: логины, пароли, история покупок, тексты постов.</li>
  </ol>
  <p id="Poln">Вам не придется с нуля выстраивать всю эту &quot;кухню&quot;. В следующих модулях мы покажем, как ИИ и готовые облачные сервисы сделают это за вас. Сейчас главное - просто понять общую картину.</p>
  <h3 id="6BhY">Как теперь происходит процесс разработки?</h3>
  <p id="wCvu">Забудьте про пугающий черный экран с непонятными зелеными символами. Теперь работа идет как по маслу:</p>
  <ol id="Vop8">
    <li id="1Lnv"><strong>Постановка задачи:</strong> Вы формулируете, что нужно сделать, простым языком (например, &quot;добавь на страницу шапку с логотипом слева и меню справа&quot;).</li>
    <li id="sGVs"><strong>Генерация:</strong> ИИ думает пару секунд и предлагает вам готовый кусок кода.</li>
    <li id="ZtpG"><strong>Проверка:</strong> Вы смотрите на результат. Нравится - берем в работу.</li>
    <li id="MhRg"><strong>Корректировка:</strong> Если ИИ промахнулся (а на старуху бывает проруха), вы не лезете исправлять код руками. Вы просто пишете ему: <em>&quot;Ты сделал меню вертикальным, а мне нужно горизонтальное. Исправь&quot;</em>. И он покорно переделывает.</li>
  </ol>
  <h3 id="Ry5Y">Минимальные инструменты (наш новый арсенал)</h3>
  <p id="4mHQ">Чтобы начать, нам не понадобятся десятки сложных программ. Вся магия будет происходить в связке трех инструментов. Сегодня мы просто кинем на них взгляд, а настраивать будем в следующем уроке:</p>
  <ul id="gSVR">
    <li id="TPu1"><strong>Cursor (или аналогичная AI IDE):</strong> Это ваш главный пульт управления. Внешне это программа для работы с кодом, но внутри нее живет мощный ИИ, который видит все ваши файлы проекта и пишет код прямо в них по вашей команде. Это как умный автопилот в машине.</li>
    <li id="VlM9"><strong>GitHub:</strong> Это облачное хранилище для вашего кода. Представьте, что это Google Drive, но специально созданный для разработчиков. Он сохраняет все версии вашего продукта, так что если вы случайно что-то сломаете, всегда можно откатиться назад. Надежно и сердито.</li>
    <li id="aXYW"><strong>Vercel:</strong> Магическая платформа для запуска. Она берет ваш готовый код и по щелчку пальцев выкладывает его в интернет. Буквально минута - и вы уже можете отправлять ссылку на рабочий сайт друзьям или первым клиентам.</li>
  </ul>
  <h3 id="IZSC">Типичные ошибки новичков на старте</h3>
  <ol id="p12G">
    <li id="G92i"><strong>Лезть в дебри теории.</strong> Вы начинаете гуглить &quot;как работает язык JavaScript&quot; и тонете в учебниках. Не изобретайте велосипед! Ваша задача - учиться ставить задачи ИИ, а не зубрить синтаксис.</li>
    <li id="bH5o"><strong>Пытаться съесть слона целиком.</strong> Не пишите ИИ: <em>&quot;Сделай мне аналог Инстаграма&quot;</em>. Он выдаст нерабочую кашу. Двигайтесь шаг за шагом: сначала просим сделать структуру страницы, потом добавляем на нее картинки, потом прикручиваем лайки.</li>
    <li id="RUZV"><strong>Бояться ошибок.</strong> ИИ может выдать кривой код. Первый блин комом - это абсолютно нормально! Не впадайте в ступор. Просто скопируйте текст ошибки с экрана и отправьте ее ИИ со словами: <em>&quot;Вылезла вот такая ошибка, почини&quot;</em>. Он сам найдет, где напортачил.</li>
  </ol>
  <hr />
  <h3 id="XUrT">Практическое задание</h3>
  <p id="ZVFp">Разработка начинается не с кода, а с понимания сути того, что мы делаем. Сегодня мы заставим ИИ поработать вашим личным бизнес-аналитиком.</p>
  <p id="izJY"><strong>Шаг 1:</strong> Откройте ChatGPT, Claude, Codex GPT 5.3 или любой другой доступный вам мощный ИИ. <br /><strong>Шаг 2:</strong> Скопируйте и отправьте ему этот промпт (запрос), подставив свою идею:</p>
  <blockquote id="WxUm"><em>&quot;Я хочу создать веб-приложение: [ОПИШИТЕ ВАШУ ИДЕЮ В 1-2 ПРЕДЛОЖЕНИЯХ. Например: лендинг для моего нового IT-аутсорс агентства, где клиенты могут оставлять заявки]. Выступи в роли опытного продакт-менеджера и архитектора. Распиши мне базовую структуру этого приложения понятным языком, без сложного кода. Что конкретно должен видеть пользователь на главном экране (фронтенд) и какие данные нам нужно будет собирать и хранить (база данных)?&quot;</em></blockquote>
  <p id="Pvzz"><strong>Шаг 3:</strong> Изучите ответ. Задайте ИИ уточняющие вопросы, если что-то непонятно. Сохраните этот диалог - это фундамент логики вашего будущего продукта. <br /><strong>Шаг 4:</strong> Зайдите на сайты <a href="https://www.google.com/search?q=Cursor.com**" target="_blank">https://www.google.com/search?q=Cursor.com</a>, <strong><a href="http://GitHub.com" target="_blank">GitHub.com</a></strong> и <strong><a href="http://Vercel.com" target="_blank">Vercel.com</a></strong>. Создайте там бесплатные аккаунты. Ничего там пока не нажимайте - просто застолбите за собой место.</p>
  <h3 id="1yyk">Итог урока</h3>
  <p id="xkCU">Поздравляем с почином! Вы сделали первый важнейший шаг. Теперь вы понимаете, что <strong>Vibe Coding</strong> стирает глухую стену между вашей идеей и реальным продуктом. Вы знаете, что любое приложение - это фронтенд (витрина), бэкенд (кухня) и база данных (склад).</p>
  <p id="AmYH">Ваше мышление уже начало перестраиваться: вы больше не пытаетесь понять, <em>как написать программу</em>, вы начинаете думать, <em>как грамотно объяснить нейросети, что вам нужно получить</em>.</p>
  <p id="fdf5">В следующем уроке мы свяжем наш рабочий арсенал (Cursor + GitHub + Vercel) и с помощью ИИ выложим ваш первый, реальный сайт в интернет. Готовы задать жару?</p>
  <p id="Z4sZ"></p>
  <p id="JmZb">Большинство на этом этапе сливаются.</p>
  <p id="VTSt">Потому что не понимают, что делать дальше.</p>
  <p id="Svpn">Я у себя в Telegram разбираю:<br />- как реально работать с ИИ<br />- какие ошибки ломают проекты<br />- как доводить до результата</p>
  <p id="1CK5">👉 <a href="https://t.me/Undercode_ai" target="_blank">https://t.me/Undercode_ai</a></p>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@undercode_ii/VX83AJ-Fjgb</guid><link>https://teletype.in/@undercode_ii/VX83AJ-Fjgb?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=undercode_ii</link><comments>https://teletype.in/@undercode_ii/VX83AJ-Fjgb?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=undercode_ii#comments</comments><dc:creator>undercode_ii</dc:creator><title>Infrastructure as Code: как &quot;кодить&quot; инфраструктуру, а не кликать мышкой в интерфейсе облака</title><pubDate>Fri, 16 May 2025 16:13:30 GMT</pubDate><media:content medium="image" url="https://img3.teletype.in/files/a3/bd/a3bd6d15-6060-407d-8c58-002947992792.png"></media:content><description><![CDATA[<img src="https://img1.teletype.in/files/c8/b3/c8b32f1e-6f16-45ba-98d6-708a40f6680b.png"></img>Вы всё ещё разворачиваете окружения вручную? Переключаетесь между вкладками браузера? Пора менять подход.]]></description><content:encoded><![CDATA[
  <p id="UEFj">Вы всё ещё разворачиваете окружения вручную? Переключаетесь между вкладками браузера? Пора менять подход.</p>
  <p id="V49K">В этой статье разберёмся, что такое <strong>Infrastructure as Code (IaC)</strong>, почему это основа современного DevOps, какие инструменты реально работают в <strong>Yandex Cloud</strong> и <strong>VK Cloud</strong>, и покажем, как всё это выглядит на практике через Terraform.</p>
  <figure id="NhiR" class="m_retina">
    <img src="https://img1.teletype.in/files/c8/b3/c8b32f1e-6f16-45ba-98d6-708a40f6680b.png" width="640" />
  </figure>
  <hr />
  <h2 id="rg8d">Что такое IaC и зачем это бизнесу</h2>
  <p id="OXBe"><strong>Infrastructure as Code (IaC)</strong> — это когда вы описываете инфраструктуру так же, как пишете код.  И этот код можно версионировать, тестировать и разворачивать за считанные минуты.</p>
  <p id="p176">💡 <em>В 2024 году компании, внедрившие IaC, ускорили развертывание в 2.4 раза и снизили проблемы возникающие из-за &quot;человеческого фактора&quot; на 53%.</em></p>
  <hr />
  <h2 id="mWdM">Золотые принципы IaC</h2>
  <ul id="eZ3z">
    <li id="Ckl0"><strong>Идемпотентность</strong>: сколько раз не запускай — результат будет один.</li>
    <li id="0oL0"><strong>Декларативность</strong>: описываем, <em>что хотим получить</em>, а не <em>как это сделать</em>.</li>
    <li id="ZyYB"><strong>Версионирование</strong>: всё в Git, всё под контролем.</li>
    <li id="Co8o"><strong>Модульность</strong>: не дублируем, переиспользуем.</li>
  </ul>
  <p id="mCmx"></p>
  <figure id="vb2e" class="m_original">
    <img src="https://img4.teletype.in/files/b5/7b/b57baedd-2b2a-4353-9de3-a2fddd70f397.png" width="963" />
  </figure>
  <hr />
  <h2 id="onTp">Пример: разворачиваем сервис в Yandex Cloud</h2>
  <p id="88BB">Создадим виртуалку, балансировщик и S3 бакет в <strong>Яндекс.Облаке</strong> — не заходя в веб-панель.</p>
  <pre id="D4a7">provider &quot;yandex&quot; {
  token     = var.yc_token
  cloud_id  = var.cloud_id
  folder_id = var.folder_id
  zone      = &quot;ru-central1-a&quot;
}

resource &quot;yandex_compute_instance&quot; &quot;vm1&quot; {
  name        = &quot;dev-vm&quot;
  platform_id = &quot;standard-v1&quot;
  resources {
    cores  = 2
    memory = 4
  }
  boot_disk {
    initialize_params {
      image_id = &quot;fd8f9sba7b7p6&quot;
    }
  }
  network_interface {
    subnet_id = var.subnet_id
    nat       = true
  }
}
</pre>
  <p id="MvRA">📦 <strong>Команды:</strong></p>
  <pre id="yVIu">terraform init
terraform plan
terraform apply
</pre>
  <p id="oxMa">⏱ <em>Вместо 2 часов в вебке— 5 минут в терминале.</em></p>
  <figure id="wPCw" class="m_original">
    <img src="https://img3.teletype.in/files/a3/17/a3177204-3dd9-49b5-a418-4abe849ac9a7.png" width="480" />
  </figure>
  <hr />
  <h2 id="izCA">Как структурировать репозиторий IaC</h2>
  <pre id="TYXZ">infra/
├── modules/
│   └── yandex_vm/
├── environments/
│   ├── dev/
│   └── prod/
├── backend.tf
├── variables.tf
└── main.tf
</pre>
  <ul id="7qqD">
    <li id="QKAN"><strong>Модули</strong> — повторно используемые куски (например, VM, сеть, S3).</li>
    <li id="CXqk"><strong>Окружения</strong> — разные настройки для dev/prod/stage.</li>
    <li id="KR0z"><strong>backend.tf</strong> — настройка хранения state-файла (например, в Yandex Object Storage + Locking в YDB).</li>
  </ul>
  <hr />
  <h2 id="bFQV">Лучшие практики IaC в реальном проекте</h2>
  <p id="JJTD">✅ <strong>Бэкенд для хранения состояния</strong><br /> Используй защищённый стор (например, <code>s3</code> в VK Cloud или Yandex Cloud).</p>
  <p id="NvJC">✅ <strong>Аудит и безопасность</strong></p>
  <ul id="fIb2">
    <li id="frXf">Подключи <strong>Checkov</strong> или <strong>Terrascan</strong> к CI.</li>
    <li id="CsyY">Храни секреты в <strong>Vault</strong> или <strong>Yandex Lockbox</strong>.</li>
  </ul>
  <p id="DgaO">✅ <strong>Тесты</strong></p>
  <ul id="wPuJ">
    <li id="Zuy1">Юнит-тесты с <strong>Terratest</strong>.</li>
    <li id="sZgT">Smoke-тесты через <code>curl</code> после apply.</li>
  </ul>
  <hr />
  <h2 id="lppq">А что насчёт VK Cloud?</h2>
  <p id="Rni3">VK Cloud тоже отлично работает с Terraform. Вот базовый пример:</p>
  <pre id="ZxVh">provider &quot;vkcs&quot; {
  auth_url    = &quot;https://iam.vkcloud.io/v3&quot;
  tenant_id   = var.tenant_id
  username    = var.username
  password    = var.password
  region      = &quot;ru-msk&quot;
}

resource &quot;vkcs_compute_instance_v2&quot; &quot;vm1&quot; {
  name        = &quot;app-server&quot;
  flavor_name = &quot;basic-2-4&quot;
  image_name  = &quot;Ubuntu 22.04&quot;
  network {
    name = &quot;default&quot;
  }
}
</pre>
  <hr />
  <figure id="0e5J" class="m_retina">
    <img src="https://img1.teletype.in/files/8e/14/8e14d69e-819e-41df-84ed-f48d0ba06690.png" width="511.5" />
  </figure>
  <h2 id="IjlS">Ближайшее будущее IaC в России</h2>
  <p id="aJwt">🧠 <strong>AI + IaC</strong><br /> В 2025 появились инструменты вроде <strong>Lightspeed</strong> от Ansible и <strong>Auto-Terraform Prompt</strong>, генерирующие код из описания на русском.</p>
  <p id="2dN1">🛡 <strong>Policy as Code</strong><br /> Через <strong>OPA (Open Policy Agent)</strong> можно автоматически проверять, не открыта ли ваша БД во внешний мир 😬</p>
  <p id="1Z2J">🌐 <strong>Multi-cloud ready</strong><br /> Большинство инфраструктур в РФ уже используют минимум 2 облака: <strong>Яндекс + VK</strong>, либо плюс свои bare-metal.</p>
  <hr />
  <h2 id="SplY">Вывод</h2>
  <p id="rtjf">IaC — это не просто &quot;автоматизация&quot;, это <strong>страховка от бардака</strong> в инфраструктуре.<br /> Писать инфраструктуру как код — быстрее, безопаснее и масштабируемо.</p>
  <hr />
  <p id="LYGZ">⚡️ <strong>Хочешь шаблон Terraform под Yandex Cloud?</strong><br /> Пиши — пришлём репозиторий и пример пайплайна для GitLab CI 🧰</p>
  <p id="TOdo"></p>
  <p id="9WSU"><strong>Спасибо что дочитали, ниже как можно снами связаться:</strong></p>
  <p id="B0RN">Мы готовы провести консультацию по внедрению DevOps-подходов или полностью реализовать DevOps-практики под ключ в вашем бизнесе. Пишите нам: <a href="https://t.me/undercode_ii" target="_blank">https://t.me/undercode_ii</a></p>
  <p id="WwdE">📡 <strong>Больше о DevOps, ИИ и технологиях будущего — в нашем Telegram-канале:</strong><br /><a href="https://t.me/+MGmSPONc29EzNmM6" target="_blank">https://t.me/+MGmSPONc29EzNmM6</a></p>
  <p id="7G7M">Наш сайт: <a href="https://undercode.group/" target="_blank">https://undercode.group/</a></p>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@undercode_ii/wLqBjlEIXHB</guid><link>https://teletype.in/@undercode_ii/wLqBjlEIXHB?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=undercode_ii</link><comments>https://teletype.in/@undercode_ii/wLqBjlEIXHB?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=undercode_ii#comments</comments><dc:creator>undercode_ii</dc:creator><title>Kubernetes простым языком: Как оркестрировать контейнеры без головной боли</title><pubDate>Wed, 14 May 2025 17:12:38 GMT</pubDate><media:content medium="image" url="https://img1.teletype.in/files/09/f1/09f1b364-f729-4c0e-84ae-881b574f36c1.png"></media:content><description><![CDATA[<img src="https://img1.teletype.in/files/c7/47/c747a843-f8f2-4dd1-9141-d30f99594520.png"></img>Kubernetes - это как дирижёр для ваших контейнеров. Представьте, что ваше приложение - это оркестр, а каждый музыкант (контейнер) играет свою партию. Без дирижёра музыканты могут запутаться, играть невпопад или вообще замолчать. Kubernetes автоматически:]]></description><content:encoded><![CDATA[
  <h2 id="kubernetes">Что такое Kubernetes и зачем он нужен?</h2>
  <p id="uHoO"><strong>Kubernetes</strong> - это как дирижёр для ваших контейнеров. Представьте, что ваше приложение - это оркестр, а каждый музыкант (контейнер) играет свою партию. Без дирижёра музыканты могут запутаться, играть невпопад или вообще замолчать. Kubernetes автоматически:</p>
  <ul id="krV2">
    <li id="OlUN">Распределяет контейнеры между серверами (узлами)</li>
    <li id="nGPt">Масштабирует приложение при нагрузке</li>
    <li id="oi6D">Лечит сломанные контейнеры (как дирижёр поправляет фальшивящую скрипку)</li>
    <li id="oHpi">Обновляет приложение без остановки</li>
  </ul>
  <p id="oZjv"><strong>Зачем это нужно?</strong><br />Раньше приложения запускали на физических серверах. Если сервер падал - приложение умирало. С появлением облаков и контейнеров (Docker) всё стало проще, но управлять сотнями контейнеров вручную - как собирать пазл из 1000 деталей вслепую. Kubernetes решает эту проблему.</p>
  <p id="pQX9"></p>
  <figure id="htn5" class="m_column">
    <img src="https://img1.teletype.in/files/c7/47/c747a843-f8f2-4dd1-9141-d30f99594520.png" width="5000" />
  </figure>
  <h2 id="4">Основные компоненты: 4 кита, на которых всё держится</h2>
  <h2 id="8cTs">1. <strong>Pod (Под) - иногда называют модули (ужас)</strong></h2>
  <p id="Romu">Минимальная &quot;боевая единица&quot;. Это как конверт, в который можно положить:</p>
  <ul id="4L2V">
    <li id="8jYK">1 основной контейнер (например, Node.js-приложение)</li>
    <li id="RTeG">1-2 вспомогательных контейнера (например, для логирования или обновления конфигов) - sidecar контейнеры </li>
    <li id="4Iya">Общие ресурсы: дисковое пространство, сетевой адрес</li>
  </ul>
  <p id="Kj0w"><strong>Важно:</strong> Под - временная единица. Если он умирает, Kubernetes создаёт новый.</p>
  <h2 id="WgfJ">2. <strong>Deployment (Деплоймент)</strong></h2>
  <p id="4s0w">Инструкция для Kubernetes, как управлять подами:</p>
  <ul id="zYNz">
    <li id="txpZ">Сколько копий приложения запустить (реплик)</li>
    <li id="lN7Y">Как обновлять (постепенно заменять старые поды новыми)</li>
    <li id="YyU7">Как откатиться при ошибке</li>
  </ul>
  <p id="JNZP">Пример YAML-файла:</p>
  <pre id="F9JF">textapiVersion: apps/v1  
kind: Deployment  
metadata:  
  name: my-app  
spec:  
  replicas: 3  
  template:  
    spec:  
      containers:  
      - name: nginx  
        image: nginx:1.25  
</pre>
  <h2 id="YiON">3. <strong>Service (Сервис)</strong></h2>
  <p id="iF9u">Визитная карточка вашего приложения. Даже если поды умирают и пересоздаются, сервис:</p>
  <ul id="x1EZ">
    <li id="BcYz">Даёт постоянный IP-адрес</li>
    <li id="TTa7">Распределяет нагрузку между подами (балансировка)</li>
    <li id="Au5I">Позволяет общаться микросервисам внутри кластера</li>
  </ul>
  <figure id="xr1r" class="m_column">
    <img src="https://img3.teletype.in/files/ef/9a/ef9ade46-2fae-4b16-a9c9-e0fc7e953faf.png" width="1706" />
  </figure>
  <h2 id="Wr49">4. <strong>Ingress (Вход)</strong></h2>
  <p id="JSIx">Швейцар вашего приложения. Управляет входящим трафиком в основном используют для общения сервисов с интернетом:</p>
  <ul id="ExMw">
    <li id="l4vI">Маршрутизирует запросы (например, <code>/blog</code> → блогу, <code>/api</code> → API)</li>
    <li id="QgRj">Поддерживает HTTPS</li>
    <li id="JnPn">Может балансировать нагрузку между сервисами</li>
  </ul>
  <figure id="rTui" class="m_original">
    <img src="https://img4.teletype.in/files/bb/63/bb634949-dd60-4c2d-ac83-bb31a1690a63.png" width="731" />
  </figure>
  <h2 id="5">Пример: Разворачиваем веб-приложение за 5 шагов</h2>
  <p id="wDni"><strong>Цель:</strong> Запустить Nginx с надписью &quot;Hello Kubernetes!&quot;</p>
  <ol id="ccyH">
    <li id="OiXE"><strong>Создаём Deployment</strong> (чтобы Kubernetes знал, какие поды создавать):</li>
  </ol>
  <p id="rHrd">Сам деплоймент мы описывали выше <br />Важно по дефолту kubectl стоит на MASTER ноде/дах</p>
  <pre id="F46c">kubectl create deployment nginx --image=nginx:1.25  
</pre>
  <ol id="Cv5S">
    <li id="Cx47"><strong>Меняем конфиг Nginx</strong> (добавляем свою страницу):</li>
  </ol>
  <pre id="P1cT">kubectl exec &lt;имя_пода&gt; -- sh -c &quot;echo &#x27;Hello Kubernetes!&#x27; &gt; /usr/share/nginx/html/index.html&quot;  
</pre>
  <ol id="hcuK">
    <li id="Mw54"><strong>Открываем доступ через Service</strong>:</li>
  </ol>
  <pre id="dPkt">kubectl expose deployment nginx --port=80 --type=NodePort  
</pre>
  <ol id="8HdK">
    <li id="GkLK"><strong>Настраиваем Ingress</strong> (если нужен домен/HTTPS):</li>
  </ol>
  <pre id="Ueyj">apiVersion: networking.k8s.io/v1  
kind: Ingress  
metadata:  
  name: nginx-ingress  
spec:  
  rules:  
  - host: myapp.local  
    http:  
      paths:  
      - path: /  
        pathType: Prefix  
        backend:  
          service:  
            name: nginx  
            port:  
              number: 80  
</pre>
  <ol id="fMY5">
    <li id="syo1"><strong>Проверяем</strong>:</li>
  </ol>
  <pre id="RbEU">kubectl get pods,deployments,services,ingress  </pre>
  <h2 id="5">5 проблем новичков и как их избежать</h2>
  <h2 id="HRLA">1. &quot;Мои поды исчезают!&quot;</h2>
  <p id="py6L"><strong>Проблема:</strong> Создавали поды вручную (без Deployment).<br /><strong>Решение:</strong> Всегда используйте Deployment - он следит за количеством работающих реплик.</p>
  <h2 id="9S9j">2. &quot;Приложение тормозит/падает&quot;</h2>
  <p id="MUYc"><strong>Проблема:</strong> Не указали лимиты CPU/RAM в конфиге.<br /><strong>Решение:</strong></p>
  <pre id="NYyH">textresources:  
  limits:  
    memory: &quot;512Mi&quot;  
    cpu: &quot;1&quot;  
  requests:  
    memory: &quot;256Mi&quot;  
    cpu: &quot;0.5&quot;  
</pre>
  <h2 id="6jSB">3. &quot;Не могу подключиться к сервису&quot;</h2>
  <p id="mYYO"><strong>Проблема:</strong> Забыли указать порт в Service или не настроили Ingress.<br /><strong>Решение:</strong></p>
  <ul id="pMKk">
    <li id="HfWy">Проверьте <code>kubectl describe service &lt;имя&gt;</code></li>
    <li id="xwKs">Используйте <code>kubectl port-forward</code> для локальной отладки</li>
  </ul>
  <h2 id="lWir">4. &quot;YAML-файлы - это ад!&quot;</h2>
  <p id="LFcl"><strong>Проблема:</strong> Ошибки в отступах, опечатки в параметрах.<br /><strong>Решение:</strong></p>
  <ul id="wNc8">
    <li id="A2G8">Установите плагин YAML для IDE (VS Code, IntelliJ)</li>
    <li id="CFuV">Используйте <code>kubectl apply --dry-run=client -f file.yaml</code> для проверки</li>
  </ul>
  <h2 id="RQy2">5. &quot;Всё сломалось после обновления!&quot;</h2>
  <p id="ENc4"><strong>Проблема:</strong> Обновили все поды сразу.<br /><strong>Решение:</strong> Настройте стратегию обновления в Deployment:</p>
  <pre id="wPg0">textstrategy:  
  type: RollingUpdate  
  rollingUpdate:  
    maxSurge: 25%  
    maxUnavailable: 25%  
</pre>
  <h2 id="AOKO">Заключение</h2>
  <p id="QX6E">Kubernetes - не волшебная таблетка, но мощный инструмент. Начните с малого:</p>
  <ol id="O55K">
    <li id="6Ea0">Разверните локальный кластер (Minikube/Docker Desktop)</li>
    <li id="S7Ju">Поиграйтесь с Deployment/Service</li>
    <li id="wDA0">Подключите мониторинг (Prometheus+Grafana)</li>
    <li id="xQFv">Автоматизируйте деплой с Helm - про него мы поговорим в следующих статьях </li>
  </ol>
  <p id="fgwp">Помните: Kubernetes - это оркестр, где вы дирижёр. Не пытайтесь контролировать каждую скрипку, думайте прежде чем что-то сделать, как вы скажите, так и будет.</p>
  <h2 id="NnCk">Итоги</h2>
  <p id="lZ03">Управление конфигурацией — не дань моде, а ваша страховка от ночных аварий и нервных релизов.<br /> Автоматизируйте всё, что можно, и держите инфраструктуру под контролем.</p>
  <p id="9WSU"><strong>Спасибо что дочитали, ниже как можно снами связаться:</strong></p>
  <p id="B0RN">Мы готовы провести консультацию по внедрению DevOps-подходов или полностью реализовать DevOps-практики под ключ в вашем бизнесе. Пишите нам: <a href="https://t.me/undercode_ii" target="_blank">https://t.me/undercode_ii</a></p>
  <p id="WwdE">📡 <strong>Больше о DevOps, ИИ и технологиях будущего — в нашем Telegram-канале:</strong><br /><a href="https://t.me/+MGmSPONc29EzNmM6" target="_blank">https://t.me/+MGmSPONc29EzNmM6</a></p>
  <p id="7G7M">Наш сайт: <a href="https://undercode.group/" target="_blank">https://undercode.group/</a></p>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@undercode_ii/uWFMZVBEhA9</guid><link>https://teletype.in/@undercode_ii/uWFMZVBEhA9?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=undercode_ii</link><comments>https://teletype.in/@undercode_ii/uWFMZVBEhA9?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=undercode_ii#comments</comments><dc:creator>undercode_ii</dc:creator><title>Ansible, Puppet, Chef: Управление конфигурацией без боли</title><pubDate>Tue, 13 May 2025 17:20:37 GMT</pubDate><media:content medium="image" url="https://img3.teletype.in/files/e6/22/e6228ffc-9005-4780-8f00-509017dbd9e4.png"></media:content><description><![CDATA[<img src="https://img1.teletype.in/files/85/e0/85e0305a-c489-44d5-baec-13b565542230.png"></img>Вы всё ещё вручную настраиваете сервера, а прод неожиданно «ложится» из-за человеческой ошибки? Добро пожаловать в клуб выгорающих инженеров.]]></description><content:encoded><![CDATA[
  <p id="W9JK">Вы всё ещё вручную настраиваете сервера, а прод неожиданно «ложится» из-за человеческого фактора? Добро пожаловать в клуб выгорающих инженеров.</p>
  <p id="X7lg">В этой статье расскажем, как не быть одним из них. Познакомим с тремя китами управления конфигурацией — <strong>Ansible</strong>, <strong>Puppet</strong> и <strong>Chef</strong>, покажем примеры и поможем выбрать свой инструмент.</p>
  <h2 id="vc1m">Почему управление конфигурацией — не мода, а необходимость</h2>
  <p id="KTBx">В эпоху DevOps конфигурация инфраструктуры — как код. Принцип <strong>Infrastructure as Code (IaC)</strong> позволяет автоматизировать всё: от настройки до масштабирования.</p>
  <p id="OBmN"><strong>Зачем?</strong></p>
  <ul id="Og6o">
    <li id="27ez">Снижение ошибок (человеческий фактор — ваш худший враг).</li>
    <li id="xVpP">Масштабируемость (от 1 до 1000 серверов).</li>
    <li id="TtpX">Предсказуемость (сегодня настроили — завтра получили тот же результат).</li>
    <li id="t0xs">Аудит и контроль (всё в гите, всё прозрачно).</li>
  </ul>
  <h2 id="5FAZ">Ansible — просто, быстро, без лишних агентов</h2>
  <p id="tHpz"><strong>Ansible</strong> — ваш выбор, если хотите настроить инфраструктуру <strong>быстро и просто</strong>. Агентов не нужно, всё по SSH. Пишем YAML — и работаем.</p>
  <h3 id="ymbh">Пример Ansible playbook:</h3>
  <pre id="EpCI">yamlКопироватьРедактировать---
- name: Установка nginx
  hosts: webservers
  become: true
  tasks:
    - name: Установка nginx
      apt:
        name: nginx
        state: present

    - name: Включить nginx
      service:
        name: nginx
        state: started
        enabled: yes
</pre>
  <p id="8zZs"><strong>Фишки Ansible:</strong></p>
  <ul id="oMeZ">
    <li id="jCCw">Агент-лесс (через SSH).</li>
    <li id="k1Fi">Простота и низкий порог входа.</li>
    <li id="AK0a">Отлично работает в гибридных и облачных средах.</li>
    <li id="LU4p"><strong>Lightspeed AI</strong> — генерация плейбуков через ИИ (уже в продакшене!).</li>
  </ul>
  <figure id="RCv8" class="m_original">
    <img src="https://img1.teletype.in/files/85/e0/85e0305a-c489-44d5-baec-13b565542230.png" width="820" />
  </figure>
  <h2 id="Z0Uv">Puppet — классика жанра с декларативным подходом</h2>
  <p id="OIW4"><strong>Puppet</strong> — старый добрый инструмент для больших и сложных инфраструктур.</p>
  <p id="W4rU"><strong>Архитектура:</strong> клиент-сервер, где агенты регулярно тянут конфигурации с центрального сервера.</p>
  <h3 id="l3R5">Пример Puppet-манифеста:</h3>
  <pre id="0dd4">class webserver {
  package { &#x27;apache2&#x27;: ensure =&gt; installed }
  service { &#x27;apache2&#x27;: ensure =&gt; running, enable =&gt; true }
  file { &#x27;/var/www/html/index.html&#x27;:
    content =&gt; &#x27;Hello, World!&#x27;
  }
}
</pre>
  <p id="7HSU"><strong>Фишки Puppet:</strong></p>
  <ul id="eAeH">
    <li id="z3OK">Декларативность (описываете состояние — Puppet добивается его).</li>
    <li id="Whdy">Сильное сообщество и библиотека модулей.</li>
    <li id="4wfm">Идеален для больших инфраструктур с требованиями к политике безопасности.</li>
  </ul>
  <figure id="HgWZ" class="m_retina">
    <img src="https://img4.teletype.in/files/b9/1c/b91c5027-357c-4133-a0d4-f1b97bbdbe7a.png" width="799.5" />
  </figure>
  <h2 id="pt8W">Chef — когда хочется гибкости на Ruby</h2>
  <p id="cGuV"><strong>Chef</strong> — это Ruby для вашей инфраструктуры. Подходит тем, кто любит кодить.</p>
  <p id="Hvcp"><strong>Архитектура:</strong> клиент-сервер, рецепты (cookbooks) пишутся на Ruby DSL.</p>
  <h3 id="X88Y">Пример Chef-рецепта:</h3>
  <pre id="Fqfu">package &#x27;mysql-server&#x27;

service &#x27;mysql&#x27; do
  action [:enable, :start]
end
</pre>
  <p id="dMuK"><strong>Фишки Chef:</strong></p>
  <ul id="4cpP">
    <li id="4AwR">Гибкость и мощь Ruby DSL.</li>
    <li id="tkoG">Сложнее вход, но больше возможностей для кастомизации.</li>
    <li id="n6Ao">Хорошая интеграция с облаком и CI/CD пайплайнами.</li>
  </ul>
  <figure id="56tO" class="m_retina">
    <img src="https://img1.teletype.in/files/8e/39/8e392fbe-dca3-4b3e-903e-a20419fa30f0.png" width="640" />
  </figure>
  <p id="STuO"></p>
  <figure id="RoKz" class="m_original">
    <img src="https://img3.teletype.in/files/28/14/2814a142-3278-4d24-a8bd-1eb8eddf3bfe.png" width="839" />
  </figure>
  <figure id="unes" class="m_original">
    <img src="https://img2.teletype.in/files/90/55/90557e64-4739-4a3c-9637-192bbbe13ac9.png" width="709" />
  </figure>
  <h2 id="wilo">Как выбрать инструмент 🚀</h2>
  <ul id="AjZQ">
    <li id="JRAj"><strong>Ansible</strong> — для быстрого старта, малых и средних инфраструктур, гибридных облаков.</li>
    <li id="S0ym"><strong>Puppet</strong> — когда нужна предсказуемость, декларативность и строгая политика.</li>
    <li id="q2o4"><strong>Chef</strong> — когда команда любит Ruby и нужна максимальная кастомизация.</li>
  </ul>
  <p id="Jos6">⚠️ <strong>Совет от практиков:</strong><br /> Для старта — Ansible.<br /> Для зрелой инфраструктуры — Puppet или Chef.</p>
  <h2 id="MYKc">А что дальше?</h2>
  <p id="ePW8">Контейнеризация, Kubernetes и микросервисы меняют ландшафт. Все инструменты управления конфигурацией активно адаптируются под эти реалии. Например, Ansible уже интегрируется с Kubernetes через Operator SDK, а Chef развивается в сторону политики и compliance as code.</p>
  <hr />
  <h2 id="NnCk">Итоги</h2>
  <p id="lZ03">Управление конфигурацией — не дань моде, а ваша страховка от ночных аварий и нервных релизов.<br /> Автоматизируйте всё, что можно, и держите инфраструктуру под контролем.</p>
  <p id="9WSU"><strong>Спасибо что дочитали, ниже как можно снами связаться:</strong></p>
  <p id="B0RN">Мы готовы провести консультацию по внедрению DevOps-подходов или полностью реализовать DevOps-практики под ключ в вашем бизнесе. Пишите нам: <a href="https://t.me/undercode_ii" target="_blank">https://t.me/undercode_ii</a></p>
  <p id="WwdE">📡 <strong>Больше о DevOps, ИИ и технологиях будущего — в нашем Telegram-канале:</strong><br /> <a href="https://t.me/Undercode_ai" target="_blank">https://t.me/Undercode_ai</a></p>
  <p id="7G7M">Наш сайт: <a href="https://undercode.group/" target="_blank">https://undercode.group/</a></p>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@undercode_ii/dPBS4Cj-XcL</guid><link>https://teletype.in/@undercode_ii/dPBS4Cj-XcL?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=undercode_ii</link><comments>https://teletype.in/@undercode_ii/dPBS4Cj-XcL?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=undercode_ii#comments</comments><dc:creator>undercode_ii</dc:creator><title>CI/CD: Простым языком, для новичков или опытных в IT . Как не бояться релизов и не превращать разработку и релизы в болото</title><pubDate>Mon, 12 May 2025 16:49:28 GMT</pubDate><media:content medium="image" url="https://img3.teletype.in/files/ee/a0/eea01bb8-22a2-44f7-92e2-e95e36e3a197.png"></media:content><description><![CDATA[<img src="https://img4.teletype.in/files/37/25/37256bfd-ec77-45ab-af6d-32d88256f5e5.png"></img>Команда долго-долго пилит фичи. Пятница, вечер — пора релизить. Все в напряжении.
И... сюрприз: всё ломается. Баги лезут отовсюду. Продукт не запускается.
Админ ругается, Dev’ы не спят, а клиент злится.]]></description><content:encoded><![CDATA[
  <figure id="peUF" class="m_column">
    <img src="https://img4.teletype.in/files/37/25/37256bfd-ec77-45ab-af6d-32d88256f5e5.png" width="1280" />
    <figcaption>Оригинал: https://i.ytimg.com/vi/rqCxl4yI3s8/maxresdefault.jpg</figcaption>
  </figure>
  <h2 id="B3HS">Почему без CI/CD ваш проект обречён на хаос</h2>
  <p id="aO7z">Команда долго-долго пилит фичи. Пятница, вечер — пора релизить. Все в напряжении.<br />И... сюрприз: всё ломается. Баги лезут отовсюду. Продукт не запускается.<br />Админ ругается, Dev’ы не спят, а клиент злится.</p>
  <p id="ftke">Знакома ситуация? ( для тех кто работал в IT в в 1990-2015 +- пару лет) думаю очень знакомая картина</p>
  <p id="HczR">До появления CI/CD так работали почти все. Каждый сидел в своей песочнице. А интеграция была адом: конфликты, баги, дедлайны летят к чертям. Релизы раз в полгода и то с риском уронить продакшн.</p>
  <p id="tgeI">CI/CD решает эту боль.</p>
  <p id="cErU">Сегодня расскажем простым языком — что это, как работает, почему это must-have даже для вашего пэт-проекта.</p>
  <hr />
  <h2 id="Wo9n">Что такое CI(Continuous Integration<strong>)</strong> — непрерывная интеграция</h2>
  <h3 id="jcwr">История на пальцах</h3>
  <p id="wZuV">CI придумали в 90-х использовать начали в 2001, а по настоящему научились пользоваться в 2010+- год. CI (Continuous Integration) — это практика, где разработчики часто (каждый день или чаще) коммитят код в общий репозиторий. И сразу — происходит автоматическая сборка и тесты данного коммита.</p>
  <h3 id="RkGm">Как это выглядит в жизни:</h3>
  <ol id="fBg2">
    <li id="CWNh">Dev ( разработчик ) пушит код.</li>
    <li id="5U6j">CI-сервер (Jenkins, GitLab CI, GitHub Actions) запускает пайплайн.</li>
    <li id="hubU">Проект собирается.</li>
    <li id="tV4x">Запускаются тесты.</li>
    <li id="SYg8">Линтеры и анализаторы проверяют стиль, безопасность, опечатки в коде.</li>
  </ol>
  <p id="D0XQ">🚨 Сломалось? Dev сразу получает алерт. Пока баг маленький, его проще фиксить.</p>
  <figure id="DXpD" class="m_column">
    <img src="https://img1.teletype.in/files/85/fb/85fb825b-ee14-4a6d-8c43-43b3dc7d8c34.png" width="1024" />
  </figure>
  <h3 id="7LG1"><strong>Зачем это всё:</strong></h3>
  <ul id="HH0E">
    <li id="bUSb">Чтобы не накапливать баги и технический долг.</li>
    <li id="CDVH">Чтобы весь код всегда был в состоянии &quot;работает и не падает&quot;.</li>
  </ul>
  <hr />
  <h2 id="3phN">Что такое CD — непрерывная доставка и деплой</h2>
  <p id="J9ah">CD — логичное продолжение CI.</p>
  <ul id="UY1G">
    <li id="eorw"><strong>Continuous Delivery (доставка)</strong> — после CI билд готов к деплою. Релиз можно делать по кнопке.</li>
    <li id="6Z4h"><strong>Continuous Deployment (развёртывание)</strong> — релизы выкатываются сразу, без участия человека, но в критичных проектах скорее всего будет кнопка апрува ответственного лица ( в РФ и некоторых странах СНГ это точно так)  на проектах в Европе и США я не видел такой практики.</li>
  </ul>
  <h3 id="YfFX">Пример:</h3>
  <ol id="ZymB">
    <li id="XLki">CI прошёл.</li>
    <li id="YUtM">CD собрал артефакт (например, Docker-образ), jar файл, любая библиотека, без разницы</li>
    <li id="Fswy">Система запушила данный артефакт в Nexus или Harbor ( хранилища артефактов) - есть и другие.</li>
    <li id="Vcz3">Система задеплоила билд в staging ( препрод ).</li>
    <li id="cXP5">Запустились smoke-тесты, мониторинг.</li>
    <li id="ecVN">Всё ок? Можно на прод.</li>
  </ol>
  <p id="LqPg"><em>( Это очень примерный пайплайн от проекта к проекту он будет меняться, но в целом процессы +- похожи )</em></p>
  <h3 id="PDXT">Топовые инструменты:</h3>
  <ul id="OHxK">
    <li id="NKOr">ArgoCD</li>
    <li id="ATtn">GitLab Ci</li>
    <li id="EtJP">Jenkins</li>
    <li id="VP51">Spinnaker</li>
    <li id="aPKh">Flux</li>
  </ul>
  <p id="9kQu"> </p>
  <figure id="2DHX" class="m_retina">
    <img src="https://img1.teletype.in/files/ce/49/ce496286-0169-48fc-9311-b1e4b40292aa.png" width="375" />
  </figure>
  <figure id="jTg0" class="m_retina">
    <img src="https://img3.teletype.in/files/60/9a/609a95e9-95e3-4265-a9e9-db1a782a0e0b.png" width="455" />
  </figure>
  <figure id="AZkm" class="m_retina">
    <img src="https://img1.teletype.in/files/0f/0c/0f0c2b1a-e466-4aa2-9226-e870dd78a10f.png" width="468.5" />
  </figure>
  <hr />
  <h2 id="Gcxd">Чем CI/CD помогает бизнесу и команде</h2>
  <p id="vaOF">✅ Быстрые релизы — код выходит к пользователю сразу, без бюрократии - я ранее упоминал о показатели time to market, речь как раз про него.<br /> ✅ Меньше багов — всё тестируется сразу после коммита ( должно тестироваться, но увы это не всегда так).<br /> ✅ Надёжность — процессы автоматизированы, отсутствует практически человеческий фактор.<br /> ✅ Честная DevOps культура — Dev и Ops работают как одна команда, а не перетягивают канат.<br /> ✅ Фокус на фичах и продукте, а не на  процессах ручной сборки и деплое кода в прод, когда релиз занимал целый день, а то и несколько.</p>
  <hr />
  <h2 id="hAti">Как внедрить CI/CD по шагам (пошаговая карта)</h2>
  <h3 id="Pcao">1. Система контроля версий (Git)</h3>
  <p id="htZ3">Без Git никуда. Вся команда должна работать с единым репозиторием.</p>
  <h3 id="lr37">2. Настройка CI (сборка и тесты)</h3>
  <ul id="dWzu">
    <li id="Rsrf">Поставьте Jenkins, GitLab CI или Actions.</li>
    <li id="aqgD">Подключите юнит-тесты, интеграционные, линтеры.</li>
    <li id="t0Gx">Включите алерты — чтобы Разраб знал, когда что-то сломалось.</li>
  </ul>
  <h3 id="dRwL">3. Настройка CD (доставка и деплой)</h3>
  <ul id="pzRG">
    <li id="VKA8">Сборка артефактов (Docker, пакеты).</li>
    <li id="NY4v">Автоматический деплой в staging (препрод).</li>
    <li id="VhLy">Проверки и мониторинг.</li>
    <li id="veKA">По желанию — автоматический деплой в продакшн или кнопка &quot;Deploy to prod&quot;.</li>
  </ul>
  <h3 id="gZSt">4. Постоянная оптимизация процессов</h3>
  <ul id="15Sq">
    <li id="uk2n">Анализируйте, что ломается.</li>
    <li id="QtpZ">Смотрите на скорость релизов.</li>
    <li id="ysXY">Автоматизируйте всё, что тратит ваше время.</li>
    <li id="uYjQ">Всегда пуште сообщения о проблемах, аномалиях и так далее в телеграмм или в любой другой ваш рабочий месенджер</li>
  </ul>
  <hr />
  <h2 id="PkYV">Мифы о CI/CD (и почему это не отмазки)</h2>
  <p id="k0Ey">❌ <strong>&quot;Это только для больших компаний&quot;</strong><br /> Нет. Даже фрилансеру CI/CD экономит нервы и время.</p>
  <p id="XcqY">❌ <strong>&quot;Это сложно и дорого&quot;</strong><br /> Почти все популярные CI/CD платформы бесплатные (GitLab, GitHub Actions).</p>
  <p id="bIHP">❌ <strong>&quot;Автоматизация убивает гибкость&quot;</strong><br /> Наоборот. Она даёт команде возможность сосредоточиться на продукте, а не на рутине.</p>
  <p id="A9Pt">❌ <strong>&quot;CI/CD — это только про тесты и деплой&quot;</strong><br /> Это про культуру: прозрачность, фидбек, стабильность.</p>
  <hr />
  <h2 id="6or3">Аналогия с заводом</h2>
  <p id="4ZjQ">Представьте себе автозавод:<br /> Каждая машина проходит контроль на каждом этапе.<br /> Брак — сразу на доработку.<br /> В конце — только идеальные машины.<br /> CI/CD — ваш завод для кода.</p>
  <hr />
  <h2 id="XFkR">Заключение: CI/CD — как перейти из каменного века разработки в XXI век</h2>
  <p id="V0If">CI/CD — это не &quot;доп опция&quot;, а база, нет CI/CD рынок вас съест.</p>
  <p id="60Cc">Даже если вы один на проекте — подключите CI/CD.<br />Автоматизация = меньше стресса и багов, больше фич и довольных пользователей, скорость релизов и их частота, прямо влияет на пользовательский опыт</p>
  <p id="CRiD"><strong>Совет:</strong><br /> Начните с самого простого — автоматический запуск тестов при коммите.<br /> Дальше — по нарастающей: сборка, деплой, мониторинг.</p>
  <p id="OrXY">🚀 Даже если кажется сложно — пробуйте. CI/CD — это путь, и каждый может его освоить.</p>
  <hr />
  <h2 id="tNih">Полезняк для внедрения:</h2>
  <p id="YDON"><strong>CI:</strong> Jenkins, GitLab CI, GitHub Actions, CircleCI<br /> <strong>CD:</strong> GitLab CD, ArgoCD, Spinnaker, Flux<br /><br /></p>
  <p id="9WSU"><strong>Спасибо что дочитали, ниже как можно снами связаться:</strong></p>
  <p id="B0RN">Мы готовы провести консультацию по внедрению DevOps-подходов или полностью реализовать DevOps-практики под ключ в вашем бизнесе. Пишите нам: <a href="https://t.me/undercode_ii" target="_blank">https://t.me/undercode_ii</a></p>
  <p id="WwdE">📡 <strong>Больше о DevOps, ИИ и технологиях будущего — в нашем Telegram-канале:</strong><br /> <a href="https://t.me/Undercode_ai" target="_blank">https://t.me/Undercode_ai</a></p>
  <p id="7G7M">Наш сайт: <a href="https://undercode.group/" target="_blank">https://undercode.group/</a></p>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@undercode_ii/PH5mNd2Pwe9</guid><link>https://teletype.in/@undercode_ii/PH5mNd2Pwe9?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=undercode_ii</link><comments>https://teletype.in/@undercode_ii/PH5mNd2Pwe9?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=undercode_ii#comments</comments><dc:creator>undercode_ii</dc:creator><title>Контейнеры в разработке: зачем они нужны и как экономят ваши нервы  и время🐳</title><pubDate>Sun, 11 May 2025 20:33:58 GMT</pubDate><media:content medium="image" url="https://img4.teletype.in/files/35/49/35491a49-5e1f-4f59-99eb-e53dc25fe291.png"></media:content><description><![CDATA[<img src="https://img2.teletype.in/files/95/de/95de77bc-9366-494b-a545-4fb1961da1da.png"></img>Устали от &quot;у меня локально все работает, а на проде - нет&quot;?
Вы когда-нибудь сталкивались с тем, что код отлично запускается у вас на машине локально и все прекрасно работает, но стоит передать код на прод, к вам прибегает сис админ/DevOps и говорит что ничего не работает код не запускается? Или что тесты проходят в одной среде, а в другой - все тесты красные?]]></description><content:encoded><![CDATA[
  <p id="gW9g"><strong>Устали от &quot;у меня локально все работает, а на проде - нет&quot;?</strong><br />Вы когда-нибудь сталкивались с тем, что код отлично запускается у вас на машине локально и все прекрасно работает, но стоит передать код на прод, к вам прибегает сис админ/DevOps и говорит что ничего не работает код не запускается? Или что тесты проходят в одной среде, а в другой - все тесты красные?</p>
  <p id="Z2Dz">Добро пожаловать в мир, где контейнеры решают эти боли. Сегодня расскажу, как они помогают разработчикам спать спокойнее, а DevOps специалистам быть уверенным в том что если &quot;контейнер&quot; протестирован, он запустится со 100% вероятностью ( с некоторыми оговорками ).</p>
  <h2 id="c9Be">Что такое контейнеры и с чем их едят?</h2>
  <p id="mFEB"><strong>Контейнер</strong> - это изолированная среда, которая упаковывает ваше приложение вместе со всеми зависимостями (библиотеки, настройки, окружение), чтобы оно везде работало одинаково - хоть на ноутбуке, хоть в облаке.</p>
  <p id="bkDr">⚙️ <strong>Как это работает:</strong></p>
  <ul id="BvMT">
    <li id="xmRm">Использует <strong>namespaces</strong> для изоляции процессов, сетевых интерфейсов и файловой системы - <a href="https://habr.com/ru/companies/otus/articles/858780/" target="_blank">тут подробнее</a> .</li>
    <li id="jRTC">Ограничивает ресурсы через <strong>cgroups</strong> (CPU, RAM, диск) - <a href="https://habr.com/ru/companies/otus/articles/858780/" target="_blank">тут подробнее</a>.</li>
    <li id="MDWQ">Запускается поверх ядра хостовой  ОС  это ВАЖНО! (в отличие от ВМ, где своё ядро) - <a href="https://www.atlassian.com/ru/microservices/cloud-computing/containers-vs-vms" target="_blank">читаем тут детали</a></li>
  </ul>
  <blockquote id="cSB7">Пример: вы кладёте ваш код, Python 3.11, нужные пакеты и конфиги - всё это упаковываете как &quot;контейнер&quot; и запускаете где угодно.</blockquote>
  <section style="background-color:hsl(hsl(323, 50%, var(--autocolor-background-lightness, 95%)), 85%, 85%);">
    <p id="4HS8"><strong>!!</strong>Кстати последний пункт очень часто спрашивают на собесах, имейте ввиду что именно это главное отличие является ключевым и часто сходит за правильный ответ</p>
  </section>
  <h2 id="9vos">Чем контейнеры круче обычных виртуалок?</h2>
  <figure id="6f6n" class="m_original">
    <img src="https://img2.teletype.in/files/95/de/95de77bc-9366-494b-a545-4fb1961da1da.png" width="747" />
  </figure>
  <figure id="OMvC" class="m_column">
    <img src="https://img3.teletype.in/files/2a/c2/2ac20d74-7833-412c-849b-b6ae9e98e172.png" width="1280" />
  </figure>
  <h2 id="umI7">Главные преимущества контейнеров</h2>
  <h3 id="g0vx">🚀 1. Портативность</h3>
  <p id="VGhC">Написал на Linux - работает на Mac, Windows, сервере, в облаке. Один и тот же контейнер = одинаковое поведение везде</p>
  <h3 id="QgQy">📈 2. Масштабируемость</h3>
  <p id="fnUM">Нужна новая копия приложения? <strong>Kubernetes</strong> автоматически поднимет 10 контейнеров за минуту. Идеально для микросервисов</p>
  <h3 id="G6Jh">⚡ 3. Молниеносный запуск</h3>
  <p id="3rrg">Контейнеры стартуют за секунды. Это ускоряет CI/CD, разработку и отладку</p>
  <h3 id="8OI5">🔐 4. Изоляция (но не абсолютная)</h3>
  <p id="adDY">Каждое приложение живёт в своём «пузыре»</p>
  <p id="9g2r"><strong>Ограничение:</strong> общее ядро ОС → для критичных задач используйте <strong>Kata Containers</strong> (микро-ВМ) или <strong>gVisor</strong> (эмуляция системных вызовов) - Про это я писал в своей одной предыдущей статье - <a href="https://telegra.ph/Docker-vs-Drugie-Runtime-Sredy-Arhitektura-Bezopasnost-i-Primenenie-05-06" target="_blank">жми</a></p>
  <h3 id="eFCi">💰 5. Экономия ресурсов</h3>
  <p id="eQGZ">Вместо тяжёлых виртуалок - лёгкие контейнеры. На одном сервере можно запустить в 2-3 раза больше приложений.</p>
  <h2 id="pSRo">Как используют контейнеры в реальной разработке</h2>
  <h3 id="y06j">👨‍💻 Локальная разработка</h3>
  <ul id="wOWA">
    <li id="VJm3">Поднимите PostgreSQL, Redis и Python 3.11 одной командой:bash<code>docker-compose up -d </code></li>
    <li id="OyDW"><strong>ВАЖНО:</strong> Избегайте конфликтов версий - у каждого проекта свой контейнер.</li>
  </ul>
  <h3 id="6Oft">🧪 CI/CD</h3>
  <ul id="TbDX">
    <li id="RfwA">В GitLab/GitHub Actions контейнеры:</li>
    <ul id="exHU">
      <li id="aa3M">Запускают тесты в изолированной среде.</li>
      <li id="Q2mF">Собирают артефакты.</li>
      <li id="BnUZ">Разворачивают приложения без зависимостей</li>
    </ul>
  </ul>
  <h3 id="o3rR">☁️ Облака и Kubernetes</h3>
  <ul id="xduL">
    <li id="2vw6">Pod(в некотором переводе, переводится как модуль, это сущность которая в себе может содержать несколько контейнеров которые гарантировано запускаются на одном узле) - базовая единица в Kubernetes .</li>
    <li id="nn6c"><strong>Пример:</strong> Автомасштабирование веб-сервиса при пиковой нагрузке в AWS/Yandex.Cloud etc</li>
  </ul>
  <figure id="DK1M" class="m_column">
    <img src="https://img3.teletype.in/files/2a/64/2a64528b-29c2-4fe6-9e95-ea6796f34655.png" width="2003" />
  </figure>
  <h2 id="YudD">Что часто упускают новички?</h2>
  <h3 id="BwJB">🗃️ Постоянное хранение данных</h3>
  <ul id="qUIu">
    <li id="eAUf">Контейнеры по умолчанию <strong>не сохраняют данные</strong> после остановки.</li>
    <li id="RPv7">Решение: <strong>тома (volumes)</strong> и <strong>PersistentVolumes</strong> в Kubernetes.</li>
  </ul>
  <h3 id="Hugi">🔧 Оркестрация</h3>
  <ul id="4WjD">
    <li id="wCPr">Для управления сотнями контейнеров нужны:</li>
    <ul id="5q3V">
      <li id="es2r"><strong>Kubernetes</strong> (золотой стандарт).</li>
      <li id="miCt"><strong>Openshift </strong>(разработка RedHat на основе K8s)</li>
      <li id="Aqqq"><strong>Deckhouse </strong>(разработка Флант на основе K8s есть сертификация ФСТЭК)</li>
      <li id="m36T"><strong>Docker Swarm</strong> (проще, но менее мощный).</li>
    </ul>
  </ul>
  <figure id="VwF2" class="m_retina">
    <img src="https://img3.teletype.in/files/e9/50/e950fd6a-2022-4eb8-934d-01a85a0c4326.png" width="471" />
  </figure>
  <figure id="tMI5" class="m_retina">
    <img src="https://img1.teletype.in/files/45/32/453287ae-d7f7-4d82-b6ad-58b85e510525.png" width="437.5" />
  </figure>
  <figure id="1EUy" class="m_retina">
    <img src="https://img1.teletype.in/files/04/8b/048b7966-8f23-4316-90c4-a4e2adf3e7ed.png" width="403" />
  </figure>
  <p id="4YhR"></p>
  <h3 id="EDtu">🛡️ Безопасность</h3>
  <ul id="kBG2">
    <li id="AcFC">Ограничьте ресурсы через <strong>cgroups</strong> (не дайте контейнеру сожрать всю память).</li>
    <li id="hhr4">Сканируйте образы на уязвимости (<strong>Trivy</strong>, <strong>Clair</strong>).</li>
  </ul>
  <h2 id="F9JS">Заключение: Пора перестать страдать</h2>
  <p id="NZCQ">Контейнеры - не мода, а необходимость. Они делают разработку предсказуемой, а эксплуатацию - масштабируемой.</p>
  <p id="7RuY"><strong>Советы:</strong></p>
  <ol id="rR6B">
    <li id="vfW8">Начните с <strong>Docker</strong> или <strong>Podman</strong> (безопасная альтернатива с rootless-режимом).</li>
    <li id="5YCo">Для продакшена освойте <strong>Kubernetes</strong> + мониторинг (<strong>Prometheus</strong>, <strong>Grafana</strong>).</li>
    <li id="g3un">Всегда проверяйте образы на уязвимости.</li>
    <li id="iR46">Не запускайте в k8s (kubernetes) - базы данных :)</li>
  </ol>
  <p id="9WSU"><em><strong>P.S.</strong> Если код всё ещё «не работает», возможно, проблема не в контейнерах  и не в k8s😉.<br /><br /></em><strong>Спасибо что дочитали, ниже как можно снами связаться:</strong></p>
  <p id="B0RN">Мы готовы провести консультацию по внедрению DevOps-подходов или полностью реализовать DevOps-практики под ключ в вашем бизнесе. Пишите нам: <a href="https://t.me/undercode_ii" target="_blank">https://t.me/undercode_ii</a></p>
  <p id="WwdE">📡 <strong>Больше о DevOps, ИИ и технологиях будущего — в нашем Telegram-канале:</strong><br /> <a href="https://t.me/Undercode_ai" target="_blank">https://t.me/Undercode_ai</a></p>
  <p id="7G7M">Наш сайт: <a href="https://undercode.group/" target="_blank">https://undercode.group/</a></p>

]]></content:encoded></item><item><guid isPermaLink="true">https://teletype.in/@undercode_ii/pbES9sIwUx_</guid><link>https://teletype.in/@undercode_ii/pbES9sIwUx_?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=undercode_ii</link><comments>https://teletype.in/@undercode_ii/pbES9sIwUx_?utm_source=teletype&amp;utm_medium=feed_rss&amp;utm_campaign=undercode_ii#comments</comments><dc:creator>undercode_ii</dc:creator><title>DevOps: философия, которая меняет подход к разработке и эксплуатации</title><pubDate>Sat, 10 May 2025 20:47:46 GMT</pubDate><media:content medium="image" url="https://img1.teletype.in/files/06/71/067176b3-8f5f-4852-bfed-a5511ac9e083.png"></media:content><description><![CDATA[<img src="https://img2.teletype.in/files/93/62/9362be88-c6be-4b1b-95e3-4af88a822f78.png"></img>💥 Устали от вечной войны между разработкой и админами?
 🐌 Бесконечные багфиксы, релизы в пятницу и падения в проде?]]></description><content:encoded><![CDATA[
  <p id="7SPD">💥 <strong>Устали от вечной войны между разработкой и админами?</strong><br /> 🐌 Бесконечные багфиксы, релизы в пятницу и падения в проде?</p>
  <p id="ohe9"><strong>DevOps — это не просто набор инструментов. Это культура сотрудничества, автоматизации и ответственности можно сказать целая ФИЛОСОФИЯ.</strong> В этой статье разберём, что стоит за термином DevOps, какие у него принципы и как он реально помогает бизнесу и командам.</p>
  <hr />
  <h2 id="TXFO">Что такое DevOps и почему это важно</h2>
  <p id="SEbN"><strong>DevOps (Development + Operations)</strong> — это подход, который объединяет разработчиков и специалистов по эксплуатации в одну команду с общей целью: быстро и безопасно доставлять ценность пользователям.</p>
  <blockquote id="kLQk">🧠 <strong>DevOps = Быстрые релизы + Надёжная инфраструктура + Командная работа</strong></blockquote>
  <p id="uMI2">По данным <em>State of DevOps Report</em>, компании, внедрившие DevOps:</p>
  <ul id="NrUL">
    <li id="OxqA">релизят <strong>в 30 раз чаще</strong>,</li>
    <li id="9QSy">сокращают время отката и восстановления после инцидентов <strong>в 168 раз</strong>.<br /><br /></li>
  </ul>
  <figure id="MHNQ" class="m_original">
    <img src="https://img2.teletype.in/files/93/62/9362be88-c6be-4b1b-95e3-4af88a822f78.png" width="800" />
    <figcaption>изображение взято из https://quasa.io/storage/photos/Фото/00%20Дев%201.png</figcaption>
  </figure>
  <hr />
  <h2 id="bkiR">Основные принципы DevOps</h2>
  <h3 id="1WHI">1. 🚀 <strong>Непрерывная интеграция и доставка (CI/CD)</strong></h3>
  <p id="5pEy">Автоматизация всего пайплайна — от коммита до продакшена.<br /> Пример: каждый пуш в <code>main(ранее master)</code> запускает сборку, тесты и деплой на препрод( стейджинг).</p>
  <p id="oBQ3"><strong>Зачем:</strong> уменьшает ручной труд, снижает число багов, ускоряет вывод фич на рынок.<br />Есть очень важный показатель Time to market, вот  как раз таки DevOps и нужен для максимального сокращения данного показателя, почитать подробнее можно по ссылке <a href="https://habr.com/ru/companies/usetech/articles/753964/" target="_blank">https://habr.com/ru/companies/usetech/articles/753964/</a></p>
  <hr />
  <h3 id="TqqC">2. 🔄 <strong>Непрерывный мониторинг и фидбек</strong></h3>
  <p id="F0O5">Всё должно логироваться и мониториться: метрики, логи, трассировки.<br /> Важно не просто “замерять температуру”, но и <strong>быстро реагировать</strong> на отклонения и анамалии.</p>
  <p id="UWjN">🛠 Примеры инструментов: Prometheus + Grafana, Loki, Sentry, ELK stack.</p>
  <hr />
  <h3 id="2LeV">3. 🛡 <strong>Инфраструктура как код (IaC)</strong></h3>
  <p id="mByc">Все ресурсы (серверы, базы, сети) описываются в коде и версионируются.<br /> Terraform, Ansible, Pulumi, AWS CDK/Yandex Cloud/Vk Cloud etc. — мастхев в DevOps-арсенале.</p>
  <p id="Jcyz"><strong>Зачем:</strong> воспроизводимость, контроль версий, быстрая миграция и откат.</p>
  <hr />
  <h3 id="xd03">4. 🤝 <strong>Сотрудничество и ответственность</strong></h3>
  <p id="C6F9">DevOps размывает границы: Dev отвечает не только за код, но и за то, как он живёт в проде. Ops — не просто  &quot;Техподдержка&quot;, а активный участник жизненного цикла продукта.</p>
  <p id="Sy6R">📌 <strong>Ключ:</strong> общие OKR(Objectives and Key Results*), общее владение системой, постоянный диалог(да-да куча созвонов, увы без них никуда).</p>
  <hr />
  <h3 id="qtBg">5. 🧪 <strong>Автоматизация тестирования</strong></h3>
  <p id="OuPJ">Юнит-тесты, интеграционные, e2e — всё должно быть автоматизировано.</p>
  <p id="2o4Y">➡️ Чем раньше найдена ошибка — тем дешевле она обходится.</p>
  <hr />
  <h2 id="ivC6">Как DevOps помогает в реальности</h2>
  <h3 id="NRQV">✅ Разработке:</h3>
  <ul id="eOuB">
    <li id="3x4x">Меньше “ручных” задач — больше времени на код</li>
    <li id="FCOA">Быстрая проверка гипотез</li>
    <li id="X0pf">Предсказуемость окружения (благодаря Docker, IaC)</li>
  </ul>
  <h3 id="HgzF">✅ Эксплуатации:</h3>
  <ul id="tpqA">
    <li id="M9CM">Меньше ночных аварий и понятная инфраструктура</li>
    <li id="4SHA">Чёткое понимание, что и как задеплоено</li>
    <li id="CvLj">Возможность быстро масштабировать и обновлять сервисы</li>
  </ul>
  <h3 id="H4rA">✅ Бизнесу:</h3>
  <ul id="fzg6">
    <li id="ygtl">Быстрее выходят на рынок</li>
    <li id="82u9">Повышается стабильность систем</li>
    <li id="gEj0">Снижается стоимость поддержки и время восстановления</li>
  </ul>
  <hr />
  <h2 id="XZr0">Заключение: DevOps — это не модный тренд, а необходимость</h2>
  <p id="TRae">Философия DevOps — это путь от &quot;разделённых ролей&quot; к <strong>единым командам и целям</strong>.<br /> Внедрение DevOps — это <strong>не только про Jenkins и Docker</strong>, это про <strong>мышление, процессы и доверие</strong>.<br /><br /><em>OKR (Objectives and Key Results) — это система целеполагания, в которой команда (или несколько команд) разделяют одну и ту же цель (Objective) и согласованные ключевые результаты (Key Results) для её достижения</em></p>
  <p id="vDCa"></p>
  <p id="9Hgg">P.s<br /><br />⚡ <strong>Хотите внедрить DevOps в команде? Начните с CI/CD и мониторинга — они дают максимальный эффект в кратчайшие сроки.<br /></strong></p>
  <p id="oJsH"><strong>А так же Вы  можете заказать консультацию по внедрению подходов DevOps или мы можем помочь вам с внедрением практик DevOps под ключ в ваш бизнес, пишите:   <a href="https://t.me/Undercode_ai" target="_blank">https://t.me/undercode_ii<br /></a><br />Еще больше про DevOps,ИИ и современные технологии:<a href="https://t.me/Undercode_ai" target="_blank">https://t.me/Undercode_ai</a></strong></p>

]]></content:encoded></item></channel></rss>