Вопросы и ответы по AWS Cloud9

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

AWS Cloud9 – это облачная интегрированная среда разработки (IDE), которая позволяет создавать, запускать и отлаживать код, используя только браузер. Она сочетает в себе широкие возможности IDE, связанные с редактированием кода, такие как автодополнение кода, подсказки и пошаговая отладка, с полным доступом к серверу Linux для запуска и хранения кода. Подробнее см. в Руководстве пользователя AWS Cloud9.

Любой пользователь, который создает код, может пользоваться сервисом AWS Cloud9. Разработчики приложений, применяющие Node.js (JavaScript), Python, PHP, Ruby, Go и C++, могут воспользоваться Cloud9 и из своих браузеров получить мгновенный доступ к полностью настроенной среде разработки с предустановленной средой выполнения, менеджерами пакетов и инструментами отладки. При работе с Cloud9 вы больше не будете привязаны к одному компьютеру, используемому для разработки, а сможете получить доступ к среде разработки с любого компьютера, подключенного к Интернету. Разработчики AWS и специалисты, которые оценивают новые сервисы AWS, могут использовать AWS Cloud9 для обеспечения простого доступа к своим ресурсам AWS с помощью предварительно настроенного интерфейса командной строки AWS (AWS CLI), готового к запуску команд для работы с сервисами AWS. Разработчики бессерверных приложений на AWS Lambda, применяющие Node.js или Python, могут использовать встроенные в Cloud9 инструменты для создания, редактирования, запуска, отладки и развертывания своих функций Lambda из среды IDE.

AWS Cloud9 поддерживает более 40 языков программирования, включая Node.js (JavaScript), Python, PHP, Ruby, Go и C++. Сервис включает в себя такие функции, как подсветка синтаксиса, режим структуры, подсказки и автодополнение кода, эмуляторы для запуска приложений и пошаговая отладка для многих популярных языков программирования. Подробную информацию о функциях для работы с разными языками программирования в Cloud9 см. в разделе Поддержка языков в руководстве пользователя.

AWS Cloud9 полностью поддерживается новейшими версиями Google Chrome, Safari, Firefox и Microsoft Edge.

Дополнительная плата за AWS Cloud9 отсутствует. Если вы используете инстанс Amazon EC2 для среды разработки AWS Cloud9, вы платите только за вычислительные ресурсы и хранилище (т. е. за инстанс EC2 и том EBS), которые используются для запуска и хранения кода. Можно совершенно бесплатно подключить среду разработки Cloud9 по SSH к существующему серверу Linux (например, в локальной сети). Подробную информацию см. на странице цен на AWS Cloud9.

AWS предлагает широкий выбор поддерживаемых сред IDE для простой разработки приложений для AWS. Подробную информацию о наборах инструментов IDE, поддерживаемых AWS, см. в разделе инструментария IDE на странице инструментов AWS.

Некоторые ошибки, которые вам могут встретиться, и их возможные решения приведены в разделе Устранение неполадок в руководстве пользователя.

Использование AWS Cloud9

Можно войти в Консоль управления AWS и выбрать AWS Cloud9. Консоль позволит пройти все этапы настройки, чтобы выбрать сервер Linux, к которому необходимо подключиться с помощью Cloud9. Можно запустить новый инстанс Amazon EC2 (среда AWS Cloud9 EC2) или подключить существующий сервер Linux (среда AWS Cloud9 SSH) за несколько простых шагов. После создания среды Cloud9 можно получить доступ к IDE и создавать код в полностью настроенной среде разработки. Чтобы получить подробную информацию, обратитесь к разделу документации о настройке AWS Cloud9, а затем выполните задания из базового учебного пособия.

В среде разработки AWS Cloud9 хранятся файлы с кодом проекта и запускаются инструменты, используемые для создания приложения. В каждой среде хранятся собственные уникальные настройки IDE. Это позволяет легко создавать различные среды разработки и переключаться между ними. Во всех этих средах используются свои инструменты, среды выполнения, файлы и настройки IDE, необходимые для конкретного проекта.

Существует два типа сред AWS Cloud9, которые можно использовать.

  • Среда AWS Cloud9 EC2 позволяет запустить новый инстанс Amazon EC2, к которому подключается Cloud9. По умолчанию эти инстансы останавливаются через 30 минут после закрытия IDE и автоматически запускаются при открытии IDE.
  • Среда AWS Cloud9 SSH позволяет подключить существующий сервер Linux к Cloud9. На сервере Linux требуется настроить определенные зависимости, которые вы планируете использовать в средах Cloud9 SSH. Подробную информацию см. в документации.

Да. Можно использовать среды SSH для подключения существующего инстанса на основе Linux EC2 или Lightsail к AWS Cloud9.

В IDE AWS Cloud9 есть расширенный редактор кода, оснащенный такими функциями, как автодополнение, свертывание кода, подсказки, подсветка синтаксиса и манипуляции со строками. Редактор кода позволяет выбирать одну из более чем 30 цветовых схем, которые отвечают за подсветку синтаксиса и оформление интерфейса пользователя. Кроме того, можно отредактировать таблицу стилей, чтобы настроить интерфейс пользователя Cloud9 полностью под себя.

Среды AWS Cloud9 EC2 поставляются с предустановленными часто используемыми инструментами разработки, такими как Git и Docker. Кроме того, они включают среды выполнения и менеджеры пакетов для многих популярных языков программирования, таких как Node.js и Python. Чтобы просмотреть полный список инструментов и пакетов, предварительно установленных в средах Cloud9 EC2, ознакомьтесь с документацией.

На панели инструментов среды IDE AWS Cloud9 есть кнопка запуска. Кроме того, в ней имеются встроенные среды выполнения для более чем 10 разных языков программирования, которые автоматически активируют приложение с последними изменениями его кода. Для обеспечения полного контроля над процессом запуска программного обеспечения можно настроить существующие среды выполнения, создать собственные среды выполнения или запустить свой код из терминала.

