Общие вопросы

Вопрос: Что такое AWS CDK?
AWS Cloud Development Kit (AWS CDK) – это платформа для разработки программного обеспечения с открытым исходным кодом. На ее основе можно определять облачную инфраструктуру как код с использованием современных языков программирования и выполнять развертывание с помощью AWS CloudFormation.

Вопрос: Что можно делать с помощью интерфейса командной строки AWS CDK?
Интерфейс командной строки AWS CDK можно использовать для взаимодействия с приложениями CDK. С помощью интерфейса командной строки CDK можно перечислять стеки, определенные в приложении CDK, синтезировать на их основе шаблоны CloudFormation, выявлять различия между запущенными инстансами стеков и стеками, определенными в коде CDK, а также развертывать стеки в любом публичном регионе AWS.

Вопрос: Как работает сервис AWS CDK?
Платформа AWS CDK используется для разработки проектов AWS CDK, при выполнении которых создаются шаблоны CloudFormation. Проекты AWS CDK можно выполнять с помощью командной строки AWS CDK или в системе непрерывной доставки.

Вопрос: Как начать работу с AWS CDK?
Лучший способ начать работу с AWS CDK – изучить раздел Getting Started в руководстве по AWS CDK для разработчиков. Всего за несколько минут вы научитесь определять и развертывать приложения AWS CDK. Более подробное руководство см. по адресу https://CDKworkshop.com.

Вопрос: Существуют ли образцы приложений AWS CDK, которые можно использовать в качестве ориентира?
Да, несколько образцов AWS CDK на разных языках программирования можно найти по адресу https://github.com/aws‑samples/aws‑cdk‑examples. Образцы также содержатся в руководстве AWS для разработчиков по адресу https://docs.aws.amazon.com/cdk/latest/guide/examples.html.

Вопрос: Почему для использования AWS CDK требуется среда выполнения JavaScript?
AWS компилирует бизнес‑логику пакетов AWS Construct Library в TypeScript и предоставляет сопоставления с каждым из поддерживаемых языков программирования. Это гарантирует единообразие поведения логических структур AWS CDK на всех языках и позволяет нам предлагать полный набор пакетов логических структур на всех языках. Весь код в рамках проекта AWS CDK можно писать на наиболее удобном для вас языке программирования, а среда выполнения JavaScript используется для реализации возможностей программирования. Ссылка на проект jsii – https://github.com/aws/jsii.

Вопрос: Где найти исходный код AWS CDK?
Открытый исходный код AWS CDK доступен на GitHub по адресу https://github.com/awslabs/aws‑cdk.

Вопрос: Как принять участие в проекте?
Проект по разработке AWS CDK открыт, и свой вклад в базу кода может внести любой желающий. Подробнее см. по адресу https://github.com/awslabs/aws‑cdk/blob/master/CONTRIBUTING.md.

Вопрос: Какие языки программирования поддерживает AWS CDK?
AWS CDK поддерживает JavaScript, TypeScript и Python (в общем доступе), а также Java и C# (в ознакомительной версии для разработчиков). В будущем планируется поддержка других языков для AWS CDK, поэтому голосуйте за предпочитаемый вариант на GitHub.

Вопрос: В каких регионах можно использовать AWS CDK?
AWS CDK можно использовать для определения и развертывания ресурсов AWS во всех публичных регионах. Поскольку AWS CDK опирается на сервис CloudFormation, сведения о доступности конкретных ресурсов в регионах AWS см. на странице Продукты и сервисы по регионам.

Вопрос: Существуют ли какие‑либо лимиты ресурсов или ограничения для AWS CDK?
Поскольку AWS CDK опирается на сервис CloudFormation, на приложения AWS CDK распространяются те же ограничения, что и на сервис CloudFormation.

AWS Construct Library

Вопрос: Что такое AWS Construct Library?
AWS Construct Library содержит логические структуры AWS CDK, которые представляют собой абстракции логики облачной инфраструктуры с многофункциональным программным интерфейсом, упакованные для многократного использования. Логические структуры можно определять локально или публиковать с использованием менеджеров пакетов наподобие npm, Maven, NuGet или PyPI для общего доступа в рамках организации.

