diff --git a/docs/practice-guides/oblachnye-provaidery-dlya-praktik-po-devops.md b/docs/practice-guides/oblachnye-provaidery-dlya-praktik-po-devops.md deleted file mode 100644 index f67cfd8..0000000 --- a/docs/practice-guides/oblachnye-provaidery-dlya-praktik-po-devops.md +++ /dev/null @@ -1,57 +0,0 @@ ---- -title: "Облачные провайдеры для практик по DevOps" ---- - -[Перейти на сайт](https://ru.hexlet.io) - -# Облачные провайдеры для практик по DevOps - -> Коротко о полезных сервисах для практик. - -Практики в курсах по Devops и администрированию выполняются на облачных серверах. Это необходимо, чтобы научиться нарабатывать реальный опыт, плюс сами сервисы невозможно заменить или подменить. - -## Если вы учитесь с наставником: - -Команда Хекслета заранее позаботилась о доступе студентов тарифов [Расширенный](/docs/formats-and-tarifs/tarifs/tarif-rasshirennyi.md), [Стандартный](/docs/formats-and-tarifs/tarifs/tarif-standartnyi.md), [Оптимальный](/docs/formats-and-tarifs/tarifs/tarif-optimalnyi.md) и [Премиальный](/docs/formats-and-tarifs/tarifs/tarif-premialnyi.md) к Yandex Cloud. Если вы обучаетесь на направлении DevOps, вы можете обратиться к своему куратору и получить промокод для активации доступа к Yandex Cloud на 45 дней. Вместе с промокодом команда подскажет, как его активировать, и ответит на возникающие вопросы по работе с сервисом. - -Если возникают вопросы, всегда можно написать в поддержку по адресу support@hexlet.io — специалисты помогут разобраться или передадут информацию нужной команде. - -Небольшая справка: в программе «DevOps для разработчиков» работа с Yandex Cloud начинается со второго проекта, а в программе «DevOps-инженер с нуля» — с третьего проекта. - -### Как уложиться в бюджет - -Промокод покрывает определённый лимит ресурсов. Чтобы его хватило на весь проект: - -- **Используйте минимальные конфигурации.** Для учебных задач достаточно ВМ с частичным vCPU (50%) и 2 ГБ RAM — они примерно вдвое дешевле полных конфигураций. -- **Используйте прерываемые ВМ** (раздел «Прерываемая» при создании ВМ) там, где это возможно — они стоят до 65% дешевле обычных. Подходят для временных серверов и тестирования. -- **Останавливайте или удаляйте ВМ**, когда не работаете. Остановленная ВМ тарифицируется только за диск; удалённая ВМ не тарифицируется совсем. Если конфигурация описана в Terraform/Ansible — удалять безопасно, её легко пересоздать. -- **Следите за балансом** в консоли Yandex Cloud: раздел **Биллинг → Обзор**. - -## Если вы учитесь самостоятельно: - -Почти все провайдеры предоставляют ознакомительный период. Обычно этого хватает для прохождения курсов и проекта. - -В качестве основного решения в наших курсах используется Yandex Cloud. Сервис предоставляет [стартовый грант на 60 дней](https://yandex.cloud/ru/docs/getting-started/usage-grant). После завершения пробного периода Yandex Cloud начнет тарифицировать использование ресурсов. Для расчета стоимости можете использовать [калькулятор](https://yandex.cloud/ru/prices) услуг. - -Чтобы уложиться в стартовый грант: - -- Выбирайте **минимальные конфигурации** — ВМ с частичным vCPU (50%) и 2 ГБ RAM достаточно для большинства учебных задач. -- Используйте **прерываемые ВМ** для временных и тестовых серверов — экономия до 65%. -- **Останавливайте или удаляйте ВМ** после работы. Остановленная ВМ тарифицируется только за диск; удалённая ВМ не тарифицируется совсем. Если конфигурация описана в коде (Terraform/Ansible) — удалять безопасно. -- Используйте [калькулятор](https://yandex.cloud/ru/prices) для оценки стоимости перед запуском ресурсов. - -У Yandex Cloud есть [документация](https://yandex.cloud/ru/docs/getting-started/individuals/registration) с помощью которой можно начать работать с сервисом. Также вы можете прочитать нашу [статью](https://ru.hexlet.io/blog/posts/chem-zamenit-oblachnyy-provayder-digitalocean-obzor-yandex-cloud) про начало работы с этим сервисом. - -## Альтернативы Yandex Cloud - -Yandex Cloud – основное решение, которое мы рекомендуем использовать. Если вы находитесь в Европе или США или в других странах, то вам может быть удобнее использовать другие облачные провайдеры. Например Digital Ocean. - -Зарегистрируйтесь в Digital Ocean по [этой ссылке](https://m.do.co/c/e702f9a99145), чтобы получить кредит $200 для ознакомительного использования на 60 дней. Этого срока хватит, чтобы пройти курсы и проекты в течение 60-дневного периода. Digital Ocean снимает средства сразу при использовании, поэтому отключайте сервисы, которые не используете. - -**Полезные ссылки** - -[Инструкция по Yandex Cloud в блоге Хекслета](https://ru.hexlet.io/blog/posts/chem-zamenit-oblachnyy-provayder-digitalocean-obzor-yandex-cloud) - -[Документация по Yandex Cloud](https://yandex.cloud/ru/docs/getting-started/) - -Регистрация в [Digital Ocean](https://m.do.co/c/e702f9a99145) diff --git a/docs/practice-guides/oblachnye-provaidery.md b/docs/practice-guides/oblachnye-provaidery.md new file mode 100644 index 0000000..d30325c --- /dev/null +++ b/docs/practice-guides/oblachnye-provaidery.md @@ -0,0 +1,125 @@ +--- +title: "Работа с облачными провайдерами" +--- + +[Перейти на сайт](https://ru.hexlet.io) + +# Работа с облачными провайдерами + +> Чем оплачивается работа в облаке, где смотреть расход и что делать при перерасходе. + +Часть практик и проектов выполняется в облаке. В курсах по DevOps и администрированию это виртуальные машины, сети и управляемые базы данных; в курсах по разработке приложений на языковых моделях — управляемые сервисы вроде AI Studio и функций. Локальная установка их не заменяет: часть навыка состоит в работе с сервисами провайдера. + +Основной провайдер, на котором проверены наши курсы и проекты, — Yandex Cloud. + +Аккаунт в облаке понадобится с того момента, как об этом скажет курс или проект. Заводить его заранее незачем: срок промокода и гранта идёт с активации, и часть оплаченного времени сгорит до первой практики. + +{/* Справка про то, с какого проекта в каждой программе начинается работа с облаком, вынесена из текста: она привязана к номерам проектов и устаревает при смене учебного плана незаметно для читателя. Прежняя формулировка: +Небольшая справка: в программе «DevOps для разработчиков» работа с Yandex Cloud начинается со второго проекта, а в программе «DevOps-инженер с нуля» — с третьего проекта. */} + +## Чем оплачивается работа в облаке + +Доступ к облаку оплачивается одним из двух способов, и они не пересекаются. + +### Промокод от Хекслета + +Хекслет выдаёт промокод на доступ к Yandex Cloud на 45 дней студентам тарифов [Расширенный](/docs/formats-and-tarifs/tarifs/tarif-rasshirennyi.md), [Стандартный](/docs/formats-and-tarifs/tarifs/tarif-standartnyi.md), [Оптимальный](/docs/formats-and-tarifs/tarifs/tarif-optimalnyi.md) и [Премиальный](/docs/formats-and-tarifs/tarifs/tarif-premialnyi.md). Промокод даёт куратор: напишите ему, когда дойдёте до практики с облаком. Он же подскажет, как активировать промокод, и ответит на вопросы по сервису. + +Активировать промокод можно самостоятельно: на [странице платёжных аккаунтов](https://center.yandex.cloud/billing/accounts) выберите аккаунт, в левой панели нажмите **Аккаунт** и затем «Активировать промокод» ([инструкция Яндекса](https://yandex.cloud/ru/docs/billing/operations/activate-promocode)). + +После активации промокод показывается на той же странице в блоке **Гранты**: там видно, сколько из выданной суммы израсходовано и сколько дней осталось. Это отдельная строка, не баланс лицевого счёта — баланс на том же экране показывает ваши собственные деньги. + +![Страница платёжного аккаунта: баланс, потребление за 30 дней и блок «Гранты» с остатком промокода](/img/docs/img-204--yandex-cloud-billing-account.png) + +Подпись под полосой остатка сообщает и про ограничение по сервисам — «Все сервисы, кроме 4». + +:::danger[Эти сервисы включать нельзя] + +Промокод не покрывает **Marketplace, Compute GPU, Яндекс 360 и Яндекс Трекер**. Обращение к любому из них может привести к автоматической блокировке платёжного аккаунта — доступ к облаку пропадёт посреди проекта, и вернуть его быстро не получится. + +Ни один курс и ни один проект этих сервисов не требует. Отдельно следите за Compute GPU: при создании виртуальной машины платформа предлагает конфигурации с графическим ускорителем, и выбирать их не нужно. + +::: + +### Стартовый грант Яндекса + +При самостоятельном обучении работает [стартовый грант на 60 дней](https://yandex.cloud/ru/docs/getting-started/usage-grant). Грант начисляется автоматически, когда вы привязываете карту к платёжному аккаунту, отдельный промокод для этого не нужен. После окончания гранта Yandex Cloud тарифицирует ресурсы по обычным ценам, списывая деньги с привязанной карты. Оценить стоимость заранее помогает [калькулятор услуг](https://yandex.cloud/ru/prices). + +## Как посмотреть, куда уходят деньги + +Расход по сервисам виден в сервисе Yandex Cloud Billing, в разделе **Детализация**. Порядок такой: + +1. Откройте [страницу платёжных аккаунтов](https://center.yandex.cloud/billing/accounts) и выберите свой аккаунт. +2. В левой панели нажмите **Детализация**. +3. Выберите разрез, в котором смотрите расход: **По каталогам облака**, **По сервисам**, **По продуктам**, **По меткам** или **По периодам**. По умолчанию показывается текущий месяц, период меняется фильтром слева. +4. Переключатель над графиком выбирает, что показывать: **Потребление** — расход без скидок, **К оплате** — сумма с учётом скидок и промокода. + +![Раздел «Детализация»: вкладки разрезов, переключатель «Потребление» и «К оплате», график расхода по дням](/img/docs/img-205--yandex-cloud-billing-details.png) + +Разница между переключателями бывает разительной. На снимке выше потребление за месяц — 6 539,97 ₽, а к оплате 164,54 ₽: остальное закрыл промокод. Ориентироваться на «Потребление» и решать, что деньги кончаются, здесь означает испугаться раньше времени; следить нужно за «К оплате». + +Разрез **по продуктам** отвечает на вопрос «за что именно списали»: там видны конкретные позиции с единицами потребления. Наведите курсор на столбец, и Yandex Cloud покажет разбивку за день. + +![Разбивка расхода за день по продуктам: неактивный IP-адрес, диск, хосты базы данных](/img/docs/img-206--yandex-cloud-billing-details-products.png) + +На этом снимке хорошо видно, за что уходят деньги при простое: неактивный публичный IP-адрес балансировщика — 13,63 ₽, стандартный диск — 9,96 ₽. Ни то, ни другое не выполняет работу, но тарифицируется. Разрез **по каталогам** показывает, в каком каталоге такие ресурсы остались от предыдущей практики. + +Данные о расходе приходят с задержкой **до нескольких часов**, а даты считаются по московскому времени. Только что запущенная виртуальная машина в детализации пока не видна, поэтому её отсутствие в отчёте не означает, что она бесплатна. + +Подробнее — в документации Яндекса: [Посмотреть детализацию в консоли](https://yandex.cloud/ru/docs/billing/operations/check-charges). + +## Как узнать о перерасходе заранее + +Yandex Cloud умеет присылать уведомления при достижении порога расхода. Такое уведомление называется бюджетом. Заводится оно там же, на странице платёжного аккаунта: откройте вкладку **Бюджеты** и нажмите «Создать бюджет». + +![Раздел «Бюджеты»: список бюджетов с порогами и текущим потреблением, кнопка «Создать бюджет»](/img/docs/img-207--yandex-cloud-billing-budgets.png) + +**Бюджет не останавливает ресурсы.** В документации Яндекса это сказано прямо: достижение установленного порога не влияет на дальнейшее потребление. Бюджет даёт время заметить расход и вмешаться, а выключать ресурсы придётся вам. + +Типов бюджета три: **Стоимость потребления** — расход без скидок, **К оплате** — расход с учётом скидок и активных промокодов, **Остаток средств** — баланс лицевого счёта. Настройте два из них: + +1. **К оплате** — этот тип учитывает промокод, поэтому показывает реальную трату. Порог задаётся в процентах или в рублях, и порогов можно поставить несколько: возьмите 50% и 80% суммы промокода или гранта. Первый даёт время посмотреть детализацию, второй — время всё выключить. +2. **Остаток средств** — уведомление приходит, когда баланс лицевого счёта падает ниже заданной суммы. За остатком самого промокода этот тип не следит, промокод виден только в блоке **Гранты**; зато лицевой счёт начинает расходоваться сразу после того, как промокод исчерпан, и такое уведомление ловит переход на ваши деньги. + +В обоих случаях укажите себя получателем уведомлений и проверьте, что почта в аккаунте та, которую вы читаете. + +Подробнее — в документации Яндекса: [Установить уведомления](https://yandex.cloud/ru/docs/billing/operations/budgets). + +## Как уложиться в бюджет + +Промокод и грант покрывают ограниченный объём ресурсов. Чтобы его хватило на весь проект: + +- **Берите минимальные конфигурации.** Для учебных задач достаточно виртуальной машины с частичным vCPU (50%) и 2 ГБ оперативной памяти — она заметно дешевле полной конфигурации. +- **Используйте прерываемые машины** (переключатель «Прерываемая» при создании ВМ) там, где это возможно: они стоят дешевле обычных. Но у них есть жёсткое ограничение: Yandex Cloud принудительно останавливает такую машину через 24 часа после запуска, а при нехватке ресурсов в зоне доступности может остановить раньше или не запустить вовсе. Для стенда, к которому вы вернётесь завтра, это не подходит; берите прерываемые под разовые проверки, а конфигурацию описывайте в Terraform или Ansible, чтобы поднять заново одной командой. +- **Останавливайте или удаляйте машины**, когда не работаете. Остановленная ВМ тарифицируется только за диск, удалённая не тарифицируется совсем. Если конфигурация описана в Terraform или Ansible, удалять безопасно: она пересоздаётся одной командой. +- **Считайте стоимость до запуска** через [калькулятор услуг](https://yandex.cloud/ru/prices). + +Если вы работаете с языковыми моделями, расход считается иначе: деньги уходят за токены запросов и ответов, за вызовы функций и за хранение секретов. Такой расход не связан с временем работы сервера, поэтому по остановленным машинам его не видно — смотрите разрез по сервисам в детализации. Ограничивают его две вещи: параметр `max_tokens`, который задаёт верхнюю границу длины ответа, и выбор модели, потому что цена за токен у моделей различается в разы. + +## Если расход уже превысил промокод + +Порядок действий такой, и первый шаг здесь важнее остальных. + +1. **Остановите и удалите ресурсы.** Счётчик идёт всё время, пока вы разбираетесь, поэтому сначала прекратите списания. Проверьте все каталоги: виртуальные машины, базы данных, балансировщики, диски и статические IP-адреса тарифицируются отдельно, и отдельно стоящий диск от удалённой машины продолжает списывать деньги. +2. **Посмотрите в детализации, что тратило деньги** — разрез по продуктам за период, когда расход вырос. Это нужно, чтобы не повторить ситуацию на следующем шаге проекта. +3. **Напишите куратору.** Расскажите, что произошло и что показала детализация. Вопрос о дополнительных средствах решается индивидуально, автоматической выдачи второго промокода нет. + +## Другие провайдеры + +Курсы и проекты проверены на Yandex Cloud. У других провайдеров часть нужных сервисов может отсутствовать или называться иначе, и тогда задание придётся адаптировать самостоятельно. + +Если вы находитесь за пределами России, удобнее может оказаться Digital Ocean. При регистрации по [этой ссылке](https://m.do.co/c/e702f9a99145) начисляется стартовый кредит на пробный период — его хватает на курсы и проект. Актуальную сумму и срок смотрите у них на сайте: условия программы меняются. Digital Ocean списывает средства сразу при использовании, поэтому отключайте сервисы, которыми не пользуетесь. + +## Если остались вопросы + +Напишите в поддержку на support@hexlet.io — специалисты помогут разобраться или передадут информацию нужной команде. + +## Полезные ссылки + +[Обзор Yandex Cloud в блоге Хекслета](https://ru.hexlet.io/blog/posts/chem-zamenit-oblachnyy-provayder-digitalocean-obzor-yandex-cloud) + +[Документация Yandex Cloud: начало работы](https://yandex.cloud/ru/docs/getting-started/) + +[Документация Yandex Cloud: биллинг](https://yandex.cloud/ru/docs/billing/) + +Регистрация в [Digital Ocean](https://m.do.co/c/e702f9a99145) diff --git a/docusaurus.config.ts b/docusaurus.config.ts index e047224..78de488 100644 --- a/docusaurus.config.ts +++ b/docusaurus.config.ts @@ -69,6 +69,10 @@ const config: Config = { from: '/learning-formats/tarif-standartnyi', to: '/formats-and-tarifs/tarifs/tarif-standartnyi', }, + { + from: '/practice-guides/oblachnye-provaidery-dlya-praktik-po-devops', + to: '/practice-guides/oblachnye-provaidery', + }, ], }, ], diff --git a/static/img/docs/img-204--yandex-cloud-billing-account.png b/static/img/docs/img-204--yandex-cloud-billing-account.png new file mode 100644 index 0000000..dc65626 Binary files /dev/null and b/static/img/docs/img-204--yandex-cloud-billing-account.png differ diff --git a/static/img/docs/img-205--yandex-cloud-billing-details.png b/static/img/docs/img-205--yandex-cloud-billing-details.png new file mode 100644 index 0000000..aec6ba2 Binary files /dev/null and b/static/img/docs/img-205--yandex-cloud-billing-details.png differ diff --git a/static/img/docs/img-206--yandex-cloud-billing-details-products.png b/static/img/docs/img-206--yandex-cloud-billing-details-products.png new file mode 100644 index 0000000..545d6da Binary files /dev/null and b/static/img/docs/img-206--yandex-cloud-billing-details-products.png differ diff --git a/static/img/docs/img-207--yandex-cloud-billing-budgets.png b/static/img/docs/img-207--yandex-cloud-billing-budgets.png new file mode 100644 index 0000000..324f29c Binary files /dev/null and b/static/img/docs/img-207--yandex-cloud-billing-budgets.png differ