В IDE AWS Cloud9 имеется встроенное окно терминала, которое позволяет в интерактивном режиме запускать команды интерфейса командной строки. Кроме того, у вас есть все административные права для работы с инстансом (права sudo), позволяющие устанавливать любые дополнительные инструменты, необходимые для разработки или размещения приложения.

Можно открыть окно терминала в IDE и получить доступ к системе управления исходным кодом с помощью тех же инструментов командной строки, которые вы использовали бы на локальном компьютере. Среды AWS Cloud9 EC2 поставляются с предустановленным Git для простого доступа к исходному коду.

Подробнее см. на странице продуктов и сервисов по регионам.

Все данные, которые вы храните в среде AWS Cloud9 (например, файлы с кодом, пакеты, зависимости), всегда остаются на ваших ресурсах. Если используется среда EC2, данные хранятся в соответствующем связанном томе Amazon Elastic Block Store (EBS), который существует в аккаунте AWS. Если используется среда SSH, данные хранятся в локальном хранилище на сервере Linux.

Ресурсы, связанные с AWS Cloud9

Когда создается среда Amazon EC2, AWS Cloud9 создает необходимые вычислительные ресурсы и хранилища в аккаунте AWS. Эти ресурсы включают в себя инстанс Amazon EC2, том Amazon Elastic Block Store (EBS) с объемом 8 ГБ, группу безопасности Amazon EC2 и стек AWS CloudFormation. Доступ к этим ресурсам обеспечивается через отдельные консоли сервиса AWS. При удалении среды сервис Cloud9 автоматически удалит эти ресурсы за пользователя.

Кроме создания и удаления ресурсов среды AWS Cloud9 EC2 от имени пользователя Cloud9 также может автоматически запускать и останавливать инстансы EC2 для снижения затрат. Пользователь отвечает за все остальные задачи, связанные с администрированием этих ресурсов, такие как установка исправлений программного обеспечения на инстансах EC2 и резервное копирование томов EBS.

Нет. Настройка по умолчанию сервиса AWS Cloud9 обеспечивает автоматический перевод инстансов Amazon EC2, созданных с помощью Cloud9, в спящий режим через 30 минут. Эта настройка позволяет инстансам EC2 автоматически останавливаться через 30 минут после закрытия IDE и перезапускаться только при повторном открытии IDE. В результате этого плата обычно начисляется только за время активного использования инстансов EC2. Если потребуется перезапуск инстанса, все активные сеансы терминалов в IDE будут закрыты, при этом для открытия IDE может потребоваться некоторое время. В зависимости от конкретного примера использования можно настроить выполнение автоматического перехода в спящий режим или постоянную работу инстанса EC2.

Да. Тип инстанса Amazon EC2, изначально выбранный с помощью среды AWS Cloud9, можно изменить. Для этого необходимо перейти к списку инстансов в консоли EC2, найти свой инстанс и выполнить действия, описанные в документации Amazon EC2.

Совместное использование среды

Доступ к своей среде AWS Cloud9 можно предоставить с помощью кнопки «Поделиться» (Share) в правом верхнем углу IDE. Необходимо указать имя пользователя AWS Identity and Access Management (IAM) и желаемый уровень доступа для пользователя, вместе с которым предстоит работать. После ввода этих данных оба пользователя смогут совместно работать в режиме реального времени, используя функции и сеансы командной строки IDE.

Нет. В настоящее время можно предоставлять общий доступ к средам AWS Cloud9 только пользователям IAM в рамках одного аккаунта AWS. Если требуется пригласить нового пользователя, у которого нет пользовательского доступа IAM, можно воспользоваться ссылкой для создания нового пользователя IAM в диалоговом окне «Поделиться» (Share).

Использование AWS Cloud9 с сервисами AWS

Среды AWS Cloud9 EC2 поставляются с предустановленным интерфейсом командной строки AWS, который автоматически использует аутентификационные данные вошедшего в AWS пользователя. Это позволяет выполнять интерактивные команды в интерфейсе командной строки для сервисов AWS из встроенного в Cloud9 окна терминала без какой-либо дополнительной настройки.

Из панели ресурсов AWS в IDE можно получить доступ ко встроенным инструментам для AWS Lambda. Эти инструменты можно использовать для импорта существующих или создания новых функций Lambda в Node.js и Python. Можно легко запускать, просматривать эти функции, выполнять их отладку и развертывание непосредственно из IDE. Кроме того, AWS Cloud9 обеспечивает поддержку платформы AWS Serverless Application Model (AWS SAM). Это позволяет легко управлять несколькими функциями Lambda и бессерверными ресурсами в приложении. Если вы внедрили свой проект с помощью сервиса AWS CodeStar, любые изменения, внесенные в приложение, будут применены и развернуты непосредственно в Lambda по команде «git push».

Да. AWS Cloud9 может имитировать среду выполнения AWS Lambda для Node.js и Python, чтобы локально запустить функции в IDE. Это позволяет проверить бессерверные приложения с помощью пошаговой отладки без загрузки изменений приложения в Lambda. После проверки можно также выполнить развертывание изменений приложения в Lambda непосредственно из IDE.

Можно запустить среды AWS Cloud9 непосредственно из AWS CodeStar и сразу приступить к редактированию и подтверждению изменений кода проекта CodeStar в IDE Cloud9. Любые изменения в коде, которые вы подтверждаете в репозитории исходного кода своего проекта из Cloud9, приводят к их автоматической сборке и развертыванию с помощью инструментов, предоставляемых CodeStar. Подробнее об использовании этой интеграции см. в документации AWS CodeStar.