Вопрос: Какие сервисы доступны в AWS Construct Library?
Мы поддерживаем многие распространенные сервисы и возможности AWS с помощью многофункциональных высокоуровневых логических структур, а также обеспечиваем полную поддержку ресурсов CloudFormation нижнего уровня, в том числе новых ресурсов вскоре после их появления. Мы поддерживаем актуальность AWS Construct Library, автоматически генерируя API уровня ресурсов всякий раз при изменении спецификаций CloudFormation. На основе автоматически сгенерированных API мы предлагаем разработанные вручную абстракции более высокого уровня, благодаря чему работать с тем или иным сервисом становится еще проще. Такие удобные высокоуровневые абстракции доступны пока не для всех сервисов AWS, но мы постоянно добавляем новые возможности, ориентируясь при этом сервисы, наиболее востребованные в современных облачных приложениях. Подробнее см. в справке по API AWS Construct Library.

Вопрос: Как быстро в AWS CDK появляется поддержка новых возможностей CloudFormation?
Мы синхронизируем AWS Construct Library со спецификацией ресурсов CloudFormation и добавляем новые возможности CloudFormation в AWS CDK вскоре после их публикации.

Вопрос: Как предоставлять участникам группы доступ к логическим структурам AWS CDK и управлять ими?
Библиотеки логических структур AWS CDK действуют точно так же, как любая другая библиотека. Они употребляются через менеджер пакетов используемого языка программирования. Поддержание актуального состояния библиотек – одна из составляющих стандартного рабочего процесса. Все пакеты поддерживают семантическую систему версий, что позволяет принимать осознанные решения о миграции на новые модели инфраструктуры.

CloudFormation и SAM

Вопрос: Как связаны AWS CDK и CloudFormation?
AWS CDK можно рассматривать как набор инструментов разработчика, позволяющий использовать все возможности современных языков программирования для определения инфраструктуры AWS как кода. При запуске приложений AWS CDK они компилируются в полностью готовые шаблоны JSON / YAML CloudFormation, которые затем отправляются в сервис CloudFormation для выделения ресурсов. Поскольку AWS CDK использует CloudFormation, доступны все преимущества CloudFormation, такие как безопасное развертывание, автоматическое восстановление предыдущей версии и обнаружение отклонений.  

Вопрос: Как связаны AWS CDK и AWS SAM?
И AWS Serverless Application Model, и AWS CDK создают абстракцию инфраструктуры AWS в виде кода, что упрощает определение облачной инфраструктуры. AWS SAM используется для работы с бессерверными приложениями и архитектурами для определения инфраструктуры в виде компактных декларативных шаблонов JSON / YAML. AWS CDK предлагает поддержку всех сервисов AWS и позволяет использовать для определения облачной инфраструктуры современные языки программирования, такие как TypeScript, Python, C# и Java. И AWS SAM, и AWS CDK используют CloudFormation в качестве механизма выделения ресурсов для стеков инфраструктуры.

Если вы предпочитаете определять бессерверную инфраструктуру с использованием сжатых декларативных шаблонов, рекомендуется использовать SAM. Если вы хотите определить инфраструктуру AWS с использованием знакомого языка программирования, рекомендуется воспользоваться AWS CDK. В обоих случаях гарантировано развертывание безопасной воспроизводимой инфраструктуры с помощью CloudFormation.

Вопрос: Можно ли использовать интерфейс командной строки AWS SAM для локального тестирования функций Lambda, определенных с помощью AWS CDK?
Да, можно локально синтезировать шаблон CloudFormation на основе приложения AWS CDK и затем сослаться на созданный идентификатор обработчика AWS Lambda в интерфейсе командной строки SAM. Подробнее см. в разделе руководства по CDK для разработчика, посвященном интерфейсу командной строки SAM.

Стоимость

Вопрос: По какой лицензии распространяется AWS CDK?
AWS CDK распространяется по лицензии Apache версии 2.0. Подробнее см. в документах LICENSE и NOTICE.

Вопрос: Сколько стоит использование AWS CDK?
Дополнительная плата за AWS CDK отсутствует. Оплачиваются ресурсы AWS (например, инстансы Amazon EC2, балансировщики нагрузки Elastic Load Balancing и т. д.), созданные с использованием AWS CDK, точно так же, как при создании вручную. Вы платите только за то, чем пользуетесь, без минимальной оплаты или долгосрочных обязательств.

Product-Page_Standard-Icons_01_Product-Features_SqInk
Ознакомиться с возможностями продукта

Посетите страницу с описанием возможностей AWS CDK

Подробнее 
Product-Page_Standard-Icons_02_Sign-Up_SqInk
Зарегистрировать бесплатный аккаунт

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

Регистрация 
Product-Page_Standard-Icons_03_Start-Building_SqInk
Документация

Подробнее об AWS CDK в руководстве для разработчиков

Подробнее