Чем решение ibm cloud code engine может быть полезно разработчикам?

 

ibm cloud code engine — это полностью управляемая бессерверная платформа, которая может использоваться для размещения облачных приложений, в том числе образов контейнеров, 12-факторных приложений, функций, пакетных заданий или просто фрагментов кода. Разработчики выбирают необходимую функцию среды выполнения и получают все самое лучшее сразу, вместо того чтобы выбирать один тип платформы хостинга (caas, paas, faas) с ее ограничениями на среды выполнения. ibm cloud code engine позволяет разработчикам абстрагироваться от сложностей платформы хостинга среды выполнения и полностью сконцентрироваться на коде, а не на управлении инфраструктурой. Это решение предоставляет разработчикам универсальный способ, которым они могут разворачивать разные артефакты (образы контейнеров, исходный код, пакетные задания и т. п.), а также динамически меняет масштаб итогового приложения в большую и меньшую сторону — вплоть до нуля — позволяя пользователям платить только за фактическое время работы приложений.



Что такое бессерверный подход?

 

Бессерверный подход — это способ организации вычислений, позволяющий разработчикам уделять все время и силы написанию кода и бизнес-логике, а не решению инфраструктурных вопросов. Задачи управления инфраструктурой (такие как предоставление ресурсов, обеспечение безопасности, масштабирование, планирование, установка исправлений и т. п.) находятся в ведении провайдера облачной среды. ibm cloud code engine расширяет эту концепцию путем добавления характеристик сред выполнения других платформ как услуги, позволяя разработчикам выполнять любой тип кода одинаковым способом.



Какое отношение ibm cloud code engine имеет к kubernetes?

 

Решение ibm cloud code engine основано на kubernetes, но скрывает его сложные аспекты, поэтому разработчики могут сосредоточиться на написании кода вместо того, чтобы управлять средой хостинга. Несмотря на то что это удобно большинству пользователей, некоторым из них может потребоваться доступ к полной конфигурации kubernetes (например, для интеграции с другими задачами kubernetes). Для этого в code engine предусмотрена возможность использовать стандартные инструменты kubernetes (например, kubectl).

| **Продукты kubernetes** |  | **ibm cloud code engine** |  | **ibm cloud kubernetes service или red hat openshift в ibm cloud** |  | **red hat openshift в среде заказчика** |
| Способ предоставления |  | Услуга ibm cloud |  | Услуга ibm cloud |  | Устанавливаемый локально программный продукт |
| Аренда |  | Мультиарендная среда (общие кластеры) |  | Одиночный арендатор (выделенный кластер) |  | Одиночный арендатор (выделенный кластер) |
| Стоимость |  | Плата начисляется только во время выполнения задач (ГБ/с, вирт. проц./с и вызовы) |  | Взимается фиксированная плата за весь кластер (количество кластерного времени) |  | Фиксированная плата за лицензию и расходы на инфраструктуру |
| Управление |  | Полностью управляемая |  | Частично управляемая |  | Самостоятельно управляемая |
| Навыки |  | Не нужны никакие навыки работы с контейнерами, кластерами, сетевыми технологиями или инфраструктурой |  | Требуются навыки работы с ibm cloud kubernetes service/red hat openshift, сетевыми технологиями и инфраструктурой |  | Требуются навыки работы с red hat openshift, сетевыми технологиями и инфраструктурой |



Ограничен ли срок действия бесплатной версии ibm cloud code engine?

 

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

* Объема ресурсов памяти и процессора, выделенных каждому экземпляру приложения
* Числа экземпляров
* Времени существования каждого экземпляра
* Числа вызовов http


Как запустить приложение в ibm cloud code engine?

 

Приложение — это процесс, предоставляющий конечную точку http. Его можно использовать в качестве базовой программы для веб-приложения или мобильного приложения, api rest и прокси-приложения. В ibm cloud code engine нужно выполнить одну команду интерфейса командной строки. Информацию о том, как все правильно настроить, включая запуск образа контейнера, предоставление конечной точки https и автоматическое масштабирование, можно найти в учебнике.



Как запустить пакетное задание в ibm cloud code engine?

 

Пакетная обработка подходит для часто используемых программ, которые можно выполнять без взаимодействия с человеком. Разработчики могут запускать несколько крупномасштабных пакетных заданий одновременно для поддержки различных задач, в том числе сложных вычислительных задач, задач etl (таких как перекодировка), задач mapreduce, имитации (научных вычислений), рендеринга и любого типа параллельной обработки данных. Пакетные задания в ibm cloud code engine выполняются как контейнеры, то есть их достаточно упаковать как образы и передать в ibm cloud code engine. Это позволяет изолировать пакетное задание для обеспечения безопасности и предоставить ему необходимые ресурсы процессора и памяти.



Может ли ibm cloud code engine создать образ контейнера, если я не знаю, как это сделать?

 

Да. Если вы хотите только писать код, не тратя силы на сборку образа, можно воспользоваться функцией сборки образа контейнера. Вам достаточно напрямую предоставить исходный код (через репозиторий git), а ibm cloud code engine возьмет на себя сборку контейнера и управление им. Если вы знакомы с ibm cloud foundry, здесь все происходит по схожему принципу. ibm cloud code engine поддерживает две стратегии сборки. Первая — сборка через dockerfile с использованием инструмента сборки kaniko. Вторая — пакет сборки cloud native, использующий пакеты сборки paketo.