Aws Cloud9 Ug
Aws Cloud9 Ug
Aws Cloud9 Ug
Las marcas comerciales y la imagen comercial de Amazon no se pueden utilizar en relación con ningún producto o
servicio que no sea de Amazon de ninguna manera que pueda causar confusión entre los clientes y que menosprecie
o desacredite a Amazon. Todas las demás marcas comerciales que no sean propiedad de Amazon son propiedad de
sus respectivos propietarios, que pueden o no estar afiliados, conectados o patrocinados por Amazon.
AWS Cloud9 Guía del usuario
Table of Contents
¿Qué es AWS Cloud9? ....................................................................................................................... 1
¿Cómo funciona AWS Cloud9? .................................................................................................... 1
AWS Cloud9Entornos de ..................................................................................................... 2
Entornos y recursos informáticos .......................................................................................... 2
¿Qué puedo hacer con AWS Cloud9? ........................................................................................... 3
¿Cómo puedo comenzar? ............................................................................................................ 3
Temas adicionales ...................................................................................................................... 3
¿Qué puedo hacer con este servicio? ........................................................................................... 3
Información adicional .................................................................................................................. 5
Videos relacionados ............................................................................................................ 5
Temas relacionados en el sitio de AWS ................................................................................. 5
Precios .............................................................................................................................. 6
Tengo más preguntas o necesito ayuda ................................................................................. 6
Configuración ..................................................................................................................................... 7
Configuración de usuario individual ............................................................................................... 7
Paso 1: crear una cuenta de AWS ........................................................................................ 7
Paso 2: Iniciar sesión en la consola de AWS Cloud9 con el usuario raíz de la cuenta de AWS ......... 8
Pasos siguientes ................................................................................................................ 8
Configuración de equipos ............................................................................................................ 9
Paso 1: crear una cuenta de AWS ...................................................................................... 10
Paso 2: Crear un grupo y un usuario de IAM y agregar el usuario al grupo ................................. 10
Paso 3: Agregar permisos de acceso para AWS Cloud9 al grupo ............................................. 14
Paso 4: Iniciar sesión en la consola de AWS Cloud9 .............................................................. 17
Pasos siguientes ............................................................................................................... 17
Configuración de empresa ......................................................................................................... 17
Paso 1: Crear una cuenta de administración para la organización ............................................. 19
Paso 2: Crear una organización para la cuenta de administración ............................................. 20
Paso 3: Agregar cuentas de miembros a la organización ........................................................ 20
Paso 4: Habilitar AWS SSO en la organización ..................................................................... 21
Paso 5. Configurar usuarios y grupos dentro de la organización ............................................... 21
Paso 6. Habilitar usuarios y grupos dentro de la organización para utilizar AWS Cloud9 ................ 22
Paso 7: Comenzar a usar AWS Cloud9 ............................................................................... 23
Pasos siguientes ............................................................................................................... 24
Opciones de configuración adicionales (Team y Enterprise) ............................................................. 24
Paso 1: Crear una política administrada por el cliente ............................................................ 25
Paso 2: Agregar políticas administradas por el cliente a un grupo ............................................. 26
Ejemplos de políticas administradas por el cliente para equipos que utilizan AWS Cloud9 ............. 27
Pasos siguientes ............................................................................................................... 31
Introducción: tutoriales básicos ........................................................................................................... 32
Primer vistazo a AWS Cloud9 (consola) ....................................................................................... 32
Requisitos previos ............................................................................................................. 32
Pasos .............................................................................................................................. 32
Paso 1: Crear un entorno .................................................................................................. 33
Paso 2: Recorrido básico ................................................................................................... 36
Paso 3: Limpieza .............................................................................................................. 40
Información relacionada ..................................................................................................... 42
Primer vistazo a AWS Cloud9 (CLI) ............................................................................................. 43
Requisitos previos ............................................................................................................. 43
Pasos .............................................................................................................................. 43
Paso 1: Crear un entorno .................................................................................................. 44
Paso 2: Recorrido básico ................................................................................................... 45
Paso 3: Limpieza .............................................................................................................. 50
Información relacionada ..................................................................................................... 51
Trabajo con entornos ........................................................................................................................ 53
iii
AWS Cloud9 Guía del usuario
iv
AWS Cloud9 Guía del usuario
v
AWS Cloud9 Guía del usuario
vi
AWS Cloud9 Guía del usuario
vii
AWS Cloud9 Guía del usuario
viii
AWS Cloud9 Guía del usuario
ix
AWS Cloud9 Guía del usuario
x
AWS Cloud9 Guía del usuario
xi
AWS Cloud9 Guía del usuario
xii
AWS Cloud9 Guía del usuario
xiii
AWS Cloud9 Guía del usuario
¿Cómo funciona AWS Cloud9?
El IDE de AWS Cloud9 ofrece una completa experiencia de edición de código, con soporte para varios
lenguajes de programación y depuradores de tiempo de ejecución, además de un terminal integrado.
Contiene una colección de herramientas que se utilizan para codificar, compilar, ejecutar, probar y depurar
software, y le ayuda a lanzar software en la nube.
Es posible acceder al IDE de AWS Cloud9 a través de un navegador web. Puede configurar el IDE según
sus preferencias. Puede cambiar temas de color, enlazar claves de acceso directo, habilitar la sintaxis de
color para lenguajes de programación y el formato del código, y mucho más.
(Entendido. Estoy listo para probar AWS Cloud9.¿Cómo puedo comenzar? (p. 3))
En el diagrama (comenzando por la parte inferior), utilice el IDE de AWS Cloud9 ejecutado en un
navegador web en su computadora local, para interactuar con su Entorno de AWS Cloud9. Un recurso
informático (por ejemplo, una instancia de Amazon EC2 o su propio servidor) se conecta a ese entorno.
Por último, el trabajo se almacena en un repositorio de AWS CodeCommit u otro tipo de repositorio remoto.
1
AWS Cloud9 Guía del usuario
AWS Cloud9Entornos de
AWS Cloud9Entornos de
Un entorno de AWS Cloud9 es un lugar en el que se almacenan los archivos del proyecto y donde se
ejecutan las herramientas para desarrollar aplicaciones.
Puede crear y cambiar entre varios entornos, con cada entorno configurado para un proyecto de desarrollo
específico. Al almacenar el entorno en la nube, los proyectos ya no tienen por qué estar asociados a una
sola configuración del servidor o computadora. Esto permite hacer cosas como cambiar fácilmente entre
equipos e incluir con mayor rapidez a los desarrolladores en el equipo.
2
AWS Cloud9 Guía del usuario
¿Qué puedo hacer con AWS Cloud9?
• Puede indicar a AWS Cloud9 que cree una instancia de Amazon EC2 y, a continuación, conectar el
entorno a esa instancia EC2 recién creada. Este tipo de configuración se denomina entorno de EC2.
• También puede indicar a AWS Cloud9 que conecte un entorno a una instancia de informática en la nube
existente o a su propio servidor. Este tipo de configuración se denomina entorno de SSH.
Los entornos de EC2 y SSH tienen algunas similitudes y algunas diferencias. Si es nuevo en AWS Cloud9,
le recomendamos que utilice un entorno de EC2, ya que AWS Cloud9 se encargará de gran parte de la
configuración de forma automática. A medida que aprenda más sobre AWS Cloud9 y desee entender
mejor estas similitudes y diferencias, consulte Entornos de EC2 comparados con entornos de SSH en
AWS Cloud9 (p. 499).
Para obtener más información sobre cómo funciona AWS Cloud9, consulte estos vídeos (p. 5) y
páginas web (p. 5)relacionados.
• Trabajar con código en varios lenguajes de programación y el AWS Cloud Development Kit (CDK).
• Trabajar con código en un contenedor Docker en ejecución.
• Utilizar repositorios de código online.
• Colaborar con otros usuarios en tiempo real.
• Interactuar con varias tecnologías de bases de datos y sitios web.
• Indicar como destino AWS Lambda, Amazon API Gateway y Aplicaciones sin servidor de AWS.
• Aprovechar otros productos de AWS, como Amazon Lightsail, AWS CodeStar y AWS CodePipeline.
Para obtener una lista más detallada, consulte ¿Qué puedo hacer con AWS Cloud9? (p. 3)
Temas adicionales
• ¿Qué puedo hacer con AWS Cloud9? (p. 3)
• Información adicional sobre AWS Cloud9 (p. 5)
3
AWS Cloud9 Guía del usuario
¿Qué puedo hacer con este servicio?
Escenarios clave
Escenario Recursos
Cree, ejecute y depure código en funciones de Uso de funciones de AWS Lambda con AWS
AWS Lambda y aplicaciones sin servidor mediante Toolkit (p. 360)
AWS Toolkit.
Trabajo con instancias de Amazon Lightsail Trabajo con instancias de Amazon Lightsail en
preconfiguradas con aplicaciones y marcos el entorno de desarrollo integrado (IDE) de AWS
conocidos, como WordPress, LAMP (Linux, Cloud9 (p. 303)
Apache, MySQL y PHP), Node.js, Nginx, Drupal
y Joomla, así como con distribuciones de Linux,
como Amazon Linux, Ubuntu, Debian, FreeBSD y
openSUSE.
Trabajo con código en proyectos de desarrollo de Trabajo con proyectos de AWS CodeStar en el
software de AWS y cadenas de herramientas de entorno de Desarrollo Integrado (IDE) de AWS
AWS CodeStar. Cloud9 (p. 310)
Trabajo con código en soluciones de entrega Trabajo con AWS CodePipeline en el entorno
continua de AWS CodePipeline. de desarrollo integrado (IDE) de AWS
Cloud9 (p. 312)
Automatizar los servicios de AWS mediante la Muestra de AWS Command Line Interface y aws-
AWS CLI y el aws-shell. shell para AWS Cloud9 (p. 390)
Trabajo con repositorios de código fuente en AWS AWS CodeCommit Ejemplo de para AWS
CodeCommit. Cloud9 (p. 394)
Trabajo con repositorios de código fuente en Control de código fuente visual con el panel de
GitHub usando la interfaz del panel de Git. Git (p. 315)
Trabajo con bases de datos NoSQL en Amazon Ejemplo de Amazon DynamoDB para AWS
DynamoDB. Cloud9 (p. 400)
Trabajo con las pilas de LAMP (Linux, Apache Muestra de LAMP para AWS Cloud9 (p. 418)
HTTP Server, MySQL y PHP).
Trabajo con código para Java y AWS SDK for Muestra de Java para AWS Cloud9 (p. 429)
Java.
Trabajo con código para C++ y AWS SDK for C++. Muestra de C++ para AWS Cloud9 (p. 439)
Trabajo con código para Python y AWS SDK for Tutorial de Python para AWS Cloud9 (p. 446)
Python (Boto).
Trabajo con código para .NET Core y AWS SDK Muestra de .NET Core para AWS Cloud9 (p. 450)
for .NET.
Trabajo con código para Node.js y AWS SDK for Muestra de Node.js para AWS Cloud9 (p. 459)
JavaScript.
Trabajo con código para PHP y AWS SDK for PHP. Muestra de PHP para AWS Cloud9 (p. 466)
Trabajo con código para Ruby y AWS SDK for Tutorial: Ruby en AWS Cloud9 (p. 471)
Ruby.
4
AWS Cloud9 Guía del usuario
Información adicional
Escenario Recursos
Trabajo con código para Go y AWS SDK for Go. Ejemplo de Go para AWS Cloud9 (p. 478)
Trabajo con código para TypeScript y AWS SDK Muestra de TypeScript para AWS Cloud9 (p. 484)
for JavaScript.
Trabaje con código para el AWS Cloud Ejemplo de AWS CDK para AWS Cloud9 (p. 411)
Development Kit (CDK).
Trabajo con el código en un contenedor Docker en Ejemplo de Docker para AWS Cloud9 (p. 490)
ejecución.
Invitación para que otras personas usen un Trabajo con entornos compartidos en AWS
entorno con usted, en tiempo real y con soporte de Cloud9 (p. 92)
conversación de texto.
Trabaje con código para aplicaciones de robótica Desarrollo con AWS Cloud9 en la Guía para
inteligentes en AWS RoboMaker. desarrolladores de AWS RoboMaker
Temas
• Videos relacionados (p. 5)
• Temas relacionados en el sitio de AWS (p. 5)
• Precios (p. 6)
• Tengo más preguntas o necesito ayuda (p. 6)
Videos relacionados
• AWS re:Invent 2017 - Introducing AWS Cloud9: Werner Vogels Keynote (9 minutos, sitio web de
YouTube)
• AWS re:Invent Launchpad 2017 - AWS Cloud9, (15 minutos, sitio web de YouTube)
• Introducing AWS Cloud9 - AWS Online Tech Talks (33 minutos, sitio web de YouTube)
• AWS Sydney Summit 2018: AWS Cloud9 and AWS CodeStar (25 minutos, sitio web de YouTube)
5
AWS Cloud9 Guía del usuario
Precios
Precios
No hay cargo adicional para AWS Cloud9. Si utiliza una instancia de Amazon EC2 para su entorno de
desarrollo de AWS Cloud9, solo pagará por los recursos informáticos y de almacenamiento (por ejemplo,
una instancia de Amazon EC2 y un volumen de Amazon EBS) que se utilicen para ejecutar y almacenar el
código. También puede conectar su entorno a un servidor Linux existente (por ejemplo, un servidor local)
mediante SSH sin cargos adicionales.
Solo pagará por lo que consuma y a medida que lo haga: no se requieren pagos mínimos ni compromisos
iniciales. Se le aplicarán las tarifas de AWS normales de cualquier recurso de AWS (por ejemplo, funciones
de AWS Lambda) que cree o utilice en el entorno.
Los clientes nuevos de AWS que reúnan los requisitos para la capa gratuita de AWS pueden usar AWS
Cloud9 gratis. Si el entorno utiliza otros recursos que no están en el nivel gratuito de AWS, se le cobrarán
las tarifas de AWS normales por estos recursos.
6
AWS Cloud9 Guía del usuario
Configuración de usuario individual
Soy la única persona que utiliza la cuenta de AWS Configuración de usuario individual (p. 7)
y no soy estudiante.
Pertenezco a una empresa que tiene una o varias Configuración de empresa (p. 17)
cuentas de AWS en una única organización.
Para obtener información general sobre AWS Cloud9, consulte ¿Qué es AWS Cloud9? (p. 1)
Temas
• Configuración de usuario individual para AWS Cloud9 (p. 7)
• Configuración de equipos para AWS Cloud9 (p. 9)
• Configuración de empresa para AWS Cloud9 (p. 17)
• Opciones de configuración adicionales para AWS Cloud9 (Team y Enterprise) (p. 24)
Para utilizar AWS Cloud9 como el único individuo en la cuenta de AWS, cree una cuenta de AWS, si
todavía no tiene una y, a continuación, inicie sesión en la consola de AWS Cloud9.
Para ver un video de 4 minutos sobre el siguiente procedimiento, consulte el video Creating an Amazon
Web Services account en el sitio web YouTube.
1. Vaya a https://aws.amazon.com/.
7
AWS Cloud9 Guía del usuario
Paso 2: Iniciar sesión en la consola de AWS
Cloud9 con el usuario raíz de la cuenta de AWS
Una vez que haya terminado de crear la cuenta, AWS le enviará un correo electrónico de confirmación. No
vaya al siguiente paso hasta que aparezca esta confirmación.
Se abre la consola de AWS Cloud9. Ahora puede comenzar a utilizar AWS Cloud9.
Important
Aunque puede iniciar sesión en la consola de AWS Cloud9 con la dirección de correo electrónico
y la contraseña que utilizó al crear su cuenta de AWS (lo denominamos usuario raíz de la
cuenta de AWS), no se trata de una práctica recomendada de seguridad de AWS. En el futuro,
le recomendamos que inicie sesión como usuario administrador de AWS Identity and Access
Management (IAM) en su cuenta de AWS en su lugar. Para obtener más información, consulte
Creación del primer grupo y usuario administrador de IAM en la Guía del usuario de IAM y Tareas
de AWS que exigen credenciales de usuario raíz de la cuenta de AWS en la Referencia general
de Amazon Web Services.
Pasos siguientes
Obtenga información sobre cómo usar el IDE de Introducción: tutoriales básicos (p. 32) y Uso de
AWS Cloud9. la IDE (p. 115)
8
AWS Cloud9 Guía del usuario
Configuración de equipos
Invite a otras personas a usar el nuevo entorno Trabajo con entornos compartidos (p. 92)
con usted, en tiempo real y con asistencia de
conversación de texto.
Estas instrucciones suponen que ya tiene (o tendrá) acceso administrativo a una única cuenta de AWS.
Para obtener más información, consulte El usuario raíz de la cuenta de AWS y Creación del primer grupo y
usuario administrador de IAM en la Guía del usuario de IAM. Si ya tiene una cuenta de AWS pero no tiene
acceso administrativo a ella, consulte al administrador de su cuenta de AWS.
Note
Puede utilizar AWS Single Sign-On (SSO) en lugar de IAM para permitir que varios usuarios
en una única cuenta de AWS utilicen AWS Cloud9. En este patrón de uso, la cuenta única de
AWS sirve como la cuenta de administración de una organización en AWS Organizations; dicha
organización no tiene cuentas de miembros. Para utilizar AWS SSO, omita este tema y siga
en cambio las instrucciones de Configuración de empresa (p. 17). Para obtener información
relacionada, consulte los recursos siguientes:
• ¿Qué es AWS Organizations en la Guía del usuario de AWS Organizations (AWS SSO requiere
el uso de AWS Organizations)
• ¿Qué es AWS Single Sign-On? en la Guía del usuario de AWS Single Sign-On
• El video de 4 minutos AWS Knowledge Center Videos: How do I get started with AWS
Organizations en el sitio web de YouTube
• El video de 7 minutos Manage user access to multiple AWS accounts using AWS Single Sign-
on en el sitio web de YouTube
• El video de 9 minutos How to set up AWS Single Sign On for your on-premise Active Directory
users en el sitio web de YouTube
Para permitir que varios usuarios de una única cuenta de AWS comiencen a utilizar AWS Cloud9,
comience con uno de los siguientes pasos, en función de los recursos de AWS de los que ya disponga.
¿Tiene una cuenta de AWS? Tiene al menos un grupo y un Comience por este paso
usuario de IAM en esa cuenta?
9
AWS Cloud9 Guía del usuario
Paso 1: crear una cuenta de AWS
Para ver un video de 4 minutos sobre el siguiente procedimiento, consulte el video Creating an Amazon
Web Services account en el sitio web YouTube.
1. Vaya a https://aws.amazon.com/.
2. Elija Sign In to the Console (Iniciar sesión en la consola).
3. Elija Create a new AWS account (Crear una nueva cuenta de AWS).
4. Complete el proceso siguiendo las instrucciones que aparecen en pantalla. Esto incluye dar a AWS
su dirección de correo electrónico y los datos de la tarjeta de crédito. También debe utilizar el teléfono
para ingresar un código que AWS le ofrece.
Una vez que haya terminado de crear la cuenta, AWS le enviará un correo electrónico de confirmación. No
vaya al siguiente paso hasta que aparezca esta confirmación.
Si ya tiene todos los grupos y usuarios de IAM que necesita, vaya al Paso 3: Agregar permisos de acceso
para AWS Cloud9 al grupo (p. 14).
Note
Es posible que su organización ya tenga un grupo y un usuario de IAM configurados. Si su
organización tiene un administrador de cuenta de AWS, consulte a esa persona antes de
comenzar los procedimientos siguientes.
Puede completar estas tareas con la AWS Management Console (p. 10) o con la interfaz de línea de
comandos de AWS (AWS CLI) (p. 11).
Para ver un video de 9 minutos relacionado con los siguientes procedimientos de la consola, consulte How
do I set up an IAM user and sign in to the AWS Management Console using IAM credentials en el sitio web
de YouTube.
10
AWS Cloud9 Guía del usuario
Paso 2: Crear un grupo y un usuario
de IAM y agregar el usuario al grupo
Le recomendamos que repita este procedimiento para crear al menos dos grupos: uno
para usuarios de AWS Cloud9 y otro para administradores de AWS Cloud9. Esta práctica
recomendada de seguridad de AWS puede ayudarle a controlar, realizar un seguimiento y
solucionar mejor los problemas de acceso a los recursos de AWS.
Avance hasta llegar al Paso 2.2: Crear un usuario de IAM y agregar el usuario el grupo con la
consola (p. 12).
Si usa credenciales temporales administradas de AWS (p. 569), no puede usar una sesión
del terminal en el IDE de AWS Cloud9 para ejecutar algunos o la totalidad de los comandos de
esta sección. Para abordar las prácticas recomendadas de seguridad de AWS, las credenciales
temporales administradas de AWS no permiten que se ejecuten algunos comandos. En su lugar,
puede ejecutar esos comandos desde una instalación independiente de la AWS Command Line
Interface (AWS CLI).
1. Si todavía no lo ha hecho, instale y configure la AWS CLI en su equipo. Para ello, consulte lo siguiente
en la Guía del usuario de AWS Command Line Interface:
• Instalación de la interfaz de línea de comandos de AWS
• Configuración rápida
Note
Aunque puede configurar AWS CLI mediante las credenciales asociadas con la dirección de
correo electrónico y la contraseña que se proporcionó cuando se creó la cuenta de AWS (lo
denominamos usuario raíz de una cuenta de AWS), esta no es una práctica recomendada de
seguridad de AWS. En cambio, le recomendamos que configure AWS CLI con las credenciales
de un usuario administrador de IAM en la cuenta de AWS. Un usuario administrador de
IAM tiene permisos de acceso a AWS similares a un usuario raíz de cuenta de AWS y evita
algunos de los riesgos de seguridad asociados. Si no puede configurar AWS CLI como usuario
administrador de IAM, consulte con el administrador de su cuenta de AWS. Para obtener más
11
AWS Cloud9 Guía del usuario
Paso 2: Crear un grupo y un usuario
de IAM y agregar el usuario al grupo
información, consulte Creación del primer grupo y usuario administrador de IAM en la Guía del
usuario de IAM.
2. Ejecute el comando create-group de IAM, especificando el nombre del nuevo grupo (por ejemplo,
MyCloud9Group).
Note
Le recomendamos que repita este procedimiento para crear al menos dos grupos: uno
para usuarios de AWS Cloud9 y otro para administradores de AWS Cloud9. Esta práctica
recomendada de seguridad de AWS puede ayudarle a controlar, realizar un seguimiento y
solucionar mejor los problemas de acceso a los recursos de AWS.
Avance hasta llegar al Paso 2.2: Crear un usuario de IAM y agregar el usuario el grupo con la CLI de
AWS (p. 13).
Puede crear varios usuarios al mismo tiempo. Para ello, elija Add another user (Agregar otro
usuario). El resto de la configuración de este procedimiento se aplican a cada uno de estos
nuevos usuarios.
4. Marque las casillas Programmatic access (Acceso mediante programa) y AWS Management Console
access (Acceso a la consola). Esto permite al nuevo usuario utilizar varias herramientas para
desarrolladores y consolas de servicio de AWS.
5. Deje la opción predeterminada de Autogenerated password (Contraseña autogenerada). Esto crea una
contraseña aleatoria para que el nuevo usuario inicie sesión en la consola. O elija Custom password
(Contraseña personalizada) y escriba una contraseña específica para el nuevo usuario.
6. Deje la opción predeterminada de Require password reset (Pedir restablecimiento de contraseña). De
este modo, se solicitará al usuario nuevo que cambie la contraseña después de iniciar sesión en la
consola por primera vez.
7. Elija Next: Permissions (Siguiente: permisos).
8. Deje la opción predeterminada Add user to group (Añadir usuario al grupo) (o Add users to group
(Añadir usuarios al grupo) para varios usuarios).
9. En la lista de grupos, marque la casilla (no el nombre) situada junto al grupo al que desea añadir el
usuario.
10.Elija Next: Review (Siguiente: revisar).
11.Elija Create user (Crear usuario) (o Create users (Crear usuarios) para varios usuarios).
12.En la última página del asistente, realice una de las siguientes acciones:
• Junto a cada usuario nuevo, elija Send email (Enviar un correo electrónico) y siga las instrucciones
en pantalla para enviar un correo electrónico al usuario nuevo con el nombre de usuario y la URL de
inicio de sesión en la consola. A continuación, comunique a cada usuario nuevo la contraseña de
inicio sesión en la consola, el ID de clave de acceso de AWS y la clave de acceso secreta de AWS
por separado.
12
AWS Cloud9 Guía del usuario
Paso 2: Crear un grupo y un usuario
de IAM y agregar el usuario al grupo
• Seleccione Download.csv. A continuación, comunique a cada usuario nuevo la URL de inicio sesión
en la consola, la contraseña de inicio de sesión en la consola, el ID de clave de acceso de AWS y la
clave de acceso secreta de AWS que se encuentra en el archivo descargado.
• Junto a cada usuario nuevo, elija Show (Mostrar) para Secret access key (Clave de acceso secreta)
y Password (Contraseña). A continuación, comunique a cada usuario nuevo la URL de inicio sesión
en la consola, la contraseña de inicio de sesión en la consola, el ID de clave de acceso de AWS y la
clave de acceso secreta de AWS.
Note
Si no elige Download .csv (Descargar .csv), esta es la única vez que puede ver la nueva clave
de acceso secreta de AWS y la contraseña de inicio sesión en la consola del usuario. Para
generar una nueva clave de acceso secreta de AWS o una contraseña de inicio de sesión en la
consola para el nuevo usuario, consulte lo siguiente en la Guía del usuario de IAM.
• Creación, modificación y visualización de claves de acceso (consola)
• Creación, cambio o eliminación de la contraseña de un usuario de IAM (consola)
13.Repita este procedimiento para cada usuario de IAM adicional que desee crear y, a continuación, vaya
al Paso 3: Agregar permisos de acceso para AWS Cloud9 al grupo (p. 14).
Si usa credenciales temporales administradas de AWS (p. 569), no puede usar una sesión
del terminal en el IDE de AWS Cloud9 para ejecutar algunos o la totalidad de los comandos de
esta sección. Para abordar las prácticas recomendadas de seguridad de AWS, las credenciales
temporales administradas de AWS no permiten que se ejecuten algunos comandos. En su lugar,
puede ejecutar esos comandos desde una instalación independiente de la AWS Command Line
Interface (AWS CLI).
1. Ejecute el comando create-user de IAM para crear el usuario, especificando su nombre (por ejemplo,
MyCloud9User).
2. Ejecute el comando create-login-profile de IAM para crear una nueva contraseña de inicio
de sesión en la consola para el usuario, y especifique el nombre y la contraseña de inicio de sesión
inicial del usuario (por ejemplo, MyC10ud9Us3r!). Una vez que el usuario inicia sesión, AWS solicita al
usuario que cambie la contraseña de inicio de sesión.
Si más adelante tiene la necesidad de generar una contraseña de sustitución de inicio de sesión en la
consola para el usuario, consulte Creación, cambio o eliminación de la contraseña de un usuario de IAM
(API, CLI, PowerShell) en la Guía del usuario de IAM.
3. Ejecute el comando create-access-key de IAM para crear una clave de acceso de AWS nueva y la
correspondiente clave de acceso secreta de AWS para el usuario.
13
AWS Cloud9 Guía del usuario
Paso 3: Agregar permisos de
acceso para AWS Cloud9 al grupo
de AWS del usuario. Para generar una nueva clave de acceso secreta de AWS para que el usuario
la use más adelante, consulte Creación, modificación y visualización de claves de acceso (API, CLI,
PowerShell) en la Guía del usuario de IAM.
4. Ejecute el comando add-user-to-group de IAM para añadir el usuario al grupo, especificando los
nombres del usuario y del grupo.
5. Comunique al usuario la URL de inicio sesión en la consola, la contraseña de inicio de sesión inicial en
la consola, el ID de clave de acceso de AWS y la clave de acceso secreta de AWS.
6. Repita este procedimiento para cada usuario de IAM adicional que desea crear.
Es posible que su organización ya disponga de un grupo creado con los permisos de acceso
adecuados. Si su organización tiene un administrador de cuenta de AWS, consulte a esa persona
antes de comenzar el procedimiento siguiente.
Puede completar esta tarea utilizando la AWS Management Console (p. 14) o AWS CLI (p. 15).
Aunque puede iniciar sesión en la AWS Management Console con la dirección de correo
electrónico y la contraseña que utilizó al crear su cuenta de AWS (lo denominamos usuario raíz
de la cuenta de AWS), no se trata de una práctica recomendada de seguridad de AWS. En el
futuro, le recomendamos que inicie sesión con las credenciales de un usuario administrador
de IAM en la cuenta de AWS. Un usuario administrador de IAM tiene permisos de acceso a
AWS similares a un usuario raíz de cuenta de AWS y evita algunos de los riesgos de seguridad
asociados. Si no puede iniciar sesión como usuario administrador de IAM, consulte con el
administrador de su cuenta de AWS. Para obtener más información, consulte Creación del
primer grupo y usuario administrador de IAM en la Guía del usuario de IAM.
2. Abra la consola de IAM. Para ello, en la barra de navegación de AWS, elija Services (Servicios). A
continuación, elija IAM.
3. Elija Groups (Grupos).
4. Elija el nombre del grupo.
5. Decida si desea añadir permisos de acceso de usuario de AWS Cloud9 o de administrador de AWS
Cloud9 al grupo. Estos permisos se aplicarán a cada usuario del grupo.
14
AWS Cloud9 Guía del usuario
Paso 3: Agregar permisos de
acceso para AWS Cloud9 al grupo
Los permisos de acceso de los usuarios de AWS Cloud9 permiten que cada usuario del grupo haga las
siguientes cosas en la cuenta de AWS:
• Crear sus propios entornos de desarrollo de AWS Cloud9.
• Obtener información acerca de sus entornos.
• Cambiar la configuración de sus entornos.
Los permisos de acceso de administrador de AWS Cloud9 permiten que cada usuario del grupo haga
cosas adicionales en la cuenta de AWS, tales como:
• Crear entornos para sí mismos o para otros.
• Obtener información acerca de los entornos para sí mismos o para otros.
• Eliminar entornos propios o de otros.
• Cambiar la configuración de los entornos propios o de otros.
Note
Le recomendamos que agregue un número limitado de usuarios al grupo de administradores
de AWS Cloud9. Esta práctica recomendada de seguridad de AWS puede ayudarle a controlar,
realizar un seguimiento y solucionar mejor los problemas de acceso a los recursos de AWS.
6. En la pestaña Permissions (Permisos), en Managed Policies (Políticas administradas), elija Attach Policy
(Adjuntar política).
7. En la lista con los nombres de las políticas, active la casilla situada junto a AWSCloud9User para los
permisos de acceso de los usuarios de AWS Cloud9 o AWSCloud9Administrator para los permisos
de acceso de administrador de AWS Cloud9. (Si no ve ninguno de los nombres de política en la lista,
escriba el nombre de la política en el cuadro Filter [Filtrar] para mostrarlo).
8. Elija Attach Policy (Adjuntar política).
Note
Si tiene más de un grupo al que desea añadir permisos de acceso de AWS Cloud9, repita este
procedimiento para cada uno de esos grupos.
Para ver la lista de los permisos de acceso que estas políticas administradas de AWS dan a un grupo,
consulte Políticas administradas (predefinidas) de AWS (p. 550).
Para obtener más información acerca de los permisos de acceso de AWS que puede agregar a un grupo
además de los permisos de acceso que exige AWS Cloud9, consulte Políticas administradas y políticas
insertadas y Permisos concedidos por una política en la Guía del usuario de IAM.
1. Si todavía no lo ha hecho, instale y configure la AWS CLI en su equipo. Para ello, consulte lo siguiente
en la Guía del usuario de AWS Command Line Interface:
• Instalación de la interfaz de línea de comandos de AWS
15
AWS Cloud9 Guía del usuario
Paso 3: Agregar permisos de
acceso para AWS Cloud9 al grupo
• Configuración rápida
Note
Aunque puede configurar AWS CLI mediante las credenciales asociadas con la dirección de
correo electrónico y la contraseña que se proporcionó cuando se creó la cuenta de AWS (lo
denominamos usuario raíz de una cuenta de AWS), esta no es una práctica recomendada de
seguridad de AWS. En cambio, le recomendamos que configure AWS CLI con las credenciales
de un usuario administrador de IAM en la cuenta de AWS. Un usuario administrador de
IAM tiene permisos de acceso a AWS similares a un usuario raíz de cuenta de AWS y evita
algunos de los riesgos de seguridad asociados. Si no puede configurar AWS CLI como usuario
administrador de IAM, consulte con el administrador de su cuenta de AWS. Para obtener más
información, consulte Creación del primer grupo y usuario administrador de IAM en la Guía del
usuario de IAM.
2. Decida si desea añadir permisos de acceso de usuario de AWS Cloud9 o de administrador de AWS
Cloud9 al grupo. Estos permisos se aplicarán a cada usuario del grupo.
Los permisos de acceso de los usuarios de AWS Cloud9 permiten que cada usuario del grupo haga las
siguientes cosas en la cuenta de AWS:
• Crear sus propios entornos de desarrollo de AWS Cloud9.
• Obtener información acerca de sus entornos.
• Cambiar la configuración de sus entornos.
Los permisos de acceso de administrador de AWS Cloud9 permiten que cada usuario del grupo haga
cosas adicionales en la cuenta de AWS, como las siguientes:
• Crear entornos para sí mismos o para otros.
• Obtener información acerca de los entornos para sí mismos o para otros.
• Eliminar entornos propios o de otros.
• Cambiar la configuración de los entornos propios o de otros.
Note
Para los permisos de acceso de usuario de AWS Cloud9, especifique el siguiente ARN.
Para los permisos de acceso de administrador de AWS Cloud9, especifique el siguiente ARN.
Note
Si tiene más de un grupo al que desea añadir permisos de acceso de AWS Cloud9, repita este
procedimiento para cada uno de esos grupos.
Para ver la lista de los permisos de acceso que estas políticas administradas de AWS dan a un grupo,
consulte Políticas administradas (predefinidas) de AWS (p. 550).
16
AWS Cloud9 Guía del usuario
Paso 4: Iniciar sesión en la consola de AWS Cloud9
Para obtener más información acerca de los permisos de acceso de AWS que puede agregar a un grupo
además de los permisos de acceso que exige AWS Cloud9, consulte Políticas administradas y políticas
insertadas y Permisos concedidos por una política en la Guía del usuario de IAM.
1. Si ya ha iniciado sesión en la AWS Management Console como usuario raíz de una cuenta de AWS,
cierre la sesión de la consola.
2. Abra la consola de AWS Cloud9 en https://console.aws.amazon.com/cloud9/.
3. Ingrese el número de cuenta de AWS para el usuario de IAM que ha creado o identificado anteriormente
y, a continuación, elija Next (Siguiente).
Note
Si no ve una opción para ingresar el número de cuenta de AWS, elija Sign in to a different
account (Iniciar sesión con una cuenta diferente). Ingrese el número de cuenta de AWS en la
página siguiente y, a continuación, seleccione Next (Siguiente).
4. Ingrese el nombre y la contraseña del usuario de IAM que ha creado o identificado anteriormente y, a
continuación, elija Sign In (Iniciar sesión).
5. Si se le solicita, siga las instrucciones que aparecen en pantalla para cambiar su contraseña de inicio de
sesión inicial de usuario. Guarde la nueva contraseña de inicio de sesión en un lugar seguro.
Pasos siguientes
Restrinja el uso de AWS Cloud9 para otros Opciones de configuración adicionales (p. 24)
usuarios en su cuenta de AWS, para controlar los
costos.
Obtenga información sobre cómo usar el IDE de Introducción: tutoriales básicos (p. 32) y Uso de
AWS Cloud9. la IDE (p. 115)
Invite a otras personas a usar el nuevo entorno Trabajo con entornos compartidos (p. 92)
con usted, en tiempo real y con asistencia de
conversación de texto.
17
AWS Cloud9 Guía del usuario
Configuración de empresa
Estas instrucciones suponen que tiene (o tendrá) acceso administrativo a la organización en AWS
Organizations. Si aún no tiene acceso administrativo a la organización en AWS Organizations, consulte al
administrador de su cuenta de AWS. Para obtener más información, consulte los recursos siguientes:
Para obtener información básica relacionada con este tema, consulte los siguientes recursos:
• ¿Qué es AWS Organizations? en la Guía del usuario de AWS Organization (AWS SSO requiere el uso
de AWS Organizations)
• ¿Qué es AWS Single Sign-On? en la Guía del usuario de AWS Single Sign-On
• El video de 4 minutos AWS Knowledge Center Videos: How do I get started with AWS Organizations en
el sitio web de YouTube
• El video de 7 minutos Manage user access to multiple AWS accounts using AWS Single Sign-on en el
sitio web de YouTube
• El video de 9 minutos How to set up AWS Single Sign On for your on-premise Active Directory users en
el sitio web de YouTube
Para permitir que una o más cuentas de AWS comiencen a utilizar AWS Cloud9 en una empresa,
comience con uno de los siguientes pasos, en función de los recursos de AWS que ya tenga.
Tiene una Tiene una Son todas las Está la Está la Comience por
cuenta de AWS organización cuentas de organización organización este paso
que sirve o en AWS AWS deseadas configurada configurada
puede servir Organizations miembros para utilizar con todos
como la cuenta para esa de esa AWS SSO? los usuarios
maestra para cuenta de organización? o grupos
la organización administración? deseados que
en AWS quieren usar
Organizations? AWS Cloud9?
No — — — — Paso 1: Crear
una cuenta de
administración
para la
organización (p. 19)
Sí No — — — Paso 2:
Crear una
organización
18
AWS Cloud9 Guía del usuario
Paso 1: Crear una cuenta de
administración para la organización
Tiene una Tiene una Son todas las Está la Está la Comience por
cuenta de AWS organización cuentas de organización organización este paso
que sirve o en AWS AWS deseadas configurada configurada
puede servir Organizations miembros para utilizar con todos
como la cuenta para esa de esa AWS SSO? los usuarios
maestra para cuenta de organización? o grupos
la organización administración? deseados que
en AWS quieren usar
Organizations? AWS Cloud9?
para la
cuenta de
administración (p. 20)
Sí Sí No — — Paso 3:
Agregar
cuentas de
miembros a la
organización (p. 20)
Sí Sí Sí No — Paso 4:
Habilitar AWS
SSO en la
organización (p. 21)
Sí Sí Sí Sí No Paso 5.
Configurar
usuarios
y grupos
dentro de la
organización (p. 21)
Sí Sí Sí Sí Sí Paso 6.
Habilitar
usuarios
y grupos
dentro de la
organización
para utilizar
AWS
Cloud9 (p. 22)
Para usar AWS Single Sign-On (AWS SSO), debe tener una cuenta de AWS que servirá como cuenta de
administración para la organización en AWS Organizations. Para obtener más información, consulte el
debate sobre las cuentas de administración en Conceptos y terminología de AWS Organizations en la Guía
del usuario de AWS Organizations.
19
AWS Cloud9 Guía del usuario
Paso 2: Crear una organización
para la cuenta de administración
Para ver un video de 4 minutos sobre el siguiente procedimiento, consulte el video Creating an Amazon
Web Services account en el sitio web YouTube.
1. Vaya a https://aws.amazon.com/.
2. Elija Sign In to the Console (Iniciar sesión en la consola).
3. Elija Create a new AWS account (Crear una nueva cuenta de AWS).
4. Complete el proceso siguiendo las instrucciones que aparecen en pantalla. Esto incluye dar a AWS
su dirección de correo electrónico y los datos de la tarjeta de crédito. También debe utilizar el teléfono
para ingresar un código que AWS le ofrece.
Una vez que haya terminado de crear la cuenta, AWS le enviará un correo electrónico de confirmación. No
vaya al siguiente paso hasta que aparezca esta confirmación.
Es posible que su empresa ya tenga AWS Organizations configurado para usar la cuenta de
administración. Si su empresa tiene un administrador de cuentas de AWS, consulte a esa persona
antes de comenzar el procedimiento siguiente. Si ya tiene AWS Organizations configurado
para utilizar la cuenta de administración, vaya al Paso 3: Agregar cuentas de miembros a la
organización (p. 20).
Para utilizar AWS SSO, debe disponer de una organización en AWS Organizations que utilice la cuenta de
administración. Para obtener más información, consulte el debate sobre organizaciones en Conceptos y
terminología de AWS Organizations en la Guía del usuario de AWS Organizations.
Para crear una organización en AWS Organizations para la cuenta de administración de AWS, siga estas
instrucciones en la Guía del usuario de AWS Organizations:
Para ver el video de 4 minutos relacionado con estos procedimientos, consulte AWS Knowledge Center
Videos: How do I get started with AWS Organizations en el sitio web de YouTube.
Es posible que su empresa ya tenga AWS Organizations configurado para usar las cuentas de
los miembros deseados. Si su empresa tiene un administrador de cuentas de AWS, consulte
a esa persona antes de comenzar el procedimiento siguiente. Si ya tiene AWS Organizations
configurado con las cuentas de los miembros deseados, vaya al Paso 4: Habilitar AWS SSO en la
organización (p. 21).
En este paso, va a agregar las cuentas de AWS que servirán de cuentas de miembros para la organización
en AWS Organizations. Para obtener más información, consulte el debate sobre las cuentas de miembros
en Conceptos y terminología de AWS Organizations en la Guía del usuario de AWS Organizations.
20
AWS Cloud9 Guía del usuario
Paso 4: Habilitar AWS SSO en la organización
Note
Para agregar cuentas de miembros a la organización en AWS Organizations, siga uno o ambos de
los siguientes conjuntos de instrucciones de la Guía del usuario de AWS Organizations. Repita estas
instrucciones tantas veces como sea necesario hasta que tenga todas las cuentas de AWS que desee
como miembros de la organización:
Es posible que su empresa ya tenga AWS Organizations configurado para usar AWS SSO. Si su
empresa tiene un administrador de cuentas de AWS, consulte a esa persona antes de comenzar
el procedimiento siguiente. Si ya tiene AWS Organizations configurado para utilizar AWS SSO,
vaya al Paso 5. Configurar usuarios y grupos dentro de la organización (p. 21).
En este paso, habilitará la organización en AWS Organizations para utilizar AWS SSO. Para ello, siga
estos conjuntos de instrucciones de la Guía del usuario de AWS Single Sign-On:
Es posible que su empresa ya tenga AWS Organizations configurado con grupos y usuarios de
un directorio de AWS SSO o de un directorio de AWS Managed Microsoft AD o AD Connector
que se administra en AWS Directory Service. Si su empresa tiene un administrador de cuentas
de AWS, consulte a esa persona antes de comenzar el procedimiento siguiente. Si ya tiene AWS
Organizations configurado con grupos y usuarios de un directorio de AWS SSO o AWS Directory
Service, vaya al Paso 6 (p. 22). Habilitar usuarios y grupos dentro de la organización para
utilizar AWS Cloud9 (p. 22).
En este paso, creará grupos y usuarios en un directorio de AWS SSO para la organización o se conectará
a un directorio de AWS Managed Microsoft AD o AD Connector que se administra en AWS Directory
Service para la organización. En un paso posterior, dará a los grupos los permisos de acceso necesarios
para utilizar AWS Cloud9.
• Si ya utiliza un directorio de AWS SSO para la organización, siga estos conjuntos de instrucciones en la
Guía del usuario de AWS Single Sign-On. Repita estos pasos tantas veces como sea necesario hasta
que tenga todos los grupos y usuarios que desea:
1. Agregar grupos. Le recomendamos que cree al menos un grupo para los administradores de AWS
Cloud9 en toda la organización y, a continuación, repita este paso para crear otro grupo para todos
los usuarios de AWS Cloud9 en toda la organización. Si lo prefiere, también puede repetir este paso
21
AWS Cloud9 Guía del usuario
Paso 6. Habilitar usuarios y grupos dentro
de la organización para utilizar AWS Cloud9
para crear un tercer grupo para todos los usuarios en la organización con quienes desee compartir los
entornos de desarrollo de AWS Cloud9 existentes, pero sin permitirles crear entornos por sí mismos.
Para facilitar el uso, le recomendamos que llame a estos grupos AWSCloud9Administrators,
AWSCloud9Users y AWSCloud9EnvironmentMembers, respectivamente. Para obtener más
información, consulte Políticas administradas (predefinidas) de AWS para AWS Cloud9 (p. 550).
2. Agregue usuarios.
3. Agregar usuarios a grupos. Agregue administradores de AWS Cloud9 al grupo
AWSCloud9Administrators, repita este paso para añadir usuarios de AWS Cloud9 al grupo
AWSCloud9Users y, opcionalmente, repita este paso para añadir los usuarios restantes al grupo
AWSCloud9EnvironmentMembers. Agregar usuarios a grupos es una práctica recomendada de
seguridad de AWS que puede ayudarle a controlar, realizar un seguimiento y solucionar mejor los
problemas de acceso a los recursos de AWS.
• Si utiliza un directorio de AWS Managed Microsoft AD o AD Connector que se administra en AWS
Directory Service para la organización, siga las instrucciones de Conectarse a un directorio de Microsoft
AD de la Guía del usuario de AWS Single Sign-On.
1. En la consola de AWS SSO, elija AWS accounts (Cuentas de AWS) en el panel de navegación del
servicio.
2. Elija la pestaña Permission sets (Conjuntos de permisos).
3. Elija Create permission set (Crear conjunto de permisos).
4. Seleccione Create a custom permission set (Crear un conjunto de permisos personalizado).
5. Escriba un Name (Nombre) para este conjunto de permisos. Le recomendamos que cree al menos
un permiso para los administradores de AWS Cloud9 en toda la organización y, a continuación,
repita los pasos 3 a 10 de este procedimiento para crear otro conjunto de permisos para todos los
usuarios de AWS Cloud9 en toda la organización. Si lo prefiere, también puede repetir los pasos 3
a 10 de este procedimiento para crear un tercer conjunto de permisos para todos los usuarios en la
organización con quienes desee compartir los entornos de desarrollo de AWS Cloud9 existentes,
sin permitirles crear entornos por sí mismos. Para facilitar el uso, le recomendamos que llame a
estos conjuntos de permisos AWSCloud9AdministratorsPerms, AWSCloud9UsersPerms y
AWSCloud9EnvironmentMembersPerms, respectivamente. Para obtener más información, consulte
Políticas administradas (predefinidas) de AWS para AWS Cloud9 (p. 550).
6. Introduzca una Description (Descripción) opcional para el conjunto de permisos.
7. Elija la Session duration (Duración de la sesión) para el conjunto de permisos o deje la duración de la
sesión predeterminada de 1 hour (1 hora).
8. Seleccione Attach AWS managed policies (Adjuntar políticas administradas de AWS).
9. En la lista de políticas, seleccione una de las siguientes casillas al lado del Policy name (Nombre
de política) correcto. (No elija el nombre de la política propiamente. Si no ve un nombre de política
específico en la lista, ingrese el nombre en el cuadro Search [Buscar] para que se muestre).
• Para el conjunto de permisos AWSCloud9AdministratorsPerms, seleccione
AWSCloud9Administrator.
• Para el conjunto de permisos AWSCloud9UsersPerms, seleccione AWSCloud9User.
• Opcionalmente, para el conjunto de permisos AWSCloud9EnvironmentMembersPerms, seleccione
AWSCloud9EnvironmentMember.
22
AWS Cloud9 Guía del usuario
Paso 7: Comenzar a usar AWS Cloud9
Note
Para obtener más información sobre las políticas que puede agregar además de las políticas
exigidas por AWS Cloud9, consulte Políticas administradas y políticas insertadas y Permisos
concedidos por una política en la Guía del usuario de IAM.
10.Seleccione Create (Crear).
11.Una vez que haya terminado de crear todos los conjuntos de permisos que desee, en la pestaña AWS
organization (Organización de AWS), elija la cuenta de AWS a la que quiere asignar permisos de
acceso a AWS Cloud9. (Si la pestaña AWS organization [Organización de AWS] no se muestra, en el
panel de navegación del servicio, elija AWS accounts [Cuentas de AWS]. Se mostrará la pestaña AWS
organization [Organización de AWS]).
12.Elija Assign users (Asignar usuarios).
13.En la pestaña Groups (Grupos), seleccione la casilla al lado del nombre del grupo al que desea asignar
permisos de acceso de AWS Cloud9, como sigue. (No elija el nombre del grupo).
• Si utiliza un directorio de AWS SSO para la organización, es posible que haya creado un grupo
denominado AWSCloud9Administrators para los administradores de AWS Cloud9.
• Si utiliza un directorio de AWS Managed Microsoft AD o AD Connector que se administra en AWS
Directory Service para la organización, elija el ID del directorio, ingrese parte o la totalidad del
nombre del grupo y, a continuación, elija Search connected directory (Buscar directorio conectado).
A continuación, seleccione la casilla al lado del nombre del grupo al que desea asignar permisos de
acceso a AWS Cloud9.
Note
1. Si ya ha iniciado sesión en una cuenta de AWS o en AWS SSO, cierre la sesión. Para ello, consulte
Cómo cerrar sesión en mi cuenta de AWS en el sitio web de AWS Support o Cómo cerrar sesión del
portal de usuario en la Guía del usuario de AWS Single Sign-On.
2. Para iniciar sesión en AWS SSO, siga las instrucciones que se describen en Cómo aceptar la invitación
para unirse a AWS SSO en la Guía del usuario de AWS Single Sign-On. Esto incluye ir a una URL de
inicio de sesión única e iniciar sesión con un nombre de usuario y contraseña únicos. Su administrador
de cuenta de AWS le enviará un correo electrónico con esta información o se la proporcionará de otra
manera.
23
AWS Cloud9 Guía del usuario
Pasos siguientes
Note
Asegúrese de marcar la URL de inicio de sesión única que se le proporcionó, para que pueda
volver a ella más tarde fácilmente. También asegúrese de guardar el nombre de usuario y la
contraseña únicos para esta URL en un lugar seguro.
Esta combinación de URL, nombre de usuario y contraseña podría cambiar en función de los
diferentes niveles de permisos de acceso a AWS Cloud9 que le ofrece el administrador de su
cuenta de AWS. Por ejemplo, puede utilizar una URL, nombre de usuario y contraseña para
obtener acceso de administrador a AWS Cloud9 para una cuenta y puede utilizar una URL,
nombre de usuario y contraseña diferentes que únicamente permiten acceso de usuario a AWS
Cloud9 para una cuenta diferente.
3. Después de iniciar sesión en AWS SSO, elija el icono AWS Account (Cuenta de AWS).
4. Elija el nombre para mostrar del usuario en la lista desplegable que se abre. Si se muestra más de un
nombre, seleccione el nombre que desea comenzar a utilizar en AWS Cloud9. Si no está seguro de qué
nombre elegir, consulte al administrador de su cuenta de AWS.
5. Elija el enlace Management console (Consola de administración) al lado del nombre para mostrar
del usuario. Si se ve más de un enlace Management console (Consola de administración), elija el
enlace junto al conjunto de permisos correctos. Si no está seguro de qué enlace elegir, consulte al
administrador de su cuenta de AWS.
6. Desde la AWS Management Console, realice una de las siguientes operaciones:
• Elija Cloud9, si ya aparece.
• Amplíe All services (Todos los servicios) y, a continuación, elija Cloud9.
• En el cuadro Find services (Buscar servicios), escriba Cloud9 y pulse Enter.
• En la barra de navegación de AWS, elija Services (Servicios) y, a continuación, elija Cloud9.
Pasos siguientes
Tarea Consulte este tema
Obtenga información sobre cómo usar el IDE de Introducción: tutoriales básicos (p. 32) y Uso de
AWS Cloud9. la IDE (p. 115)
Invite a otras personas a usar el nuevo entorno Trabajo con entornos compartidos (p. 92)
con usted, en tiempo real y con asistencia de
conversación de texto.
En Configuración de equipo (p. 9) o Configuración de empresa (p. 17), ha creado grupos y añadido
permisos de acceso de AWS Cloud9 directamente a dichos grupos, para garantizar que los usuarios
24
AWS Cloud9 Guía del usuario
Paso 1: Crear una política administrada por el cliente
de esos grupos puedan acceder a AWS Cloud9. En este tema, agregará más permisos de acceso para
restringir los tipos de entornos que los usuarios de dichos grupos pueden crear. Esto puede ayudar a
controlar los costos relacionados con AWS Cloud9 en las organizaciones y cuentas de AWS.
Para agregar estos permisos de acceso, debe crear su propio conjunto de políticas que definan los
permisos de acceso de AWS que desea aplicar. (Se denominan políticas administradas por el cliente).
Luego, debe adjuntar esas políticas administradas por el cliente a los grupos a los que pertenecen los
usuarios. (En algunos casos, también debe desconectar las políticas administradas de AWS existentes
que ya están adjuntas a dichos grupos). Para realizar esta configuración, siga los procedimientos que se
indican en este tema.
Note
Los siguientes procedimientos cubren las políticas de asociación y desasociación solo para
usuarios de AWS Cloud9. En estos procedimientos, se presupone que ya tiene un grupo de
usuarios de AWS Cloud9 y un grupo de administradores de AWS Cloud9 independientes y que
solo tiene un número limitado de usuarios en el grupo de administradores de AWS Cloud9. Esta
práctica recomendada de seguridad de AWS puede ayudarle a controlar, realizar un seguimiento
y solucionar mejor los problemas de acceso a los recursos de AWS.
Este paso cubre la creación de una política administrada por el cliente solo para grupos de
IAM. Para crear un conjunto de permisos personalizados para grupos de AWS Single Sign-On
(SSO), omita este paso y siga las instrucciones de Crear un conjunto de permisos de la Guía
del usuario de AWS Single Sign-On en su lugar. En este tema, siga las instrucciones para crear
un conjunto de permisos personalizados. Para ver las políticas de permisos personalizadas
relacionadas, consulte Ejemplos de políticas administradas por el cliente para equipos que usan
AWS Cloud9 (p. 27) más adelante en este tema.
Se recomienda iniciar sesión con las credenciales de un usuario administrador de IAM en su cuenta de
AWS. Si no puede hacerlo, consulte con el administrador de su cuenta de AWS.
2. Abra la consola de IAM. Para ello, en la barra de navegación de la consola, elija Services (Servicios). A
continuación, elija IAM.
3. En el panel de navegación del servicio, elija Policies (Políticas).
4. Elija Create Policy (Crear política).
5. En la pestaña JSON, pegue uno de nuestros ejemplos de políticas administradas por el
cliente (p. 27) sugeridos.
Note
También puede crear sus propias políticas administradas por el cliente. Para obtener más
información, consulte Referencia de la política de JSON de IAM en la Guía del usuario de IAM y
la documentación de los servicios de AWS.
25
AWS Cloud9 Guía del usuario
Paso 2: Agregar políticas
administradas por el cliente a un grupo
Repita este paso para cada política administrada por el cliente adicional que desee crear y, a continuación,
vaya a la sección Agregar políticas administradas por el cliente a un grupo con la consola (p. 26).
Si crea el archivo con otro nombre de archivo, sustitúyalo en todo este procedimiento.
2. Pegue uno de nuestros ejemplos de políticas administradas por el cliente (p. 27) sugeridos en el
archivo policy.json.
Note
También puede crear sus propias políticas administradas por el cliente. Para obtener más
información, consulte Referencia de la política de JSON de IAM en la Guía del usuario de IAM y
la documentación de los servicios de AWS.
3. Desde el terminal o el símbolo del sistema, cambie al directorio que contiene el archivo policy.json.
4. Ejecute el comando create-policy de IAM, especificando un nombre de la política y el archivo
policy.json.
Vaya directamente a Agregar políticas administradas por el cliente a un grupo con AWS CLI (p. 27).
Este paso cubre la adición de políticas administradas por el cliente solo para grupos de IAM. Para
agregar conjuntos de permisos personalizados a grupos en AWS Single Sign-On (SSO), omita
este paso y siga las instrucciones de Asignar acceso a usuarios en la Guía del usuario de AWS
Single Sign-On en su lugar.
26
AWS Cloud9 Guía del usuario
Ejemplos de políticas administradas por el
cliente para equipos que utilizan AWS Cloud9
4. En la lista de nombres de las políticas, active la casilla junto a cada política administrada por el cliente
que desea adjuntar al grupo. (Si no ve un nombre de política específico en la lista, escríbalo en el
cuadro Filter (Filtrar) para mostrarlo).
5. Elija Attach Policy (Adjuntar política).
Si usa credenciales temporales administradas de AWS (p. 569), no puede usar una sesión
del terminal en el IDE de AWS Cloud9 para ejecutar algunos o la totalidad de los comandos de
esta sección. Para abordar las prácticas recomendadas de seguridad de AWS, las credenciales
temporales administradas de AWS no permiten que se ejecuten algunos comandos. En su lugar,
puede ejecutar esos comandos desde una instalación independiente de la AWS Command Line
Interface (AWS CLI).
En el comando anterior, reemplace MyGroup por el nombre del grupo. Reemplace 123456789012 por el
ID de cuenta de AWS y reemplace MyPolicy por el nombre de la política administrada por el cliente.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": [
"cloud9:CreateEnvironmentEC2",
27
AWS Cloud9 Guía del usuario
Ejemplos de políticas administradas por el
cliente para equipos que utilizan AWS Cloud9
"cloud9:CreateEnvironmentSSH"
],
"Resource": "*"
}
]
}
Tenga en cuenta que la política administrada por el cliente anterior anula "Effect":
"Allow" explícitamente para "Action": "cloud9:CreateEnvironmentEC2" y
"cloud9:CreateEnvironmentSSH" en "Resource": "*" en la política administrada
AWSCloud9User que ya está adjunta al grupo de usuarios de AWS Cloud9.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": "cloud9:CreateEnvironmentEC2",
"Resource": "*"
}
]
}
Tenga en cuenta que la política administrada por el cliente anterior anula "Effect": "Allow" para
"Action": "cloud9:CreateEnvironmentEC2" en "Resource": "*" en la política administrada
AWSCloud9User que ya está adjunta al grupo de usuarios de AWS Cloud9.
Puede sustituir "t2.*" en la siguiente política por una clase de instancia distinta (por ejemplo, "m4.*").
También puede restringirla a varias clases o tipos de instancias (por ejemplo, [ "t2.*", "m4.*" ] o
[ "t2.micro", "m4.large" ]).
Para un grupo de usuarios de AWS Cloud9, desconecte la política administrada AWSCloud9User del
grupo y luego agregue en su lugar la siguiente política administrada por el cliente. (Si no desconecta la
política administrada AWSCloud9User, la siguiente política administrada por el cliente no se aplicará).
{
"Version": "2012-10-17",
"Statement": [
{
28
AWS Cloud9 Guía del usuario
Ejemplos de políticas administradas por el
cliente para equipos que utilizan AWS Cloud9
"Effect": "Allow",
"Action": [
"cloud9:CreateEnvironmentSSH",
"cloud9:ValidateEnvironmentName",
"cloud9:GetUserPublicKey",
"cloud9:UpdateUserSettings",
"cloud9:GetUserSettings",
"iam:GetUser",
"iam:ListUsers",
"ec2:DescribeVpcs",
"ec2:DescribeSubnets"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": "cloud9:CreateEnvironmentEC2",
"Resource": "*",
"Condition": {
"StringLike": {
"cloud9:InstanceType": "t2.*"
}
}
},
{
"Effect": "Allow",
"Action": [
"cloud9:DescribeEnvironmentMemberships"
],
"Resource": [
"*"
],
"Condition": {
"Null": {
"cloud9:UserArn": "true",
"cloud9:EnvironmentId": "true"
}
}
},
{
"Effect": "Allow",
"Action": [
"iam:CreateServiceLinkedRole"
],
"Resource": "*",
"Condition": {
"StringLike": {
"iam:AWSServiceName": "cloud9.amazonaws.com"
}
}
}
]
}
Tenga en cuenta que la anterior política administrada por el cliente también permite a esos
usuarios crear entornos de SSH. Para evitar que esos usuarios creen entornos de SSH, elimine
"cloud9:CreateEnvironmentSSH", de la política administrada por el cliente anterior.
29
AWS Cloud9 Guía del usuario
Ejemplos de políticas administradas por el
cliente para equipos que utilizan AWS Cloud9
que AWS Cloud9 está disponible. Para ello, se restringe el nombre del entorno a un nombre específico de
esa región de AWS (en este ejemplo, my-demo-environment).
Note
Para un grupo de usuarios de AWS Cloud9, desconecte la política administrada AWSCloud9User del
grupo y luego agregue en su lugar la siguiente política administrada por el cliente. (Si no desconecta la
política administrada AWSCloud9User, la siguiente política administrada por el cliente no se aplicará).
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"cloud9:CreateEnvironmentSSH",
"cloud9:ValidateEnvironmentName",
"cloud9:GetUserPublicKey",
"cloud9:UpdateUserSettings",
"cloud9:GetUserSettings",
"iam:GetUser",
"iam:ListUsers",
"ec2:DescribeVpcs",
"ec2:DescribeSubnets"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"cloud9:CreateEnvironmentEC2"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"cloud9:EnvironmentName": "my-demo-environment"
}
}
},
{
"Effect": "Allow",
"Action": [
"cloud9:DescribeEnvironmentMemberships"
],
"Resource": [
"*"
],
"Condition": {
"Null": {
"cloud9:UserArn": "true",
"cloud9:EnvironmentId": "true"
}
}
},
{
"Effect": "Allow",
"Action": [
"iam:CreateServiceLinkedRole"
],
"Resource": "*",
30
AWS Cloud9 Guía del usuario
Pasos siguientes
"Condition": {
"StringLike": {
"iam:AWSServiceName": "cloud9.amazonaws.com"
}
}
}
]
}
Tenga en cuenta que la anterior política administrada por el cliente permite a esos usuarios
crear entornos de SSH. Para evitar que esos usuarios creen entornos de SSH, elimine
"cloud9:CreateEnvironmentSSH", de la política administrada por el cliente anterior.
Para ver otros ejemplos, consulte Ejemplos de políticas administradas por el cliente (p. 558).
Pasos siguientes
Tarea Consulte este tema
Obtenga información sobre cómo usar el IDE de Introducción: tutoriales básicos (p. 32) y Uso de
AWS Cloud9. la IDE (p. 115)
Invite a otras personas a usar el nuevo entorno Trabajo con entornos compartidos (p. 92)
con usted, en tiempo real y con asistencia de
conversación de texto.
31
AWS Cloud9 Guía del usuario
Primer vistazo a AWS Cloud9 (consola)
En los siguientes tutoriales, creará un entorno en AWS Cloud9 y, a continuación, utilizará dicho entorno
para crear una aplicación sencilla. Ambos tutoriales tienen la misma entrada y resultados, pero uno usa la
consola de AWS Cloud9 y el otro usa la AWS Command Line Interface (AWS CLI). Puede optar por hacer
uno de ellos o ambos.
Cuando haya terminado con estos tutoriales, puede obtener más información sobre el IDE de AWS Cloud9
en Recorrido del IDE de AWS Cloud9 (p. 116).
Temas
• Tutorial: Primer vistazo a AWS Cloud9 (consola) (p. 32)
• Tutorial: Primer vistazo a AWS Cloud9 (CLI) (p. 43)
En este tutorial, configurará un entorno de desarrollo de AWS Cloud9 y, a continuación, utilizará el IDE de
AWS Cloud9 para codificar, ejecutar y depurar su primera aplicación.
El uso de este tutorial puede producir cargos en su cuenta de AWS. Entre ellos, se incluyen
posibles cargos por Amazon EC2. Para obtener más información, consulte Precios de Amazon
EC2.
Requisitos previos
Para completar este tutorial correctamente, primero debe completar los pasos de Configuración de AWS
Cloud9 (p. 7).
Pasos
• Paso 1: Crear un entorno (p. 33)
• Paso 2: Recorrido básico del IDE (p. 36)
32
AWS Cloud9 Guía del usuario
Paso 1: Crear un entorno
En este paso va a utilizar la consola de AWS Cloud9 para crear un entorno de desarrollo de AWS Cloud9 y
después abrirlo.
Note
Si ya ha creado el entorno que desea utilizar en este tutorial, abra el entorno y vaya a Paso 2:
Recorrido básico del IDE (p. 36).
• Si es el único que usa su cuenta de AWS o es un usuario de IAM en una sola cuenta de AWS, vaya
a https://console.aws.amazon.com/cloud9/.
• Si su organización utiliza AWS Single Sign-On (AWS SSO), solicite instrucciones de inicio de sesión
al administrador de la cuenta de AWS.
• Si es un estudiante en un aula, pida las instrucciones de inicio de sesión al instructor.
2. Después de iniciar sesión en la consola de AWS Cloud9, en la barra de navegación superior, elija
una región de AWS en la que crear el entorno. Para ver una lista de las regiones de AWS disponibles,
consulte AWS Cloud9 en la Referencia general de AWS.
3. Elija el botón Create environment (Crear entorno) grande en una de las ubicaciones mostradas.
Si aún no tiene ningún entorno de AWS Cloud9, el botón se muestra en una página de bienvenida.
33
AWS Cloud9 Guía del usuario
Paso 1: Crear un entorno
4. En la página Name environment (Asignar nombre al entorno), en Name (Nombre), ingrese un nombre
para su entorno. Para este tutorial, escriba my-demo-environment.
5. En Description (Descripción), ingrese una nota acerca de su entorno. Para este tutorial, utilice This
environment is for the AWS Cloud9 tutorial.
6. Elija Next Step (Paso siguiente).
7. En la página Configure settings (Configurar ajustes), para Environment type (Tipo de entorno), elija
una de las siguientes opciones para crear un entorno respaldado por EC2:
• Create a new EC2 instance for environment (direct access) (Crear una nueva instancia de EC2 para
el entorno [acceso directo]): lanza una instancia de Amazon EC2 a la que AWS Cloud9 se puede
conectar directamente a través de SSH.
• Create a new no-ingress EC2 instance for environment (access via Systems Manager) (Crear una
nueva instancia de EC2 sin entrada para el entorno [acceso a través de Systems Manager]): lanza
una instancia de Amazon EC2 que no requiere ningún puerto entrante abierto. AWS Cloud9 se
conecta a la instancia a través de AWS Systems Manager.
• Si selecciona la opción de acceso mediante Systems Manager, se crean automáticamente una
función de servicio y un perfil de instancias de IAM para permitir que Systems Manager interactúe
con la instancia de EC2 en su nombre. Puede ver los nombres de ambos en la sección Service
role and instance profile for Systems Manager access (Función de servicio y perfil de instancias
para el acceso a Systems Manager) más abajo en la interfaz. Para obtener más información,
consulte Acceder a instancias EC2 sin entrada con AWS Systems Manager (p. 68) .
Warning
La creación de una instancia de EC2 para su entorno podría incurrir en cargos en su cuenta
de AWS para Amazon EC2. El uso de Systems Manager no supone ningún costo adicional
para administrar las conexiones a la instancia de EC2.
8. En Instance type (Tipo de instancia), deje la opción predeterminada. Esta opción tiene RAM y vCPU
relativamente bajos, lo que es suficiente para este tutorial.
34
AWS Cloud9 Guía del usuario
Paso 1: Crear un entorno
Warning
Si elige tipos de instancias con más RAM y vCPUs, podría incurrir en cargos adicionales en
su cuenta de AWS para Amazon EC2.
9. En Platform (Plataforma), elija el tipo de instancia de Amazon EC2 que quiera: Amazon Linux 2,
Amazon Linux o Ubuntu. AWS Cloud9 crea la instancia y, a continuación, conecta a esta el entorno.
Important
Le recomendamos que elija la opción Amazon Linux 2 para su entorno de EC2. Además de
proporcionar un entorno en tiempo de ejecución seguro, estable y de alto rendimiento, la AMI
de Amazon Linux 2 incluye asistencia a largo plazo hasta 2023.
La asistencia estándar para la versión anterior de la AMI de Amazon Linux se suspendió el 31
de diciembre de 2020. Ahora esta versión solo recibe asistencia de mantenimiento.
A partir del 1 de julio de 2022, la opción Amazon Linux dejará de estar disponible para su
selección en Platform (Plataforma).
Para obtener más información, consulte la página de Amazon Linux 2.
10. Elija un valor para Cost-saving setting (Configuración de ahorro). Una vez que todas las instancias del
navegador web conectadas al IDE del entorno estén cerradas, AWS Cloud9 espera el tiempo indicado
y, a continuación, cierra la instancia de Amazon EC2 del entorno.
Warning
AWS Cloud9 utiliza Amazon Virtual Private Cloud (Amazon VPC) para comunicarse con la instancia
de Amazon EC2 recién creada. En este tutorial, le recomendamos que no cambie la configuración
predeterminada preseleccionada. Con la configuración predeterminada, AWS Cloud9 intenta utilizar
automáticamente la VPC predeterminada con su única subred en la misma cuenta de AWS y región
de AWS que el nuevo entorno.
Puede encontrar más información sobre las opciones de Amazon VPC en Crear un entorno de
EC2 con la consola (p. 57) y en Configuración de VPC para entornos de desarrollo de AWS
Cloud9 (p. 500).
12. Añada hasta 50 etiquetas suministrando los valores de Key (Clave) y Value (Valor) para cada etiqueta.
Las etiquetas se adjuntarán al entorno de AWS Cloud9 como etiquetas de recursos y se propagarán
a los siguientes recursos subyacentes: la pila de AWS CloudFormation, la instancia de Amazon
EC2 y los grupos de seguridad de Amazon EC2. Puede encontrar información sobre las etiquetas
en Controlar el acceso con etiquetas de recursos de AWS en la Guía del usuario de IAM. Consulte
también la información avanzada (p. 540) sobre las etiquetas.
Warning
35
AWS Cloud9 Guía del usuario
Paso 2: Recorrido básico
Después de crear el entorno, AWS Cloud9 muestra el IDE de AWS Cloud9 del entorno.
Si AWS Cloud9 no muestra el IDE transcurridos al menos cinco minutos, puede que haya un problema con
su navegador web, los permisos de acceso de AWS, la instancia o la nube virtual privada (VPC) asociada.
Para obtener información sobre posibles soluciones, consulte No se puede abrir un entorno (p. 582) en
Solución de problemas.
Paso siguiente
Paso 2: Recorrido básico del IDE (p. 36)
En esta parte del tutorial se presentan algunas de las formas en las que puede utilizar el IDE de AWS
Cloud9 para crear y probar aplicaciones.
• Puede utilizar una ventana del editor para crear y editar código.
• Puede utilizar una ventana de terminal o una ventana Run Configuration (Configuración de ejecución)
para ejecutar el código sin depurarlo.
• Puede utilizar la ventana Debugger (Depurador) para depurar el código.
Realice estas tres tareas con el motor de Node.js y JavaScript. Consulte Tutoriales y ejemplos (p. 390)
para ver otros lenguajes de programación.
Temas
• Preparar el entorno (p. 36)
• Escribir código (p. 37)
• Ejecutar el código (p. 37)
• Depurar el código (p. 38)
• Paso siguiente (p. 40)
Preparar el entorno
La mayoría de las herramientas que necesita para ejecutar y depurar código JavaScript ya están
instaladas. Sin embargo, necesita un paquete adicional de Node.js para este tutorial. Instálelo como se
indica a continuación.
1. En la barra de menús (en la parte superior del IDE de AWS Cloud9), elija Window (Ventana), New
Terminal (Nuevo terminal), o bien utilice una ventana de terminal existente.
2. En la ventana de terminal (una de las pestañas de la parte inferior del IDE), ingrese lo siguiente.
Verifique que el resultado sea similar al siguiente (si también se muestran mensajes npm WARN,
puede ignorarlos).
+ [email protected]
added 1 package from 1 contributor and audited 5 packages in 0.565s
found 0 vulnerabilities
36
AWS Cloud9 Guía del usuario
Paso 2: Recorrido básico
Escribir código
Comience por escribir código.
console.log("Hello Cloud9!");
console.log("i is " + i);
do {
input = readline.question("Enter a number (or 'q' to quit): ");
if (input === 'q') {
console.log('OK, exiting.')
}
else{
i += Number(input);
console.log("i is now " + i);
}
} while (input != 'q');
console.log("Goodbye!");
3. Elija File (Archivo), Save (Guardar) y, a continuación, guarde el archivo como hello-cloud9.js.
Ejecutar el código
A continuación, puede ejecutar su código.
En función del lenguaje de programación que utilice, puede haber varias formas de ejecutar el código. En
este tutorial se utiliza JavaScript, que se puede ejecutar mediante una ventana de terminal o una ventana
Run Configuration (Configuración de ejecución).
1. En la barra de menús, elija Run (Ejecutar), Run Configurations (Configuraciones de ejecución), New
Run Configuration (Nueva configuración de ejecución).
2. En la nueva ventana Run Configuration (Configuración de ejecución), una de las pestañas de la parte
inferior del IDE, ingrese hello-cloud9.js en el campo Command (Comando) y, a continuación,
elija Run (Ejecutar).
3. Asegúrese de que se haya activado Run Configuration (Configuración de ejecución) y, a continuación,
ingrese un número en el símbolo del sistema para interactuar con la aplicación.
4. Vea la salida del código en la ventana Run Configuration (Configuración de ejecución). Debería ser
similar a lo siguiente.
37
AWS Cloud9 Guía del usuario
Paso 2: Recorrido básico
Depurar el código
Por último, puede depurar el código utilizando la ventana Debugger (Depurador).
38
AWS Cloud9 Guía del usuario
Paso 2: Recorrido básico
1. Elija el margen junto a la línea 10 para añadir un punto de interrupción al código en dicha línea (if
(input === 'q')). Aparece un círculo rojo junto a ese número de línea, tal y como se indica a
continuación.
2. Abra la ventana Debugger (Depurador) mediante el botón Debugger (Depurador) de la parte derecha
del IDE. También puede elegir Window (Ventana), Debugger (Depurador) en la barra de menús.
A continuación, ponga una inspección en la variable input eligiendo Type an expression here
(Escriba una expresión aquí) en la sección Watch Expressions (Expresiones de inspección) de la
ventana Debugger (Depurador).
39
AWS Cloud9 Guía del usuario
Paso 3: Limpieza
3. Vaya a la ventana Run Configuration (Configuración de ejecución) que ha utilizado anteriormente para
ejecutar el código. Elija Run (Ejecutar).
También puede abrir una nueva ventana de Run Configuration ( Configuración de Ejecución) y
comenzar a ejecutar el código eligiendo Run (Ejecutar), Run With (Ejecutar con), Node.js (Nodo.js), en
la barra de menú.
4. Ingrese un número en el símbolo del sistema de Run Configuration (Configuración de ejecución) y
compruebe que el código se detiene en la línea 10. La ventana Debugger (Depurador) muestra el
valor que ha especificado en Watch Expressions (Expresiones de inspección).
5. En la ventana Debugger (Depurador), elija Resume (Reanudar), que es el icono de flecha azul
resaltado en la captura de pantalla anterior.
6. Seleccione Stop (Detener) en la ventana Run Configuration (Configuración de ejecución) para detener
el depurador.
Paso siguiente
Paso 3: Limpieza (p. 40)
Paso 3: Limpieza
(Paso anterior: Paso 2: Recorrido básico del IDE (p. 36))
40
AWS Cloud9 Guía del usuario
Paso 3: Limpieza
Para evitar que se apliquen cargos continuos en su cuenta de AWS en relación con este tutorial, debería
eliminar el entorno.
Warning
3. En el cuadro de diálogo Delete (Eliminar), escriba Delete y, a continuación, elija Delete (Eliminar). La
operación de eliminación tarda unos minutos.
Note
Si ha seguido este tutorial exactamente, el entorno era un entorno de EC2 yAWS Cloud9 también
termina la instancia de Amazon EC2 conectada a ese entorno.
41
AWS Cloud9 Guía del usuario
Información relacionada
Sin embargo, si utilizó un entorno de SSH en lugar de seguir el tutorial y ese entorno estaba
conectado a una instancia de Amazon EC2, AWS Cloud9 no termina dicha instancia. Si no
termina dicha instancia más tarde, en su cuenta de AWS le pueden seguir cobrando cargos
continuos por Amazon EC2 en relación con esa instancia.
Paso siguiente
Información relacionada (p. 42)
Información relacionada
A continuación se ofrece información adicional sobre Tutorial: Primer vistazo a AWS Cloud9
(consola) (p. 32).
• En el momento de crear un entorno de EC2, el entorno no contiene ningún código de muestra de forma
predeterminada. Para crear un entorno con código de muestra, consulte uno de los siguientes temas:
• Trabajo con instancias de Amazon Lightsail en el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 303)
• Trabajo con proyectos de AWS CodeStar en el entorno de Desarrollo Integrado (IDE) de AWS
Cloud9 (p. 310)
• Durante la creación del entorno de desarrollo de AWS Cloud9, dirigió AWS Cloud9 para crear una
instancia de Amazon EC2. AWS Cloud9 creó la instancia y, a continuación, conectó a esta el entorno.
Como alternativa, puede utilizar una instancia de informática en la nube existente o su propio servidor
(que denominamos entorno de SSH). Para obtener más información, consulte Creación de un entorno en
AWS Cloud9 (p. 53) .
Examine todos o alguno de los siguientes temas para continuar familiarizándose con AWS Cloud9.
Obtenga más información acerca de lo que puede Trabajo con entornos en AWS Cloud9 (p. 53)
hacer con un entorno.
Pruebe otros lenguajes informáticos. Tutoriales y ejemplos para AWS Cloud9 (p. 390)
Más información sobre el IDE de AWS Cloud9. Recorrido del IDE de AWS Cloud9 (p. 116) en
Uso de la IDE (p. 115)
Invite a otras personas a usar el nuevo entorno Trabajo con entornos compartidos en AWS
con usted, en tiempo real y con asistencia de Cloud9 (p. 92)
conversación de texto.
Cree entornos de SSH (entornos que usan Creación de un entorno en AWS Cloud9 (p. 53)
instancias o servidores de informática en la y Requisitos de anfitrión del entorno SSH (p. 515)
nube que ha creado, en lugar de una instancia
de Amazon EC2 que AWS Cloud9 ha creado
automáticamente).
Cree, ejecute y depure código en funciones de Uso de funciones de AWS Lambda con AWS
AWS Lambda y aplicaciones sin servidor mediante Toolkit (p. 360)
AWS Toolkit.
42
AWS Cloud9 Guía del usuario
Primer vistazo a AWS Cloud9 (CLI)
Use AWS Cloud9 con Amazon Lightsail. Trabajo con instancias de Amazon Lightsail en
el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 303)
Use AWS Cloud9 con AWS CodeStar. Trabajo con proyectos de AWS CodeStar en el
entorno de Desarrollo Integrado (IDE) de AWS
Cloud9 (p. 310)
Use AWS Cloud9 con AWS CodePipeline. Trabajo con AWS CodePipeline en el entorno
de desarrollo integrado (IDE) de AWS
Cloud9 (p. 312)
Use AWS Cloud9 con AWS CLI, aws-shell, AWS Tutoriales y ejemplos (p. 390)
CodeCommit, el kit de desarrollo en la nube de
AWS (AWS CDK), GitHub o Amazon DynamoDB,
así como Node.js, Python u otros lenguajes de
programación.
Trabaje con código para aplicaciones de robótica Desarrollo con AWS Cloud9 en la Guía para
inteligentes en AWS RoboMaker. desarrolladores de AWS RoboMaker
Para obtener ayuda de la comunidad sobre AWS Cloud9, consulte el foro de debate de AWS Cloud9.
(Cuando entre en este foro, es posible que AWS requiera que inicie sesión).
Para obtener ayuda sobre AWS Cloud9 directamente de AWS, consulte las distintas opciones de soporte
que se ofrecen en la página de AWS Support.
En este tutorial, configurará un entorno de desarrollo de AWS Cloud9 y, a continuación, utilizará el IDE de
AWS Cloud9 para codificar, ejecutar y depurar su primera aplicación.
Requisitos previos
Para completar este tutorial correctamente, primero debe completar los pasos de Configuración de AWS
Cloud9 (p. 7).
Pasos
• Paso 1: Crear un entorno (p. 44)
• Paso 2: Recorrido básico del IDE (p. 45)
• Paso 3: Limpieza (p. 50)
43
AWS Cloud9 Guía del usuario
Paso 1: Crear un entorno
En este paso, utilizará AWS CLI para crear un entorno de desarrollo de AWS Cloud9.
• El usuario de IAM que creó en Configuración de equipos para AWS Cloud9 (p. 9).
• Un administrador de IAM de su cuenta de AWS, si va a trabajar periódicamente con recursos
de AWS Cloud9 para varios usuarios en la cuenta. Si no puede configurar AWS CLI como
administrador de IAM, consulte con el administrador de su cuenta de AWS. Para obtener más
información, consulte Creación del primer grupo y usuario administrador de IAM en la Guía del
usuario de IAM.
• Un usuario raíz de la cuenta de AWS, pero solo si siempre será el único usuario que utilice su
propia cuenta de AWS y si no necesita compartir sus entornos con nadie más. No recomendamos
esta opción, ya que no es una práctica recomendada de seguridad de AWS. Para obtener más
información, consulte Creación, desactivación y eliminación de claves de acceso para su cuenta de
AWS en la Referencia general de Amazon Web Services.
• Para otras opciones, consulte al administrador de la cuenta de AWS o al instructor del aula.
2. En el siguiente comando de AWS Cloud9, proporcione un valor para --region y --subnet-id. A
continuación, ejecute el comando y anote el valor de "environmentId" para la limpieza posterior.
En el comando anterior:
• --name representa el nombre del entorno. En este tutorial, usamos el nombre my-demo-
environment.
• --description representa una descripción opcional del entorno.
• --instance-type representa el tipo de instancias de Amazon EC2 que AWS Cloud9 lanzará
y conectará al nuevo entorno. Este ejemplo especifica t2.micro, que tiene RAM y vCPUs
relativamente bajos, pero que son suficientes para este tutorial. Si especifica tipos de instancias
con más RAM y vCPUs, podría incurrir en cargos adicionales en su cuenta de AWS para Amazon
EC2. Para obtener una lista de tipos de instancias disponibles, consulte el asistente de creación de
entornos en la consola de AWS Cloud9.
44
AWS Cloud9 Guía del usuario
Paso 2: Recorrido básico
• --image-id especifica el identificador de Amazon Machine Image (AMI) que se utiliza para crear
la instancia EC2. A fin de elegir una AMI para la instancia, debe especificar un alias de AMI válido
o una ruta de AWS Systems Manager (SSM) válida. En el ejemplo anterior, se especifica una ruta
SSM para una AMI de Amazon Linux 2.
Si intenta abrir el entorno, pero AWS Cloud9 no muestra el IDE transcurridos al menos cinco minutos,
puede que haya un problema con su navegador web, los permisos de acceso de AWS, la instancia o
la VPC asociada. Para obtener información sobre posibles soluciones, consulte No se puede abrir un
entorno (p. 582).
Paso siguiente
Paso 2: Recorrido básico del IDE (p. 45)
En esta parte del tutorial se presentan algunas de las formas en las que puede utilizar el IDE de AWS
Cloud9 para crear y probar aplicaciones.
• Puede utilizar una ventana del editor para crear y editar código.
45
AWS Cloud9 Guía del usuario
Paso 2: Recorrido básico
• Puede utilizar una ventana de terminal o una ventana Run Configuration (Configuración de ejecución)
para ejecutar el código sin depurarlo.
• Puede utilizar la ventana Debugger (Depurador) para depurar el código.
Realice estas tres tareas con el motor de Node.js y JavaScript. Consulte Tutoriales y ejemplos (p. 390)
para ver otros lenguajes de programación.
Temas
• Preparar el entorno (p. 46)
• Escribir código (p. 46)
• Ejecutar el código (p. 47)
• Depurar el código (p. 48)
• Paso siguiente (p. 50)
Preparar el entorno
La mayoría de las herramientas que necesita para ejecutar y depurar código JavaScript ya están
instaladas. Sin embargo, necesita un paquete adicional de Node.js para este tutorial. Instálelo como se
indica a continuación.
1. En la barra de menús (en la parte superior del IDE de AWS Cloud9), elija Window (Ventana), New
Terminal (Nuevo terminal), o bien utilice una ventana de terminal existente.
2. En la ventana de terminal (una de las pestañas de la parte inferior del IDE), ingrese lo siguiente.
Verifique que el resultado sea similar al siguiente (si también se muestran mensajes npm WARN,
puede ignorarlos).
+ [email protected]
added 1 package from 1 contributor and audited 5 packages in 0.565s
found 0 vulnerabilities
Escribir código
Comience por escribir código.
console.log("Hello Cloud9!");
console.log("i is " + i);
do {
input = readline.question("Enter a number (or 'q' to quit): ");
if (input === 'q') {
console.log('OK, exiting.')
}
else{
46
AWS Cloud9 Guía del usuario
Paso 2: Recorrido básico
i += Number(input);
console.log("i is now " + i);
}
} while (input != 'q');
console.log("Goodbye!");
3. Elija File (Archivo), Save (Guardar) y, a continuación, guarde el archivo como hello-cloud9.js.
Ejecutar el código
A continuación, puede ejecutar su código.
En función del lenguaje de programación que utilice, puede haber varias formas de ejecutar el código. En
este tutorial se utiliza JavaScript, que se puede ejecutar mediante una ventana de terminal o una ventana
Run Configuration (Configuración de ejecución).
1. En la barra de menús, elija Run (Ejecutar), Run Configurations (Configuraciones de ejecución), New
Run Configuration (Nueva configuración de ejecución).
2. En la nueva ventana Run Configuration (Configuración de ejecución), una de las pestañas de la parte
inferior del IDE, ingrese hello-cloud9.js en el campo Command (Comando) y, a continuación,
elija Run (Ejecutar).
3. Asegúrese de que se haya activado Run Configuration (Configuración de ejecución) y, a continuación,
ingrese un número en el símbolo del sistema para interactuar con la aplicación.
4. Vea la salida del código en la ventana Run Configuration (Configuración de ejecución). Debería ser
similar a lo siguiente.
47
AWS Cloud9 Guía del usuario
Paso 2: Recorrido básico
Depurar el código
Por último, puede depurar el código utilizando la ventana Debugger (Depurador).
1. Elija el margen junto a la línea 10 para añadir un punto de interrupción al código en dicha línea (if
(input === 'q')). Aparece un círculo rojo junto a ese número de línea, tal y como se indica a
continuación.
2. Abra la ventana Debugger (Depurador) mediante el botón Debugger (Depurador) de la parte derecha
del IDE. También puede elegir Window (Ventana), Debugger (Depurador) en la barra de menús.
48
AWS Cloud9 Guía del usuario
Paso 2: Recorrido básico
A continuación, coloque una inspección en la variable input. Para ello, elija Type an expression here
(Escriba una expresión aquí) en la sección Watch Expressions (Expresiones de inspección) de la
ventana Debugger (Depurador).
3. Vaya a la ventana Run Configuration (Configuración de ejecución) que ha utilizado anteriormente para
ejecutar el código. Elija Run (Ejecutar).
También puede abrir una nueva ventana Run Configuration (Ejecutar configuración) y comenzar a
ejecutar el código; para ello, elija Run (Ejecutar), Run With (Ejecutar con), Node.js en la barra del
menú.
4. Ingrese un número en el símbolo del sistema de Run Configuration (Configuración de ejecución) y
compruebe que el código se detiene en la línea 10. La ventana Debugger (Depurador) muestra el
valor que ha especificado en Watch Expressions (Expresiones de inspección).
5. En la ventana Debugger (Depurador), elija Resume (Reanudar), que es el icono de flecha azul
resaltado en la captura de pantalla anterior.
49
AWS Cloud9 Guía del usuario
Paso 3: Limpieza
6. Seleccione Stop (Detener) en la ventana Run Configuration (Configuración de ejecución) para detener
el depurador.
Paso siguiente
Paso 3: Limpieza (p. 50)
Paso 3: Limpieza
(Paso anterior: Paso 2: Recorrido básico del IDE (p. 45))
Para evitar que se apliquen cargos continuos en su cuenta de AWS en relación con este tutorial, debería
eliminar el entorno.
Warning
En el comando anterior, reemplace MY-REGION por la región de AWS en la que se creó el entorno y
12a34567b8cd9012345ef67abcd890e1 por el ID del entorno que se va a eliminar.
Si no guardó el ID al crear el entorno, utilice la consola de AWS Cloud9 para encontrarlo. Seleccione
el nombre del entorno en la consola y, a continuación, busque la última parte de Environment ARN
(ARN del entorno).
2. Si creó una instancia de Amazon VPC para este tutorial y ya no la necesita, elimínela mediante la
consola de Amazon VPC en https://console.aws.amazon.com/vpc.
Paso siguiente
Información relacionada (p. 51)
50
AWS Cloud9 Guía del usuario
Información relacionada
Información relacionada
A continuación se ofrece información adicional sobre Tutorial: Primer vistazo a AWS Cloud9
(CLI) (p. 43).
• En el momento de crear un entorno de EC2, el entorno no contiene ningún código de muestra de forma
predeterminada. Para crear un entorno con código de muestra, consulte uno de los siguientes temas:
• Trabajo con instancias de Amazon Lightsail en el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 303)
• Trabajo con proyectos de AWS CodeStar en el entorno de Desarrollo Integrado (IDE) de AWS
Cloud9 (p. 310)
• Durante la creación del entorno de desarrollo de AWS Cloud9, dirigió AWS Cloud9 para crear una
instancia de Amazon EC2. AWS Cloud9 creó la instancia y, a continuación, conectó a esta el entorno.
Como alternativa, puede utilizar una instancia de informática en la nube existente o su propio servidor
(que denominamos entorno de SSH). Para obtener más información, consulte Creación de un entorno en
AWS Cloud9 (p. 53).
Examine todos o alguno de los siguientes temas para continuar familiarizándose con AWS Cloud9.
Obtenga más información acerca de lo que puede Trabajo con entornos en AWS Cloud9 (p. 53)
hacer con un entorno.
Pruebe otros lenguajes informáticos. Tutoriales y ejemplos para AWS Cloud9 (p. 390)
Más información sobre el IDE de AWS Cloud9. Recorrido del IDE de AWS Cloud9 (p. 116) en
Uso de la IDE (p. 115)
Invite a otras personas a usar el nuevo entorno Trabajo con entornos compartidos en AWS
con usted, en tiempo real y con asistencia de Cloud9 (p. 92)
conversación de texto.
Cree entornos de SSH (entornos que usan Creación de un entorno en AWS Cloud9 (p. 53)
instancias o servidores de informática en la y Requisitos de anfitrión del entorno SSH (p. 515)
nube que ha creado, en lugar de una instancia
de Amazon EC2 que AWS Cloud9 ha creado
automáticamente).
Cree, ejecute y depure código en funciones de Uso de funciones de AWS Lambda con AWS
AWS Lambda y aplicaciones sin servidor mediante Toolkit (p. 360)
AWS Toolkit.
Use AWS Cloud9 con Amazon Lightsail. Trabajo con instancias de Amazon Lightsail en
el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 303)
Use AWS Cloud9 con AWS CodeStar. Trabajo con proyectos de AWS CodeStar en el
entorno de Desarrollo Integrado (IDE) de AWS
Cloud9 (p. 310)
Use AWS Cloud9 con AWS CodePipeline. Trabajo con AWS CodePipeline en el entorno
de desarrollo integrado (IDE) de AWS
Cloud9 (p. 312)
51
AWS Cloud9 Guía del usuario
Información relacionada
Use AWS Cloud9 con AWS CLI, aws-shell, AWS Tutoriales y ejemplos (p. 390)
CodeCommit, el kit de desarrollo en la nube de
AWS (AWS CDK), GitHub o Amazon DynamoDB,
así como Node.js, Python u otros lenguajes de
programación.
Trabaje con código para aplicaciones de robótica Desarrollo con AWS Cloud9 en la Guía para
inteligentes en AWS RoboMaker. desarrolladores de AWS RoboMaker
Para obtener ayuda de la comunidad sobre AWS Cloud9, consulte el foro de debate de AWS Cloud9.
(Cuando entre en este foro, es posible que AWS requiera que inicie sesión).
Para obtener ayuda sobre AWS Cloud9 directamente de AWS, consulte las distintas opciones de soporte
que se ofrecen en la página de AWS Support.
52
AWS Cloud9 Guía del usuario
Creación de un entorno
AWS Cloud9 proporciona dos tipos de entornos de desarrollo: entornos de EC2 y entornos de SSH. Para
comprender las principales similitudes y diferencias entre estos entornos de desarrollo, consulte Entornos
de EC2 comparados con entornos de SSH en AWS Cloud9 (p. 499).
Lea uno o varios de los siguientes temas para aprender a trabajar con un entorno en AWS Cloud9.
Temas
• Creación de un entorno en AWS Cloud9 (p. 53)
• Acceder a instancias EC2 sin entrada con AWS Systems Manager (p. 68)
• Apertura de un entorno en AWS Cloud9 (p. 78)
• Llamar a los servicios de AWS desde un entorno en AWS Cloud9 (p. 81)
• Modificación de la configuración del entorno en AWS Cloud9 (p. 89)
• Trabajo con entornos compartidos en AWS Cloud9 (p. 92)
• Mover un entorno y cambiar el tamaño de volúmenes de Amazon EBS o cifrarlos (p. 104)
• Eliminación de un entorno en AWS Cloud9 (p. 111)
Si no está seguro de qué elegir, le recomendamos que utilice Creación de un entorno de EC2 (p. 54).
Crear un entorno de EC2 es la opción más sencilla. AWS Cloud9 crea y configura automáticamente una
nueva instancia de Amazon EC2 en su cuenta de AWS. A continuación, AWS Cloud9 conecta esa nueva
instancia al entorno automáticamente.
Para comprender las principales similitudes y diferencias entre los entornos de desarrollo, consulte
Entornos de EC2 comparados con entornos de SSH en AWS Cloud9 (p. 499).
53
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2
AWS CodeStar o usted AWS Cloud9 (mediante AWS Trabajo con proyectos de AWS
CodeStar) CodeStar en el entorno de
Desarrollo Integrado (IDE) de
AWS Cloud9 (p. 310)
Temas
• Creación de un entorno de EC2 (p. 54)
• Creación de un entorno de SSH (p. 65)
El uso de este procedimiento puede producir cargos en su cuenta de AWS. Entre ellos, se
incluyen posibles cargos por Amazon EC2. Para obtener más información, consulte Precios de
Amazon EC2.
En este procedimiento, AWS Cloud9 crea un entorno de EC2, crea una nueva instancia de Amazon EC2
y, a continuación, conecta el entorno con esta instancia recién creada. AWS Cloud9 administra el ciclo de
vida de esta instancia, incluyendo el inicio, la detención y el reinicio de la instancia según sea necesario. Si
alguna vez elimina este entorno, AWS Cloud9 termina esta instancia automáticamente.
Puede crear un entorno de desarrollo de EC2 de AWS Cloud9 con la consola de AWS Cloud9 (p. 55) o
con código (p. 64).
Requisitos previos
Complete los pasos de Configuración de AWS Cloud9 (p. 7) para poder iniciar sesión en la consola de
AWS Cloud9 y crear entornos.
54
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2
• Si es el único que usa su cuenta de AWS o es un usuario de IAM en una sola cuenta de AWS, vaya
a https://console.aws.amazon.com/cloud9/.
• Si su organización utiliza AWS Single Sign-On (AWS SSO), solicite instrucciones de inicio de sesión
al administrador de la cuenta de AWS.
• Si es un estudiante en un aula, pida las instrucciones de inicio de sesión al instructor.
2. Después de iniciar sesión en la consola de AWS Cloud9, en la barra de navegación superior, elija
una región de AWS en la que crear el entorno. Para ver una lista de las regiones de AWS disponibles,
consulte AWS Cloud9 en la Referencia general de AWS.
3. Elija el botón Create environment (Crear entorno) grande en una de las ubicaciones mostradas.
Si aún no tiene ningún entorno de AWS Cloud9, el botón se muestra en una página de bienvenida.
4. En la página Name environment (Asignar nombre al entorno), en Name (Nombre), ingrese un nombre
para su entorno.
55
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2
• Create a new EC2 instance for environment (direct access) (Crear una nueva instancia de EC2 para
el entorno [acceso directo]): lanza una instancia de Amazon EC2 a la que AWS Cloud9 se puede
conectar directamente a través de SSH.
• Create a new no-ingress EC2 instance for environment (access via Systems Manager) (Crear una
nueva instancia de EC2 sin entrada para el entorno [acceso a través de Systems Manager]): lanza
una instancia de Amazon EC2 que no requiere ningún puerto entrante abierto. AWS Cloud9 se
conecta a la instancia a través de AWS Systems Manager.
• Si selecciona la opción de acceso mediante Systems Manager, se crean automáticamente una
función de servicio y un perfil de instancias de IAM para permitir que Systems Manager interactúe
con la instancia de EC2 en su nombre. Puede ver los nombres de ambos en la sección Service
role and instance profile for Systems Manager access (Función de servicio y perfil de instancias
para el acceso a Systems Manager) más abajo en la interfaz. Para obtener más información,
consulte Acceder a instancias EC2 sin entrada con AWS Systems Manager (p. 68) .
Warning
La creación de una instancia de EC2 para su entorno podría incurrir en cargos en su cuenta
de AWS para Amazon EC2. El uso de Systems Manager no supone ningún costo adicional
para administrar las conexiones a la instancia de EC2.
8. En Instance type (Tipo de instancia), elija un tipo de instancia con la cantidad de RAM y vCPU que
crea que necesita para el tipo de tareas que desea realizar.
Warning
Si elige tipos de instancias con más RAM y vCPUs, podría incurrir en cargos adicionales en
su cuenta de AWS para Amazon EC2.
9. En Platform (Plataforma), elija el tipo de instancia de Amazon EC2 que quiera: Amazon Linux 2,
Amazon Linux o Ubuntu. AWS Cloud9 crea la instancia y, a continuación, conecta a esta el entorno.
Important
Le recomendamos que elija la opción Amazon Linux 2 para su entorno de EC2. Además de
proporcionar un entorno en tiempo de ejecución seguro, estable y de alto rendimiento, la AMI
de Amazon Linux 2 incluye asistencia a largo plazo hasta 2023.
La asistencia estándar para la versión anterior de la AMI de Amazon Linux se suspendió el 31
de diciembre de 2020. Ahora esta versión solo recibe asistencia de mantenimiento.
A partir del 1 de julio de 2022, la opción Amazon Linux dejará de estar disponible para su
selección en Platform (Plataforma).
Para obtener más información, consulte la página de Amazon Linux 2.
10. Elija un valor para Cost-saving setting (Configuración de ahorro). Una vez que todas las instancias del
navegador web conectadas al IDE del entorno estén cerradas, AWS Cloud9 espera el tiempo indicado
y, a continuación, cierra la instancia de Amazon EC2 del entorno.
Warning
56
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2
12. AWS Cloud9 utiliza Amazon Virtual Private Cloud (Amazon VPC) para comunicarse con la instancia
de Amazon EC2 recién creada. En función de la configuración de Amazon VPC, siga uno de los
conjuntos de instrucciones siguientes.
Si no está seguro de qué elegir, le recomendamos que vaya al paso siguiente de este
procedimiento.
Cuando pasa Network settings (advanced) (Configuración de red [avanzada]) y deja la configuración
predeterminada preseleccionada, AWS Cloud9 intenta utilizar automáticamente la VPC
predeterminada con una sola subred en la misma cuenta de AWS y región de AWS que el nuevo
entorno.
Important
Si ha seleccionado Create a new no-ingress EC2 instance for environment (access via
Systems Manager) (Crear una nueva instancia de EC2 sin entrada para el entorno [acceso a
través de Systems Manager]), puede lanzar la instancia en una subred pública o privada.
• Public subnet (Subred pública): adjunte un gateway de internet para permitir que el SSM
Agent de la instancia se comunique con Systems Manager.
• Private subnet (Subred privada): cree un gateway NAT para permitir que la instancia se
comunique con internet y otros servicios de AWS.
También debe tener en cuenta que actualmente no puede utilizar las credenciales temporales
administradas de AWS (p. 569) para permitir que el entorno de EC2 acceda a un servicio de
AWS en nombre de una entidad de AWS (un usuario de IAM, por ejemplo).
Para obtener más información sobre cómo configurar subredes, consulte Configuración de
VPC para entornos de desarrollo de AWS Cloud9 (p. 500).
57
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2
¿La cuenta de ¿Está la VPC en ¿Esa VPC es la ¿La VPC contiene Siga estas
AWS tiene acceso la misma cuenta predeterminada una única instrucciones
a una Amazon de AWS y región para su cuenta de subred?
VPC? de AWS que el AWS?
nuevo entorno?
No — — — Si no existe una
VPC, créela.
58
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2
¿La cuenta de ¿Está la VPC en ¿Esa VPC es la ¿La VPC contiene Siga estas
AWS tiene acceso la misma cuenta predeterminada una única instrucciones
a una Amazon de AWS y región para su cuenta de subred?
VPC? de AWS que el AWS?
nuevo entorno?
Sí Sí Sí Sí Vaya
directamente
al siguiente
paso de este
procedimiento.
Cuando pasa
Network settings
(advanced)
(Configuración de
red [avanzada])
y deja la
configuración
predeterminada
preseleccionada,
AWS Cloud9
intenta utilizar
automáticamente
la VPC
predeterminada
con una sola
subred en la
misma cuenta y la
misma región que
el nuevo entorno.
59
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2
¿La cuenta de ¿Está la VPC en ¿Esa VPC es la ¿La VPC contiene Siga estas
AWS tiene acceso la misma cuenta predeterminada una única instrucciones
a una Amazon de AWS y región para su cuenta de subred?
VPC? de AWS que el AWS?
nuevo entorno?
Sí Sí Sí No Si la VPC
predeterminada
tiene varias
subredes,
expanda
Network settings
(advanced)
(Ajustes de red
(Avanzado)). En
Subnet (Subred),
elija la subred
que desee que
AWS Cloud9
utilice en la VPC
predeterminada
previamente
seleccionada.
Si la VPC
predeterminada
no tiene
subredes,
deberá crear
una. Para ello,
seleccione Create
new subnet
(Crear nueva
subred) y siga
las instrucciones
en pantalla. Para
obtener más
información,
consulte Crear
una subred
para AWS
Cloud9 (p. 513)
.
Sí Sí No Sí Expanda Network
settings (Ajustes
de red). En
Network (VPC)
(Red (VPC)), elija
la VPC que desee
que AWS Cloud9
utilice.
60
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2
¿La cuenta de ¿Está la VPC en ¿Esa VPC es la ¿La VPC contiene Siga estas
AWS tiene acceso la misma cuenta predeterminada una única instrucciones
a una Amazon de AWS y región para su cuenta de subred?
VPC? de AWS que el AWS?
nuevo entorno?
Sí Sí No No Expanda Network
settings (Ajustes
de red). En
Network (VPC)
(Red (VPC)), elija
la VPC que desee
que AWS Cloud9
utilice.
Si la VPC
elegida tiene
varias subredes,
expanda
Network settings
(advanced)
(Ajustes de red
(Avanzado)). En
Subnet (Subred),
elija la subred que
desea que AWS
Cloud9 utilice en
la VPC elegida.
Si la VPC
elegida no
tiene subredes,
deberá crear
una. Para ello,
seleccione Create
new subnet
(Crear nueva
subred) y siga
las instrucciones
en pantalla. Para
obtener más
información,
consulte Crear
una subred
para AWS
Cloud9 (p. 513)
.
61
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2
¿La cuenta de ¿Está la VPC en ¿Esa VPC es la ¿La VPC contiene Siga estas
AWS tiene acceso la misma cuenta predeterminada una única instrucciones
a una Amazon de AWS y región para su cuenta de subred?
VPC? de AWS que el AWS?
nuevo entorno?
Sí No Sí — AWS Cloud9
no puede
usar una VPC
predeterminada
en una cuenta de
AWS diferente de
la cuenta de AWS
para el nuevo
entorno. Elija una
opción diferente
de esta lista.
Sí No No Sí Expanda Network
settings (Ajustes
de red). En
Network (VPC)
(Red (VPC)), elija
la VPC que desee
que AWS Cloud9
utilice.
Note
La VPC
debe
estar en
la misma
región de
AWS que
el nuevo
entorno,
incluso
si la VPC
está
en otra
cuenta
de AWS.
62
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2
¿La cuenta de ¿Está la VPC en ¿Esa VPC es la ¿La VPC contiene Siga estas
AWS tiene acceso la misma cuenta predeterminada una única instrucciones
a una Amazon de AWS y región para su cuenta de subred?
VPC? de AWS que el AWS?
nuevo entorno?
Sí No No No Expanda Network
settings (Ajustes
de red). En
Network (VPC)
(Red (VPC)), elija
la VPC que desee
que AWS Cloud9
utilice.
En Subnet
(Subred), elija la
subred que desea
que AWS Cloud9
utilice en la VPC
elegida.
Si la VPC
elegida no tiene
subredes, para
crear una subred
para una VPC en
una cuenta de
AWS diferente
del nuevo
entorno, consulte
Trabajar con VPC
compartidas en la
Guía del usuario
de Amazon VPC.
Note
La VPC y
la subred
deben
estar en
la misma
región de
AWS que
el nuevo
entorno,
incluso si
la VPC y
la subred
se
encuentran
en otra
cuenta
de AWS.
63
AWS Cloud9 Guía del usuario
Creación de un entorno de EC2
Para obtener más información sobre estas opciones, consulte Configuración de VPC para entornos de
desarrollo de AWS Cloud9 (p. 500).
13. Añada hasta 50 etiquetas suministrando los valores de Key (Clave) y Value (Valor) para cada etiqueta.
Las etiquetas se adjuntarán al entorno de AWS Cloud9 como etiquetas de recursos y se propagarán
a los siguientes recursos subyacentes: la pila de AWS CloudFormation, la instancia de Amazon
EC2 y los grupos de seguridad de Amazon EC2. Puede encontrar información sobre las etiquetas
en Controlar el acceso con etiquetas de recursos de AWS en la Guía del usuario de IAM. Consulte
también la información avanzada (p. 540) sobre las etiquetas.
Warning
Después de crear el entorno, AWS Cloud9 muestra el IDE de AWS Cloud9 del entorno.
Si AWS Cloud9 no muestra el IDE transcurridos al menos cinco minutos, puede que haya un problema con
su navegador web, los permisos de acceso de AWS, la instancia o la nube virtual privada (VPC) asociada.
Para obtener información sobre posibles soluciones, consulte No se puede abrir un entorno (p. 582) en
Solución de problemas.
Note
Si el entorno utiliza un proxy para acceder a internet, debe proporcionar los detalles del proxy a
AWS Cloud9 para que pueda instalar las dependencias. Para obtener más información, consulte
Aviso: error al instalar dependencias para el soporte de colaboración (p. 598) .
64
AWS Cloud9 Guía del usuario
Creación de un entorno de SSH
Note
Si el entorno utiliza un proxy para acceder a internet, debe proporcionar los detalles del proxy a
AWS Cloud9 para que pueda instalar las dependencias. Para obtener más información, consulte
Aviso: error al instalar dependencias para el soporte de colaboración (p. 598) .
Requisitos previos
• Asegúrese de haber completado los pasos de Configuración de AWS Cloud9 (p. 7) en primer lugar, para
poder iniciar sesión en la consola de AWS Cloud9 y crear entornos.
• Identifique una instancia de informática en la nube existente (por ejemplo, una instancia de Amazon EC2
en su cuenta de AWS), o su propio servidor, que desee que AWS Cloud9 conecte al entorno.
• Asegúrese de que la instancia existente o su propio servidor cumpla todos los Requisitos del host
SSH (p. 517). Esto incluye tener versiones específicas de Python, Node.js y otros componentes
instaladas, configurar permisos específicos en el directorio desde el que desea que se inicie AWS
Cloud9 después del inicio de sesión y configurar cualquier instancia de Amazon Virtual Private Cloud
asociada.
Para conectarse a una instancia de informática en la nube de AWS existente, consulte uno o
más de los siguientes recursos:
• En el caso de Amazon EC2, consulte Conexión con la instancia de Linux en la Guía del
usuario de Amazon EC2 para instancias de Linux.
• Para Amazon Lightsail, consulte Connect to your Linux/Unix-based Lightsail instance en la
documentación de Amazon Lightsail.
• Para AWS Elastic Beanstalk, consulte Listado y conexión a instancias de servidor en la
Guía para desarrolladores de AWS Elastic Beanstalk.
65
AWS Cloud9 Guía del usuario
Creación de un entorno de SSH
• Para AWS OpsWorks, consulte Uso de SSH para iniciar sesión en una instancia de Linux
en la Guía del usuario de AWS OpsWorks.
• Para otros servicios de AWS, consulte la documentación del servicio.
Para conectarse a su propio servidor, puede buscar en internet usando una frase como
"conectarse a un servidor con el comando SSH" (desde macOS o Linux) o "conectarse a un
servidor con PuTTY" (desde Windows).
3. Inicie sesión en la consola de AWS Cloud9 en https://console.aws.amazon.com/cloud9/.
4. Después de iniciar sesión en la consola de AWS Cloud9, en la barra de navegación superior, elija
una región de AWS en la que crear el entorno. Para ver una lista de las regiones de AWS disponibles,
consulte AWS Cloud9 en la Referencia general de AWS.
5. Si es la primera vez que crea un entorno de desarrollo, se muestra una página de bienvenida. En
el panel New AWS Cloud9 environment (Nuevo entorno de AWS Cloud9), elija Create environment
(Crear entorno).
En la página de bienvenida:
66
AWS Cloud9 Guía del usuario
Creación de un entorno de SSH
6. En la página Name environment (Asignar nombre al entorno), en Name (Nombre), escriba un nombre
para el entorno.
7. Para agregar una descripción del entorno, escríbala en Description (Descripción).
8. Elija Next Step (Paso siguiente).
9. En Environment type (Tipo de entorno), elija Connect and run in remote server (SSH) (Conectar y
ejecutar en un servidor remoto (SSH)).
10. En Usuario, escriba el nombre de inicio de sesión que utilizó para conectarse a la instancia o al
servidor al principio de este procedimiento. Por ejemplo, en el caso de una instancia de informática en
la nube de AWS, podría ser ec2-user, ubuntu o root.
Note
Para obtener resultados óptimos, le recomendamos que el nombre de inicio de sesión esté
asociado a los permisos de administrador o a un usuario administrador en la instancia o el
servidor. En concreto, este nombre de inicio de sesión debe tener la instalación de Node.js
en la instancia o servidor. Para verificarlo, ejecute el comando ls -l $(which node)
desde el terminal de la instancia o el servidor (o ls -l $(nvm which node) si utiliza
nvm). Este comando muestra el nombre del propietario de la instalación de Node.js, junto con
los permisos de instalación, el nombre del grupo y la ubicación.
11. En Host, escriba la dirección IP pública (preferida) o el nombre de host de la instancia o el servidor.
12. En Port (Puerto), escriba el puerto que desea que AWS Cloud9 utilice para intentar conectarse a la
instancia o servidor o deje el puerto predeterminado.
13. Para especificar la ruta del directorio en la instancia o el servidor donde desea que se inicie AWS
Cloud9 después de iniciar sesión. Lo identificó anteriormente en los requisitos previos de este
procedimiento. Expanda Advanced settings (Configuración avanzada) y, a continuación, escriba la
ruta en Environment path (Ruta del entorno). Si deja este campo en blanco, AWS Cloud9 utiliza el
directorio que su instancia o servidor utiliza normalmente para comenzar después de iniciar sesión.
Normalmente, es un directorio raíz o predeterminado.
14. Para especificar la ruta al archivo binario Node.js en la instancia o el servidor, expanda Advanced
settings (Configuración avanzada) y, a continuación, escriba la ruta en Node.js binary path (Ruta
binaria de Node.js). Para obtener la ruta, puede ejecutar el comando which node (o nvm which
node si está utilizando nvm) en su instancia o servidor. Por ejemplo, la ruta puede ser /usr/bin/
node. Si deja este campo en blanco, AWS Cloud9 intenta adivinar dónde se encuentra el archivo
binario Node.js cuando intenta conectarse.
15. Para especificar un host de salto que utiliza la instancia o servidor, expanda Advanced settings
(Configuración avanzada) y escriba información sobre el host de salto en SSH jump host (Host
de salto SSH), utilizando el formato USER_NAME@HOSTNAME:PORT_NUMBER (por ejemplo, ec2-
user@:ip-192-0-2-0:22)
67
AWS Cloud9 Guía del usuario
Acceder a instancias EC2 sin entrada con Systems Manager
conectó anteriormente en este procedimiento. (~ representa el directorio de inicio del nombre de inicio
de sesión del usuario que ha especificado anteriormente en este procedimiento).
Note
Para ver el valor de la clave SSH pública que se ha copiado, amplíe View public SSH key
(Ver clave pública SSH).
17. Elija Next Step (Paso siguiente).
18. En la página Review (Revisión), elija Create environment (Crear entorno). Espere mientras AWS
Cloud9 crea el entorno. Esto puede tardar varios minutos.
Si AWS Cloud9 no muestra el IDE transcurridos al menos cinco minutos, puede que haya un problema
con su navegador web, los permisos de acceso de AWS, la instancia o la red asociada. Para obtener
información sobre posibles soluciones, consulte No se puede abrir un entorno (p. 582) en Solución de
problemas.
Note
Si el entorno utiliza un proxy para acceder a internet, debe proporcionar los detalles del proxy a
AWS Cloud9 para que pueda instalar las dependencias. Para obtener más información, consulte
Aviso: error al instalar dependencias para el soporte de colaboración (p. 598) .
• Crear una nueva instancia EC2 para el entorno (acceso directo) (p. 55): con esta configuración, el
grupo de seguridad de la instancia tiene una regla para permitir el tráfico de red entrante. Un puerto
68
AWS Cloud9 Guía del usuario
Beneficios de utilizar Systems
Manager para entornos de EC2
entrante abierto permite que AWS Cloud9 se conecte a través de SSH a su instancia. El tráfico de red
entrante está restringido a las direcciones IP aprobadas para las conexiones de AWS Cloud9 (p. 520).
• Crear una nueva instancia EC2 sin entrada para el entorno (acceso a través de Systems
Manager) (p. 55): con esta configuración, el grupo de seguridad de la instancia no tiene regla de
entrada. Esto significa que no se permitirá el tráfico entrante que proceda de otro anfitrión a la instancia.
Por lo tanto, AWS Cloud9 no se conecta directamente a la instancia a través de SSH. En cambio, el
entorno se conecta a través del Administrador de sesiones de AWS Systems Manager. Para obtener
más información, consulte Beneficios de utilizar Systems Manager para entornos de EC2 (p. 69).
Note
También tiene una tercera opción que consiste en seleccionar Create and run in remote server
(SSH connection) (Crear y ejecutar en un servidor remoto [conexión SSH]). Para obtener más
información acerca de permitir que AWS Cloud9 se conecte a una instancia EC2 existente o a su
propio servidor, consulte Creación de un entorno de SSH (p. 65).
Si se crea un entorno mediante AWS CLI (p. 44), puede configurar una instancia EC2 sin entrada
estableciendo la opción --connection-type CONNECT_SSM al llamar al comando create-
environment-ec2. Para obtener más información acerca de la creación de la función de servicio y del
perfil de instancias necesarios, consulte Administrar perfiles de instancias para Systems Manager con
AWS CLI (p. 71).
Después de completar la creación de un entorno que utiliza una instancia EC2 sin entrada, confirme lo
siguiente:
• El Administrador de sesiones de Systems Manager tiene permisos para realizar acciones en la instancia
EC2 en su nombre (consulte Administración de permisos de Systems Manager (p. 71)).
• Los usuarios de AWS Cloud9 pueden acceder a la instancia administrada por el Administrador
de sesiones (consulte Proporcionar a los usuarios acceso a las instancias administradas por el
Administrador de sesiones (p. 72)).
Las conexiones seguras entre AWS Cloud9 y su instancia EC2 las gestiona el Administrador de
sesiones. El Administrador de sesiones es una capacidad completamente administrada de Systems
Manager que permite que AWS Cloud9 se conecte a su instancia EC2 sin necesidad de abrir puertos
entrantes.
Important
La opción de utilizar Systems Manager para las conexiones sin entrada solo está disponible
actualmente cuando se crean nuevos entornos de EC2.
Con el inicio de una sesión del Administrador de sesiones, se realiza una conexión con la instancia de
destino. Con la conexión establecida, el entorno ahora puede interactuar con la instancia a través del
69
AWS Cloud9 Guía del usuario
Beneficios de utilizar Systems
Manager para entornos de EC2
servicio de Systems Manager. El servicio de Systems Manager se comunica con la instancia a través
de Systems Manager Agent (SSM Agent).
SSM Agent se instala, de forma predeterminada, en todas las instancias utilizadas por los entornos de
EC2.
Private/public subnets
Al seleccionar una subred para su instancia en la sección Network settings (advanced) Configuración
de red (avanzada), puede seleccionar una subred privada o pública si se accede a la instancia de su
entorno a través de Systems Manager.
Subredes privadas
Para una subred privada, debe asegurarse de que la instancia todavía puede conectarse al servicio
SSM. Para hacerlo, puede configurar una gateway NAT en una subred pública o configurar un punto
de enlace de la VPC para Systems Manager.
La ventaja de utilizar la gateway NAT es que impide que internet inicie una conexión a la instancia en
la subred privada. Dado que a la instancia de su entorno se le asigna una dirección IP privada en lugar
de una pública, la gateway NAT reenvía el tráfico de la instancia a internet u otros servicios de AWS y,
a continuación, devuelve la respuesta a la instancia.
Para la opción de la VPC, debe crear al menos tres puntos de enlace de interfaz necesarios
para Systems Manager: com.amazonaws.region.ssm, com.amazonaws.region.ec2messages y
com.amazonaws.region.ssmmessages. Para obtener más información, consulte Creación de puntos
de enlace de la VPC para Systems Manager en la Guía del usuario de AWS Systems Manager.
Important
Actualmente, si la instancia EC2 de su entorno se lanza en una subred privada, no puede
usar credenciales temporales administradas de AWS (p. 569) para permitir que el entorno
de EC2 acceda a un servicio de AWS en nombre de una entidad de AWS (un usuario de IAM,
por ejemplo).
Subredes públicas
Si el entorno de desarrollo usa SSM para acceder a una instancia EC2, asegúrese de que la subred
pública en la que se lanza la instancia asigna una dirección IP pública a la instancia. Para ello, puede
70
AWS Cloud9 Guía del usuario
Administración de permisos de Systems Manager
especificar su propia dirección IP o habilitar la asignación automática de una dirección IP pública. Para
ver los pasos necesarios para modificar la configuración de asignación automática de IP, consulte
Direcciones IP en su VPC en la Guía del usuario de Amazon VPC.
Para obtener más información sobre la configuración de subredes privadas y públicas para las
instancias de su entorno, consulte Crear una subred para AWS Cloud9 (p. 513).
Al crear la instancia EC2 sin entrada con la consola de AWS Cloud9, tanto la función de servicio
(AWSCloud9SSMAccessRole) como el perfil de instancias de IAM (AWSCloud9SSMInstanceProfile)
se crean automáticamente. (Puede ver AWSCloud9SSMAccessRole en la consola de administración de
IAM. Los perfiles de instancias no se muestran en la consola de IAM).
Important
Si crea un entorno de EC2 sin entrada por primera vez con AWS CLI, debe definir explícitamente
la función servicio y el perfil de instancias necesarios. Para obtener más información, consulte
Administrar perfiles de instancias para Systems Manager con AWS CLI (p. 71).
Para una protección de seguridad adicional, el rol vinculado al servicio de AWS Cloud9,
AWSServiceRoleforAWSCloud9, presenta una restricción PassRole en su política
AWSCloud9ServiceRolePolicy. Cuando pasa un rol de IAM a un servicio, permite a ese servicio
asumir el rol y ejecutar acciones en su nombre. En este caso, el permiso PassRole garantiza que AWS
Cloud9 pueda pasar solo el rol AWSCloud9SSMAccessRole (y su permiso) a una instancia EC2. Esto
restringe las acciones que se pueden realizar en la instancia EC2 solo a las requeridas por AWS Cloud9.
Note
Si ya no necesita utilizar Systems Manager para acceder a una instancia, puede eliminar la
función de servicio AWSCloud9SSMAccessRole. Para obtener información, consulte Eliminación
de roles o perfiles de instancia en la Guía del usuario de IAM.
• Cree un entorno de EC2 usando la consola una vez que la función de servicio
AWSCloud9SSMAccessRole y AWSCloud9SSMInstanceProfile se hayan creado automáticamente.
Una vez creados, la función de servicio y el perfil de instancias están disponibles para cualquier entorno
de EC2 adicional creado mediante AWS CLI.
• Ejecute los siguientes comandos de AWS CLI para crear la función de servicio y el perfil de instancias.
71
AWS Cloud9 Guía del usuario
Proporcionar a los usuarios acceso a las instancias
administradas por el Administrador de sesiones
Usar una política administrada específica de AWS Se recomienda utilizar políticas administradas
Cloud9 de AWS para permitir a los usuarios acceder
a instancias EC2 administradas por Systems
Manager. Las directivas administradas
proporcionan un conjunto de permisos para casos
de uso de AWS Cloud9 estándar y se pueden
adjuntar fácilmente a una entidad de IAM.
• AWSCloud9Administrator
(arn:aws:iam::aws:policy/
AWSCloud9Administrator)
• AWSCloud9User
(arn:aws:iam::aws:policy/
AWSCloud9User)
• AWSCloud9EnvironmentMember
(arn:aws:iam::aws:policy/
AWSCloud9EnvironmentMember)
Editar una política de IAM y agregar instrucciones Para editar una política existente, puede agregar
de política obligatorias permisos para la API de StartSession. Para
editar una política mediante la AWS Management
Console o AWS CLI, siga las instrucciones que se
proporcionan en Edición de políticas de IAM en la
Guía del usuario de IAM.
72
AWS Cloud9 Guía del usuario
Uso de AWS CloudFormation para
crear entornos de EC2 sin entrada
Los siguientes permisos le permiten ejecutar la operación de API StartSession. La clave de condición
ssm:resourceTag especifica que se puede iniciar una sesión del Administrador de sesiones para
cualquier instancia (Resource: arn:aws:ec2:*:*:instance/*) con la condición de que la instancia
sea un entorno de desarrollo de EC2 de AWS Cloud9 (aws:cloud9:environment).
Note
{
"Effect": "Allow",
"Action": "ssm:StartSession",
"Resource": "arn:aws:ec2:*:*:instance/*",
"Condition": {
"StringLike": {
"ssm:resourceTag/aws:cloud9:environment": "*"
},
"StringEquals": {
"aws:CalledViaFirst": "cloud9.amazonaws.com"
}
}
},
{
"Effect": "Allow",
"Action": [
"ssm:StartSession"
],
"Resource": [
"arn:aws:ssm:*:*:document/*"
]
}
73
AWS Cloud9 Guía del usuario
Uso de AWS CloudFormation para
crear entornos de EC2 sin entrada
Si intenta crear una pila de AWS CloudFormation para un entorno de EC2 sin entrada sin crear
primero la función de servicio y el perfil de instancias necesarios, la pila no se crea y se muestra el
siguiente mensaje de error:
El perfil de instancias AWSCloud9SSmInstanceProfile no existe en la cuenta.
Al crear un entorno de EC2 sin entrada por primera vez mediante AWS CloudFormation, puede definir
AWSCloud9SSMAccessRole y AWSCloud9SSMInstanceProfile como recursos de IAM en la plantilla.
Este extracto de una plantilla de ejemplo muestra cómo puede definir estos recursos. (La acción
AssumeRole devuelve credenciales de seguridad que proporcionan acceso tanto al entorno de AWS
Cloud9 como a su instancia EC2).
AWSTemplateFormatVersion: 2010-09-09
Resources:
AWSCloud9SSMAccessRole:
Type: AWS::IAM::Role
Properties:
AssumeRolePolicyDocument:
Version: 2012-10-17
Statement:
- Effect: Allow
Principal:
Service:
- cloud9.amazonaws.com
- ec2.amazonaws.com
Action:
- 'sts:AssumeRole'
Description: 'Service linked role for AWS Cloud9'
Path: '/service-role/'
ManagedPolicyArns:
- arn:aws:iam::aws:policy/AWSCloud9SSMInstanceProfile
RoleName: 'AWSCloud9SSMAccessRole'
AWSCloud9SSMInstanceProfile:
Type: "AWS::IAM::InstanceProfile"
Properties:
InstanceProfileName: AWSCloud9SSMInstanceProfile
Path: "/cloud9/"
Roles:
-
Ref: AWSCloud9SSMAccessRole
74
AWS Cloud9 Guía del usuario
Configuración de puntos de enlace de la VPC
para Amazon S3 para descargar dependencias
una sesión del Administrador de sesiones. (Una sesión es una conexión realizada a la instancia EC2
mediante el Administrador de sesiones).
Note
Si no agrega permisos para iniciar una sesión del Administrador de sesiones antes de crear una
pila para un entorno de EC2 sin entrada, se devuelve un error AccessDeniedException.
Agregue los siguientes permisos de la política a la entidad de IAM mediante una llamada a AWS
CloudFormation:
{
"Effect": "Allow",
"Action": "ssm:StartSession",
"Resource": "arn:aws:ec2:*:*:instance/*",
"Condition": {
"StringLike": {
"ssm:resourceTag/aws:cloud9:environment": "*"
},
"StringEquals": {
"aws:CalledViaFirst": "cloudformation.amazonaws.com"
}
}
},
{
"Effect": "Allow",
"Action": [
"ssm:StartSession"
],
"Resource": [
"arn:aws:ssm:*:*:document/*"
]
}
La configuración de un punto de enlace de la VPC para Amazon S3 también implica personalizar la política
de acceso para permitir el acceso solo al bucket de confianza que contiene las dependencias que se van a
descargar.
Note
Puede crear y configurar puntos de enlace de la VPC mediante la AWS Management Console,
AWS CLI o la API de Amazon VPC. En el siguiente procedimiento se explica cómo crear un punto
de enlace de la VPC con la interfaz de la consola.
75
AWS Cloud9 Guía del usuario
Configuración de puntos de enlace de la VPC
para Amazon S3 para descargar dependencias
{
"Version": "2008-10-17",
"Statement": [
{
"Sid": "Access-to-C9-bucket-only",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::{bucket_name}/content/dependencies/*"
}
]
}
Para el elemento Resource, reemplace {bucket_name} por el nombre real del bucket que está
disponible en su región de AWS. Por ejemplo, si utiliza AWS Cloud9 en la región Europa (Irlanda),
especifique lo siguiente: "Resource": "arn:aws:s3:::static-eu-west-1-prod-static-
hld3vzaf7c4h/content/dependencies/.
En la siguiente tabla se incluyen los nombres de bucket de las regiones de AWS donde AWS Cloud9
está disponible:
76
AWS Cloud9 Guía del usuario
Configuración de puntos de enlace
de la VPC para conectividad privada
ping {bucket_name}.s3.{region}.amazonaws.com.
Por ejemplo, si creó un punto de enlace para un bucket de Amazon S3 en la región EE. UU. Este
(Norte de Virginia), ejecute el siguiente comando:
ping static-us-east-1-prod-static-mft1klnkc4hl.s3.us-east-1.amazonaws.com
Si el ping obtiene una respuesta, esto confirma que su IDE puede acceder al bucket y a sus
dependencias.
Para obtener más información sobre esta característica, consulte Puntos de enlace para Amazon S3en la
Guía de AWS PrivateLink.
77
AWS Cloud9 Guía del usuario
Apertura de un entorno
Para evitar el tráfico saliente y entrante de la instancia, debe crear y configurar los puntos de enlace de
Amazon VPC para Systems Manager. Un punto de enlace de la VPC de la interfaz (punto de enlace de la
interfaz) le permite conectarse a servicios con tecnología de AWS PrivateLink, una tecnología que permite
obtener acceso de forma privada a las API de Amazon EC2 y Systems Manager mediante direcciones
IP privadas. Para configurar los puntos de enlace de la VPC para que utilicen Systems Manager, siga las
instrucciones proporcionadas en este Recursos del Centro de Conocimientos.
Warning
Si cierra sesión en su cuenta de AWS, aún se podrá acceder al IDE de AWS Cloud9 hasta
cinco minutos después. Luego se denegará el acceso cuando los permisos necesarios
caduquen.
2. En la barra de navegación superior, elija la región de AWS en la que se encuentra el entorno.
78
AWS Cloud9 Guía del usuario
Apertura de un entorno
3. En la lista de entornos, para el entorno que desea abrir, realice una de las siguientes acciones.
• Dentro de la tarjeta, elija el enlace Open IDE (Abrir IDE).
79
AWS Cloud9 Guía del usuario
Apertura de un entorno
Si su entorno no aparece en la consola, intente realizar una o varias de las siguientes acciones para que
se muestre.
• Elija la flecha anterior, la flecha siguiente o el botón de número de página para mostrar más entornos en
el ámbito actual.
• Si cree que debería ser miembro de un entorno, pero este no se muestra en la lista Shared with you
(Compartido con usted), consulte al propietario del entorno.
• En la barra de navegación superior, elija una región de AWS diferente.
80
AWS Cloud9 Guía del usuario
Llamar a los servicios de AWS desde un entorno
• Cargue y descargue datos en buckets de Amazon Simple Storage Service (Amazon S3).
• Envíe notificaciones a través de temas de Amazon Simple Notification Service (Amazon SNS).
• Lea y escriba datos en bases de datos de Amazon DynamoDB (DynamoDB).
Puede llamar a los servicios de AWS desde su entorno de varias maneras. Por ejemplo, puede utilizar la
AWS Command Line Interface (AWS CLI) o el shell de AWS para ejecutar comandos desde una sesión de
terminal. También puede llamar a los servicios de AWS desde código que ejecute en el entorno, mediante
instancias de AWS SDK para lenguajes de programación como JavaScript, Python, Ruby, PHP, Go y C++.
Para obtener más información, consulte la Muestra de AWS CLI y aws-shell (p. 390), la Guía del usuario
de AWS Command Line Interface y las instancias de AWS SDK.
Cada vez que AWS CLI, aws-shell o su código llaman a un servicio de AWS, AWS CLI, aws-shell o el
código deben proporcionar un conjunto de credenciales de acceso a AWS junto con la llamada. Estas
credenciales determinan si la persona que llama tiene los permisos adecuados para realizar la llamada. Si
las credenciales no cubren los permisos adecuados, la llamada no se realiza correctamente.
81
AWS Cloud9 Guía del usuario
Llamar a los servicios de AWS desde un entorno
82
AWS Cloud9 Guía del usuario
Creación y uso de un perfil de instancias
para administrar credenciales temporales
No puede utilizar este procedimiento para un entorno de desarrollo de SSH de AWS Cloud9. En
su lugar, pase a la sección Crear y almacenar las credenciales de acceso permanentes en un
entorno (p. 86).
Le recomendamos que utilice credenciales temporales administradas de AWS en lugar de
un perfil de instancias. Siga estas instrucciones solo si por alguna razón no puede utilizar
las credenciales temporales administradas de AWS. Para obtener más información, consulte
Credenciales temporales administradas de AWS (p. 569).
En este procedimiento se utilizan IAM y Amazon EC2 para crear y adjuntar un perfil de instancias de
IAM a la instancia de Amazon EC2 que se conecta a su entorno. Este perfil de instancias administra las
credenciales temporales en su nombre. En este procedimiento, se supone que ya ha creado un entorno en
AWS Cloud9. Para crear un entorno, consulte Creación de un entorno (p. 53).
Puede completar estas tareas con las consolas de IAM y de Amazon EC2 (p. 83) o la interfaz de línea
de comandos de AWS (AWS CLI) (p. 84).
Si ya tiene un rol de IAM que contiene un perfil de instancias, vaya a Adjuntar un perfil de
instancias a una instancia con la consola de Amazon EC2 (p. 85).
Para este paso, se recomienda iniciar sesión con credenciales de nivel de administrador de IAM en su
cuenta de AWS. Si no puede hacerlo, consulte con el administrador de su cuenta de AWS.
2. En la barra de navegación, seleccione Roles.
Note
No puede utilizar la consola de IAM para crear un perfil de instancias por sí sola. Debe crear un
rol de IAM que tenga un perfil de instancias.
3. Elija Create role (Crear rol).
4. En la página Select type of trusted entity (Seleccionar tipo de entidad de confianza), con AWS service
(Servicio de AWS) ya elegido, en Choose the service that will use this role (Elegir el servicio que utilizará
este rol), elija EC2.
5. En Select your use case (Seleccionar su caso de uso), elija EC2.
6. Elija Next: Permissions (Siguiente: permisos).
7. En la página Attach permissions policies (Adjuntar políticas de permisos), en la lista de políticas,
seleccione la casilla junto a AdministratorAccess y, a continuación, elija Next: Review (Siguiente:
Revisión).
Note
83
AWS Cloud9 Guía del usuario
Creación y uso de un perfil de instancias
para administrar credenciales temporales
Avance hasta llegar a Asociar un perfil de instancia a una instancia con la consola de Amazon
EC2 (p. 85).
Si ya tiene un rol de IAM que contiene un perfil de instancias, vaya a Adjuntar un perfil de
instancias a una instancia con AWS CLI (p. 86).
Para este tema le recomendamos que configure AWS CLI con las credenciales de nivel de
administrador de IAM de su cuenta de AWS. Si no puede hacerlo, consulte con el administrador
de su cuenta de AWS.
Note
Si usa credenciales temporales administradas de AWS (p. 569), no puede usar una sesión
del terminal en el IDE de AWS Cloud9 para ejecutar algunos o la totalidad de los comandos de
esta sección. Para abordar las prácticas recomendadas de seguridad de AWS, las credenciales
temporales administradas de AWS no permiten que se ejecuten algunos comandos. En su lugar,
puede ejecutar esos comandos desde una instalación independiente de la AWS Command Line
Interface (AWS CLI).
1. Defina una relación de confianza en AWS para el rol de IAM que requiere el perfil de instancias.
Para hacerlo, cree y guarde un archivo con el contenido siguiente (por ejemplo, my-demo-cloud9-
instance-profile-role-trust.json).
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"Service": "ec2.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
2. Usando la línea de comandos o terminal, cambie al directorio en el que acaba de guardar este archivo.
3. Cree un rol de IAM para el perfil de instancias. Para ello, ejecute el comando create-role de IAM,
y especifique un nombre para el nuevo rol de IAM (por ejemplo, my-demo-cloud9-instance-
profile-role) y el nombre del archivo que acaba de guardar.
4. Adjunte los permisos de acceso de AWS al rol de IAM del perfil de instancias. Para ello, ejecute
el comando attach-role-policy de IAM, y especifique el nombre del rol de IAM existente
y el nombre de recurso de Amazon (ARN) de la política administrada de AWS denominada
AdministratorAccess.
84
AWS Cloud9 Guía del usuario
Creación y uso de un perfil de instancias
para administrar credenciales temporales
Note
6. Adjunte el rol de IAM al perfil de instancias. Para ello, ejecute el perfil add-role-to-instance-
profile de IAM, y especifique los nombres del rol de IAM y el perfil de instancias existentes.
En este paso, le recomendamos que inicie sesión con las credenciales de nivel de administrador de IAM
en su cuenta de AWS. Si no puede hacerlo, consulte con el administrador de su cuenta de AWS.
2. En la barra de navegación, asegúrese de que el selector de regiones muestra la región de AWS que
coincide con la de su entorno. Por ejemplo, si creó el entorno en la región EE. UU. Este (Ohio), elija EE.
UU. Este (Ohio) en el selector de regiones también.
3. Elija el enlace Running Instances (Ejecutar instancias) o, en el panel de navegación, expanda Instances
(Instancias) y, a continuación, elija Instances (Instancias).
4. En la lista de instancias, elija la instancia con el nombre que incluya el nombre de su entorno. Por
ejemplo, si el nombre del entorno es my-demo-environment, elija la instancia con el nombre que
incluya my-demo-environment.
5. Seleccione Actions (Acciones), Instance Settings (Configuración de instancia), Attach/Replace IAM Role
(Asociar o reemplazar rol de IAM).
Note
85
AWS Cloud9 Guía del usuario
Crear y almacenar las credenciales
de acceso permanente en un entorno
Ya puede comenzar a llamar a los servicios de AWS desde su entorno. Para usar AWS CLI, aws-shell o
ambos para llamar a los servicios de AWS, consulte la muestra de AWS CLI y aws-shell (p. 390). Para
llamar a los servicios de AWS desde su código, consulte los demás tutoriales y muestras (p. 390).
Si usa credenciales temporales administradas de AWS (p. 569), no puede usar una sesión
del terminal en el IDE de AWS Cloud9 para ejecutar algunos o la totalidad de los comandos de
esta sección. Para abordar las prácticas recomendadas de seguridad de AWS, las credenciales
temporales administradas de AWS no permiten que se ejecuten algunos comandos. En su lugar,
puede ejecutar esos comandos desde una instalación independiente de la AWS Command Line
Interface (AWS CLI).
Ya puede comenzar a llamar a los servicios de AWS desde su entorno. Para usar AWS CLI, aws-shell o
ambos para llamar a los servicios de AWS, consulte la muestra de AWS CLI y aws-shell (p. 390). Para
llamar a los servicios de AWS desde su código, consulte los demás tutoriales y muestras (p. 390).
86
AWS Cloud9 Guía del usuario
Crear y almacenar las credenciales
de acceso permanente en un entorno
En esta sección, se utiliza AWS Identity and Access Management (IAM) para generar un conjunto de
credenciales permanentes que AWS CLI, aws-shell o el código pueden utilizar para llamar a servicios de
AWS. Este conjunto incluye un ID de clave de acceso de AWS y una clave de acceso secreta de AWS, que
son únicos de su usuario en su cuenta de AWS. Si ya tiene un ID de clave de acceso de AWS y una clave
de acceso secreta de AWS, anote esas credenciales y pase directamente a Almacenar las credenciales de
acceso permanentes en un entorno (p. 88).
Puede crear un conjunto de credenciales permanentes con la consola de IAM (p. 87) o AWS
CLI (p. 87).
En este paso, le recomendamos que inicie sesión con las credenciales de nivel de administrador de IAM
en su cuenta de AWS. Si no puede hacerlo, consulte con el administrador de su cuenta de AWS.
2. En la barra de navegación, seleccione Users (Usuarios).
3. En la lista de usuarios, elija el nombre del usuario que ha creado o identificado en Team Setup
(Configuración de equipo) (p. 9).
4. Seleccione la pestaña de credenciales de seguridad.
5. En Access keys (Clave de acceso), elija Create access key (Crear clave de acceso).
6. En la página Create access key (Crear clave de acceso), elija Show (Mostrar) y tome nota de los
valores de Access key ID (ID de clave de acceso) y Secret access key (Clave de acceso secreta).
Le recomendamos también que elija Download.csv file (Descargar archivo .csv) y que guarde estas
credenciales en un lugar seguro.
Pase a la sección Almacenar las credenciales de acceso permanentes en un entorno (p. 88).
Ejecute el comando create-access-key de IAM para crear una clave de acceso de AWS nueva y la
correspondiente clave de acceso secreta de AWS para el usuario.
Guarde los valores AccessKeyId y SecretAccessKey que se muestran en un lugar seguro. Después
de ejecutar el comando create-access-key de IAM, esta es la única vez que puede usar AWS CLI para
ver la clave de acceso secreta de AWS del usuario. Para generar una nueva clave de acceso secreta de
AWS para que el usuario la use más adelante si es necesario, consulte Creación, modificación o consulta
de las claves de acceso (API, CLI, PowerShell) en la Guía del usuario de IAM.
87
AWS Cloud9 Guía del usuario
Crear y almacenar las credenciales
de acceso permanente en un entorno
1. Con el entorno abierto, en el IDE de AWS Cloud9, comience una nueva sesión del terminal si no hay
ninguna iniciada. Para iniciar una nueva sesión del terminal, en la barra de menús, seleccione Window
(Ventana), New Terminal (Nuevo terminal).
2. Ejecute cada uno de los siguientes comandos, uno por uno, para definir las variables de
entorno locales que representan las credenciales de acceso permanentes. En estos comandos,
después de AWS_ACCESS_KEY_ID:, escriba el ID de clave de acceso de AWS. Después
de AWS_SECRET_ACCESS_KEY, escriba la clave de acceso secreta de AWS. Después de
AWS_DEFAULT_REGION_ID, escriba el identificador de la región de AWS asociada a la región de AWS
más cercana (o su región de AWS preferida). Para obtener una lista de los identificadores disponibles,
consulte la sección Regiones y puntos de enlace de AWS en la Referencia general de Amazon Web
Services. Por ejemplo, para la región EE. UU. Este (Ohio), usaría us-east-2.
export AWS_ACCESS_KEY_ID=
export AWS_SECRET_ACCESS_KEY=
export AWS_DEFAULT_REGION=
3. Tenga en cuenta que las variables de entorno anteriores solo son válidas para la sesión de terminal
actual. Para que estas variables de entorno estén disponibles en todas las sesiones de terminal, debe
añadirlas al archivo de perfil de usuario de shell como variables de entorno de usuario, tal y como se
indica a continuación.
a. En la ventana Environment (Entorno) del IDE, elija el icono del engranaje y, a continuación, elija
Show Home in Favorites (Mostrar inicio en favoritos). Repita este paso y elija también Show Hidden
Files (Mostrar archivos ocultos).
b. Abra el archivo ~/.bashrc.
c. Escriba o pegue el siguiente código al final del archivo. En estos comandos, después
de AWS_ACCESS_KEY_ID:, escriba el ID de clave de acceso de AWS. Después de
AWS_SECRET_ACCESS_KEY, escriba la clave de acceso secreta de AWS. Después de
AWS_DEFAULT_REGION_ID, escriba el identificador de la región de AWS asociada a la región de
AWS más cercana (o su región de AWS preferida). Para obtener una lista de los identificadores
disponibles, consulte la sección Regiones y puntos de enlace de AWS en la Referencia general de
Amazon Web Services. Por ejemplo, para la región EE. UU. Este (Ohio), usaría us-east-2.
export AWS_ACCESS_KEY_ID=
export AWS_SECRET_ACCESS_KEY=
export AWS_DEFAULT_REGION=
d. Guarde el archivo.
e. Dé el origen del ~/.bashrc archivo para cargar estas nuevas variables de entorno.
88
AWS Cloud9 Guía del usuario
Modificación de la configuración del entorno
. ~/.bashrc
Ya puede comenzar a llamar a los servicios de AWS desde su entorno. Para usar AWS CLI o aws-shell
para llamar a los servicios de AWS, consulte Muestra de AWS CLI y aws-shell (p. 390). Para llamar a los
servicios de AWS desde su código, consulte los demás tutoriales y muestras (p. 390).
Note
Para obtener más información, consulte Project Setting Changes You Can Make (p. 189).
89
AWS Cloud9 Guía del usuario
Cambiar la configuración del entorno con la consola
3. En la lista de entornos, en el entorno cuya configuración desea cambiar, realice una de las siguientes
operaciones.
• Elija el título de la tarjeta del entorno. Después, en la página siguiente, elija Edit (Editar).
90
AWS Cloud9 Guía del usuario
Cambiar la configuración del entorno con la consola
Puede usar la consola de AWS Cloud9 para cambiar los valores de configuración siguientes.
• Para entornos de EC2, Name (Nombre) y Description (Descripción).
• Para entornos de SSH: Name (Nombre), Description (Descripción), User (Usuario), Host (Anfitrión),
Port (Puerto), Environment path (Ruta del entorno) Node.js binary path (Ruta binaria de Node.js) SSH
jump host (Host de salto de SSH).
Si su entorno no aparece en la consola, intente realizar una o varias de las siguientes acciones para que
se muestre.
• Elija la flecha anterior, la flecha siguiente o el botón de número de página para mostrar más entornos en
el ámbito actual.
• Si cree que debería ser miembro de un entorno, pero este no se muestra en la lista Shared with you
(Compartido con usted), consulte al propietario del entorno.
91
AWS Cloud9 Guía del usuario
Cambiar la configuración del entorno mediante código
92
AWS Cloud9 Guía del usuario
Contenido
Para invitar a un usuario a que participe en un entorno de su propiedad, siga uno de estos procedimientos,
dependiendo del tipo de usuario al que desee invitar.
Un usuario en la misma cuenta de AWS que el Invitar a un usuario en la misma cuenta que el
entorno entorno (p. 96)
Contenido
• Escenarios de uso de entornos compartidos (p. 93)
• Acerca de los roles de acceso de los miembros del entorno (p. 94)
• Invitar a un usuario en la misma cuenta que el entorno (p. 96)
• Hacer que un administrador de AWS Cloud9 en la misma cuenta que la del entorno se invite a sí mismo
o a otros usuarios (p. 97)
• Abrir un entorno compartido (p. 98)
• Ver una lista de miembros del entorno (p. 99)
• Abrir el archivo activo de un miembro del entorno (p. 100)
• Abrir el menú Abrir archivo de un miembro del entorno (p. 100)
• Ir al cursor activo de un miembro del entorno (p. 100)
• Conversar con otros miembros del entorno (p. 100)
• Ver mensajes de chat en un entorno compartido (p. 101)
• Eliminar un mensaje de chat de un entorno compartido (p. 101)
• Eliminar todos los mensaje de chat de un entorno compartido (p. 101)
• Cambiar el rol de acceso de un miembro del entorno (p. 101)
• Quitar un usuario de un entorno compartido (p. 102)
• Quitar otro miembro del entorno (p. 103)
• Prácticas recomendadas para compartir entornos (p. 104)
• Programación por parejas (también conocida como programación por pares). Es aquella en que dos
usuarios trabajan juntos en el mismo código en un único entorno. En la programación en parejas,
normalmente un usuario escribe código de programación mientras que el otro observa el código que
se escribe. El observador ofrece información y comentarios inmediatos al escritor del código. Estas
posiciones cambian frecuentemente durante un proyecto. Sin un entorno compartido, los equipos de
programación en parejas se sientan frente a una sola máquina y únicamente uno de ellos puede escribir
93
AWS Cloud9 Guía del usuario
Acerca de los roles de acceso de los miembros del entorno
código a la vez. Con un entorno compartido, ambos usuarios se sientan frente a su máquina y escribir
código al mismo tiempo, incluso si se encuentran en oficinas físicas diferentes.
• Clases de informática. Resulta útil cuando los profesores o los ayudantes de enseñanza quieren obtener
acceso al entorno de un alumno para corregir deberes o resolver problemas con sus entornos en
tiempo real. Los alumnos pueden trabajar con sus compañeros en proyectos de deberes compartidos y
escribir código juntos en un único entorno en tiempo real. Pueden hacerlo a pesar de estar en diferentes
ubicaciones con sistemas operativos y tipos de navegador web diferentes.
• Cualquier otra situación en la que varios usuarios necesiten colaborar en el mismo código en tiempo
real.
Un entorno compartido en AWS Cloud9 ofrece tres roles de acceso de miembro del entorno: propietario,
lectura/escritura y solo lectura.
• Un propietario tiene control total sobre un entorno. Cada entorno tiene un único propietario que es el
creador del entorno. Un propietario puede realizar las siguientes acciones.
• Agregar, modificar y eliminar miembros del entorno
• Abrir, ver y modificar archivos
• Ejecutar código
• Cambiar la configuración del entorno de
• Conversar con otros miembros
• Eliminar mensajes de chat
En el IDE de AWS Cloud9, un propietario del entorno se muestra con acceso de lectura y escritura.
• Un miembro con acceso de lectura/escritura puede llevar a cabo las siguientes acciones.
• Abrir, ver y modificar archivos
• Ejecutar código
• Cambiar varios valores de configuración del entorno desde el IDE de AWS Cloud9
• Conversar con otros miembros
• Eliminar mensajes de chat
En el IDE de AWS Cloud9, los miembros con acceso de lectura/escritura se muestran con acceso de
lectura y escritura.
• Un miembro con acceso de solo lectura puede llevar a cabo las siguientes acciones.
• Abrir y ver archivos
• Conversar con otros miembros
• Eliminar mensajes de chat
En el IDE de AWS Cloud9, los miembros con acceso de solo lectura se muestran con acceso de Solo
lectura.
Para que un usuario pueda convertirse en propietario o miembro de un entorno, debe cumplir alguno de los
siguientes criterios.
94
AWS Cloud9 Guía del usuario
Acerca de los roles de acceso de los miembros del entorno
• Es un usuario administrador de IAM. Para obtener más información, consulte Creación del primer grupo
y usuario administrador de IAM en la Guía del usuario de IAM.
• Es un usuario que pertenece a un grupo de IAM, un usuario que asume un rol o un usuario federado que
asume un rol, y ese grupo o rol tiene la política administrada por AWS de AWSCloud9Administrator
o AWSCloud9User (o AWSCloud9EnvironmentMember, para ser un miembro solamente) adjunta.
Para obtener más información, consulte Políticas administradas (predefinidas) de AWS (p. 550).
• Para adjuntar una de las políticas administradas anteriores a un grupo de IAM, puede utilizar la AWS
Management Console (p. 95) o AWS Command Line Interface (AWS CLI) (p. 95) como se
describe en los siguientes procedimientos.
• Para crear un rol en IAM con una de las políticas administradas anteriores para que la asuma un
usuario o un usuario federado, consulte Creación de roles en la Guía del usuario de IAM. Para hacer
que un usuario o un usuario federado asuma el rol, consulte la cobertura de la asunción de roles en
Uso de las funciones de IAM en la Guía del usuario de IAM.
Para este paso, se recomienda iniciar sesión con credenciales de nivel de administrador de IAM en su
cuenta de AWS. Si no puede hacerlo, consulte con el administrador de su cuenta de AWS.
2. Abra la consola de IAM. Para ello, en la barra de navegación de la consola, elija Services (Servicios). A
continuación, elija IAM.
3. Elija Groups (Grupos).
4. Elija el nombre del grupo.
5. En la pestaña Permissions (Permisos), en Managed Policies (Políticas administradas), elija Attach Policy
(Adjuntar política).
6. En la lista con los nombres de las políticas, seleccione una de las siguientes casillas.
• AWSCloud9User (preferida) o AWSCloud9Administrator para habilitar a cada usuario del grupo como
un propietario del entorno
• AWSCloud9EnvironmentMember para habilitar a cada usuario del grupo como miembro únicamente
(Si no ve uno de estos nombres de política en la lista, escríbalo en el cuadro Search (Búsqueda) para
mostrarlo).
7. Elija Asociar política.
Si usa credenciales temporales administradas de AWS (p. 569), no puede usar una sesión
del terminal en el IDE de AWS Cloud9 para ejecutar algunos o la totalidad de los comandos de
esta sección. Para abordar las prácticas recomendadas de seguridad de AWS, las credenciales
temporales administradas de AWS no permiten que se ejecuten algunos comandos. En su lugar,
puede ejecutar esos comandos desde una instalación independiente de la AWS Command Line
Interface (AWS CLI).
Ejecute el comando attach-group-policy de IAM para adjuntar la política administrada de AWS para
AWS Cloud9 al grupo, y especifique el nombre del grupo y el nombre de recurso de Amazon (ARN) de la
política:
95
AWS Cloud9 Guía del usuario
Invitar a un usuario en la misma cuenta que el entorno
En el comando anterior, reemplace MyGroup por el nombre del grupo. Reemplace POLICY_NAME por el
nombre de una de las siguientes políticas administradas de AWS.
1. Si el usuario al que desea invitar no es uno de los siguientes tipos de usuarios, asegúrese de que ya
tenga el rol de acceso de miembro de entorno correspondiente. Para obtener instrucciones, consulte
Acerca de los roles de acceso de los miembros del entorno (p. 94).
• El usuario raíz de la cuenta de AWS.
• Un usuario administrador de IAM.
• Un usuario que pertenece a un grupo de IAM, un usuario que asume un rol o un usuario
federado que asume un rol, y ese grupo o rol tiene la política administrada por AWS de
AWSCloud9Administrator adjunta.
2. Abra el entorno de su propiedad al que desea invitar al usuario, si este aún no está abierto.
3. En la barra de menús del IDE de AWS Cloud9, realice una de las siguientes operaciones.
• Elija Window, Share (Ventana, Compartir).
• Elija Share (Compartir), situado junto al icono de engranaje Preferences (Preferencias).
4. En el cuadro de diálogo Share this environment (Compartir este entorno), en Invite Members (Invitar a
miembros), escriba uno de los siguientes datos
• Para invitar a un Usuario de IAM, ingrese el nombre del usuario.
• Para invitar al usuario raíz de la cuenta de AWS, escriba arn:aws:iam::123456789012:root y
reemplace 123456789012 por el ID de su cuenta de AWS.
• Para invitar a un usuario con un rol asumido o a un usuario federado con un rol asumido, escriba
arn:aws:sts::123456789012:assumed-role/MyAssumedRole/MyAssumedRoleSession y
reemplace 123456789012 por el ID de su cuenta de AWS, MyAssumedRole por el nombre del rol
asumido y MyAssumedRoleSession por el nombre de la sesión del rol asumido.
5. Para que este usuario sea un miembro de solo lectura, elija R. Para que sea de lectura/escritura, elija
RW.
96
AWS Cloud9 Guía del usuario
Hacer que un administrador de AWS Cloud9
en la misma cuenta que la del entorno
se invite a sí mismo o a otros usuarios
6. Elija Invite.
Note
Si hace que este usuario sea miembro de lectura/escritura, se muestra un cuadro de diálogo
con información sobre la posibilidad de que se pongan en peligro las credenciales de seguridad
de AWS. La información siguiente proporciona más datos sobre este problema.
Comparta un entorno solo con personas de confianza.
Un miembro de lectura/escritura podría utilizar el código de AWS CLI, aws-shell o el SDK de
AWS en el entorno para emprender acciones en AWS en su nombre. Además, si almacena las
credenciales permanentes de acceso de AWS en el entorno, ese miembro podría copiarlas y
utilizarlas fuera del entorno.
Para solucionar este problema no basta con eliminar las credenciales permanentes de acceso
de AWS del entorno y usar credenciales de acceso temporales de AWS en lugar. Disminuye
la posibilidad de que el miembro copie esas credenciales temporales y las use fuera del
entorno (puesto que esas credenciales temporales funcionarán durante un tiempo limitado).
Sin embargo, las credenciales temporales siguen habilitando a un miembro de lectura/escritura
para emprender acciones en AWS desde el entorno en su nombre.
7. Contacte con el usuario para informarle de que puede abrir este entorno y comenzar a utilizarlo.
Si usa credenciales temporales administradas de AWS (p. 569), no puede usar una sesión
del terminal en el IDE de AWS Cloud9 para ejecutar algunos o la totalidad de los comandos de
esta sección. Para abordar las prácticas recomendadas de seguridad de AWS, las credenciales
temporales administradas de AWS no permiten que se ejecuten algunos comandos. En su lugar,
puede ejecutar esos comandos desde una instalación independiente de la AWS Command Line
Interface (AWS CLI).
Los siguientes tipos de usuarios pueden invitarse a sí mismos (o a otros usuarios de la misma cuenta de
AWS) a cualquier entorno en la misma cuenta.
Si el usuario invitado no es uno de los tipos de usuarios anteriores, asegúrese de que ya tenga el rol de
acceso de miembro de entorno correspondiente. Para obtener instrucciones, consulte Acerca de los roles
de acceso de los miembros del entorno (p. 94).
Para invitar al usuario, use AWS CLI o aws-shell para ejecutar el comando create-environment-
membership de AWS Cloud9.
97
AWS Cloud9 Guía del usuario
Abrir un entorno compartido
Por ejemplo, para invitar al usuario raíz de la cuenta de AWS para el ID de cuenta 123456789012 a un
entorno con el ID 12a34567b8cd9012345ef67abcd890e1 como miembro de lectura/escritura, ejecute el
siguiente comando.
Note
Puede utilizar la ventana Collaborate (Colaborar) para interactuar con otros miembros, tal y como se
describe en el resto de este tema.
Note
98
AWS Cloud9 Guía del usuario
Ver una lista de miembros del entorno
Un círculo junto a cada miembro indica su estado en línea, tal y como se indica a continuación.
Para utilizar código para obtener una lista de miembros del entorno, llame a la operación de AWS Cloud9
para describir suscripciones al entorno, tal y como se indica a continuación.
99
AWS Cloud9 Guía del usuario
Abrir el archivo activo de un miembro del entorno
100
AWS Cloud9 Guía del usuario
Ver mensajes de conversación en un entorno compartido
Cuando elimina un mensaje de conversación, se elimina del entorno para todos los miembros.
Cuando elimina todos los mensajes de conversación, se eliminan del entorno para todos los
miembros.
101
AWS Cloud9 Guía del usuario
Quitar un usuario de un entorno compartido
Si hace que este usuario sea miembro de lectura/escritura, se muestra un cuadro de diálogo
con información sobre la posibilidad de que se pongan en peligro las credenciales de
seguridad de AWS. No convierta un usuario en un miembro de lectura/escritura a menos
que confíe en él para emprender acciones en AWS en su nombre. Para obtener más
información, consulte la nota relacionada en Invitar a un usuario en la misma cuenta que el
entorno (p. 96).
Para utilizar el código para cambiar el rol de acceso de un miembro del entorno, llame a la operación de
AWS Cloud9 para actualizar la pertenencia al entorno, tal y como se indica a continuación.
102
AWS Cloud9 Guía del usuario
Quitar otro miembro del entorno
Para utilizar código para eliminar el usuario de un entorno compartido, llame a la operación de AWS
Cloud9 para eliminar la pertenencia al entorno, tal y como se indica a continuación.
Para eliminar un miembro que no sea su usuario de un entorno, debe haber iniciado sesión en
AWS Cloud9 con las credenciales del propietario del entorno.
La eliminación de un miembro no elimina el usuario de IAM.
1. Si todavía no está abierto, abra el entorno que contiene el miembro que desea eliminar. Para obtener
más información, consulte Apertura de un entorno en AWS Cloud9 (p. 78).
2. En la ventana Collaborate (Colaborar), expanda Environment Members (Miembros del entorno), si la
lista de miembros no está visible.
3. Aplique alguna de las siguientes acciones.
• Junto al nombre del miembro que desea eliminar, elija el icono de la papelera.
• Haga clic con el botón derecho en el nombre del miembro que desea eliminar y, a continuación, elija
Revoke Access (Revocar acceso).
4. Cuando se le solicite, elija Remove Member (Quitar miembro).
103
AWS Cloud9 Guía del usuario
Prácticas recomendadas para compartir entornos
Para utilizar código para eliminar un miembro de un entorno, llame a la operación de AWS Cloud9 para
eliminar la pertenencia al entorno, tal y como se indica a continuación.
• Invite a sus entornos únicamente a los miembros con acceso de lectura/escritura en los que confíe.
• En el caso de los entornos de EC2, los miembros de lectura/escritura pueden utilizar las credenciales de
acceso de AWS del propietario del entorno en lugar de sus propias credenciales, para realizar llamadas
desde el entorno a los servicios de AWS. Para evitarlo, el propietario del entorno puede desactivar las
credenciales temporales administradas de AWS para el entorno. Sin embargo, esto también impide
realizar llamadas al propietario del entorno. Para obtener más información, consulte Credenciales
temporales administradas de AWS (p. 569).
• Active AWS CloudTrail para hacer un seguimiento de la actividad de sus entornos. Para obtener más
información, consulte la Guía del usuario de AWS CloudTrail.
• No utilice el usuario raíz de su cuenta de AWS para crear y compartir entornos. Utilice los usuarios de
IAM de su cuenta en su lugar. Para obtener más información, consulte Solo para el primer acceso: sus
credenciales de usuario raíz y Usuarios de IAM en la Guía del usuario de IAM.
104
AWS Cloud9 Guía del usuario
Movimiento de un entorno
• Transferir un entorno de una instancia de Amazon EC2 con problemas o rendimiento inesperado en
comparación con una instancia en buen estado.
• Transferir un entorno de una instancia existente a una que tenga las últimas actualizaciones del sistema.
• Aumentar o reducir los recursos informáticos de una instancia porque se está llevando a cabo un uso
excesivo o deficiente del entorno en la instancia actual.
También puede cambiar el tamaño del volumen de Amazon Elastic Block Store (Amazon EBS) asociado
con una instancia de Amazon EC2 para un entorno. Por ejemplo, puede realizar una o ambas de las
siguientes acciones:
Antes de mover o cambiar el tamaño de un entorno, puede intentar detener algunos procesos en
ejecución en este o agregarle un archivo de intercambio. Para obtener más información sobre cómo
gestionar la memoria baja o un uso alto de la CPU, consulte el problema relevante en Solución de
problemas (p. 591).
Note
En este tema solo se cubre el desplazamiento de un entorno de una instancia de Amazon EC2
a otra o el cambio de tamaño de un volumen de Amazon EBS. Para cambiar el tamaño de un
entorno de uno de sus servidores a otro o para cambiar el espacio de almacenamiento de uno de
sus servidores, consulte la documentación del servidor.
Por último, puede cifrar los recursos de Amazon EBS para garantizar la seguridad tanto de los datos en
reposo como de los datos en tránsito entre la instancia y el almacenamiento de EBS adjunto.
Temas
• Movimiento de un entorno (p. 105)
• Cambio de tamaño de un volumen de Amazon EBS utilizado en un entorno (p. 107)
• Cifrado de los volúmenes de Amazon EBS que utiliza AWS Cloud9 (p. 108)
Movimiento de un entorno
Antes de comenzar el proceso de desplazamiento, tenga en cuenta las condiciones siguientes:
• No se puede mover un entorno a una instancia de Amazon EC2 del mismo tipo. Al realizar el
movimiento, debe elegir un tipo de instancias de Amazon EC2 diferente para la nueva instancia.
Important
Si mueve su entorno a otro tipo de instancias de Amazon EC2, ese tipo de instancias también
debe ser compatible con AWS Cloud9 en la región de AWS actual. Para verificar los tipos
de instancias que están disponibles en cada región, vaya a la página Configure settings
(Configurar ajustes) que se muestra al crear un entorno de EC2 con la consola (p. 55). Su
elección en la sección Instance type (Tipo de instancias) está determinada por la región de
AWS seleccionada en la parte superior derecha de la consola.
• Debe detener la instancia de Amazon EC2 que está asociada con un entorno para poder cambiar el tipo
de instancias. Mientras la instancia esté detenida, ni usted ni ninguno de los miembros pueden usar el
entorno asociado con la instancia detenida.
• AWS mueve la instancia a un nuevo hardware, pero el ID de la instancia no cambia.
105
AWS Cloud9 Guía del usuario
Movimiento de un entorno
• Si la instancia se está ejecutando en Amazon VPC y tiene una dirección IPv4 pública, AWS libera la
dirección y le asigna una nueva dirección IPv4 pública. La instancia conserva sus direcciones IPv4
privadas, las direcciones IP elásticas y las direcciones IPv6.
• Planifique el tiempo de inactividad mientras la instancia está detenida. El proceso podría tardar varios
minutos.
1. (Opcional) Si el nuevo tipo de instancias requiere controladores que no están instalados en la instancia
existente, debe conectarse a la instancia e instalar primero los controladores. Para obtener más
información, consulte Compatibilidad para cambiar el tamaño de instancias en la Guía del usuario de
Amazon EC2 para instancias de Linux.
2. Cierre todas las pestañas del navegador web que muestren el entorno.
Important
Si no cierra todas las pestañas del navegador web que muestran actualmente el entorno,
AWS Cloud9 podría interferir y permitirle completar el procedimiento. Específicamente, AWS
Cloud9 podría intentar en un momento no adecuado durante este procedimiento reiniciar la
instancia de Amazon EC2 asociada con el entorno. La instancia debe permanecer detenida
hasta el último paso de este procedimiento.
3. Inicie sesión en la AWS Management Console, si todavía no lo ha hecho, en https://
console.aws.amazon.com.
Le recomendamos que inicie sesión con credenciales de nivel de administrador de IAM en su cuenta
de AWS. Si no puede hacerlo, consulte con el administrador de su cuenta de AWS.
4. Abra la consola de Amazon EC2. Para ello, en la lista Services (Servicios), seleccione EC2.
5. En la barra de navegación de AWS, elija la región de AWS que contiene el entorno que desea mover
(por ejemplo, EE. UU. Este [Ohio]).
6. En el panel de navegación del servicio, expanda Instances (Instancias) si aún no está ampliado y elija
Instances (Instancias).
7. En la lista de instancias, elija la que está asociada con el entorno que desea mover. Para un entorno
de EC2, el nombre de la instancia comienza por aws-cloud9- seguido del nombre del entorno. Por
ejemplo, si el entorno se denomina my-demo-environment, el nombre de la instancia comenzará
por aws-cloud9-my-demo-environment.
8. Si el valor de Instance State (Estado de instancia) no es stopped (detenido), elija Actions (Acciones),
Instance State (Estado de instancia), Stop (Detener). Cuando se le pregunte, elija Yes, Stop (Sí,
Detener). Puede que transcurran unos minutos hasta que la instancia se detenga.
9. Cuando el valor de Instance State (Estado de instancia) sea stopped (detenido), con la instancia
aún seleccionada, elija Actions (Acciones), Instance Settings (Configuración de instancia), Change
Instance Type (Cambiar tipo de instancias).
10. En el cuadro de diálogo Change Instance Type (Cambiar tipo de instancias), en Instance Type (Tipo
de instancias), elija el nuevo tipo de instancias que desea que utilice el entorno.
Note
Si el tipo de instancias que desea no aparece en la lista, eso significa que no es compatible
con la configuración de la instancia (por ejemplo, debido a su tipo de virtualización).
11. (Opcional) Si el tipo de instancia que ha elegido admite la optimización de EBS, seleccione EBS-
optimized para habilitar la optimización de EBS o desmarque EBS-optimized para deshabilitarla.
Note
Si el tipo de instancias que ha elegido está optimizado para EBS de forma predeterminada, la
opción EBS-optimized (Optimizado para EBS) estará seleccionada y no podrá desmarcarla.
106
AWS Cloud9 Guía del usuario
Cambio de tamaño de un volumen de
Amazon EBS utilizado en un entorno
Para obtener más información sobre el procedimiento anterior, consulte Cambio del tipo de instancias en la
Guía del usuario de Amazon EC2 para instancias de Linux.
Este script funciona con volúmenes de Amazon EBS conectados a instancias EC2 que
ejecutan Amazon Linux 2, Amazon Linux o Ubuntu Server.
El script también cambia el tamaño de los volúmenes de Amazon EBS expuestos como
dispositivos de bloques NVMe en instancias basadas en Nitro. A fin de obtener una lista de
las instancias basadas en el sistema Nitro, consulte Instancias basadas en Nitro en la Guía
del usuario de Amazon EC2 para instancias de Linux.
#!/bin/bash
# Specify the desired volume size in GiB as a command line argument. If not specified,
default to 20 GiB.
SIZE=${1:-20}
# Get the ID of the Amazon EBS volume associated with the instance.
VOLUMEID=$(aws ec2 describe-instances \
--instance-id $INSTANCEID \
--query "Reservations[0].Instances[0].BlockDeviceMappings[0].Ebs.VolumeId" \
--output text \
--region $REGION)
107
AWS Cloud9 Guía del usuario
Cifrado de los volúmenes de Amazon
EBS que utiliza AWS Cloud9
else
# Rewrite the partition table so that the partition takes up all the space that it
can.
sudo growpart /dev/nvme0n1 1
3. Desde una sesión de terminal en el IDE, cambie al directorio que contiene el archivo resize.sh. A
continuación, ejecute uno de los siguientes comandos y sustituya el valor 20 por el tamaño en GiB al
que desea cambiar el volumen de Amazon EBS:
•
bash resize.sh 20
•
chmod +x resize.sh
./resize.sh 20
Tiene dos opciones de cifrado para los volúmenes de Amazon EBS utilizados por los entornos de
desarrollo de EC2 de AWS Cloud9:
108
AWS Cloud9 Guía del usuario
Cifrado de los volúmenes de Amazon
EBS que utiliza AWS Cloud9
• Cifrado de forma predeterminada: puede configurar su cuenta de AWS para aplicar el cifrado de los
nuevos volúmenes de EBS y copias de las instantáneas que cree. El cifrado de forma predeterminada
está habilitado en el nivel de una región de AWS, por lo que no se puede habilitar para volúmenes o
instantáneas individuales en esa región. Además, dado que Amazon EBS cifra el volumen que se crea al
lanzar una instancia, debe habilitar esta configuración antes de crear un entorno de EC2. Para obtener
más información, consulte Cifrado de forma predeterminada en la Guía del usuario de Amazon EC2 para
instancias de Linux.
• Cifrado de un volumen de Amazon EBS existente utilizado por un entorno de EC2: puede cifrar
volúmenes específicos de Amazon EBS que ya están creados para instancias EC2. Esta opción implica
el uso de AWS Key Management Service (AWS KMS) para administrar el acceso a los volúmenes
cifrados. Para conocer el procedimiento pertinente, consulte Cifrado de un volumen de Amazon EBS
existente utilizado por AWS Cloud9 (p. 109).
Important
Si el IDE de AWS Cloud9 utiliza volúmenes de Amazon EBS cifrados de forma predeterminada, el
rol vinculado al servicio AWS Identity and Access Management para AWS Cloud9 requiere acceso
a la AWS KMS key para estos volúmenes de EBS. Si no se proporciona acceso, el IDE de AWS
Cloud9 podría no lanzarse y la depuración podría ser difícil.
Para proporcionar acceso, agregue el rol vinculado al servicio de AWS Cloud9,
AWSServiceRoleForAWSCloud9, a la clave de KMS utilizada por los volúmenes de Amazon
EBS. Para obtener más información sobre esta tarea, consulte Create an AWS Cloud9 IDE that
uses Amazon EBS volumes with default encryption en AWS Prescriptive Guidance Patterns.
A continuación, cree un volumen cifrado con esa instantánea. Posteriormente, reemplace el volumen no
cifrado. Para ello, desconéctelo de la instancia EC2 y adjúntelo al volumen cifrado.
Por último, debe actualizar la política de claves de la clave administrada por el cliente para habilitar el
acceso de la función de servicio de AWS Cloud9.
Note
El siguiente procedimiento se centra en el uso de una clave administrada por el cliente para cifrar
un volumen. También puede utilizar una Clave administrada por AWS para un servicio de AWS
en su cuenta (el alias de Amazon EBS es aws/ebs). Si elige esta opción predeterminada para el
cifrado, omita el paso 1, en que se crea una clave administrada por el cliente. También omita el
paso 8 en que se actualiza la directiva de claves (no puede cambiar la directiva de claves de una
Clave administrada por AWS).
1. En la consola de AWS KMS, cree una clave de KMS simétrica. Para obtener más información,
consulte Creación de una clave de KMS simétrica en la Guía para desarrolladores de AWS Key
Management Service.
2. En la consola de Amazon EC2, detenga la instancia respaldada por Amazon EBS y utilizada por el
entorno. Puede detener la instancia mediante la consola o la línea de comandos.
3. En el panel de navegación de la consola de Amazon EC2, elija Snapshots (Instantáneas) para crear
una instantánea del volumen existente que desea cifrar.
109
AWS Cloud9 Guía del usuario
Cifrado de los volúmenes de Amazon
EBS que utiliza AWS Cloud9
4. En el panel de navegación de la consola de Amazon EC2, elija Snapshots (Instantáneas) para copiar
la instantánea. En el cuadro de diálogo Copy snapshot (Copiar instantánea), haga lo siguiente para
habilitar el cifrado:
Los nuevos volúmenes de Amazon EBS que se crean a partir de instantáneas cifradas se
cifran automáticamente.
6. Desconecte el volumen de Amazon EBS antiguo de la instancia de Amazon EC2.
7. Adjunte el nuevo volumen cifrado a la instancia de Amazon EC2.
8. Actualice la directiva de claves para la clave de KMS mediante la vista predeterminada de la AWS
Management Console, la vista de políticas de la AWS Management Console o la API de AWS KMS.
Agregue las siguientes instrucciones de la política de claves para permitir que el servicio de AWS
Cloud9, AWSServiceRoleForAWSCloud9, acceda a la clave de KMS.
Note
{
"Sid": "Allow use of the key",
"Effect": "Allow",
"Principal": {
"AWS": "arn:{Partition}:iam::{AccountId}:role/aws-service-role/
cloud9.amazonaws.com/AWSServiceRoleForAWSCloud9"
},
"Action": [
"kms:Encrypt",
"kms:Decrypt",
"kms:ReEncrypt*",
"kms:GenerateDataKey*",
"kms:DescribeKey"
],
"Resource": "*"
},
{
"Sid": "Allow attachment of persistent resources",
"Effect": "Allow",
"Principal": {
"AWS": "arn:{Partition}:iam::{AccountId}:role/aws-service-role/
cloud9.amazonaws.com/AWSServiceRoleForAWSCloud9"
},
"Action": [
"kms:CreateGrant",
"kms:ListGrants",
"kms:RevokeGrant"
],
"Resource": "*",
"Condition": {
"Bool": {
"kms:GrantIsForAWSResource": "true"
}
}
}
110
AWS Cloud9 Guía del usuario
Eliminación de entornos
3. En la lista de entornos, en el entorno que desea eliminar, realice una de las siguientes acciones.
• Elija el título de la tarjeta del entorno. Después, en la página siguiente, elija Delete (Eliminar).
111
AWS Cloud9 Guía del usuario
Eliminación de un entorno con la consola
4. En el cuadro de diálogo Delete (Eliminar), escriba Delete y, a continuación, elija Delete (Eliminar).
• Entorno de EC2
Además, AWS Cloud9 finaliza la instancia de Amazon EC2 que estaba conectada al entorno.
Note
Si el entorno estaba conectado a una instancia de Amazon EC2, AWS Cloud9 no termina esa
instancia. Si no termina dicha instancia más tarde, en su cuenta de AWS le pueden seguir cobrando
cargos continuos por Amazon EC2 en relación con esa instancia.
5. Si el entorno era un entorno de SSH, AWS Cloud9 deja un subdirectorio oculto en la instancia de
informática en la nube o en el servidor que se conectó a dicho entorno. Ya puede eliminar de forma
segura dicho subdirectorio si lo desea. El subdirectorio se llama .c9. Se encuentra en el directorio
Environment path (Ruta del entorno), que especificó al crear el entorno.
Si su entorno no aparece en la consola, intente realizar una o varias de las siguientes acciones para que
se muestre.
112
AWS Cloud9 Guía del usuario
Eliminación de un entorno con código
• Elija la flecha anterior, la flecha siguiente o el botón de número de página para mostrar más entornos
en el ámbito actual.
• Si cree que debería ser miembro de un entorno, pero este no se muestra en la lista Shared with you
(Compartido con usted), consulte al propietario del entorno.
• En la barra de navegación superior, elija una región de AWS diferente.
113
AWS Cloud9 Guía del usuario
Eliminación de un entorno con código
Para eliminar un entorno mediante código en AWS Cloud9, llame a la operación de eliminación de entorno
de AWS Cloud9, tal y como se indica seguidamente.
114
AWS Cloud9 Guía del usuario
Lea uno o varios de los siguientes temas para aprender a trabajar con el IDE de AWS Cloud9.
Temas
• Recorrido del IDE de AWS Cloud9 (p. 116)
• Lenguajes compatibles en el entorno de desarrollo integrado (IDE) de AWS Cloud9 (p. 136)
• Compatibilidad con lenguajes mejorada en el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 138)
• Referencia de comandos de la barra de menús del entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 151)
• Búsqueda y reemplazo de texto en entorno de desarrollo integrado (IDE) de AWS Cloud9 (p. 162)
• Vista previa de archivos en el entorno de desarrollo integrado (IDE) de AWS Cloud9 (p. 165)
• Vista previa de las aplicaciones en ejecución en el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 167)
• Trabajo con revisiones de archivo en el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 175)
• Trabajo con archivos de imagen en el entorno de desarrollo integrado (IDE) de AWS Cloud9 (p. 176)
• Trabajo con compiladores, ejecutores y depuradores en el entorno de desarrollo integrado (IDE) de
AWS Cloud9 (p. 178)
• Trabajo con variables de entorno personalizadas en el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 186)
• Trabajar con la configuración de los proyectos en el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 188)
• Trabajo con la configuración de usuario en el IDE de AWS Cloud9 (p. 196)
• Trabajar con la configuración de usuarios y de proyectos de AWS en el entorno de desarrollo integrado
(IDE) de AWS Cloud9 (p. 204)
• Trabajo con enlaces de teclado en el entorno de desarrollo integrado (IDE) de AWS Cloud9 (p. 205)
• Trabajar con temas en el entorno de desarrollo integrado (IDE) de AWS Cloud9 (p. 208)
• Administrar scripts de inicialización en el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 209)
• Referencia de enlaces de teclado predeterminados para MacOS para el entorno de desarrollo
integrado (IDE) de AWS Cloud9 (p. 209)
• Referencia de enlaces de teclado Vim para MacOS para el entorno de desarrollo integrado (IDE) de
AWS Cloud9 (p. 221)
• Referencia de enlaces de teclado Emacs para MacOS para el entorno de desarrollo integrado (IDE) de
AWS Cloud9 (p. 232)
• Referencia de enlaces de teclado Sublime para MacOS para el entorno de desarrollo integrado (IDE)
de AWS Cloud9 (p. 243)
• Referencia de enlaces de teclado predeterminados para Windows/Linux en el entorno de desarrollo
integrado (IDE) de AWS Cloud9 (p. 256)
• Referencia de enlaces de teclado Vim para Windows/Linux en el entorno de desarrollo integrado (IDE)
de AWS Cloud9 (p. 267)
115
AWS Cloud9 Guía del usuario
Recorrido del IDE
Temas
• Requisitos previos (p. 116)
• Paso 1: Barra de menús (p. 116)
• Paso 2: Panel (p. 118)
• Paso 3: Ventana Environment (Entorno) (p. 118)
• Paso 4: Editor, pestañas y paneles (p. 119)
• Paso 5: Consola (p. 121)
• Paso 6: Sección Open files (Abrir archivos) (p. 121)
• Paso 7: Margen interior (p. 122)
• Paso 8: Barra de estado (p. 122)
• Paso 9: Ventana Outline (Esquema) (p. 124)
• Paso 10: Ventana Go (Ir) (p. 125)
• Paso 11: Pestaña Immediate (Inmediato) (p. 127)
• Paso 12: Lista de procesos (p. 128)
• Paso 13: Preferencias (p. 129)
• Paso 14: Terminal (p. 130)
• Paso 15: Ventana Debugger (Depurador) (p. 131)
• Conclusiones (p. 136)
Requisitos previos
Para realizar este recorrido, debe disponer de una cuenta de AWS y de un entorno de desarrollo de
AWS Cloud9 abierto. Para obtener información sobre cómo hacerlo, puede seguir los pasos que se
indican en Introducción: tutoriales básicos para AWS Cloud9 (p. 32). También puede explorar otros temas
relacionados, como Configuración de AWS Cloud9 (p. 7) y Trabajo con entornos en AWS Cloud9 (p. 53).
Warning
Tener un entorno de desarrollo de AWS Cloud9 puede generar cargos en su cuenta de AWS.
Entre ellos se incluyen posibles cargos por Amazon EC2 si utiliza un entorno de EC2. Para
obtener más información, consulte Precios de Amazon EC2.
116
AWS Cloud9 Guía del usuario
Paso 1: Barra de menús
Para ocultar la barra de menús, elija la flecha en el borde, tal y como se indica a continuación.
Para volver a ver la barra de menús, elija la flecha en el centro del lugar en el que se encontraba antes la
barra de menús, tal y como se indica a continuación.
Puede utilizar el IDE para trabajar con un conjunto de archivos en las siguientes secciones de este tutorial.
Para configurar estos archivos, elija File (Archivo) y, a continuación, New File (Nuevo archivo).
fish.txt
--------
A fish is any member of a group of organisms that consist of
all gill-bearing aquatic craniate animals that lack limbs with
digits. They form a sister group to the tunicates, together
forming the olfactores. Included in this definition are
lampreys and cartilaginous and bony fish as well as various
extinct related groups.
Para guardar el archivo, elija File (Archivo), Save (Guardar). Denomine al archivo fish.txt y, a
continuación, elija Save (Guardar).
117
AWS Cloud9 Guía del usuario
Paso 2: Panel
Repita estas instrucciones para guardar el segundo archivo como cat.txt, con el contenido siguiente.
cat.txt
-------
The domestic cat is a small, typically furry, carnivorous mammal.
They are often called house cats when kept as indoor pets or
simply cats when there is no need to distinguish them from
other felids and felines. Cats are often valued by humans for
companionship and for their ability to hunt.
En ocasiones, existen varias formas de hacer las cosas en el IDE. Por ejemplo, para ocultar la barra de
menús, en lugar de elegir la flecha del borde, puede elegir View (Ver), Menu Bar (Barra de menú). Para
crear un nuevo archivo, en lugar de elegirFile, New File (Archivo, Nuevo archivo) puede pulsar Alt-N
(en Windows/Linux) o Control-N (en MacOS). Para reducir la extensión de este tutorial, solo vamos a
explicar una forma de hacer las cosas. Cuando se sienta más cómodo con el IDE, no dude en probar y
averiguar el método que mejor se adapte a sus necesidades.
Paso 2: Panel
El panel le ofrece acceso rápido a cada uno de sus entornos. En el panel, puede crear, abrir y cambiar la
configuración de un entorno.
Para abrir el panel, en la barra de menús, elija AWS Cloud9, Go To Your Dashboard (Ir al panel).
Para ver la configuración de su entorno, elija el título dentro de la tarjeta my-demo-environment. Para
volver al panel, utilice el botón Atrás del navegador web o la ruta de navegación denominada Environments
(Entornos).
Para abrir el IDE de su entorno, elija Open IDE (Abrir IDE) en la tarjeta my-demo-environment.
Note
Para mostrar u ocultar la ventana Environment (Entorno), elija el botón Environment (Entorno).
118
AWS Cloud9 Guía del usuario
Paso 4: Editor, pestañas y paneles
Para ocultar la ventana Environment (Entorno) y el botón Environment (Entorno), elija Window (Ventana),
Environment (Entorno) en la barra de menús.
Para mostrar u ocultar archivos, elija el icono del engranaje en la ventana Environment (Entorno) y, a
continuación, elija Show Hidden Files (Mostrar archivos ocultos).
Para ocultar pestañas, elija View (Ver), Tab Buttons (Botones de pestañas) en la barra de menús.
Para abrir una nueva pestaña, elija el icono + en el borde de la fila de pestañas. A continuación, elija uno
de los comandos disponibles, por ejemplo, New File (Nuevo archivo), tal y como se indica a continuación.
119
AWS Cloud9 Guía del usuario
Paso 4: Editor, pestañas y paneles
Para ver dos paneles, seleccione el icono que parece un menú desplegable, que está en el borde de la fila
de pestañas. A continuación, elija Split Pane in Two Rows (Dividir panel en dos filas), tal y como se indica
a continuación.
Para volver a un único panel, elija de nuevo el icono del menú desplegable y, a continuación, seleccione el
icono del cuadrado único, tal y como se indica a continuación.
120
AWS Cloud9 Guía del usuario
Paso 5: Consola
Paso 5: Consola
La consola es un lugar alternativo para crear y administrar pestañas. De forma predeterminada, contiene
una pestaña Terminal, pero también puede contener otros tipos de pestañas.
Para mostrar u ocultar la consola, elija View (Ver), Console (Consola) en la barra de menús.
Para ampliar o contraer la consola, elija el icono de cambio de tamaño, que está en el borde de la consola,
tal y como se indica a continuación.
121
AWS Cloud9 Guía del usuario
Paso 7: Margen interior
Para mostrar u ocultar la sección Open Files (Abrir archivos), seleccione View (Ver), Open Files (Abrir
archivos) en la barra de menús.
Para mostrar u ocultar el margen interior, elija View (Ver), Gutter (Margen interior) en la barra de menús.
Para mostrar u ocultar la barra de estado, elija View (Ver), Status Bar (Barra de estado) en la barra de
menús.
122
AWS Cloud9 Guía del usuario
Paso 8: Barra de estado
Para ir a un número de línea específico, elija una pestaña con el archivo que le interese. A continuación, en
la barra de estado, elija el número de línea y carácter (debería ser algo como 7:45). Escriba un número de
línea (como 4) y, a continuación, presione Enter, tal y como se indica a continuación.
Para cambiar la preferencia del tipo de archivo, en la barra de estado, elija otro tipo de archivo. Por
ejemplo, en el caso de cat.txt, elija Ruby para ver el cambio de colores de la sintaxis. Para volver a los
colores de texto sin formato, elija Plain Text (Texto sin formato), tal y como se indica a continuación.
123
AWS Cloud9 Guía del usuario
Paso 9: Ventana Outline (Esquema)
Para mostrar u ocultar la ventana Outline (Esquema) y el botón Outline (Esquema), elija Window
(Ventana), Outline (Esquema) en la barra de menús.
Para ver cómo funciona la ventana Outline (Esquema), cree un archivo con el nombre hello.rb. Copie el
código siguiente en el archivo y guárdelo.
def say_hello(i)
puts "Hello!"
puts "i is #{i}"
end
def say_goodbye(i)
puts "i is now #{i}"
puts "Goodbye!"
end
i = 1
say_hello(i)
i += 1
say_goodbye(i)
Para mostrar u ocultar el contenido de la ventana Outline (Esquema), elija el botón Outline (Esquema).
A continuación, en la ventana Outline (Esquema), elija say_hello(i) y luego elija say_goodbye(i), tal y como
se indica a continuación.
124
AWS Cloud9 Guía del usuario
Paso 10: Ventana Go (Ir)
125
AWS Cloud9 Guía del usuario
Paso 10: Ventana Go (Ir)
Para mostrar el contenido de la ventana Go (Ir), seleccione el botón Go (Ir) (el icono de lupa).
Para mostrar u ocultar la ventana Go (Ir) y el botón Go (Ir), elija Window (Ventana), Go (Ir) en la barra de
menús.
• Introduzca un signo de barra inclinada (/) seguido de parte o la totalidad de un nombre de archivo. En
la lista de archivos coincidentes que aparecerá, elija un archivo para abrirlo en el editor. Por ejemplo, al
escribir /fish se muestra fish.txt, mientras que al escribir /.txt se muestra tanto fish.txt como
cat.txt.
Note
La búsqueda de archivos se limita solo a los archivos y las carpetas no ocultos de la ventana
Environment (Entorno).
• Escriba una arroba (@) seguida del nombre de un símbolo. En la lista de símbolos coincidentes que
aparecerá, elija un símbolo para abrirlo en el editor. Por ejemplo, con el archivo hello.rb abierto
y activo en el editor, escriba @hello para mostrar say_hello(i), o escriba @say para mostrar
say_hello(i) y say_goodbye(i).
Note
Si el archivo activo en el editor forma parte de un proyecto con idiomas admitidos, la búsqueda
de símbolos se limita al proyecto actual. De lo contrario, la búsqueda de símbolos se
limita únicamente al archivo activo en el editor. Para obtener más información, consulte
Compatibilidad con TypeScript mejorada con proyectos de lenguajes (p. 147).
• Escriba un punto (.) seguido del nombre de un comando. En la lista de comandos que aparecerá, elija
un comando para ejecutarlo. Por ejemplo, escribir .closetab y, a continuación, pulsar Enter cierra la
pestaña actual del editor. Para obtener una lista de los comandos disponibles, consulte el Referencia de
comandos del entorno de desarrollo integrado (IDE) de AWS Cloud9 (p. 302).
• Escriba un signo de dos puntos (:) seguido de un número para ir a ese número de línea en el archivo
activo en el editor. Por ejemplo, con el archivo hello.rb abierto y activo en el editor, escriba :11 para
ir a la línea 11 de ese archivo.
126
AWS Cloud9 Guía del usuario
Paso 11: Pestaña Immediate (Inmediato)
Para ver los enlaces de teclado de cada una de estas acciones según el modo de teclado y el sistema
operativo actuales, consulte cada uno de los comandos Go To (Ir a) disponibles en el menú Go (Ir) de la
barra de menú.
1. Abra una pestaña Immediate (Inmediato) eligiendo Window (Ventana), New Immediate Window
(Nueva ventana inmediata) en la barra de menús.
2. Ejecute código en la pestaña Immediate (Inmediato). Para probarlo, escriba el siguiente código en
la ventana, pulse Shift-Enter después de escribir la línea 1 y de nuevo después de la línea 2.
Presione Enter después de la línea 3. (Si presiona Enter en lugar de Shift-Enter después de
escribir la línea 1 o la línea 2, el código se ejecutará antes de lo que desea).
for (i = 0; i <= 10; i++) { // Press Shift-Enter after typing this line.
console.log(i) // Press Shift-Enter after typing this line.
} // Press Enter after typing this line. The numbers 0 to 10
will be printed.
127
AWS Cloud9 Guía del usuario
Paso 12: Lista de procesos
1. Para abrir Process List (Lista de procesos), elija Tools (Herramientas), Process List (Lista de
procesos) en la barra de menús.
2. Busque un proceso. En Process List (Lista de procesos), escriba el nombre del proceso.
3. Detenga o fuerce la detención de un proceso. En la lista de procesos, elija el proceso y, a
continuación, elija Kill (Terminar) o Force Kill (Forzar terminación), tal y como se indica a continuación.
128
AWS Cloud9 Guía del usuario
Paso 13: Preferencias
• Solo la configuración del entorno actual, como, por ejemplo, si debe utilizar tabuladores suaves en el
editor, los tipos de archivos que se deben omitir y los comportamientos de finalización de código de
lenguajes como PHP y Python.
• Su configuración de usuario en cada uno de sus entornos, como, por ejemplo, colores, fuentes y
comportamientos del editor.
• Su enlaces de teclado, como, por ejemplo, las combinaciones de teclas de acceso directo que prefiere
utilizar para trabajar con archivos y el editor.
• El tema general del IDE.
Para ver las preferencias, elija AWS Cloud9, Preferences (Preferencias) en la barra de menús. Se muestra
algo similar a lo siguiente.
129
AWS Cloud9 Guía del usuario
Paso 14: Terminal
Puede probar ejecutar un comando en el terminal. Por ejemplo, en el terminal, escriba echo $PATH y, a
continuación, pulse Enter para imprimir el valor de la variable de entorno PATH.
También puede probar a ejecutar otros comandos. Por ejemplo, pruebe comandos como los siguientes.
130
AWS Cloud9 Guía del usuario
Paso 15: Ventana Debugger (Depurador)
Este procedimiento es similar al Paso 2: Recorrido básico del IDE (p. 36) de cualquiera de los
tutoriales básicos del IDE (p. 32).
Para mostrar u ocultar la ventana Debugger (Depurador) y el botón Debugger (Depurador), elija Window
(Ventana), Debugger (Depurador) en la barra de menús.
En este tutorial, puede experimentar con la ventana Debugger (Depurador) y algunos códigos JavaScript
haciendo lo siguiente.
1. Verifique la instalación de Node.js en su entorno. Para ello, ejecute el siguiente comando en una
sesión del terminal: node --version. Si Node.js está instalado, se genera el número de versión de
Node.js en la salida y puede ir directamente al paso 3 de este procedimiento («Escribir algún código
JavaScript...»).
2. Si necesita instalar Node.js, haga lo siguiente.
131
AWS Cloud9 Guía del usuario
Paso 15: Ventana Debugger (Depurador)
a. Ejecute los dos comandos siguientes, de uno en uno, para asegurarse de que su entorno tiene las
actualizaciones más recientes y, a continuación, descargue Node Version Manager (nvm). (nvm
es un sencillo script de shell Bash que resulta útil para instalar y administrar versiones de Node.js.
Para obtener más información, consulte Node Version Manager en GitHub).
b. Utilice un editor de texto para actualizar el archivo de perfil de shell (por ejemplo, ~/.bashrc)
para permitir que nvm se cargue. Por ejemplo, en la ventana Environment (Entorno) del IDE, elija
el icono del engranaje y, a continuación, seleccione Show Home in Favorites (Mostrar inicio en
favoritos). Repita este paso y elija también Show Hidden Files (Mostrar archivos ocultos).
c. Abra el archivo ~/.bashrc.
d. Escriba o pegue el código siguiente al final del archivo para permitir que nvm se cargue.
export NVM_DIR="/home/ec2-user/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm.
export NVM_DIR="/home/ubuntu/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm.
e. Guarde el archivo.
f. Cierre esa sesión de terminal e inicie una nueva. A continuación, ejecute el siguiente comando
para instalar la última versión de Node.js.
3. Escriba algún código JavaScript para depurarlo. Por ejemplo, cree un archivo, añada el siguiente
código en él y, a continuación, guárdelo como hello.js.
var i;
i = 10;
console.log("Hello!");
console.log("i is " + i);
i += 1;
4. Añada algunos puntos de interrupción en el código. Por ejemplo, en el margen interior, haga clic en el
margen junto a las líneas 6 y 10. Aparece un círculo rojo junto a cada uno de estos números de línea,
tal y como se indica a continuación.
132
AWS Cloud9 Guía del usuario
Paso 15: Ventana Debugger (Depurador)
5. Ya está listo para depurar el código JavaScript. Para probarlo, haga lo siguiente.
a. Para mostrar u ocultar el contenido de la ventana Debugger (Depurador), elija el botón Debugger
(Depurador), tal y como se muestra en el siguiente paso.
b. Observe el valor de la variable denominada i mientras se está ejecutando el código. En la
ventana Debugger (Depurador), en Watch Expressions (Expresiones de inspección), elija Type
an expression here (Escriba una expresión aquí). Escriba la letra i y, a continuación, presione
Enter, tal y como se indica a continuación.
c. Comience a ejecutar el código. Seleccione Run (Ejecutar), Run With (Ejecutar con), Node.js, tal y
como se indica a continuación.
133
AWS Cloud9 Guía del usuario
Paso 15: Ventana Debugger (Depurador)
134
AWS Cloud9 Guía del usuario
Paso 15: Ventana Debugger (Depurador)
f. El código realiza una pausa en la ejecución en la línea 10. En la ventana Debugger (Depurador)
ahora aparece el nuevo valor de i, que en la actualidad es 11.
g. Seleccione Resume (Reanudar) de nuevo. El código se ejecuta hasta el final. El resultado se
imprime en la pestaña hello.js de la consola, tal y como se indica a continuación.
135
AWS Cloud9 Guía del usuario
Conclusiones
Conclusiones
Warning
Recuerde que tener un entorno de desarrollo de AWS Cloud9 puede generar cargos en su cuenta
de AWS. Entre ellos se incluyen posibles cargos por Amazon EC2 si utiliza un entorno de EC2.
Para obtener más información, consulte Precios de Amazon EC2.
En la sección principal (Uso de la IDE (p. 115)) se incluyen temas adicionales que pueden ser
de su interés. Sin embargo, cuando haya terminado de recorrer el IDE de AWS Cloud9 y ya no
necesite el entorno, asegúrese de eliminarlo junto con sus recursos asociados, tal y como se
describe en Eliminación de entornos (p. 111).
3
Lenguaje Resaltado IU2 de Vista de Sugerencias Finalización Depuración
1 2
de sintaxis ejecución esquema de código y de código
lint
5 4
C++ ✓ ✓ ✓ ✓ ✓
136
AWS Cloud9 Guía del usuario
Lenguajes compatibles
3
Lenguaje Resaltado IU2 de Vista de Sugerencias Finalización Depuración
1 2
de sintaxis ejecución esquema de código y de código
lint
5
C# ✓ ✓ ✓
CoffeeScript ✓ ✓
CSS ✓ ✓
Dart ✓
4 4
Go ✓ ✓ ✓ ✓ ✓ ✓
Haskell ✓
HTML ✓ ✓ ✓ ✓
6
Java ✓ ✓ ✓ ✓ ✓ ✓
JavaScript ✓ ✓ ✓ ✓ ✓
Node.js ✓ ✓ ✓ ✓ ✓ ✓
7
PHP ✓ ✓ ✓ ✓ ✓ ✓
8
Python ✓ ✓ ✓ ✓ ✓ ✓
5
Ruby ✓ ✓ ✓ ✓ ✓
5
Script de ✓ ✓ ✓ ✓ ✓
shell
9
TypeScript ✓ ✓ ✓ ✓ ✓
Notas
1
El IDE de AWS Cloud9 proporciona resaltado de sintaxis para muchos más lenguajes. Para ver una lista
completa, en la barra de menús del IDE, elija View, Syntax (Ver, Sintaxis).
2
Puede ejecutar programas o scripts con un solo clic para lenguajes marcados con ✓, sin utilizar la línea
de comandos. Para los lenguajes que no están marcados con ✓ o que no aparecen en la barra de menús
Run, Run With (Ejecutar, Ejecutar con) del IDE, puede crear un ejecutor para ese lenguaje. Para ver
instrucciones, consulte la sección sobre creación de un generador o ejecutor (p. 183).
3
Puede utilizar las herramientas integradas del IDE para depurar programas o scripts para lenguajes
marcados con ✓. Para ver instrucciones, consulte la sección sobre depuración del código (p. 179).
4
Esta característica se encuentra en estado experimental para este lenguaje. No se ha aplicado
plenamente y no está documentada o no es compatible.
5
Esta característica solo es compatible con las funciones locales para este lenguaje.
6
El soporte mejorado para las funciones de Java SE 11 puede activarse en los entornos de desarrollo de
AWS Cloud9 EC2 con 2 GiB o con más memoria. Para obtener más información, consulte Compatibilidad
con el desarrollo de Java mejorada (p. 138).
7
Para especificar las rutas de AWS Cloud9 que deben utilizarse para finalizar el código de PHP
personalizado, en el IDE de AWS Cloud9, active la configuración Project, PHP Support, Enable PHP code
completion (Proyecto, Soporte de PHP, Habilitar finalización de código PHP) de Preferences (Preferencias)
137
AWS Cloud9 Guía del usuario
Compatibilidad con lenguajes mejorada
y agregue las rutas del código personalizado a la configuración Project, PHP Support, PHP Completion
Include Paths (Proyecto, Compatibilidad con PHP, Rutas de inclusión para finalización de PHP).
8
Para especificar las rutas de AWS Cloud9 que deben utilizarse para finalizar el código de Python
personalizado, en el IDE de AWS Cloud9, active la configuración Project, Python Support, Enable Python
code completion (Proyecto, Soporte de PHP, Habilitar finalización de código PHP) en Preferences
(Preferencias) y agregue las rutas del código personalizado a la configuración Project, Python Support,
PYTHONPATH (Proyecto, Compatibilidad con Python, PYTHONPATH).
9
El IDE de AWS Cloud9 proporciona compatibilidad adicional para algunos lenguajes de programación,
como, por ejemplo, TypeScript (la versión 3.7.5 se admite en el IDE de AWS Cloud9), en el contexto de un
proyecto de lenguaje. Para obtener más información, consulte Working with Language Projects (p. 147).
• Java: las extensiones permiten proporcionar características como la finalización de código, lint de
errores, acciones específicas del contexto y opciones de depuración.
• TypeScript: los proyectos de lenguaje ofrecen acceso a características de productividad mejoradas para
TypeScript.
Temas
• Compatibilidad con el desarrollo de Java mejorada (p. 138)
• Compatibilidad con TypeScript mejorada con proyectos de lenguajes (p. 147)
Las características de productividad mejoradas solo están disponibles para entornos de desarrollo
de AWS Cloud9 conectados a instancias de Amazon EC2.
Además, para garantizar una experiencia de IDE óptima cuando se utiliza compatibilidad de
lenguaje mejorada con Java, la instancia de computación de Amazon EC2 que respalda su
entorno de AWS Cloud9 requiere 2 GiB o más de memoria. Si AWS Cloud9 detecta que la
instancia de computación de EC2 no tiene suficiente RAM, no se le ofrece la opción de activar
características mejoradas para Java.
En la actualidad, AWS Cloud9 soporta funciones de idioma disponibles en versiones hasta e
incluidas Java SE 11. Amazon Coretto 11, distribución sin costo, multiplataforma y lista para
producción de Open Java Development Kit (OpenJDK), ya está instalado en instancias de
Amazon EC2 que respaldan sus entornos de desarrollo. Puede instalar versiones más recientes
del JDK, pero no se admiten las características de lenguaje que se introdujeron después de Java
11 (tipos de registros y clases selladas, por ejemplo).
138
AWS Cloud9 Guía del usuario
Compatibilidad con Java mejorada
• Su entorno de AWS Cloud9 está conectado a una instancia de Amazon EC2 con 2 GiB o más de
memoria.
• Está trabajando con un archivo asociado con el desarrollo de Java. AWS Cloud9 verifica los siguientes
nombres y extensiones de archivos: *.java, *.gradle (asociados con la herramienta de creación
Gradle) y pom.xml (asociados con la herramienta de creación Apache Maven).
• Está trabajando en un entorno de AWS Cloud9 creado después del 11 de diciembre de 2020.
Actualmente, no se pueden usar las características de productividad de Java en entornos de desarrollo
creados antes de esta fecha.
Si se cumplen estas condiciones, aparece un cuadro de diálogo para preguntarle si quiere activar las
características de productividad adicionales para codificar y depurar Java. Si elige Activate (Activar), puede
comenzar a utilizar las características del IDE.
Note
Las instancias de Amazon EC2 que se lanzan al crear un entorno de AWS Cloud9 ya tienen
Amazon Coretto 11 instalado. Amazon Coretto es una distribución sin costo, multiplataforma
y lista para producción de Open Java Development Kit (OpenJDK). Esto significa que puede
comenzar a desarrollar y ejecutar aplicaciones de Java en AWS Cloud9 listas para usar.
También puede activar y desactivar manualmente la compatibilidad con lenguajes y depuración mejorados
mediante la interfaz de AWS Cloud9. Elija Preferences (Preferencias), Java Support (Compatibilidad con
Java), Enhanced Java Support (Compatibilidad mejorada con Java).
139
AWS Cloud9 Guía del usuario
Compatibilidad con Java mejorada
Dos extensiones proporcionan la compatibilidad con el desarrollo de Java mejorada en AWS Cloud9 al
IDE:
La interfaz de AWS Cloud9 le concede acceso a una amplia gama de opciones de configuración que
personalizan el rendimiento de estas extensiones. Para cambiar la configuración de la extensión, elija
Preferences (Preferencias), Java Support (Compatibilidad con Java).
Para obtener información detallada sobre esta configuración, consulte las versiones instaladas de las
páginas ReadMe pertinentes de los repositorios de GitHub de las extensiones:
Características destacadas
Después de activar la compatibilidad con Java mejorada, puede utilizar una serie de características que
aumentan la productividad.
Finalización de código
Con la finalización del código, el editor hace sugerencias contextuales basadas en el código que está
escribiendo. Por ejemplo, si escribe el operador punto (“.”) después del nombre de un objeto, el editor
muestra los métodos o las propiedades disponibles para ese objeto.
140
AWS Cloud9 Guía del usuario
Compatibilidad con Java mejorada
Enfoques de código
El enfoque de código le permite acceder a acciones específicas del contexto directamente en el código
fuente. Para el desarrollo de Java, los enfoques de código facilitan las pruebas unitarias al permitirle
ejecutar y depurar métodos específicos.
141
AWS Cloud9 Guía del usuario
Compatibilidad con Java mejorada
Lint de código
El lint de código describe cómo el editor resalta los posibles errores en el código antes de haberlo creado.
Por ejemplo, la herramienta de lint llama si está intentando utilizar una variable no inicializada o si intenta
asignar un valor a una variable que espera un tipo diferente.
142
AWS Cloud9 Guía del usuario
Compatibilidad con Java mejorada
Opciones de depuración
143
AWS Cloud9 Guía del usuario
Compatibilidad con Java mejorada
Comandos de Java
Para ejecutar comandos desde el panel de comandos de AWS Cloud9, presione Ctrl + . o F1. A
continuación, ingrese “java” para filtrar los comandos pertinentes.
Soluciones rápidas
144
AWS Cloud9 Guía del usuario
Compatibilidad con Java mejorada
Con soluciones rápidas, puede resolver los errores causados por el uso de variables no declaradas o
métodos no definidos mediante la creación de stubs para los elementos que faltan.
Refactorización
145
AWS Cloud9 Guía del usuario
Compatibilidad con Java mejorada
146
AWS Cloud9 Guía del usuario
Compatibilidad con TypeScript mejorada
Cambio de nombre
El cambio de nombre es una característica de refactorización que le permite modificar fácilmente los
nombres de las variables, las funciones y las clases seleccionadas en cualquier parte del código en
la que aparezcan con una sola acción. Para cambiar un nombre, abra el menú contextual (clic con el
botón derecho) del elemento y elija Rename (Cambiar nombre). El cambio de nombre afecta a todas las
instancias del nombre en el código.
Para utilizar el IDE para crear un proyecto de lenguaje en su entorno, consulte Creación de un proyecto de
lenguaje (p. 150).
147
AWS Cloud9 Guía del usuario
Compatibilidad con TypeScript mejorada
TypeScript X X X X X X
Autocompletar
A medida que escribe en un archivo en el editor, se muestra una lista de símbolos en el punto de inserción
para ese contexto, si hay símbolos disponibles.
Para insertar un símbolo de la lista en el punto de inserción, si aún no se ha elegido un símbolo, use la
flecha arriba o abajo para seleccionarlo y, a continuación, pulse Tab.
Antes de pulsar Tab, puede que vea una sugerencia en pantalla con información acerca del símbolo
elegido, si hay información disponible.
Para obtener más información acerca de un problema, detenga el puntero sobre el icono del problema.
Soluciones rápidas
En el archivo activo en el editor, puede mostrar información sobre errores y advertencias de codificación,
con posibles correcciones que se aplicará automáticamente a dicho código. Para mostrar información
de errores o advertencias y sus posibles correcciones, elija cualquier parte del código subrayado con
una línea roja discontinua (para errores) o una línea gris discontinua (para advertencias). O bien, con el
cursor sobre el código que tiene una línea roja o gris discontinua, pulse Option-Enter (para macOS)
o Alt-Enter (para Linux o Windows). Para aplicar una solución propuesta, elija la solución en la
lista o utilice las teclas de flecha para seleccionar la solución y, a continuación, pulse Enter. Para
activar o desactivar la selección de soluciones rápidas mediante clics con el ratón, elija AWS Cloud9,
Preferences (Preferencias), User Settings (Configuración del usuario), Language (Lenguaje), Hints &
Warnings (Consejos y advertencias), Show Available Quick Fixes on Click (Mostrar las soluciones rápidas
disponibles al hacer clic).
Buscar referencias
En el archivo activo en el editor, puede mostrar todas las referencias al símbolo en el punto de inserción, si
el IDE tiene acceso a dichas referencias.
Para ello, en el punto de inserción en cualquier lugar dentro del símbolo, ejecute el comando Find
References (Buscar referencias). Por ejemplo:
• Haga clic con el botón derecho en el punto de inserción y, a continuación, elija Find References (Buscar
referencias).
• En la barra de menús, elija Go, Find References (Ir, Buscar referencias).
• De forma predeterminada, pulse Shift-F3 para macOS, Windows o Linux.
148
AWS Cloud9 Guía del usuario
Compatibilidad con TypeScript mejorada
Si hay referencias disponibles, se abrirá un panel en la parte superior del archivo activo, junto a ese
símbolo. El panel contiene una lista de archivos en los que se hace referencia al símbolo. El panel muestra
la primera referencia de la lista. Para mostrar otra referencia, elija esa referencia de la lista.
Para cerrar el panel, elija el icono de cierre (X) en el panel o pulse Esc.
El comando Find References (Buscar referencias) podría estar deshabilitado, o podría no funcionar
según lo previsto, bajo las siguientes condiciones:
Ir a definición
En el archivo activo en el editor, puede ir de un símbolo al lugar donde se define el símbolo, si el IDE tiene
acceso a dicha definición.
Para ello, en el punto de inserción en cualquier lugar dentro del símbolo, ejecute el comando Jump to
Definition (Buscar referencias). Por ejemplo:
• Haga clic con el botón derecho en el punto de inserción y, a continuación, elija Jump to Definition (Saltar
a la definición).
• En la barra de menús, elija Go, Jump to Definition (Ir, Saltar a la definición).
• De forma predeterminada, pulse F3 para macOS, Windows o Linux.
Si la definición está disponible, el punto de inserción cambia a esa definición, incluso aunque la definición
esté en un archivo independiente.
El comando Jump to Definition (Buscar referencias) podría estar deshabilitado, o podría no funcionar
según lo previsto, bajo las siguientes condiciones:
Ir a símbolo
Puede ir a un símbolo específico dentro de un proyecto, de la siguiente manera.
1. Para activar uno de los archivos del proyecto, ábralo en el editor. Si el archivo ya está abierto, elija su
pestaña en el editor para activarlo.
2. Ejecute el comando Go to Symbol (Ir a símbolo). Por ejemplo:
• Elija el botón de ventana Go (Ir) (icono de lupa). En el cuadro Goto Anything (Ir a cualquier punto),
escriba @ y, a continuación, comience a escribir el símbolo.
• En la barra de menús, elija Go, Go To Symbol (Ir, Ir a símbolo). En la ventana Go (Ir), empiece a
escribir el símbolo después de @.
• Pulse Command-2 o, de forma predeterminada, Command-Shift-O para sistemas operativos
macOS o, de forma predeterminada, Ctrl-Shift-O para Windows o Linux. En la ventana Go (Ir),
empiece a escribir el símbolo después de @.
149
AWS Cloud9 Guía del usuario
Compatibilidad con TypeScript mejorada
Por ejemplo, para buscar todos los símbolos del proyecto denominados toString, comience a
escribir @toString (o comience a escribir toString después de @, si @ ya se muestra).
3. Si ve el símbolo que desea en la lista Symbols (Símbolos), haga clic en él para seleccionarlo. O
bien use las flechas arriba o abajo para seleccionarlo y, a continuación, pulse (Entrar) Enter. A
continuación, el punto de inserción cambia a ese símbolo.
Si el símbolo al que desea ir no está en el proyecto del archivo activo, es posible que este procedimiento
no funcione correctamente.
mkdir ~/environment/my-demo-project
cd ~/environment/my-demo-project
3. En la raíz del directorio en el que desea crear el proyecto, ejecute el compilador TypeScript con la
opción --init.
tsc --init
Para obtener más información sobre el archivo tsconfig.json, consulte los siguientes temas:
150
AWS Cloud9 Guía del usuario
Referencia de los comandos de menú
AWS Cloud9Menú de
Comando Descripción
Go To Your Dashboard (Ir a su panel Abra la consola de AWS Cloud9 en una pestaña
independiente del navegador web. Consulte
Creación de un entorno (p. 53), Abrir un
entorno (p. 78), Modificación de la configuración
del entorno (p. 89) y la sección sobre eliminación
de entornos (p. 111).
151
AWS Cloud9 Guía del usuario
Menú File
Comando Descripción
Open Your Project Settings (Abrir la configuración Abra el archivo project.settings del entorno
del proyecto actual. Consulte Trabajar con la configuración de
los proyectos (p. 188).
Open Your User Settings (Abrir su configuración de Abra el archivo user.settings del usuario
usuario actual. Consulte Trabajar con la configuración de
los usuarios (p. 196).
Open Your Init Script (Abrir su script Init Abra el archivo init.js del usuario
actual. Consulte Trabajar con scripts de
inicialización (p. 209).
Open Your Stylesheet (Abrir su hoja de estilos Abra el archivo styles.css del usuario actual.
Consulte Trabajar con temas (p. 208).
Menú File
Comando Descripción
New From Template (Nuevo desde plantilla Crear un nuevo archivo, basado en la plantilla de
archivo elegida.
Save All (Guardar todo Guarda todos los archivos sin guardar.
Revert to Saved (Volver sin guardar Descarta los cambios hechos en el archivo desde
la última vez que se guardó.
Revert All to Saved (Descartar todos los cambios Descarta cambios de todos los archivos sin
guardar desde que se guardaron por última vez.
Show File Revision History (Ver historial de Ver y administrar los cambios en el archivo actual
revisiones de archivo en el editor. Consulte Uso de revisiones de
archivo (p. 175).
Upload Local Files (Cargar archivos locales Abra el cuadro de diálogo Upload Files (Cargar
archivos), que permite arrastrar archivos de la
computadora local al entorno.
152
AWS Cloud9 Guía del usuario
Menú Edit (Editar)
Comando Descripción
Line Endings (Finales de línea Utiliza los finales de línea de Windows (retorno de
carro además de salto de línea) o de Unix (solo
salto de línea).
Close All Files (Cerrar todos los archivos Cierra todos los archivos abiertos.
Comando Descripción
Selection, Select All (Selección, Seleccionar todo Seleccionar todo el contenido seleccionable.
Selection, Split Into Lines (Selección, Dividir en dos Agregar un cursor al final de la línea actual.
líneas
Selection, Single Selection (Selección, Selección Borrar todas las selecciones anteriores.
única
Selection, Multiple Selections, Add Cursor Up Añadir un cursor una línea por encima del cursor
(Selección, Selección múltiple, Añadir cursor arriba activo. Si ya hay un cursor, añade otro por encima
de ese cursor.
Selection, Multiple Selections, Add Cursor Down Añadir un cursor una línea por debajo del cursor
(Selección, Selección múltiple, Añadir cursor abajo activo. Si ya hay un cursor añadido, añade otro por
debajo de ese cursor.
Selection, Multiple Selections, Move Active Cursor Añade un segundo cursor una línea por encima
Up (Selección, Selección múltiple, Añadir cursor del cursor activo. Si ya se ha añadido un segundo
abajo cursor, lo mueve hacia arriba una línea.
Selection, Multiple Selections, Move Active Cursor Añade un segundo cursor una línea por debajo
Down (Selección, Selección múltiple, Mover cursor del cursor activo. Si ya se ha añadido un segundo
activo abajo cursor, lo mueve hacia abajo una línea.
Selection, Multiple Selections, Add Next Selection Incluir más selecciones coincidentes que están
Match (Selección, Selección múltiple, Añadir después de la selección.
coincidencia próxima selección
153
AWS Cloud9 Guía del usuario
Menú Edit (Editar)
Comando Descripción
Selection, Multiple Selections, Add Previous Incluir más selecciones coincidentes que están
Selection Match (Selección, Selección múltiple, antes de la selección.
Añadir coincidencia selección anterior
Selection, Multiple Selections, Merge Selection Agregar un cursor al final de la línea actual.
Range (Selección, Selección múltiple, Combinar
rango de selección
Selection, Select Word Right (Selección, Incluir la siguiente palabra a la derecha del cursor
Seleccionar palabra a la derecha en la selección.
Selection, Select Word Left (Selección, Seleccionar Incluir la siguiente palabra a la izquierda del cursor
palabra a la izquierda en la selección.
Selection, Select to Line End (Selección, Incluir desde el cursor hasta el final de la línea
Seleccionar hasta final de línea actual en la selección
Selection, Select to Line Start (Selección, Incluir desde el comienzo de la línea actual hasta
Seleccionar hasta inicio de línea el cursor en la selección.
Selection, Select to Document End (Selección, Incluir desde el cursor hasta el final del archivo
Seleccionar hasta el final del documento actual en la selección.
Selection, Select to Document Start (Selección, Incluir desde el cursor hasta el comienzo del
Seleccionar hasta inicio de documento archivo actual en la selección.
Line, Move Line Up (Línea, Mover una línea arriba Mover la selección una línea hacia arriba.
Line, Move Line Down (Línea, Mover una línea Mover la selección una línea hacia abajo.
abajo
Line, Copy Lines Up (Línea, Copiar líneas arriba Copiar el contenido de la línea y pegarlo una línea
por encima.
Line, Copy Lines Down (Línea, Copiar líneas abajo Copiar el contenido de la línea y pegarlo una línea
por debajo.
Line, Remove Line (Línea, Quitar línea Eliminar el contenido de la línea actual.
Line, Remove to Line End (Línea, Borrar hasta final Eliminar desde el cursor hasta el final de la línea
de línea actual.
Line, Remove to Line Start (Línea, Borrar hasta Eliminar desde el comienzo de la línea actual hasta
comienzo de línea el cursor.
Line, Split Line (Línea, Dividir línea Mover el contenido del cursor al final de la línea, a
una línea propia.
Text, Remove Word Right (Texto, Borrar palabra Eliminar la palabra situada a la derecha del cursor.
derecha
Text, Remove Word Left (Texto, Borrar palabra Eliminar la palabra situada a la izquierda del
izquierda cursor.
154
AWS Cloud9 Guía del usuario
Menú Find (Buscar)
Comando Descripción
Text, Align (Texto, Alinear Mover todos los cursores al mismo espacio que
el cursor activo en cada una de sus líneas, si no
están alineados.
Code Folding, Toggle Fold (Plegado de código, Plegar código o quitar el plegado de código si está
Cambiar plegado plegado.
Code Folding, Fold Other (Plegado de código, Plegar todos los elementos plegables, excepto el
Plegar otro ámbito actual de selección.
Code Folding, Fold All (Plegado de código, Plegar Plegar todos los elementos plegables.
todo
Code Folding, Unfold All (Plegado de código, Desplegar el plegado de código en todo el archivo.
Desplegar todo
Code Formatting, Apply Code Formatting (Formato Volver a formatear el código JavaScript
de código, Aplicar formato de código seleccionado.
Code Formatting, Open Language & Formatting Abrir la sección Project Settings (Configuración del
Preferences (Formato de código, Abrir lenguaje y proyecto) de la pestaña Preferences (Preferencias)
preferencias de formato para configurar el lenguaje de programación.
Comando Descripción
155
AWS Cloud9 Guía del usuario
Menú View (Ver)
Comando Descripción
Replace All (Reemplazar todo Sustituir todas las coincidencias de Find (Buscar)
por Replace With (Reemplazar por) en la barra de
búsqueda y reemplazo del documento actual.
Open Files (Archivos abiertos Mostrar la lista Open Files (Archivos abiertos) de
la ventana Environment (Entorno) u ocultarla si se
muestra.
Layout, Vertical Split (Panel, División vertical Mostrar dos paneles, superior e inferior.
Layout, Horizontal Split (Panel, División horizontal Mostrar dos paneles, uno junto a otro.
Layout, Cross Split (Panel, División cruzada Mostrar cuatro paneles de igual tamaño.
Layout, Split 1:2 (Panel, División 1:2 Mostrar un panel a la izquierda y dos paneles a la
derecha.
Layout, Split 2:1 (Panel, División 2:1 Mostrar dos paneles a la izquierda y un panel a la
derecha.
156
AWS Cloud9 Guía del usuario
Menú Go (Ir)
Comando Descripción
Font Size, Increase Font Size (Tamaño de fuente, Aumentar el tamaño de la fuente.
Aumentar
Font Size, Decrease Font Size (Tamaño de fuente, Disminuir el tamaño de la fuente.
Disminuir
Wrap Lines (Ajuste de línea Ajusta las palabras en el borde del panel actual o
deja de ajustarlas si ya lo están.
Wrap To Print Margin (Ajustar al margen de Ajusta las palabras en el borde del margen de
impresión impresión actual o deja de ajustarlas si ya lo están.
Menú Go (Ir)
Comando Descripción
157
AWS Cloud9 Guía del usuario
Menú Run (Ejecutar)
Comando Descripción
Show Debugger at Break (Mostrar depurador en Cuando la ejecución de código alcanza un punto
descanso de interrupción, muestra la ventana Debugger
(Depurador).
Save All on Build (Guardar todo en compilación Cuando se compila, guarda todos los archivos sin
guardar relacionados.
Menú de herramientas
Comando Descripción
Strip Trailing Space (Suprimir espacio final Suprimir los espacios en blanco al final de las
líneas.
Preview, Preview File (Vista previa, Vista previa de Mostrar una vista previa del documento actual en
archivo una pestaña de vista previa.
Preview, Preview Running Application (Vista Mostrar la vista previa de la aplicación en una
previa, Vista previa de una aplicación en ejecución pestaña independiente del navegador web.
Preview, Configure Preview URL (Vista previa, Abrir la sección Project Settings (Configuración del
Configurar URL de vista previa proyecto) de la pestaña Preferences (Preferencias)
158
AWS Cloud9 Guía del usuario
Menú Window (Ventana)
Comando Descripción
en el cuadro Run & Debug, Preview URL (Ejecutar
y depurar, URL vista previa).
Preview, Show Active Servers (Vista previa, Mostrar una lista de direcciones de servidores
Mostrar servidores activos activos disponibles en el cuadro de diálogo
Process List (Lista de procesos).
Process List (Lista de procesos Mostrar el cuadro de diálogo Process List (Lista de
procesos).
Comando Descripción
New Immediate Window (Nueva ventana inmediata Abrir una nueva pestaña Immediate (Inmediata).
159
AWS Cloud9 Guía del usuario
Menú Window (Ventana)
Comando Descripción
Navigation, Move Tab to Right (Navegación, Mover Mueve la pestaña actual a la derecha. Si la
pestaña a la derecha pestaña ya está en la parte derecha, crea allí una
pestaña de división.
Navigation, Move Tab to Left (Navegación, Mover Mueve la pestaña actual a la izquierda. Si la
pestaña a la izquierda pestaña ya está en la parte izquierda, crea allí una
pestaña de división.
Navigation, Move Tab to Up (Navegación, Mover Mueve la pestaña actual un panel hacia arriba. Si
pestaña a la izquierda la pestaña ya está en la parte superior, crea allí
una pestaña de división.
Navigation, Move Tab to Down (Navegación, Mueve la pestaña actual un panel hacia abajo. Si
Mover pestaña hacia abajo la pestaña ya está en la parte inferior, crea allí una
pestaña de división.
Navigation, Switch Between Editor and Terminal Cambiar entre el editor y la pestaña Terminal.
(Navegación, Cambiar entre editor y terminal
Saved Layouts, Save (Diseños guardados, Guardar el diseño actual. Para cambiar a este
Guardar diseño más tarde, elija Saved Layouts, LAYOUT-
ID.
Saved Layouts, Save and Close All (Diseños Guarda el diseño actual y, a continuación, cierra
guardados, Guardar y cerrar todo todas las pestañas y paneles.
Saved Layouts, Show Saved Layouts in File Tree Mostrar todos los diseños guardados en la ventana
(Diseños guardados, Mostrar diseños guardados Environment (Entorno).
en árbol de archivos
160
AWS Cloud9 Guía del usuario
Menú Support (Soporte)
Comando Descripción
Tabs, Close All Tabs In All Panes (Pestañas, Cerrar todas las pestañas abiertas en todos los
Cerrar todas las pestañas en todos los paneles paneles.
Tabs, Close All But Current Tab (Pestañas, Cerrar Cerrar todas las pestañas abiertas en el panel
todas las pestañas menos la actual actual, excepto la pestaña actual.
Tabs, Split Pane in Two Rows (Pestañas, Dividir Divide el panel actual en dos, superior e inferior.
panel en dos filas
Tabs, Split Pane in Two Columns (Pestañas, Dividir Divide el panel actual en dos, izquierda y derecha.
panel en dos columnas
Presets, Full IDE (Preestablecidos, IDE completo Cambia al modo IDE completo.
Comando Descripción
Get Help (Community) (Obtener ayuda Abre el sitio web de la comunidad en línea de AWS
[Comunidad) Cloud9 en una nueva pestaña del navegador web.
Read Documentation (Leer documentación Abre la Guía del usuario de AWS Cloud9 en una
nueva pestaña del navegador web.
Comando Descripción
Preview File (Vista previa de archivo Mostrar una vista previa del documento actual en
una pestaña de vista previa.
Preview Running Application (Vista previa de Mostrar la vista previa de la aplicación en una
aplicación en ejecución pestaña independiente del navegador web.
Configure Preview URL (Configurar URL de vista Abrir la sección Project Settings (Configuración del
previa proyecto) de la pestaña Preferences (Preferencias)
en el cuadro Run & Debug, Preview URL (Ejecutar
y depurar, URL vista previa).
Show Active Servers (Mostrar servidores activos Mostrar una lista de direcciones de servidores
activos disponibles en el cuadro de diálogo
Process List (Lista de procesos).
161
AWS Cloud9 Guía del usuario
Otros comandos de la barra de menús
162
AWS Cloud9 Guía del usuario
Búsqueda de texto en varios archivos
Para restringir aún más la búsqueda a solo una sola carpeta, elija una carpeta en la ventana
Environment (Entorno) y, a continuación, elija Selection (Selección). También puede hacer
clic con el botón derecho del ratón en la ventana Environment (Entorno) y, a continuación,
elegir Search In This Folder (Buscar en esta carpeta) en el menú contextual.
163
AWS Cloud9 Guía del usuario
Reemplazo de texto en varios archivos
• Favorites (Favoritos): buscar solo archivos en la lista Favorites (Favoritos) de la ventana Environment
(Entorno).
• Active File (Archivo activo): buscar solo el archivo activo.
• Open Files (Archivos abiertos): buscar solo archivos en la lista Open Files (Archivos abiertos) de la
ventana Environment (Entorno).
6. Elija Find (Buscar).
7. Para ir a un archivo que contenga coincidencias, haga doble clic en el nombre de archivo en la pestaña
Search Results (Resultados de búsqueda). Para ir a una coincidencia específica, haga doble clic en la
coincidencia que desee de la pestaña Search Results (Resultados de búsqueda).
164
AWS Cloud9 Guía del usuario
Opciones de búsqueda y reemplazo
Note
La operación de reemplazo se realiza inmediatamente en todos los archivos dentro del ámbito.
Esta operación no se puede deshacer fácilmente. Si desea ver qué se va a modificar antes de
comenzar la operación de reemplazo, elija Find (Buscar).
8. Para ir a un archivo que contenga reemplazos, haga doble clic en el nombre de archivo en la pestaña
Search Results (Resultados de búsqueda). Para ir a un reemplazo específico, haga doble clic en el
reemplazo que desee en la pestaña Search Results (Resultados de búsqueda).
• Regular Expressions (Expresiones regulares): buscar texto que coincide con la expresión regular
especificada en Find (Buscar) o Find in Files (Buscar en archivos). Consulte Escribiendo un patrón de
expresión regular en tema Expresiones regulares de JavaScript en Mozilla Developer Network.
• Match Case (Coincidir mayúsculas y minúsculas): buscar texto que coincide con el uso de mayúsculas y
minúsculas especificado en Find (Buscar) o Find in Files (Buscar en archivos).
• Whole Words (Palabras completas): utilizar las reglas de carácter de palabra estándar para buscar texto
en Find (Buscar) o Find in Files (Buscar en archivos).
• Wrap Around (Ajuste automático): solo para un único archivo, no parar al final o al comienzo del archivo
al pasar a la coincidencia siguiente o anterior.
• Search Selection (Buscar en la selección): solo para un único archivo, buscar únicamente en la
selección.
• Show in Console (Mostrar en la consola): para varios archivos, mostrar la pestaña Search Results
(Resultados de búsqueda) en Console (Consola) en lugar del panel activo.
• Preserve Case (Conservar mayúsculas y minúsculas): solo para un único archivo, conservar el uso de
mayúsculas y minúsculas según corresponda al reemplazar el texto.
165
AWS Cloud9 Guía del usuario
Abrir un archivo para vista previa
• En la ventana Environment (Entorno), haga clic con el botón derecho en el archivo del que desea
obtener una vista previa y, a continuación, elija Preview (Vista previa).
Note
Aunque puede emplear este enfoque para obtener una vista previa de cualquier archivo,
funciona mejor con los archivos que tienen las siguientes extensiones de archivo:
• .htm
• .html
• .pdf
• .svg
• .xhtml
• Cualquier archivo que tenga contenido en formato Markdown.
• Abra un archivo con una de las siguientes extensiones de archivo:
• .pdf
• .svg
• Con el archivo del que desea obtener una vista previa ya abierto y activo, en la barra de menús, elija
Preview, Preview File FILE_NAME (Vista previa, Vista previa de archivo, NOMBRE_ARCHIVO). O bien,
seleccione Tools, Preview, Preview File FILE_NAME, donde FILE_NAME es el nombre del archivo del
que desea obtener una vista previa.
Note
Note
El menú Preview Settings (Configuración de vista previa) de la pestaña de vista previa de archivos
166
no está operativo y elegir cualquiera de sus comandos de menú no tendrá ningún efecto.
AWS Cloud9 Guía del usuario
Volver a cargar la vista previa de un archivo
• Browser (Navegador): muestra la vista previa del archivo en un formato de navegador web, solo para los
siguientes tipos de archivo:
• .htm
• .html
• .pdf
• .svg
• .xhtml: la vista previa funciona mejor si el archivo contiene o hace referencia a información de
presentación de contenido.
• Raw Content (UTF-8) (Contenido raw (UTF-8): muestra la vista previa del contenido del archivo original
en Formato de Transformación Unicode de 8 bits (UTF-8). Esto puede mostrar contenido inesperado
para algunos tipos de archivos.
• Markdown (Marcado): muestra la vista previa de cualquier archivo con formato Markdown. Los intentos
de obtener una vista previa de cualquier otro tipo de archivo pueden mostrar contenido inesperado.
Temas
• Ejecutar una aplicación (p. 168)
• Vista previa de una aplicación en ejecución (p. 169)
• Volver a cargar la vista previa de una aplicación (p. 170)
• Cambiar el tipo de vista previa de la aplicación (p. 170)
167
AWS Cloud9 Guía del usuario
Ejecutar una aplicación
• Abrir la vista previa de una aplicación en una pestaña independiente del navegador web (p. 170)
• Cambiar a una URL de vista previa distinta (p. 170)
• Compartir una aplicación en ejecución a través de internet (p. 170)
No es necesario ejecutar con HTTP a través de los puertos 8080, 8081 o 8082 con dirección
IP de 127.0.0.1, localhost o 0.0.0.0. Sin embargo, no obtendrá una vista previa de la
aplicación en ejecución desde el IDE.
Para escribir código para ejecutar la aplicación en un puerto e IP específicos, consulte la documentación
de la aplicación.
Para probar este comportamiento, podría agregar, por ejemplo, el siguiente código de JavaScript a un
archivo con un nombre como server.js en la raíz de su entorno. Este código ejecuta un servidor
mediante Node.js.
Note
O bien, podría agregar el siguiente código de Python a un archivo con un nombre como server.py en la
raíz de su entorno. Este código ejecuta un servidor mediante Python, como se indica a continuación.
import os
import http.server
168
AWS Cloud9 Guía del usuario
Vista previa de una aplicación en ejecución
import socketserver
Después, agregue el siguiente código HTML a un archivo con un nombre como index.html en la raíz de
su entorno.
<html>
<head>
<title>Hello Home Page</title>
</head>
<body>
<p style="font-family:Arial;color:blue">Hello, World!</p>
</body>
</html>
Para ver la salida HTML de este archivo en la pestaña de vista previa de la aplicación, ejecute server.js
con el archivo Node.js o server.py con Python. A continuación, siga las instrucciones del siguiente
procedimiento para obtener una vista previa. En la pestaña de vista previa de la aplicación, añada /
index.html al final de la URL y, a continuación, pulse Enter.
• Preview, Preview Running Application (Vista previa, Vista previa de una aplicación en ejecución
• Tools, Preview, Preview Running Application (Herramientas, Vista previa, Vista previa de una aplicación
en ejecución
Se abre una pestaña de vista previa de la aplicación en el entorno y, a continuación, se muestra en ella el
resultado de la aplicación.
Si la pestaña de vista previa de la aplicación muestra un error o está en blanco, pruebe los siguientes
pasos de solución de problemas La pestaña de vista previa de la aplicación muestra un mensaje de error o
está en blanco (p. 586).
Para permitir que otras personas obtengan una vista previa de la aplicación en ejecución fuera del IDE,
consulte Compartir una aplicación en ejecución a través de internet (p. 170).
Note
Si la aplicación aún no está en ejecución, verá un error en la pestaña de vista previa. Ejecute o
reinicie la aplicación y, a continuación, seleccione el comando de la barra de menús de nuevo.
Si la aplicación no se puede ejecutar en cualquiera de los puertos o direcciones IP anteriores, o
si la aplicación debe ejecutarse en más de uno de estos puertos al mismo tiempo (por ejemplo,
su aplicación debe ejecutarse en los puertos 8080 y 3000 al mismo tiempo), la pestaña de vista
previa puede mostrar un error o estar en blanco. Esto se debe a que la pestaña de vista previa
de la aplicación dentro del entorno solo funciona con los puertos y las direcciones IP anteriores.
Además, funciona con un solo puerto a la vez.
No recomendamos compartir la URL en la pestaña de vista previa de
la aplicación con otros usuarios. (La URL se muestra con el formato
169
AWS Cloud9 Guía del usuario
Volver a cargar la vista previa de una aplicación
https://12a34567b8cd9012345ef67abcd890e1.vfs.cloud9.us-
east-2.amazonaws.com/, donde 12a34567b8cd9012345ef67abcd890e1 es el ID que
AWS Cloud9 asigna al entorno y us-east-2 es el ID de la región de AWS para el entorno). Esta
URL solo funciona cuando el IDE del entorno está abierto y la aplicación se está ejecutando en el
mismo navegador web.
Si intenta ir a la IP de 127.0.0.1, localhost o 0.0.0.0 usando la pestaña de vista previa
de la aplicación en el IDE o en una pestaña independiente del navegador web fuera del IDE,
el comportamiento incorporado predeterminado del IDE de AWS Cloud9 es que intentará ir a
su computadora local, en lugar de intentar ir a la instancia o a su propio servidor conectado al
entorno.
• Browser (Navegador): ofrece la vista previa del resultado en un formato de navegador web.
• Raw Content (UTF-8) (Contenido raw ([UTF-8]): intenta obtener una vista previa del resultado en
Formato de Transformación Unicode de 8 bits (UTF-8), si procede.
• Markdown (Marcado): intenta obtener una vista previa del resultado con formato de marcado, si procede.
La vista previa de la aplicación no se mostrará en una nueva pestaña del navegador web salvo si
el IDE de AWS Cloud9 también se ejecuta en otra pestaña, por lo menos, del mismo navegador.
170
AWS Cloud9 Guía del usuario
Compartir una aplicación en ejecución a través de internet
Para ello, si tiene una instancia de Amazon EC2 conectada a su entorno, siga los pasos que se indican a
continuación. De lo contrario, consulte la documentación de su servidor.
Temas
• Paso 1: obtener la dirección IP y el ID de la instancia (p. 171)
• Paso 2: configurar el grupo de seguridad para la instancia (p. 172)
• Paso 3: configurar la subred para la instancia (p. 173)
• Paso 4: Compartir la URL de la aplicación en ejecución (p. 174)
1. Obtenga el ID de la instancia de Amazon EC2. Para ello, siga uno de estos pasos:
• En una sesión de terminal en el IDE de AWS Cloud9 del entorno, ejecute el siguiente comando para
obtener el ID de la instancia de Amazon EC2.
curl http://169.254.169.254/latest/meta-data/instance-id
• En el IDE del entorno, en la barra de menús, elija Share (Compartir). En el cuadro de diálogo Share
this environment (Compartir este entorno), anote la dirección IP pública del cuadro Application
(Aplicación). La dirección IP pública tendrá un aspecto similar al siguiente: 192.0.2.0.
• En una sesión de terminal en el IDE del entorno, ejecute el siguiente comando para obtener la
dirección IP pública de la instancia de Amazon EC2.
curl http://169.254.169.254/latest/meta-data/public-ipv4
La dirección IP pública tendrá un aspecto similar al siguiente: 192.0.2.0. Anote esta dirección IP
pública.
• En el IDE del entorno, en la barra de menús, elija el icono de usuario y, a continuación, elija Manage
EC2 Instance (Administrar instancia EC2). En la consola de Amazon EC2 que se muestra, en la
pestaña Description (Descripción), anote la dirección IP pública para el campo IPv4 Public IP (IP
pública IPv4). La dirección IP pública tendrá un aspecto similar al siguiente: 192.0.2.0.
171
AWS Cloud9 Guía del usuario
Compartir una aplicación en ejecución a través de internet
Note
No es necesario ejecutar con HTTP a través de los puertos 8080, 8081 o 8082. Si ejecuta en
otro protocolo o puerto, sustitúyalo en todo este paso. No podrá obtener una vista previa de la
aplicación en ejecución desde el IDE hasta que vuelva a ejecutarla mediante HTTP a través de
uno de los puertos y las direcciones IP, como se describe en Vista previa de una aplicación en
ejecución (p. 169).
Para tener una capa adicional de seguridad, puede configurar una lista de control de acceso
(ACL) de red para una subred de una nube privada virtual (VPC) que la instancia pueda utilizar.
Para obtener más información acerca de los grupos de seguridad y las ACL de red, consulte lo
siguiente:
1. En el IDE del entorno, en la barra de menús, elija el icono de usuario y, a continuación, elija Manage
EC2 Instance (Administrar instancia EC2). A continuación, vaya al paso 3 en este procedimiento.
2. Si la elección de Manage EC2 Instance (Administrar instancia EC2) o de otros pasos de este
procedimiento muestra errores, recomendamos que inicie sesión en la consola de Amazon EC2
utilizando las credenciales de un usuario administrador de IAM en su cuenta de AWS y después
complete las siguientes instrucciones. Si no puede hacerlo, consulte con el administrador de su cuenta
de AWS.
172
AWS Cloud9 Guía del usuario
Compartir una aplicación en ejecución a través de internet
3. En la pestaña Description (Descripción) de la instancia, elija el vínculo del grupo de seguridad junto a
Security groups (Grupos de seguridad).
4. Con el grupo de seguridad a la vista, busque en la pestaña Inbound (Entrada). Si ya existe una regla
donde Type (Tipo) se establece en Custom TCP Rule (Regla de TCP personalizada) y Port Range
(Rango de puertos) en 8080, 8081 u 8082, elija Cancel (Cancelar) y diríjase a Paso 3: configurar la
subred para la instancia (p. 173). De lo contrario, elija Edit (Editar).
5. En el cuadro de diálogo Edit inbound rules (Modificar reglas de entrada), elija Add tag (Agregar
etiqueta).
6. En Type, elija Custom TCP Rule.
7. En Port Range (Rango de puerto), escriba 8080, 8081 o 8082.
8. En Source (Fuente), elija Anywhere (Cualquiera).
Note
No es necesario ejecutar con HTTP a través de los puertos 8080, 8081 o 8082. Si ejecuta en
otro protocolo o puerto, sustitúyalo en todo este paso. No podrá obtener una vista previa de la
aplicación en ejecución desde el IDE hasta que vuelva a ejecutarla mediante HTTP a través
de los puertos y las direcciones IP, como se describe en Vista previa de una aplicación en
ejecución (p. 169).
En este paso se describe cómo configurar una ACL de red para una subred en una consola de
Amazon VPC que la instancia pueda utilizar. Este paso no es necesario. Sin embargo, agrega una
capa de seguridad adicional en comparación con usar solo grupos de seguridad. Para obtener
más información acerca de las ACL de red, consulte lo siguiente:
1. Con la consola de Amazon EC2 ya abierta del paso anterior, en el panel de navegación del servicio,
expanda Instances (Instancias) si aún no lo está y, a continuación, elija Instances (Instancias).
2. En la lista de instancias, seleccione la instancia cuyo Instance ID (ID de instancia) coincida con el ID
de instancia que anotó anteriormente.
3. En la pestaña Description (Descripción) de la instancia, anote el valor de Subnet ID (ID de subred).
Debería ser similar a: subnet-1fab8aEX.
4. Abra la consola de Amazon VPC. Para ello, en la barra de navegación de AWS, elija Services
(Servicios). A continuación, elija VPC.
En este paso, le recomendamos que inicie sesión en la consola de Amazon VPC con las credenciales
de un usuario administrador de IAM en la cuenta de AWS. Si no puede hacerlo, consulte con el
administrador de su cuenta de AWS.
173
AWS Cloud9 Guía del usuario
Compartir una aplicación en ejecución a través de internet
5. Si se muestra VPC Dashboard (Panel de VPC), elija Subnets (Subredes). También puede seleccionar
Subnets (Subredes) en el panel de navegación.
6. En la lista de subnets, seleccione la subnets cuyo valor de Subnet ID (ID de subred) coincida con el
que anotó anteriormente.
7. En la pestaña Summary (Resumen), elija el enlace ACL de red junto a Network ACL (ACL de red).
8. En la lista de ACL de red, seleccione la ACL de red. (Solo hay una ACL de red).
9. Busque en la pestaña Inbound Rules (Reglas de entrada) la ACL de red. Si ya existe una regla donde
Type (Tipo) está establecido en HTTP* (8080), HTTP* (8081) o HTTP* (8082), continúe en Paso 4:
Compartir la URL de la aplicación en ejecución (p. 174). De lo contrario, elija Edit (Editar).
10. Elija Add another rule.
11. En Rule # (N.º de regla), escriba un número para la regla (por ejemplo, 200).
12. En Type, elija Custom TCP Rule.
13. En Port Range (Rango de puerto), escriba 8080, 8081 o 8082.
14. En Source (Fuente), escriba el rango de las direcciones IP de las que se permitirán solicitudes
entrantes. Por ejemplo, para permitir las solicitudes entrantes de cualquier dirección IP, escriba
0.0.0.0/0.
15. Con Allow / Deny (Permitir/Denegar) establecido en ALLOW, elija Save (Guardar).
Si la pestaña del navegador web resultante muestra un error o está en blanco, pruebe los siguientes pasos
de solución de problemas No se puede mostrar la aplicación en ejecución fuera del IDE (p. 587).
Note
174
AWS Cloud9 Guía del usuario
Trabajo con revisiones de archivo
Para ver el panel File Revision History (Historial de revisiones de archivo) de un archivo, abra ese archivo
en el editor. A continuación, en la barra de menús, elija File, Show File Revision History (Archivo, Ver
historial de revisiones de archivo).
El panel File Revision History (Historial de revisiones de archivo) comienza el seguimiento del historial
de revisiones de un archivo en el IDE después de abrir por primera vez el archivo en el editor en un
entorno y solo para ese entorno. El panel File Revision History (Historial de revisiones de archivo) realiza
el seguimiento de las revisiones de un archivo desde el propio editor. No realiza el seguimiento de las
revisiones de un archivo que se han realizado de cualquier otra forma (por ejemplo por medio del terminal,
Git u otras herramientas de revisión de archivo).
No se puede editar un archivo mientras esté abierto el panel File Revision History (Historial de revisiones
de archivo). Para ocultar el panel, elija de nuevo File, Show Revision History (Archivo, Mostrar historial de
revisiones) o elija la X (Cerrar control deslizante de tiempo) en la esquina del panel.
Para ir a una versión del archivo que esté asociada a una acción de guardado de archivo, elija un punto
File Saved on (Archivo guardado en) por encima del control deslizante de revisiones.
175
AWS Cloud9 Guía del usuario
Trabajo con archivos de imagen
Para avanzar o retroceder una versión a partir de la versión del archivo seleccionada actualmente en el
control deslizante de revisiones, elija una de las flechas de pasos (Step revision forward (Avanzar revisión)
o Step revision backward (Retroceder revisión).
Para avanzar automáticamente en las versiones del archivo de una en una desde el principio hasta el final
del historial de revisiones, seleccione el botón de reproducción (Playback file history (Reproducir historial
de archivo)).
Para que la versión del archivo seleccionado actualmente sea la versión más reciente del historial de
revisiones, seleccione Revert (Revertir).
• .bmp
• .gif (solo visualización)
• .ico (solo visualización)
• .jpeg
• .jpg
• .png
• .tiff
176
AWS Cloud9 Guía del usuario
Recortar una imagen
177
AWS Cloud9 Guía del usuario
Acercar o alejar una imagen
Puede utilizar el IDE de AWS Cloud9 para compilar, ejecutar y depurar el código de las siguientes formas:
• Utilice un compilador para compilar los archivos del proyecto. Consulte Compilar los archivos del
proyecto (p. 179).
• Utilice a un ejecutor para ejecutar (y, de forma opcional, depurar) el código. Consulte Soporte integrado
de compilación, ejecución y depuración (p. 178) y Ejecutar el código (p. 179).
• Cambie un ejecutor integrado que ejecute (y, de forma opcional, depure) el código de una forma
diferente a la que se ha definido originalmente. Consulte Cambiar un ejecutor integrado (p. 182).
• Utilice un ejecutor que ejecute (y, de forma opcional, depure) el código con una combinación
personalizada de nombre de archivo, opciones de línea de comandos, modo de depuración, directorio de
trabajo actual y variables de entorno. Consulte Crear una configuración de ejecución (p. 182).
• Cree su propio compilador o ejecutor. Consulte Crear un compilador o ejecutor (p. 183).
El soporte de compilación integrado se encuentra disponible en la barra de menús con los comandos de
menú Run (Ejecutar), Build System (Sistema de compilación) y Run (Ejecutar), Build (Compilar). Para
añadir compatibilidad con un lenguaje de programación o una herramienta que no se encuentren en la
lista, consulte la sección Crear un compilador o ejecutor (p. 183).
El soporte integrado se encuentra disponible con el botón Run (Ejecutar) y en la barra de menús con
los comandos de menú Run (Ejecutar), Run With (Ejecutar con) y Run (Ejecutar), Run Configurations
178
AWS Cloud9 Guía del usuario
Compilar los archivos del proyecto
Ejecutar el código
1. Abra un archivo que se corresponda con el código que desea ejecutar, si el archivo aún no está abierto
y seleccionado.
2. En la barra de menús, realice una de las siguientes operaciones:
• Para ejecutar el código con el ejecutor integrado de mayor coincidencia, elija Run, Run (Ejecutar,
Ejecutar). Si AWS Cloud9 no encuentra ninguno, este comando está deshabilitado.
• Para ejecutar el código con la configuración de ejecución que AWS Cloud9 utilizó por última vez, elija
Run, Run Last (Ejecutar, Ejecutar última).
• Para ejecutar el código con un ejecutor específico, elija Run, Run With (Ejecutar, Ejecutar con) y,
a continuación, elija el nombre del ejecutor. Si el ejecutor que desea utilizar no se encuentra en
la lista, detenga este procedimiento, realice los pasos que se indican en Crear un compilador o
ejecutor (p. 183) y, a continuación, vuelva a este procedimiento.
• Para ejecutar el código con un ejecutor específico con una combinación personalizada de nombre de
archivo, opciones de línea de comandos, modo de depuración, directorio de trabajo actual y variables
de entorno, elija Run, Run Configurations (Ejecutar, Configuraciones de ejecución) y, a continuación,
elija el nombre de la configuración de ejecución. Si se abre la pestaña de la configuración de
ejecución, elija Runner: Auto (Ejecutor: Auto), elija el ejecutor que desea utilizar y, a continuación,
seleccione Run (Ejecutar). Si el ejecutor que desea utilizar no se encuentra en la lista, detenga este
procedimiento, realice los pasos que se indican en Crear un compilador o ejecutor (p. 183) y, a
continuación, vuelva a este procedimiento.
Depurar el código
1. En la pestaña de configuración de ejecución del código, elija Run in Debug Mode (Ejecutar en modo de
depuración). El icono de error cambia a verde sobre un fondo blanco. Para obtener más información,
consulte Ejecutar el código (p. 179) y Crear una configuración de ejecución (p. 182).
2. Establezca los puntos de interrupción en el código que desee para realizar pausas durante la ejecución,
tal y como se indica a continuación:
a. Abra cada archivo en el que desea establecer un punto de interrupción.
b. En cada punto de un archivo en el que desea establecer un punto de interrupción, elija el área en
blanco del margen interior situado a la izquierda del número de línea. Aparece un círculo rojo.
Para eliminar un punto de interrupción, elija el punto de interrupción existente en el margen interior.
179
AWS Cloud9 Guía del usuario
Depurar el código
Para deshabilitar todos los puntos de interrupción a la vez, en la ventana Debugger (Depurador),
elija Deactivate All Breakpoints (Desactivar todos los puntos de interrupción). Para habilitar de
nuevo todos los puntos de interrupción, elija Activate All Breakpoints (Activar todos los puntos de
interrupción).
Para cambiar una expresión de observación existente, haga clic con el botón derecho del ratón en
dicha expresión y, a continuación, elija Edit Watch Expression (Editar expresión de inspección).
Escriba el cambio y, a continuación, presione Enter.
Para eliminar una expresión de inspección existente, haga clic con el botón derecho del ratón
en dicha expresión y, a continuación, elija Remove Watch Expression (Eliminar expresión de
inspección).
4. Ejecute el código tal y como se describe en Ejecutar el código (p. 179).
Cada vez que ponga en pausa una ejecución, puede hacer lo siguiente en la ventana Debugger
(Depurador), tal y como se muestra.
180
AWS Cloud9 Guía del usuario
Depurar el código
• Ejecute el código hasta el siguiente punto de interrupción (o hasta el siguiente punto de parada lógico si
no hay más puntos de interrupción): elija Resume (Reanudar).
• Omita las instrucciones en ejecución una por una hasta la siguiente llamada al método o función: elija
Step Over (Saltar).
• Ejecute el código hasta la siguiente instrucción y vuelva a hacer una pausa: elija Step Into (Paso a paso).
• Detenga las instrucciones en ejecución una por una en la llamada al método o función actual: elija Step
Out (Salir).
• Deshabilite todos los puntos de interrupción existentes: elija Deactivate All Breakpoints (Desactivar
todos los puntos de interrupción). Habilite de nuevo todos los puntos de interrupción: Elija Activate All
Breakpoints (Activar todos los puntos de interrupción).
181
AWS Cloud9 Guía del usuario
Cambiar un ejecutor integrado
• No realice una pausa cuando el código genere una excepción: siga haciendo clic en el botón de
comportamiento de las excepciones hasta que la ayuda contextual indique Don't pause on exceptions
(No hacer pausa en excepciones) (gris).
• Realice una pausa cuando el código genere una excepción: siga haciendo clic en el botón de
comportamiento de las excepciones hasta que la ayuda contextual indique Pause on all exceptions
(Hacer pausa en todas las excepciones) (rojo).
• Haga una pausa únicamente cuando el código genere una excepción no detectada: siga haciendo clic
en el botón de comportamiento de las excepciones hasta que la ayuda contextual indique Pause on
uncaught exceptions (Hacer pausa en excepciones no detectadas) (azul).
• Abra un script disponible: elija Available internal and external scripts (Scripts internos y externos
disponibles) y, a continuación, elija el script.
• Consulte la lista de expresiones de inspección actuales: consulte el área Watch Expressions
(Expresiones de inspección).
• Consulte la ruta de ejecución que ha llevado el código hasta el punto de interrupción actual: consulte el
área Call Stack (Pila de llamadas).
• Vea la lista de variables locales: consulte el área Local Variables (Variables locales).
• Deshabilite puntos de interrupción individuales: en Breakpoints (Puntos de interrupción), desactive las
casillas correspondientes a los puntos de interrupción que desea deshabilitar. Para habilitar los puntos
de interrupción de nuevo, seleccione las casillas que ha desactivado anteriormente.
Cada vez que una ejecución se pone en pausa, también puede detener el puntero sobre cualquier
fragmento de código mostrado (por ejemplo, una variable) para ver la información disponible
correspondiente en una información sobre herramientas.
Note
Los cambios que realiza en un ejecutor integrado se aplican únicamente al entorno en el que
ha realizado esos cambios. Para aplicar los cambios en otro entorno, abra el otro entorno y, a
continuación, siga los pasos anteriores para abrir, editar y guardar esos mismos cambios de el
ejecutor integrado.
182
AWS Cloud9 Guía del usuario
Crear un compilador o ejecutor
1. En el cuadro que aparece junto a Run (Ejecutar) y Restart (Reiniciar), escriba el nombre que se
mostrará en el menú Run, Run Configurations (Ejecutar, Configuraciones de ejecución) para esta
configuración.
2. En el cuadro Command (Comando), escriba las opciones de línea de comandos personalizadas que
desee utilizar.
3. Para que esta configuración de ejecución utilice la configuración de depuración predefinida del ejecutor,
elija Run in Debug Mode (Ejecutar en modo de depuración). El icono de error cambiará a verde sobre un
fondo blanco.
4. Para que esta configuración use un directorio de trabajo específico, elija CWD, elija el directorio que se
va a usar y, a continuación, elija Select (Seleccionar).
5. Para que esta configuración de ejecución utilice variables de entorno específicas, seleccione ENV y, a
continuación, escriba el nombre y el valor de cada variable de entorno.
Para utilizar esta configuración de ejecución, abra el archivo que se corresponde con el código que desea
ejecutar. Elija Run, Run Configurations (Ejecutar, Configuraciones de ejecución) en la barra de menús y
luego elija el nombre de esta configuración de ejecución. En la pestaña de la configuración de ejecución
que se abre, elija Runner: Auto (Ejecutor: Auto), elija el ejecutor que desea utilizar y, a continuación,
seleccione Run (Ejecutar).
Note
Cualquier configuración de ejecución que cree se aplica únicamente al entorno en el que creó
esa configuración de ejecución. Para agregar esa configuración de ejecución a otro entorno, abra
el otro entorno y, a continuación, siga los pasos anteriores para crear la misma configuración de
ejecución en ese entorno.
Para utilizar este compilador o ejecutor, consulte Compilar los archivos del proyecto (p. 179) o Ejecutar el
código (p. 179).
Note
Cualquier compilador o ejecutor que cree se aplica únicamente al entorno en el que ha creado
ese compilador o ejecutor. Para agregar ese compilador o ejecutor a otro entorno, abra el otro
entorno y, a continuación, siga los pasos anteriores para crear el mismo compilador o ejecutor en
ese entorno.
183
AWS Cloud9 Guía del usuario
Definir un compilador o ejecutor
En la pestaña del compilador o ejecutor que se muestra, utilice JSON para definir el ejecutor o compilador.
Comience con el siguiente código como plantilla.
{
"cmd": [],
"info": "",
"env": {},
"selector": ""
}
{
"cmd": [],
"script": "",
"working_dir": "",
"info": "",
"env": {},
"selector": "",
"debugger": "",
"debugport": ""
}
En el código anterior:
• cmd: representa una lista separada por comas de cadenas para AWS Cloud9 que se ejecutan como un
único comando.
Cuando AWS Cloud9 ejecuta este comando, cada cadena de la lista se separará por un solo espacio.
Por ejemplo, AWS Cloud9 ejecutará "cmd": [ "ls", "$file", "$args"] como ls $file
$args, donde AWS Cloud9 reemplazará a $file por la ruta completa del archivo actual y $args
por cualquier argumento introducido después del nombre de archivo. Para obtener más información,
consulte la lista de variables admitidas más adelante en esta sección.
• script: representa un script bash (que también puede especificarse como una matriz de líneas si es
necesario para facilitar la lectura) que ejecuta el ejecutor en el terminal.
• working_dir: representa el directorio desde el que se ejecutará el ejecutor.
• info: representa cualquier cadena de texto que desee mostrar al usuario al principio de la ejecución.
Esta cadena puede contener variables, por ejemplo Running $project_path$file_name...,
donde AWS Cloud9 reemplazará $project_path por la ruta del directorio del archivo actual y
$file_name por la parte del nombre del archivo actual. Consulte la lista de variables admitidas más
adelante en esta sección.
• env: representa cualquier matriz de argumentos de línea de comandos que utiliza AWS Cloud9, por
ejemplo:
"env": {
"LANG": "en_US.UTF-8",
"SHLVL": "1"
184
AWS Cloud9 Guía del usuario
Definir un compilador o ejecutor
• selector: representa cualquier expresión regular que desea que use AWS Cloud9 para identificar los
nombres de archivo que se aplican a este ejecutor. Por ejemplo, puede especificar source.py para los
archivos de Python.
• debugger: representa el nombre de cualquier depurador disponible que desea que utilice AWS Cloud9
que sea compatible con este ejecutor. Por ejemplo, podría especificar v8 para el depurador de V8.
• debugport: representa el número de puerto que desea que utilice AWS Cloud9 durante la depuración.
Por ejemplo, podría especificar 15454 para el número de puerto que se va a utilizar.
185
AWS Cloud9 Guía del usuario
Trabajo con variables de entorno personalizadas
Por ejemplo, el siguiente archivo del compilador denominado G++.build define un compilador de GCC
que ejecuta el comando g++ con la opción -o para compilar el archivo actual (por ejemplo, hello.cpp)
en un módulo de objetos. A continuación, vincula el módulo de objetos a un programa con el mismo
nombre que el archivo actual (por ejemplo, hello). Aquí, el comando equivalente es g++ -o hello
hello.cpp.
{
"cmd": [ "g++", "-o", "$file_base_name", "$file_name" ],
"info": "Compiling $file_name and linking to $file_base_name...",
"selector": "source.cpp"
}
Como otro ejemplo, el siguiente archivo del ejecutor denominado Python.run define un ejecutor que
utiliza Python para ejecutar el archivo actual con los argumentos que se han proporcionado. Por ejemplo,
si el nombre del archivo actual es hello.py y se han proporcionado los argumentos 5 y 9 , el comando
equivalente es python hello.py 5 9.
{
"cmd": [ "python", "$file_name", "$args" ],
"info": "Running $file_name...",
"selector": "source.py"
}
Por último, el siguiente archivo del ejecutor denominado Print Run Variables.run define un ejecutor
que simplemente genera el valor de cada variable disponible y, a continuación, se detiene.
{
"info": "file_path = $file_path, file = $file, args = $args, file_name = $file_name,
file_extension = $file_extension, file_base_name = $file_base_name, packages = $packages,
project = $project, project_path = $project_path, project_name = $project_name,
project_extension = $project_extension, project_base_name = $project_base_name, hostname =
$hostname, hostname_path = $hostname_path, url = $url, port = $port, ip = $ip"
}
186
AWS Cloud9 Guía del usuario
Establecer variables de entorno
personalizadas en el nivel de comando
#!/bin/bash
echo $MY_ENV_VAR
Si establece la variable de entorno personalizada utilizando los diversos enfoques que se describen en
este tema, al intentar obtener el valor de la variable de entorno personalizada, este ajuste tendrá prioridad
con respecto a todos los demás.
Si, a continuación, ejecuta sh ./script.sh desde la línea de comandos, el terminal muestra Command
line export. (En este caso, se da por hecho que ha creado el archivo script.sh tal y como se ha
descrito anteriormente).
187
AWS Cloud9 Guía del usuario
Establecer variables de entorno de
usuario personalizadas en ~/.bashrc
Si, a continuación, ejecuta sh ./script.sh desde la línea de comandos, el terminal muestra .bashrc
file. (En este caso, se da por hecho que ha creado el archivo script.sh tal y como se ha descrito
anteriormente).
1. En la barra de menús, elija Run (Ejecutar), Run Configurations (Configuraciones de ejecución), New
Run Configuration (Nueva configuración de ejecución).
2. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a continuación,
elija Shell script (Script de shell).
3. Elija ENV y luego escriba MY_ENV_VAR en Name (Nombre) y ENV list en Value (Valor).
4. En Command (Comando), escriba ./script.sh.
5. Elija el botón Run (Ejecutar). La pestaña del ejecutor muestra ENV list. (En este caso, se da por
hecho que ha creado el archivo script.sh tal y como se ha descrito anteriormente).
La lista ENV es el único enfoque para obtener y configurar variables de entorno personalizadas
mediante código, de manera independiente de un script de shell.
188
AWS Cloud9 Guía del usuario
Ver o cambiar la configuración de proyectos
• Comportamientos del editor de código, por ejemplo, si debe utilizar tabuladores y nuevo final de línea de
archivo
• Tipos de archivo que se ignoran
• Los tipos de sugerencias y advertencias que se muestran o suprimen
• Comportamientos del formato y el código de lenguajes de programación como JavaScript, PHP, Python
y Go
• Tipos de configuraciones que se usan cuando se ejecuta y compila código
189
AWS Cloud9 Guía del usuario
Valor de configuración del proyecto que puede cambiar
Instancia EC2
Stop my environment (Detener mi entorno
Elija cuándo detener automáticamente la instancia de Amazon EC2 del entorno (si se utiliza) después
de cerrar todas las instancias del navegador web que estén conectadas al IDE para ese entorno.
Puede elegir un rango de períodos de tiempo de una semana a 30 minutos. También puede elegir que
nunca se detenga automáticamente la instancia de Amazon EC2 después de salir del IDE de AWS
Cloud9.
Si desea detener la instancia incluso antes de 30 minutos después de terminar con el IDE, puede
detenerlo manualmente mediante la interfaz de la consola (p. 195).
Si se selecciona, se inserta el número especificado de espacios en lugar de un tabulador cada vez que
pulse Tab.
Autodetect Tab Size on Load (Detectar automáticamente el tamaño de la pestaña al cargar
Si se selecciona, AWS Cloud9 intenta quitar lo que considera tabuladores y espacios innecesarios de
un archivo cada vez que ese archivo se guarda.
Buscar en archivos
Ignore these Files (Ignorar estos archivos
Cuando se buscan archivos, los tipos de archivos que AWS Cloud9 ignorará.
190
AWS Cloud9 Guía del usuario
Valor de configuración del proyecto que puede cambiar
Maximum number of files to search (in 1000) [Número máximo de archivos para buscar (en 1000)
Cuando se buscan archivos, el número máximo de archivos, en múltiplos de 1.000, que AWS Cloud9
encontrará en el ámbito actual.
Consejos y advertencias
Nivel de advertencia
Si está habilitada, AWS Cloud9 marca en archivo cada vez que se detecta un punto y coma que puede
utilizarse en el código, pero que no se utiliza.
Mark Undeclared Variables (Marcar variables no declaradas
Si está habilitada, AWS Cloud9 marca en un archivo cada vez que se detecta una variable no
declarada en el código.
Mark Unused Function Arguments (Marcar argumentos de función no usados
Si está habilitada, AWS Cloud9 marca en un archivo cada vez que se detecta un argumento no
utilizado en una función.
Ignore Messages Matching Regex (Omitir mensajes que coinciden con Regex
AWS Cloud9 no mostrará ningún mensaje que coincida con la expresión regular especificada.
Para obtener más información, consulte Writing a regular expression pattern en JavaScript Regular
Expressions en Mozilla Developer Network.
Soporte de JavaScript
Customize JavaScript Warnings With .eslintrc (Personalizar advertencias de JavaScript con .eslintrc
Si está habilitada, AWS Cloud9 utiliza un archivo .eslintrc con el fin de determinar qué
advertencias de JavaScript se habilitan o deshabilitan. Para obtener más información, consulte
Configuration File Formats en el sitio web de ESLint.
Bibliotecas JavaScript Finalización de código
Las bibliotecas de JavaScript que AWS Cloud9 utiliza para intentar sugerir o finalizar el código de
forma automática.
Format Code on Save (Formatear código al guardar
Si está habilitada, AWS Cloud9 intenta formatear el código en un archivo JavaScript cada vez que ese
archivo se guarda.
Use Builtin JSBeautify as Code Formatter (Usar Builtin JSBeautify como formateador de código
Si está habilitada, AWS Cloud9 utiliza su implementación interna de JSBeautify para intentar aumentar
la legibilidad del código en los archivos.
191
AWS Cloud9 Guía del usuario
Valor de configuración del proyecto que puede cambiar
El comando de AWS Cloud9 que se intentar ejecutar al formatear código en un archivo JavaScript.
Compilación
Builder Path in environment (Ruta del compilador en el entorno
Ejecución y depuración
Runner Path in Environment (Ruta de ejecutor en entorno
La dirección URL que se debe utilizar para obtener una vista previa de aplicaciones para el entorno.
Formateadores de código
JSBeautify settings (Configuración JSBeautify
Si está habilitada, AWS Cloud9 intenta aplicar la configuración JSBeautify cada vez que se
guardan los archivos de código.
Use JSBeautify for JavaScript (Usar JSBeautify para JavaScript
Si está habilitada, AWS Cloud9 intenta aplicar la configuración JSBeautify cada vez que se
guardan los archivos JavaScript.
Preserve Empty Lines (Mantener líneas vacías
192
AWS Cloud9 Guía del usuario
Valor de configuración del proyecto que puede cambiar
Si está habilitada, AWS Cloud9 intenta aplicar las reglas sobre espacios en blanco de JSLint en
los archivos de código. Para obtener más información, consulte "Espacios en blanco" en JSLint
Help.
Braces (Llaves
• Braces on own line (Llaves en línea propia) para mover cada llave a su línea, según sea
necesario.
• End braces on own line (Terminar llaves en línea propia) para mover cada llave de cierre a su
línea, según sea necesario.
193
AWS Cloud9 Guía del usuario
Valor de configuración del proyecto que puede cambiar
Si está habilitada, AWS Cloud9 no intenta mover las llaves de apertura y cierre de los bloques en
línea a líneas separadas, si estas llaves están en la misma línea.
Space Before Conditionals (Espacio antes de condicional
Si está habilitada, AWS Cloud9 añade un espacio antes de cada declaración condicional, según
sea necesario.
Unescape Strings (Cadenas sin escape
Si está habilitada, AWS Cloud9 convierte las cadenas de escape en sus equivalentes sin escape.
Por ejemplo, convierte \n en un carácter de nueva línea y convierte \r en un retorno de carro.
Indent Inner Html (Aplicar sangría HTML
Si está habilitada, AWS Cloud9 aplica sangría a las secciones <head> y <body> en código
HTML.
Soporte de TypeScript
Format Code on Save (Formatear código al guardar
Si está habilitada, AWS Cloud9 intenta dar formato al código TypeScript cada vez que se guardan los
archivos TypeScript.
Custom Code Formatter (Formateador de código personalizado
Soporte de PHP
Enable PHP code Completion (Habilitar completar código PHP
Ubicaciones que AWS Cloud9 utiliza para intentar ayudar a completar el código de PHP. Por ejemplo,
si tiene archivos PHP personalizados que desea que AWS Cloud9 use para la finalización y se
encuentran en algún lugar del directorio ~/environment, añada ~/environment a esta ruta.
Format Code on Save (Formatear código al guardar
Si está habilitada, AWS Cloud9 intenta dar formato al código PHP cada vez que se guardan los
archivos PHP.
Custom Code Formatter (Formateador de código personalizado
Soporte de Python
Enable Python code completion (Habilitar completar código Python
Si está habilitada, AWS Cloud9 intenta completar el código Python. Para definir las rutas que AWS
Cloud9 va a utilizar para completar el código Python, utilice la configuración PYTHONPATH.
Python Version (Versión de Python
194
AWS Cloud9 Guía del usuario
Detener manualmente la instancia EC2 del entorno
Opciones que AWS Cloud9 va a utilizar para Pylint con código de Python. Para obtener más
información, consulte el manual del usuario de Pylint en el sitio web de Pylint.
PYTHONPATH
Las rutas de las bibliotecas y los paquetes de Python que AWS Cloud9 va a utilizar. Por ejemplo, si
tiene bibliotecas y paquetes de Python personalizados en el directorio ~/environment, añada ~/
environment a esta ruta.
Format Code on Save (Formatear código al guardar
Si está habilitada, AWS Cloud9 intenta dar formato al código Python cada vez que se guardan los
archivos Python.
Custom Code Formatter (Formateador de código personalizado
Soporte de Go
Habilitar completar código Go
Si está habilitada, AWS Cloud9 intenta dar formato al código Go cada vez que se guardan los archivos
Go.
Custom Code Formatter (Formateador de código personalizado
1. Después de cerrar todas las instancias del navegador web conectadas al IDE, elija Your environments
(Sus entornos) en la consola de AWS Cloud9.
2. Elija el botón situado en la parte superior derecha del panel que muestra los detalles del entorno que
estaba utilizando y elija View details (Ver detalles).
3. En Environment details (Detalles del entorno), en EC2 Instance (Instancia EC2), elija Go To Instance
(Ir a la instancia).
4. En la consola de Amazon EC2, en Instance state (Estado de la instancia), elija la casilla de verificación
para seleccionar la instancia de su entorno (Instance state [Estado de la instancia] puede indicar que
todavía se está ejecutando la instancia).
5. Elija la instancia y seleccione Instance state (Estado de la instancia) y Stop instance (Detener
instancia).
6. Cuando se le pida que confirme, elija Stop. Puede que transcurran unos minutos hasta que la
instancia se detenga.
195
AWS Cloud9 Guía del usuario
Trabajo con la configuración de usuario
A medida que modifica la configuración de usuario, AWS Cloud9 envía esos cambios a la nube y los
asocia a su usuario de IAM. AWS Cloud9 también examina constantemente la nube para comprobar si hay
cambios en la configuración de usuario asociada a su usuario de IAM y aplica esta configuración al entorno
actual. Este comportamiento le permite disfrutar del mismo aspecto independientemente del entorno de
AWS Cloud9 en el que trabaja.
Note
AWS Cloud9 utiliza las API internas GetUserSettings y UpdateUserSettings para
almacenar y recuperar la configuración del IDE.
Para obtener más información, consulte el tema sobre cambios de la configuración de usuario que puede
realizar (p. 197).
196
AWS Cloud9 Guía del usuario
Cambios de la configuración de usuario que puede realizar
Generales
Reset to Factory Settings (Restablecer la configuración de fábrica
Cada vez que intente salir de IDE, AWS Cloud9 le pedirá que confirme si desea salir.
Interfaz de usuario
Enable UI Animations (Habilitar animaciones de IU
197
AWS Cloud9 Guía del usuario
Cambios de la configuración de usuario que puede realizar
Use an Asterisk (*) to Mark Changed Tabs (Utilizar un asterisco (*) para marcar las pestañas cambiadas
AWS Cloud9 añade un asterisco (*) a las pestañas que tienen cambios, pero en las que aún no se ha
guardado el contenido.
Display Title of Active Tab as Browser Title (Mostrar título de pestaña activa como título del navegador
AWS Cloud9 cambia el título de la pestaña del navegador web asociada por el título de la pestaña
activa (por ejemplo, Untitled1 (Sintítulo1), hello.js, Terminal, Preferences (Preferencias), etc.).
Automatically Close Empty Panes (Cerrar automáticamente los paneles vacíos
Siempre que recargue un entorno, AWS Cloud9 cerrará automáticamente cualquier panel que
considere que está vacío.
Environment Files Icon and Selection Style (Icono de archivos de entorno y estilo de selección
El icono que utiliza AWS Cloud9 para los archivos del entorno y los comportamientos de selección de
archivos que utiliza AWS Cloud9.
Colaboración
Show Notification Bubbles (Mostrar burbujas de notificación
AWS Cloud9 muestra notificaciones si el entorno es un entorno compartido en el que varios usuarios
colaboran activamente.
Disable collaboration security warning (Deshabilitar advertencia de seguridad de colaboración
AWS Cloud9 subraya el texto ingresado por otros miembros del entorno con resaltados relacionados
en el margen interno.
Panel Tree y Go
Ámbito de Go to Anything (Ir a cualquier punto) a Favoritos
Go to File (Ir a archivo) en la ventana Go (Ir) muestra solo los resultados de Favorites (Favoritos) en la
ventana Environment (Entorno).
Habilitar Vista previa en Go to Anything (Ir a cualquier punto
Go to File (Ir a archivo) en la ventana Go (Ir) muestra el contenido del archivo que coincide a medida
que escribe.
Enable Preview on Tree Selection (Habilitar vista previa al seleccionar árbol
AWS Cloud9 muestra el archivo elegido con un solo clic en lugar de con un doble clic.
Hidden File Pattern (Patrón de archivos ocultos
198
AWS Cloud9 Guía del usuario
Cambios de la configuración de usuario que puede realizar
Reveal Active File in Project Tree (Revelar archivo activo en árbol de proyecto
Buscar en archivos
Search In This Path When 'Project' Is Selected (Buscar en esta ruta cuando el "Proyecto" está
seleccionado
En la barra de búsqueda en los archivos, cuando Project (Proyecto) está seleccionado en el ámbito de
búsqueda, la ruta en la que se debe buscar.
Show Full Path in Results (Mostrar ruta completa en los resultados
Muestra la ruta completa a cada archivo coincidente en la pestaña Search Results (Resultados de
búsqueda).
Clear Results Before Each Search (Borrar resultados antes de cada búsqueda
Borra la pestaña Search Results (Resultados de búsqueda) de los resultados de las búsquedas
anteriores antes de que empiece la búsqueda actual.
Scroll Down as Search Results Come In (Desplazarse hacia abajo a medida que se muestran los
resultados de la búsqueda
Desplaza la pestaña Search Results (Resultados de búsqueda) hasta la parte inferior de la lista de
resultados a medida que se identifican los resultados de la búsqueda.
Open Files when Navigating Results with (Up and Down) (Abrir archivos al navegar por los resultados con
(Arriba y Abajo)
Al presionar las teclas de flecha arriba y abajo en la pestaña Search Results (Resultados de
búsqueda), en la lista de resultados, se abre cada archivo coincidente.
Metadatos
Maximum of Undo Stack Items in Meta Data (Número máximo de elementos de la pila de deshacer en
metadatos
El número máximo de elementos que AWS Cloud9 mantiene en su lista de acciones que se pueden
deshacer.
Monitores
Auto-Merge Files When a Conflict Occurs (Fusionar archivos automáticamente cuando se produce un
conflicto
AWS Cloud9 intenta fusionar automáticamente los archivos siempre que se produce un conflicto de
fusión.
199
AWS Cloud9 Guía del usuario
Cambios de la configuración de usuario que puede realizar
Terminal
Color del texto
El número de líneas que puede desplazarse hacia delante o hacia atrás en las pestañas Terminal.
Use AWS Cloud9 as the Default Editor (Utilizar Cloud9 como editor predeterminado
Salida
Color del texto
AWS Cloud9 le pedirá que guarde cualquier pestaña de configuración que no esté guardada antes de
que se cierre.
Preserve log between runs (Conservar registro entre ejecuciones
AWS Cloud9 intenta añadir un carácter de cierre que coincida a cada carácter de inicio relacionado
que se escriba en las pestañas del editor, como, por ejemplo, para corchetes, comillas y llaves.
200
AWS Cloud9 Guía del usuario
Cambios de la configuración de usuario que puede realizar
Wrap Selection with Brackets, Quote, etc. (Incluir selección entre corchetes, comillas, etc.
AWS Cloud9 intenta insertar un carácter de cierre que coincida al final del texto en las pestañas del
editor después de que se seleccione el texto y se escriba un carácter relacionado con el inicial, como,
por ejemplo, para corchetes, comillas y llaves.
Code Folding (Plegado de código
AWS Cloud9 intenta mostrar, expandir, ocultar o contraer secciones de código en las pestañas del
editor de acuerdo con las reglas de sintaxis del código relacionado.
Fade Fold Widgets (Widgets de pliegue de desvanecimiento
AWS Cloud9 muestra los controles de plegado del código en el margen interior siempre que el ratón
se detenga sobre esos controles en las pestañas del editor.
Full Line Selection (Selección de línea completa
AWS Cloud9 selecciona una línea completa a la que se hace triple clic en las pestañas del editor.
Highlight Active Line (Resaltar línea activa
AWS Cloud9 resalta toda la línea activa en las pestañas del editor.
Highlight Gutter Line (Resaltar línea de margen interior
AWS Cloud9 resalta la ubicación del margen interior junto a la línea activa en las pestañas del editor.
Show Invisible Characters (Mostrar caracteres invisibles
AWS Cloud9 muestra lo que considera que son caracteres invisibles en las pestañas del editor; por
ejemplo, retornos de carro y saltos de línea, espacios y tabulaciones.
Show Gutter (Mostrar margen interior
AWS Cloud9 muestra guías para visualizar más fácilmente el texto con sangría en las pestañas del
editor.
Highlight Selected Word (Resaltar palabra seleccionada
AWS Cloud9 selecciona una palabra completa en la que se hace doble clic en una pestaña del editor.
Scroll Past the End of the Document (Desplazarse hasta después del final del documento
El comportamiento para permitir que el usuario se desplace más allá del final del archivo actual en las
pestañas del editor.
201
AWS Cloud9 Guía del usuario
Cambios de la configuración de usuario que puede realizar
• Full Editor Height (Altura del editor completa): permite el desplazamiento más allá del final del
archivo actual hasta la altura completa de la pantalla del editor.
Animate Scrolling (Animar desplazamiento
AWS Cloud9 aplica comportamientos de animación durante las acciones de desplazamiento en las
pestañas del editor.
Font Family (Familia de fuentes
AWS Cloud9 intenta suavizar la visualización de texto en las pestañas del editor.
Show Print Margin (Mostrar margen de impresión
Mostrar una línea vertical en las pestañas del editor después de la posición especificada del carácter.
Mouse Scroll Speed (Velocidad de desplazamiento del ratón
La velocidad relativa del desplazamiento del ratón en las pestañas del editor. Los valores más altos
producen un desplazamiento más rápido.
Cursor Style (Estilo del cursor
Input
Complete As You Type (Completar al escribir
202
AWS Cloud9 Guía del usuario
Cambios de la configuración de usuario que puede realizar
AWS Cloud9 intenta completar el texto a medida que lo escribe después de presionar Enter (Intro).
Highlight Variable Under Cursor (Resaltar variable bajo cursor
AWS Cloud9 va a cualquier definición original de código en la que se haga clic mientras se mantiene
pulsada la tecla Command en Mac o Ctrl en Windows.
Consejos y advertencias
Enable Hints and Warnings (Habilitar consejos y advertencias
AWS Cloud9 no muestra ningún mensaje que coincida con la expresión regular especificada. Para
obtener más información, consulte Writing a regular expression pattern en JavaScript Regular
Expressions en Mozilla Developer Network.
Ejecución y depuración
Save All Unsaved Tabs Before Running (Guardar todas las pestañas no guardadas antes de ejecutar
Antes de ejecutar el código asociado, AWS Cloud9 intenta guardar todos los archivos sin guardar con
pestañas abiertas.
Vista previa
Preview Running Apps (Vista previa de aplicaciones en ejecución
AWS Cloud9 intenta mostrar una vista previa de la salida del código en la pestaña activa cuando se
selecciona el botón Preview (Vista previa).
Default Previewer (Visor de vista previa predeterminado
El formato que utiliza AWS Cloud9 para obtener una vista previa de la salida de código.
El comportamiento que utiliza AWS Cloud9 para la vista previa de la salida de código cuando se
guarda un archivo de código.
203
AWS Cloud9 Guía del usuario
Trabajar con la configuración de
usuarios y de proyectos de AWS
Compilación
Automatically Build Supported Files (Compilar automáticamente archivos compatibles
AWS Cloud9 intenta compilar automáticamente el código actual si se activa una acción de compilación
y el código está en un formato compatible.
Para ver o cambiar esta configuración, elija AWS Cloud9, Preferences (AWS Cloud9, Preferencias) en la
barra de menús de un IDE para un entorno.
Qué región de AWS se va a utilizar en la sección Lambda de la ventana AWS Resources (Recursos
de AWS).
AWS Credenciales temporales administradas por
Si la opción está activada, se usan las credenciales temporales administradas por AWS al llamar a los
servicios de AWS desde AWS CLI, aws-shell o el código de AWS SDK de un entorno. Para obtener
más información, consulte Credenciales temporales administradas de AWS (p. 569).
Si está opción está activada, muestra el editor de plantillas de AWS Serverless Application Model
(AWS SAM) en el modo visual al utilizar la sección Lambda de la ventana AWS Resources (Recursos
de AWS). Si está desactivada, muestra el editor en modo de texto.
204
AWS Cloud9 Guía del usuario
Trabajo con enlaces de teclado
205
AWS Cloud9 Guía del usuario
Cambio del modo de teclado
206
AWS Cloud9 Guía del usuario
Eliminación de todos los enlaces de teclado personalizados
Note
1. En la barra de menús, elija AWS Cloud9 y, a continuación, Open Your Keymap (Abrir su Keymap).
2. En el archivo keybindings.settings, defina los enlaces de teclado que desea cambiar, por
ejemplo:
[
{
"command": "addfavorite",
"keys": {
"win": ["Ctrl-Alt-F"],
"mac": ["Ctrl-Option-F"]
}
},
{
"command": "copyFilePath",
"keys": {
"win": ["Ctrl-Shift-F"],
"mac": ["Alt-Shift-F"]
}
}
]
En el ejemplo, addFavorite y copyFilePath son los nombres de los enlaces de teclado incluidos
en la columna Keystroke (Combinación de teclas) del panel Keybindings (Enlaces de teclado) en la
pestaña Preferences (Preferencias). Los enlaces de teclado le que interesan son win y mac para
Windows o Linux y Mac, respectivamente.
Para aplicar los cambios, guarde el archivo keybindings.settings. Los cambios deberían
aparecer en el panel Keybindings (Enlaces de teclado) tras un breve retraso.
207
AWS Cloud9 Guía del usuario
Trabajar con temas
Tema flat
Aplica el tema seleccionado a los archivos de código de todo el IDE de AWS Cloud9.
Anulaciones de tema
Important
AWS Cloud9 ya no es compatible con la característica que permitía a los usuarios anular los
temas del IDE mediante la actualización del archivo styles.css. Los usuarios pueden seguir
viendo, editando y guardando el archivo styles.css mediante el editor, pero las anulaciones de
tema no se aplican cuando se carga el IDE de AWS Cloud9.
Si AWS Cloud9 detecta que el archivo styles.css se ha modificado, se muestra el siguiente
mensaje en el IDE:
208
AWS Cloud9 Guía del usuario
Administración de scripts de inicialización
AWS Cloud9 ya no es compatible con la característica experimental que permitía a los usuarios
personalizar un script de inicialización que se ejecutaba automáticamente en el IDE. Los usuarios
pueden seguir viendo, editando y guardando el archivo init.js mediante el editor, pero
los scripts de inicialización personalizados ya no pueden ejecutarse y no pueden modificar el
comportamiento del IDE.
Si AWS Cloud9 detecta que el archivo init.js se ha modificado, se muestra el siguiente
mensaje en el IDE:
Se ha interrumpido la asistencia para los scripts de inicialización. El contenido de este archivo
init.js ya no se ejecutará al cargar el IDE de AWS Cloud9.
Si necesita ejecutar un script de inicialización personalizado para el IDE, contacte con nosotros
directamente.
Puede editar y guardar el archivo init.js mediante el editor, pero su script personalizado no
podrá ejecutarse en el IDE.
209
AWS Cloud9 Guía del usuario
Generales
Generales
210
AWS Cloud9 Guía del usuario
Generales
211
AWS Cloud9 Guía del usuario
Pestañas
Pestañas
212
AWS Cloud9 Guía del usuario
Pestañas
213
AWS Cloud9 Guía del usuario
Paneles
Paneles
Descripción Enlace de teclado Comando
Editor de código
Descripción Enlace de teclado Comando
214
AWS Cloud9 Guía del usuario
Editor de código
215
AWS Cloud9 Guía del usuario
Editor de código
216
AWS Cloud9 Guía del usuario
Editor de código
217
AWS Cloud9 Guía del usuario
Editor de código
218
AWS Cloud9 Guía del usuario
emmet
emmet
219
AWS Cloud9 Guía del usuario
Terminal
Terminal
Descripción Enlace de teclado Comando
Ejecución y depuración
Descripción Enlace de teclado Comando
220
AWS Cloud9 Guía del usuario
Referencia de enlaces de teclado Vim para MacOS
Generales
221
AWS Cloud9 Guía del usuario
Generales
222
AWS Cloud9 Guía del usuario
Generales
223
AWS Cloud9 Guía del usuario
Pestañas
Pestañas
224
AWS Cloud9 Guía del usuario
Paneles
Paneles
225
AWS Cloud9 Guía del usuario
Editor de código
Editor de código
Descripción Enlace de teclado Comando
226
AWS Cloud9 Guía del usuario
Editor de código
227
AWS Cloud9 Guía del usuario
Editor de código
228
AWS Cloud9 Guía del usuario
Editor de código
229
AWS Cloud9 Guía del usuario
Editor de código
230
AWS Cloud9 Guía del usuario
emmet
emmet
Descripción Enlace de teclado Comando
Terminal
Descripción Enlace de teclado Comando
Ejecución y depuración
Descripción Enlace de teclado Comando
231
AWS Cloud9 Guía del usuario
Referencia de enlaces de teclado Emacs para MacOS
232
AWS Cloud9 Guía del usuario
Generales
Generales
233
AWS Cloud9 Guía del usuario
Generales
234
AWS Cloud9 Guía del usuario
Pestañas
Pestañas
235
AWS Cloud9 Guía del usuario
Paneles
Paneles
236
AWS Cloud9 Guía del usuario
Editor de código
Editor de código
237
AWS Cloud9 Guía del usuario
Editor de código
238
AWS Cloud9 Guía del usuario
Editor de código
239
AWS Cloud9 Guía del usuario
Editor de código
240
AWS Cloud9 Guía del usuario
Editor de código
241
AWS Cloud9 Guía del usuario
emmet
emmet
242
AWS Cloud9 Guía del usuario
Terminal
Terminal
Descripción Enlace de teclado Comando
Ejecución y depuración
Descripción Enlace de teclado Comando
243
AWS Cloud9 Guía del usuario
Generales
Generales
244
AWS Cloud9 Guía del usuario
Generales
245
AWS Cloud9 Guía del usuario
Generales
246
AWS Cloud9 Guía del usuario
Pestañas
Pestañas
247
AWS Cloud9 Guía del usuario
Paneles
Paneles
248
AWS Cloud9 Guía del usuario
Editor de código
Editor de código
249
AWS Cloud9 Guía del usuario
Editor de código
250
AWS Cloud9 Guía del usuario
Editor de código
251
AWS Cloud9 Guía del usuario
Editor de código
252
AWS Cloud9 Guía del usuario
Editor de código
253
AWS Cloud9 Guía del usuario
emmet
emmet
254
AWS Cloud9 Guía del usuario
Terminal
Terminal
Descripción Enlace de teclado Comando
Ejecución y depuración
Descripción Enlace de teclado Comando
255
AWS Cloud9 Guía del usuario
Referencia de enlaces de teclado
predeterminados para Windows/Linux
Generales
256
AWS Cloud9 Guía del usuario
Generales
257
AWS Cloud9 Guía del usuario
Generales
258
AWS Cloud9 Guía del usuario
Pestañas
Pestañas
259
AWS Cloud9 Guía del usuario
Paneles
Paneles
260
AWS Cloud9 Guía del usuario
Editor de código
Editor de código
261
AWS Cloud9 Guía del usuario
Editor de código
262
AWS Cloud9 Guía del usuario
Editor de código
263
AWS Cloud9 Guía del usuario
Editor de código
264
AWS Cloud9 Guía del usuario
Editor de código
265
AWS Cloud9 Guía del usuario
emmet
emmet
Terminal
266
AWS Cloud9 Guía del usuario
Ejecución y depuración
Ejecución y depuración
267
AWS Cloud9 Guía del usuario
Generales
Generales
268
AWS Cloud9 Guía del usuario
Generales
269
AWS Cloud9 Guía del usuario
Pestañas
Pestañas
270
AWS Cloud9 Guía del usuario
Paneles
Paneles
271
AWS Cloud9 Guía del usuario
Editor de código
Editor de código
272
AWS Cloud9 Guía del usuario
Editor de código
273
AWS Cloud9 Guía del usuario
Editor de código
274
AWS Cloud9 Guía del usuario
Editor de código
275
AWS Cloud9 Guía del usuario
Editor de código
276
AWS Cloud9 Guía del usuario
emmet
emmet
277
AWS Cloud9 Guía del usuario
Terminal
Terminal
Descripción Enlace de teclado Comando
Ejecución y depuración
Descripción Enlace de teclado Comando
278
AWS Cloud9 Guía del usuario
Generales
Generales
279
AWS Cloud9 Guía del usuario
Generales
280
AWS Cloud9 Guía del usuario
Pestañas
Pestañas
281
AWS Cloud9 Guía del usuario
Pestañas
282
AWS Cloud9 Guía del usuario
Paneles
Paneles
Descripción Enlace de teclado Comando
Editor de código
Descripción Enlace de teclado Comando
283
AWS Cloud9 Guía del usuario
Editor de código
284
AWS Cloud9 Guía del usuario
Editor de código
285
AWS Cloud9 Guía del usuario
Editor de código
286
AWS Cloud9 Guía del usuario
Editor de código
287
AWS Cloud9 Guía del usuario
emmet
emmet
288
AWS Cloud9 Guía del usuario
Terminal
Terminal
Ejecución y depuración
289
AWS Cloud9 Guía del usuario
Referencia de enlaces de teclado
Sublime para Windows/Linux
Generales
290
AWS Cloud9 Guía del usuario
Generales
291
AWS Cloud9 Guía del usuario
Generales
292
AWS Cloud9 Guía del usuario
Pestañas
Pestañas
Descripción Enlace de teclado Comando
293
AWS Cloud9 Guía del usuario
Pestañas
294
AWS Cloud9 Guía del usuario
Paneles
Paneles
Descripción Enlace de teclado Comando
Editor de código
Descripción Enlace de teclado Comando
295
AWS Cloud9 Guía del usuario
Editor de código
296
AWS Cloud9 Guía del usuario
Editor de código
297
AWS Cloud9 Guía del usuario
Editor de código
298
AWS Cloud9 Guía del usuario
Editor de código
299
AWS Cloud9 Guía del usuario
emmet
emmet
300
AWS Cloud9 Guía del usuario
Terminal
Terminal
Ejecución y depuración
301
AWS Cloud9 Guía del usuario
Referencia de comandos
1. Para mostrar la ventana Go (Ir), seleccione el botón Go (Ir) (el icono de lupa). Si la ventana Go (Ir) no
está visible, elija Window, Go (Ventana, Ir) en la barra de menús.
2. En el cuadro Go to Anything (Ir a cualquier punto), comience a escribir el nombre de un grupo de
comandos (Editor de código, por ejemplo). Un grupo contiene varios comandos organizados en torno a
una característica del IDE o un tema común.
3. En el encabezado Commands (Comandos), elija un comando específico del grupo para ejecutarlo.
302
AWS Cloud9 Guía del usuario
Trabajo con instancias de Amazon Lightsail
La característica AWS Toolkit proporciona una práctica interfaz visual para trabajar con los
principales servicios de AWS, como AWS Lambda, AWS Serverless Application Model y Amazon
S3. Para obtener más información, consulte AWS Toolkit (p. 338).
Temas
• Trabajo con instancias de Amazon Lightsail en el entorno de desarrollo integrado (IDE) de AWS
Cloud9 (p. 303)
• Trabajo con proyectos de AWS CodeStar en el entorno de Desarrollo Integrado (IDE) de AWS
Cloud9 (p. 310)
• Trabajo con AWS CodePipeline en el entorno de desarrollo integrado (IDE) de AWS Cloud9 (p. 312)
Lightsail es la manera más sencilla de dar los primeros pasos en AWS para desarrolladores, pequeños
negocios, estudiantes y otros usuarios que necesitan una solución de servidor privado virtual (VPS)
sencilla. Lightsail proporciona a los desarrolladores capacidad informática, almacenamiento y red, así
como funciones para implementar y administrar sitios y aplicaciones web en la nube. Lightsail incluye todo
lo que necesita para lanzar rápidamente su proyecto —una máquina virtual, almacenamiento basado en
SSD, transferencia de datos, administración de DNS y una dirección IP estática—, a un precio mensual
bajo y predecible. Para obtener más información, consulte Características de Amazon Lightsail.
En este tema va a crear y configurar una instancia de Lightsail basada en Linux que sea compatible con
AWS Cloud9. A continuación creará un entorno de desarrollo de SSH de AWS Cloud9 y lo conectará a la
instancia de Lightsail.
Note
El uso de estos procedimientos puede producir cargos en su cuenta de AWS. Entre estos se
incluyen posibles cargos por servicios como Lightsail. Para obtener más información, consulte
Precios de Amazon Lightsail.
Para crear y configurar una solución más avanzada que incluya una cadena de herramientas con
el IDE de AWS Cloud9, control de fuentes, compilación, implementación, servidores virtuales o
recursos sin servidor, y mucho más, omita el resto de este tema y consulte Trabajo con proyectos
de AWS CodeStar (p. 310) en su lugar.
Para utilizar el IDE de AWS Cloud9 y trabajar con una instancia de Amazon EC2 que se ejecute
en Amazon Linux o Ubuntu Server y que no contenga código de muestra, omita el resto de este
tema y consulte Introducción: tutoriales básicos (p. 32) en su lugar.
303
AWS Cloud9 Guía del usuario
Paso 1: Crear una instancia de Lightsail basada en Linux
• Una dirección IP pública y privada. (Puede crear una IP pública estática más adelante).
• Acceso a la instancia mediante SSH a través del puerto 22, HTTP a través del puerto 80 y HTTPS a
través del puerto 443. (Puede cambiar estos valores).
• Un disco de almacenamiento en bloque. (Puede adjuntar discos adicionales más adelante).
• Informes de sistema integrados.
La consola de Lightsail le permite realizar copias de seguridad, reiniciar, detener o eliminar la instancia con
posterioridad.
Se recomienda iniciar sesión con las credenciales de un usuario administrador de IAM en su cuenta de
AWS. Si no puede iniciar sesión como usuario administrador de IAM, consulte con el administrador de
su cuenta de AWS.
2. Si se le solicita, elija el idioma que desea utilizar en la consola y, a continuación, seleccione Save
(Guardar).
3. Si se le solicita, elija Let's get started (Comencemos).
4. En la página de inicio, con la pestaña Instances (Instancias) ya seleccionada, elija Create instance
(Crear instancia).
5. En Instance location (Ubicación de la instancia), asegúrese de que la ubicación coincida con una región
de AWS en la que desee crear la instancia donde AWS Cloud9 esté disponible. Para obtener más
información, consulte AWS Cloud9 en Referencia general de Amazon Web Services. Para cambiar
la región de AWS, la zona de disponibilidad o ambas, elija Change AWS Region and Availability
Zone (Cambiar región de AWS y zona de disponibilidad) y, a continuación, siga las instrucciones que
aparecen en pantalla.
6. En Pick your instance image (Elija su imagen de instancia), una vez que haya elegido Linux/Unix para
Select a platform (Seleccione una plataforma) y Apps + OS (Aplicaciones + SO) para Select a blueprint
(Seleccione un proyecto), seleccione un proyecto.
304
AWS Cloud9 Guía del usuario
Paso 2: Configurar la instancia
para utilizarla con AWS Cloud9
Note
Si desea crear una instancia sin aplicación, elija OS Only (Solo SO) en lugar de Apps + OS
(Aplicaciones + SO) y, a continuación, seleccione una distribución.
Para obtener más información acerca de las opciones disponibles, consulte la sección
relacionada con la selección de una imagen de instancia de Amazon Lightsail en el sitio web de
Lightsail.
7. En Choose your instance plan (Seleccione su plan de instancia), elija un plan o deje el plan
seleccionado de manera predeterminada.
8. En Name your instance (Asignar nombre a la instancia), escriba un nombre para la instancia o deje el
nombre propuesto de manera predeterminada.
9. Para el número de instancias, escriba el número de instancias que desea crear o deje el valor
predeterminado de una sola instancia (x 1).
10.Seleccione Create (Crear OpsItem).
305
AWS Cloud9 Guía del usuario
Paso 2: Configurar la instancia
para utilizarla con AWS Cloud9
Note
1. Con la consola de Lightsail abierta del paso anterior, en la pestaña Instances (Instancias), en la tarjeta
de la instancia, elija el nombre de la instancia.
2. En la pestaña Connect (Conectar), en Connect using your own SSH client (Conectarse a través de su
propio cliente SSH), apunte los valores de Public IP (IP pública) y User name (Nombre de usuario),
puesto que los necesitará más adelante.
306
AWS Cloud9 Guía del usuario
Paso 3: Crear un entorno de desarrollo
SSH de AWS Cloud9 y conectarse a este
5. Compruebe si se ha instalado Python y, si es así, asegúrese de que la versión sea la 2.7. Para
comprobar la versión, ejecute el comando python --version y anote el número de versión que
aparece. Si no aparece ningún número de versión o si la versión no es 2.7, instale Python 2.7 en la
instancia ejecutando el comando sudo apt install -y python-minimal.
6. Compruebe si se ha instalado Node.js y, si es así, compruebe que la versión sea 0.6.16 o una versión
posterior. Para comprobar la versión, ejecute el comando node --version y anote el número de
versión que aparece. Si no aparece ningún número de versión o si la versión no es 0.6.16 o posterior, le
recomendamos que utilice Node Version Manager (nvm) para instalar Node.js en la instancia.
Para ello, ejecute los siguientes comandos de uno en uno, en el orden que se indica a continuación,
para actualizar la instancia, instale Node Version Manager (nvm) en la instancia, active nvm en la
instancia y, a continuación, instale la versión más reciente de Node.js en la instancia.
7. Ejecute el comando which node y anote el valor que aparece. La necesitará más adelante.
Note
1. Con la sesión de terminal abierta desde el paso anterior, inicie sesión en la consola de AWS Cloud9,
como sigue:
• Si es la única persona que utiliza la cuenta de AWS o es un usuario de IAM en una única cuenta de
AWS, vaya a https://console.aws.amazon.com/cloud9.
• Si su organización utiliza AWS Single Sign-On (SSO), solicite instrucciones de inicio de sesión al
administrador de la cuenta de AWS.
Note
En este paso trabajará con dos servicios de AWS diferentes al mismo tiempo. Si inició sesión
en la consola de Lightsail como usuario administrador de IAM, pero desea que otra entidad sea
la propietaria del nuevo entorno de SSH, le sugerimos que abra otro navegador web e inicie
sesión en la consola de AWS Cloud9 como dicha entidad.
2. En la consola de AWS Cloud9, elija la región de AWS que coincida con la región en la que ha creado la
instancia.
307
AWS Cloud9 Guía del usuario
Paso 3: Crear un entorno de desarrollo
SSH de AWS Cloud9 y conectarse a este
3. Si aparece una página de bienvenida, en New AWS Cloud9 environment (Nuevo entorno de AWS
Cloud9), elija Create environment (Crear entorno). De lo contrario, elija Create environment (Crear
entorno).
O bien:
4. En la página Name environment (Asignar nombre al entorno), en Name (Nombre), escriba un nombre
para el entorno.
5. Para agregar una descripción del entorno, escríbala en Description (Descripción).
6. Elija Next Step (Paso siguiente).
7. En la página Configure settings (Configurar ajustes), en Environment type (Tipo de entorno), elija
Connect and run in remote server (SSH) (Conectar y ejecutar en servidor remoto [SSH]).
8. En User (Usuario), escriba el valor de User name (Nombre de usuario) que había anotado antes.
9. En Host, escriba el valor de Public IP (IP pública) que había anotado antes.
10.En Port (Puerto), deje el valor predeterminado, 22.
11.Amplíe Advanced settings (Configuración avanzada).
12.En Environment path (Ruta del entorno), escriba la ruta desde la que AWS Cloud9 empezará después
de iniciar sesión, que es ~/ (la raíz del directorio de inicio del usuario).
308
AWS Cloud9 Guía del usuario
Paso 3: Crear un entorno de desarrollo
SSH de AWS Cloud9 y conectarse a este
13.En Node.js binary path (Ruta binaria de Node.js), escriba el valor del comando which node que había
anotado antes.
14.Deje SSH jump host (Host de salto de SSH) en blanco.
15.Almacene la clave SSH pública que crea AWS Cloud9 para este entorno en el portapapeles del sistema.
Para ello, elija Copy key to clipboard (Copiar clave en portapapeles).
Note
Para ver el valor de la clave SSH pública que se ha copiado, amplíe View public SSH key (Ver
clave pública SSH).
16.Guarde el valor de la clave SSH pública que acaba de copiar en la instancia. Para ello, utilice vi, un
conocido editor de texto que ya está instalado en la instancia:
a. En la sesión de terminal de la instancia, ejecute el comando vi ~/.ssh/authorized_keys.
b. En el editor vi que aparece, vaya al final del archivo y cambie al modo de inserción. Para ello, pulse G
y, a continuación, A. (- INSERT: aparece en la parte inferior del editor vi.)
c. Añada dos retornos de carro al final del archivo pulsando Enter dos veces.
d. Pegue el contenido del portapapeles del sistema, que contiene el valor de la clave SSH pública que
acaba de copiar, en el portapapeles de la sesión de terminal. Para ello, en la esquina inferior de la
ventana de la sesión de terminal, elija el botón de portapapeles y, a continuación, pegue el contenido
del portapapeles del sistema en el cuadro.
e. Pegue el contenido del portapapeles de la sesión de terminal en el editor vi. Para ello, en el punto de
inserción del editor vi, pulse Ctrl + Shift + V.
f. Guarde el archivo. Para ello, pulse Esc para entrar en modo de comando. (-- INSERT -- desaparece
de la parte inferior del editor vi). Escriba :wq (para write (escribir) el archivo y, a continuación, quit
para salir del editor vi); a continuación, pulse Enter.
17.En la consola de AWS Cloud9, elija Next step (Paso siguiente).
18.En la página Review choices (Revisar opciones), elija Create environment (Crear entorno). Espere
mientras AWS Cloud9 crea su entorno. A continuación, se muestra el IDE de AWS Cloud9 para el
entorno. Esto puede tardar varios minutos.
Después de crear el entorno, AWS Cloud9 muestra el IDE de AWS Cloud9 del entorno.
Si AWS Cloud9 no muestra el IDE transcurridos al menos cinco minutos, puede que haya un problema con
su navegador web, los permisos de acceso de AWS, la instancia o la nube virtual privada (VPC) asociada.
Para ver posibles soluciones, consulte No se puede abrir un entorno (p. 582) en Solución de problemas.
309
AWS Cloud9 Guía del usuario
Paso 4: Utilizar el IDE de AWS Cloud9
para cambiar el código en la instancia
Para obtener información sobre cómo utilizar el IDE, consulte Recorrido del IDE de AWS Cloud9 (p. 116).
Para obtener información sobre cómo cambiar el código en la instancia, le recomendamos los siguientes
recursos.
AWS CodeStar es un servicio basado en la nube para crear, administrar y trabajar con proyectos de
desarrollo de software en AWS. Puede desarrollar, compilar e implementar aplicaciones rápidamente en
AWS con un proyecto de AWS CodeStar. Los proyectos de AWS CodeStar crean e integran los servicios
de AWS para sus cadenas de herramientas de proyecto. Según la plantilla de proyecto de AWS CodeStar
que elija, esa cadena de herramientas puede incluir control de código fuente, compilación, implementación,
servidores virtuales o recursos sin servidor, y mucho más. Para obtener más información, consulte la Guía
del usuario de AWS CodeStar.
310
AWS Cloud9 Guía del usuario
Paso 1: Prepararse para trabajar
con proyectos de AWS CodeStar
Note
El uso de estos procedimientos puede producir cargos en su cuenta de AWS. Entre estos se
incluyen posibles cargos por servicios como Amazon EC2, AWS CodeStar y los servicios de AWS
compatibles con AWS CodeStar. Para obtener más información, consulte Precios de Amazon
EC2, Precios de AWS CodeStar y los precios de los servicios en la nube.
Para utilizar el IDE de AWS Cloud9 para trabajar con una instancia de Amazon EC2 recién
lanzada que se haya preconfigurado con una aplicación o un marco muy conocidos, como
WordPress, MySQL, PHP, Node.js, Nginx, Drupal o Joomla, así como con una distribución Linux
como Ubuntu, Debian, FreeBSD u openSUSE, puede usar Amazon Lightsail junto con AWS
Cloud9. Para ello, omita el resto de este tema y consulte Trabajo con instancias de Amazon
Lightsail (p. 303).
Para utilizar el IDE de AWS Cloud9 para trabajar con una instancia de Amazon EC2 recién
lanzada que ejecute Amazon Linux y no contenga código de muestra, omita el resto de este tema
y consulte Introducción: tutoriales básicos (p. 32) en su lugar.
• Paso 1: Prepararse para trabajar con proyectos de AWS CodeStar (p. 311)
• Paso 2: Crear un proyecto en AWS CodeStar (p. 311)
• Paso 3: Crear un entorno de desarrollo de AWS Cloud9 y conectarlo con el proyecto (p. 311)
Si ha utilizado AWS CodeStar antes, vaya a Paso 2: Crear un proyecto en AWS CodeStar (p. 311).
En este paso, siga las instrucciones que se describen en Configuración de AWS CodeStar en la Guía del
usuario de AWS CodeStar. No cree una cuenta de AWS, un usuario de IAM ni un grupo de IAM nuevo
siguiendo esas instrucciones. Utilice los que haya creado o identificado en Configuración de equipos para
AWS Cloud9 (p. 9). Cuando termine de seguir esas instrucciones, vuelva a este tema.
Si ya tiene un proyecto en AWS CodeStar que desee utilizar, vaya a Paso 3: Crear un entorno de
desarrollo de AWS Cloud9 y conectarlo al proyecto (p. 311).
En este paso, siga las instrucciones que se describen en Crear un proyecto en AWS CodeStar de la Guía
del usuario de AWS CodeStar. En el asistente para crear proyectos de AWS CodeStar, cuando acceda a
las páginas Set up tools (Configurar herramientas) o Connect to your source repository (Conectarse a su
repositorio de código fuente), elija Skip (Omitir) y, a continuación, vuelva a este tema.
En este paso, utilice uno de los siguientes conjuntos de instrucciones, en función del tipo de entorno de
desarrollo de AWS Cloud9 que desee utilizar y el tipo de repositorio donde el proyecto de AWS CodeStar
almacene su código.
311
AWS Cloud9 Guía del usuario
Trabajo con AWS CodePipeline
CodePipeline es un servicio de entrega continua que puede utilizar para modelar, visualizar y automatizar
los pasos necesarios para lanzar su software y los cambios continuos que realice. Puede utilizar
CodePipeline para modelar y configurar rápidamente las diferentes etapas de un proceso de lanzamiento
de software. Para obtener más información, consulte la Guía del usuario de AWS CodePipeline.
Note
El uso de estos procedimientos puede producir cargos en su cuenta de AWS. Entre estos se
incluyen posibles cargos por servicios como Amazon EC2, CodePipeline, Amazon S3 y servicios
de AWS compatibles con CodePipeline. Para obtener más información, consulte Precios de
Amazon EC2, Precios de AWS CodePipeline, Precios de Amazon S3 y Precios de los servicios en
la nube.
AWS CodeStar proporciona características adicionales junto con las canalizaciones, como,
por ejemplo, plantillas de proyecto, paneles y equipos. Para utilizar AWS CodeStar en lugar
de CodePipeline, omita el resto de este tema y consulte Trabajo con proyectos de AWS
CodeCommit (p. 310) en su lugar.
Más adelante en este tema, cargará el código fuente del software ese repositorio. CodePipeline compilará,
probará e implementará el código fuente cargado en ese repositorio utilizando canalizaciones relacionadas
que también creará usted.
El repositorio de código fuente debe ser uno de los siguientes tipos de repositorio que admite
CodePipeline:
312
AWS Cloud9 Guía del usuario
Paso 2: Crear un entorno de desarrollo de AWS Cloud9,
conectarlo al repositorio de código y cargar el código
• AWS CodeCommit. Si ya tiene un repositorio en CodeCommit que desea utilizar, vaya directamente al
Paso 2: Crear un entorno de desarrollo de AWS Cloud9, conectarlo al repositorio de código y cargar el
código (p. 313). De lo contrario, para utilizar CodeCommit, siga estas instrucciones en el Ejemplo de
AWS CodeCommit, en este orden y, a continuación, vuelva a este tema:
• Paso 1: Configurar el grupo de IAM con los permisos de acceso necesarios (p. 394)
• Paso 2: Crear un repositorio en AWS CodeCommit (p. 396)
• Amazon S3. Si ya tiene un bucket en Amazon S3 que desea utilizar, vaya directamente al Paso
2: Crear un entorno de desarrollo de AWS Cloud9, conectarlo al repositorio de código y cargar el
código (p. 313). De lo contrario, para utilizar Amazon S3, siga estas instrucciones de la Guía del
usuario de Amazon Simple Storage Service en este orden y, a continuación, vuelva a este tema:
• Inscribirse en Amazon S3
• Crear un bucket
• GitHub. Si ya tiene un repositorio en GitHub, puede clonarlo y crear una copia local en su entorno de
desarrollo mediante la interfaz del panel de Git (p. 315). Si aún no tiene una cuenta o un repositorio
configurado en GitHub, consulte la documentación relacionada para obtener instrucciones.
Para crear el entorno, siga las instrucciones del tema Creación de un entorno (p. 53) y, a continuación,
vuelva a este tema. (Si ya tiene un entorno, puede utilizarlo. No es necesario que cree uno nuevo).
Para conectar el entorno al repositorio y, a continuación, cargar el código fuente en el repositorio si aún no
está allí, utilice uno de los siguientes conjuntos de instrucciones. El conjunto que elija dependerá del tipo
de repositorio que almacene el código fuente.
313
AWS Cloud9 Guía del usuario
Paso 3: Prepararse para trabajar con AWS CodePipeline
Después de conectar el entorno al repositorio, siempre que envíe los cambios en el código fuente desde
el IDE de AWS Cloud9 al repositorio, CodePipeline enviará automáticamente esos cambios a través de
las canalizaciones relacionadas que se van a compilar, probar e implementar. Creará una canalización
relacionada más adelante en este tema.
Si ya ha utilizado antes CodePipeline, vaya directamente al Paso 4: Crear una canalización en AWS
CodePipeline (p. 314).
En este paso, siga las instrucciones del Paso 3: Usar una política administrada de IAM para asignar
permisos de AWS CodePipeline al usuario de IAM en la Guía del usuario de AWS CodePipeline y, a
continuación, vuelva a este tema.
En este paso, siga las instrucciones que se describen en Crear una canalización en AWS CodePipeline en
la Guía del usuario de AWS CodePipeline.
Después de crear la canalización, CodePipeline envía la versión actual del código fuente del repositorio
a través de la canalización que se va a compilar, probar e implementar. Luego, siempre que envía los
cambios en el código fuente del IDE de AWS Cloud9 al repositorio, CodePipeline envía automáticamente
esos cambios a través de la canalización que se va a compilar, probar e implementar.
Para ver la canalización, siga las instrucciones de Ver los detalles y el historial de la canalización en AWS
CodePipeline en la Guía del usuario de AWS CodePipeline.
314
AWS Cloud9 Guía del usuario
Mediante las opciones de la interfaz del panel de Git, puede administrar todo el ciclo de vida del control
de código fuente: inicializar un repositorio o clonar un repositorio remoto, agregar archivos al área de
almacenamiento provisional, confirmar archivos almacenados provisionalmente en el directorio de trabajo
y, a continuación, enviar cambios a un repositorio ascendente.
Las características básicas de colaboración y administración de proyectos de Git, como las de creación y
fusión de ramificaciones, se pueden implementar rápidamente con unos pocos clics en la interfaz del panel
de Git. Además, los conflictos de fusión se pueden identificar y resolver utilizando las ventanas del editor
del IDE.
Important
El panel de Git solo está disponible en entornos de AWS Cloud9 creados con instancias de
Amazon EC2. No se puede acceder a esta característica si utiliza un entorno de desarrollo de
SSH (p. 515) en lugar de un entorno de EC2.
Además, el panel de Git está disponible de forma predeterminada solo en los entornos de AWS
Cloud9 nuevos creados después del 11 de diciembre de 2020. Estamos trabajando para habilitar
el panel de Git para entornos de desarrollo creados antes de esta fecha.
Para acceder a la interfaz e interactuar con ella, elija Window (Ventana), Source Control (Control de código
fuente). Si lo prefiere, para acceder al control de código fuente, puede hacer clic con el botón derecho
en en cualquier parte de los paneles laterales del IDE y elegir Source Control (Control de código fuente).
Después de esto, elija el icono de Git que se muestra en la interfaz del IDE.
La combinación de teclas Ctrl-Mayús-G también se puede utilizar para alternar la visualización del panel de
Git.
315
AWS Cloud9 Guía del usuario
Note
Las capturas de pantalla de la documentación del panel de Git muestran el IDE de AWS Cloud9
con el tema Jett Dark aplicado. Algunos elementos de la interfaz se muestran de manera diferente
316
AWS Cloud9 Guía del usuario
Administración del control de
código fuente con el panel de Git
si utiliza el IDE con un tema diferente. Para abrir el panel de Git, puede elegir un enlace con la
etiqueta Source Control (Control de código fuente) en lugar del icono de Git.
Temas
• Administración del control de código fuente con el panel de Git (p. 317)
• Referencia: Comandos de Git disponibles en el panel de Git (p. 333)
En esta sección se muestra cómo acceder a las funciones clave de Git para administrar el control de
código fuente. Los procedimientos se centran en el uso del menú del panel de Git para ejecutar comandos
de Git en su repositorio y su contenido.
317
AWS Cloud9 Guía del usuario
Administración del control de
código fuente con el panel de Git
Para acceder a cualquier comando de Git compatible, también puede comenzar a ingresar el nombre en el
cuadro de búsqueda del panel de Git:
318
AWS Cloud9 Guía del usuario
Inicialización o clonación de un repositorio de Git
Asimismo, puede ver los comandos reales de Git que se ejecutan cuando interactúa con la interfaz del
panel de Git. Para ver la actividad de la línea de comandos, vaya al menú del panel de Git y elija Show Git
Output (Mostrar salida de Git).
319
AWS Cloud9 Guía del usuario
Inicialización o clonación de un repositorio de Git
Note
Las opciones de interfaz para inicializar o clonar un repositorio solo están disponibles si aún no
tiene ningún repositorio de Git agregado a la carpeta del área de trabajo de su entorno. Si ya
tiene un directorio de trabajo para un repositorio, la ventana del panel de Git muestra el estado
del directorio de trabajo y del área de almacenamiento provisional. El menú del panel de Git
también está disponible para proporcionar acceso a los comandos de Git que puede ejecutar en el
repositorio.
1. Si el panel de Git aún no está disponible, para acceder a este elija Window (Ventana), Source Control
(Control de código fuente) y, a continuación, seleccione el icono de Git.
Note
También puede abrir el panel de Git usando el método abreviado del teclado Ctrl+Mayús+G.
2. Elija si desea inicializar un nuevo repositorio o clonar uno existente.
Initialize a repository
320
AWS Cloud9 Guía del usuario
Inicialización o clonación de un repositorio de Git
321
AWS Cloud9 Guía del usuario
Almacenamiento provisional y confirmación de archivos
Clone a repository
Note
Important
Es posible que no desee confirmar todos los archivos del directorio de trabajo en el repositorio.
Por ejemplo, es poco probable que desee agregar archivos generados durante el tiempo de
ejecución al repositorio del proyecto. Con el panel de Git, puede marcar archivos para que se
ignoren. Para ello, debe agregarlos a una lista en un archivo .gitignore.
Para actualizar la lista en .gitignore, haga clic con el botón derecho en un archivo que no se
haya agregado al área de almacenamiento provisional y seleccione Add File to .gitignore (Agregar
archivo a .gitignore). El IDE abre el archivo .gitignore y el nombre del archivo seleccionado se
agrega a la lista de archivos ignorados.
Para obtener información sobre el uso de la coincidencia de patrones en .gitignore para
excluir tipos de archivo, consulte la referencia pertinente en el sitio git-scm.com.
Stage files
Los archivos sin seguimiento (con la etiqueta “U”) y los archivos modificados (con la etiqueta “M”) que
no se han agregado al área de almacenamiento provisional se enumeran en Changes (Cambios) en el
panel de Git.
322
AWS Cloud9 Guía del usuario
Almacenamiento provisional y confirmación de archivos
Usando la interfaz del panel de Git, puede agregar archivos específicos o todos los archivos sin
seguimiento y modificados al área de almacenamiento provisional:
• Archivos específicos: inserte una pausa en el archivo y, a continuación, elija + para agregarlo al
área de almacenamiento provisional. También puede hacer clic con el botón derecho en el archivo y
elegir Stage Changes (Almacenar provisionalmente los cambios).
• Todos los archivos: vaya al menú del panel de Git y elija Stage All Changes (Almacenar
provisionalmente todos los cambios).
Los archivos agregados al índice del repositorio se enumeran en Staged Changes (Cambios
almacenados provisionalmente). Los archivos sin seguimiento anterior se etiquetan con “A” para
indicar que se han almacenado provisionalmente.
Note
También puede quitar cambios específicos o todos los cambios del almacenamiento
provisional. Para un solo archivo, inserte una pausa en el archivo y, a continuación, elija
-. También puede hacer clic con el botón derecho en el archivo y elegir Unstage Changes
(Quitar cambios del almacenamiento provisional). Para quitar todos los cambios del
almacenamiento provisional, vaya al menú del panel de Git y elija Unstage All Changes
(Quitar todos los cambios del almacenamiento provisional).
323
AWS Cloud9 Guía del usuario
Visualización de diferentes versiones de archivo
Commit files
Puede usar el comando commit de Git para capturar los archivos almacenados provisionalmente
como una instantánea permanente en el repositorio. Puede usar la interfaz del panel de Git para elegir
los archivos que desea confirmar:
• Confirmar archivos en el área de almacenamiento provisional: vaya al menú del panel de Git y elija
Commit (Confirmación) o Commit Staged (Confirmación almacenada provisionalmente).
• Confirmar todos los archivos del directorio de trabajo: vaya al menú del panel de Git y elija Commit
All (Confirmar todo). (Esta opción utiliza el comando git add para agregar archivos al área de
almacenamiento provisional antes de llamar a git commit).
Note
También puede utilizar las opciones amend y signed-off al confirmar archivos con el
panel de Git. La opción amend modifica el mensaje de confirmación de la confirmación más
reciente. La opción sign-off puede identificar quién realizó la confirmación en el registro de
Git.
También puede revertir una confirmación, para lo cual debe ir al menú del panel de Git y
elegir Undo Last Commit (Deshacer última confirmación).
• Archivos enumerados en Changes (Cambios): elija la “M” para ver las diferencias entre la versión
del directorio de trabajo y la versión almacenada provisionalmente por última vez o confirmada en el
repositorio.
• Archivos enumerados en Staged Changes (Cambios almacenados provisionalmente): elija la “M” para
ver las diferencias entre la versión del área de almacenamiento provisional y la versión confirmada por
última vez en el repositorio.
Después de elegir “M”, una ventana de IDE muestra las diferencias entre las dos versiones del archivo.
Un lado muestra la versión que se sigue como actual en el repositorio. El otro lado muestra la versión
modificada que aún no está confirmada.
Crear una ramificación implica asignar un nombre a la ramificación y seleccionar su punto de partida.
324
AWS Cloud9 Guía del usuario
Uso de las ramificaciones
1. En el menú del panel de Git, elija Checkout to (Pago a). También puede elegir el nombre de la
ramificación actual que se muestra en la parte inferior del panel de Git.
325
AWS Cloud9 Guía del usuario
Uso de las ramificaciones
326
AWS Cloud9 Guía del usuario
Uso de las ramificaciones
• Create new branch (Crear de una nueva ramificación): la nueva ramificación comienza desde la
última confirmación de la actual.
• Crear de una nueva ramificación from (Crear una nueva ramificación a partir de): la nueva
ramificación comienza desde la última confirmación de la ramificación que se selecciona en una
pantalla posterior.
3. Ingrese el nombre de la nueva ramificación.
4. Si está especificando una ramificación específica como punto de partida para su ramificación,
seleccione una de la lista.
Si trabaja con un repositorio remoto, publique la nueva ramificación (p. 329) en el repositorio
remoto ascendente para permitir que otros usuarios accedan a su contenido.
Cambio de ramificaciones
Una de las ventajas clave de administrar el control de código fuente con Git es que puede cambiar entre
diferentes proyectos simplemente cambiando de ramificaciones.
Important
1. Elija el nombre de la ramificación actual en la parte inferior del panel de Git. Alternativamente, vaya al
panel de Git y elija Checkout to (Pago a).
2. Elija una ramificación de la lista que se muestra.
Después del cambio, el directorio de trabajo del repositorio se actualiza con las versiones del archivo
confirmadas más recientemente en la ramificación seleccionada.
Fusión de ramificaciones
Cuando termine de trabajar en una característica en una ramificación discreta, normalmente querrá
integrar los cambios en el proyecto principal. Con Git, este tipo de integración se facilita mediante la fusión
de una ramificación (una ramificación de características, por ejemplo) en otra (generalmente la ramificación
principal o predeterminada del repositorio).
1. Para seleccionar una ramificación en la que va a fusionar otra ramificación, vaya al menú del panel de
Git y elija Checkout to (Pago a).
También puede elegir el nombre de la ramificación actual en la parte inferior del panel de Git.
2. En la lista que se muestra, elija una ramificación a la que cambiar.
3. En el cuadro Búsqueda del panel de Git, comience a ingresar la palabra “fusionar”.
327
AWS Cloud9 Guía del usuario
Uso de las ramificaciones
4. En la lista que se muestra, elija una ramificación para fusionarla con la ramificación de destino.
Si la fusión se completa sin conflictos, la interfaz del panel de Git se actualiza para mostrar la
ramificación de destino que contiene los cambios combinados.
Al fusionar ramificaciones (p. 324), puede encontrar conflictos de fusión derivados de cambios
incompatibles realizados en el mismo contenido. Si esto sucede, se le advierte de que debe resolver los
conflictos antes de confirmar la fusión.
Puede utilizar la ventana del editor de código del IDE para identificar el contenido conflictivo en las dos
ramificaciones y luego realizar cambios para resolver las diferencias.
328
AWS Cloud9 Guía del usuario
Trabajo con repositorios remotos
Después de crear una ramificación para un repositorio local, esta es privada para usted y no está
disponible para sus colaboradores hasta que la inserta en el repositorio remoto “ascendente”.
1. Para publicar la ramificación actual, vaya al menú del panel de Git y elija Publish Branch (Publicar
ramificación). También puede hacer clic en el símbolo de nube situado junto al nombre de la
ramificación en la parte inferior del panel de Git.
329
AWS Cloud9 Guía del usuario
Trabajo con repositorios remotos
330
AWS Cloud9 Guía del usuario
Trabajo con repositorios remotos
331
AWS Cloud9 Guía del usuario
Almacenamiento y recuperación de archivos
del equipo pueda acceder a ellos. Estas acciones se realizan mediante los comandos git pull y git
push.
Note
Debe ingresar un nombre de usuario y una contraseña al insertar y extraer cambios en la mayoría
de los repositorios alojados (como los de GitHub, por ejemplo).
Con el comando git pull a través de la interfaz del panel de Git puede actualizar su repositorio
local con los últimos cambios confirmados en una ramificación en el repositorio remoto.
Después de realizar una extracción, puede acceder a los archivos recuperados del repositorio remoto
en el directorio de trabajo del repositorio. Después de modificar los archivos, puede insertar los
cambios en la ramificación remota.
Push changes to remote
Si usa git push a través de la interfaz del panel de Git, puede actualizar el repositorio remoto con
los últimos cambios en una ramificación especificada en su repositorio local.
Después de una inserción, otros miembros del equipo pueden acceder a los cambios. Para ello, deben
insertarlos en sus propias copias locales del repositorio.
Almacenamiento de trabajo
1. Para almacenar el estado actual de su directorio de trabajo, vaya al menú del panel de Git y elija una
de las siguientes opciones:
332
AWS Cloud9 Guía del usuario
Referencia: Comandos de Git disponibles en el panel de Git
Después del almacenamiento, la interfaz del panel de Git se actualiza para mostrar el directorio de trabajo
que se ha limpiado.
Recuperación de un almacenamiento
1. Para recuperar un almacenamiento y aplicarlo a su directorio de trabajo, vaya al menú del panel de Git
y elija una de las siguientes opciones:
Note
También puede optar por aplicar o abrir el último almacenamiento que se agregó a la pila de
escondite.
2. Seleccione un almacenamiento para aplicarlo al directorio de trabajo.
La interfaz del panel de Git se actualiza para mostrar el directorio de trabajo con el almacenamiento
aplicado.
Ciertos comandos de Git, como los utilizados para fusionar y eliminar ramificaciones, por ejemplo, solo
están disponibles a través del campo de búsqueda del panel de Git.
También puede personalizar cómo el panel de Git ejecuta comandos e interactúa con repositorios. Para
modificar la configuración predeterminada, primero elija AWS Cloud9, Preferencias (Preferencias). A
continuación, en la ventana Preferences (Preferencias), en Project Settings (Configuración del proyecto),
elija Git.
Detenga el cursor sobre los iconos de información para leer descripciones breves de la configuración.
333
AWS Cloud9 Guía del usuario
Referencia para los comandos de Git
disponibles en el menú del panel de Git
Note
Puede acceder a documentación detallada sobre los comandos de Git de la lista en el sitio oficial
de Git: https://git-scm.com/doc.
334
AWS Cloud9 Guía del usuario
Referencia para los comandos de Git
disponibles en el menú del panel de Git
Pull (Rebase) (Extraer [cambiar la Vuelve a aplicar los cambios locales a los cambios remotos
base) extraídos de una ramificación remota.
Push from… (Insertar desde... Inserta en la ramificación del repositorio remoto los cambios
confirmados en una ramificación del repositorio local.
Push to... (Insertar en... Inserta en la ramificación del repositorio remoto los cambios
confirmados en una ramificación del repositorio local.
Checkout to… (Extraer en... Cambia a una ramificación existente o crea una ramificación y
cambia a ella.
Publish Branch (Publicar ramificación Publica una ramificación privada creada en el repositorio local y
hace que esté disponible en el repositorio remoto.
Commit All (Confirmar todo Confirma los archivos (almacenados provisionalmente o no)
en el repositorio. (Se ejecuta un comando git add -A para
agregar archivos al área de almacenamiento provisional antes
de que se ejecute el comando git commit).
Commit All (Amend) (Confirmar todo Modifica el mensaje de la última confirmación. (Agrega la opción
[modificar) -amend cuando se ejecuta el comando git commit).
Commit All (Signed Off) (Confirmar Identifica quién realizó la confirmación en el registro de Git.
todo [aprobado) (Agrega la opción -signed-off cuando se ejecuta el comando
git commit).
335
AWS Cloud9 Guía del usuario
Comandos de Git disponibles en el
campo de búsqueda del panel de Git
Commit Staged (Amend) (Confirmar Modifica el mensaje de la última confirmación. (Agrega la opción
almacenados provisionalmente -amend cuando se ejecuta el comando git commit).
[modificar)
Commit Staged (Signed Off) Identifica quién realizó la confirmación en el registro de Git.
(Confirmar almacenados (Agrega la opción -signed-off cuando se ejecuta el comando
provisionalmente [aprobados) git commit).
Undo Last Commit (Deshacer la última Deshace la confirmación anterior. Los archivos se mueven de
confirmación) nuevo al área de almacenamiento provisional.
Discard All Changes (Descartar todos Elimina todos los archivos y carpetas del área de
los cambios almacenamiento provisional del repositorio.
Stage All Changes (Almacenar Agrega contenido sin seguimiento y modificado recientemente
provisionalmente todos los cambios al área de almacenamiento provisional.
Unstage All Changes (Quitar todos Mueve todos los archivos fuera del área de almacenamiento
los cambios del almacenamiento provisional. Los archivos quitados del almacenamiento
provisional provisional no se pueden confirmar en el repositorio.
Apply Latest Stash (Aplicar Aplica al directorio de trabajo el último almacenamiento que
almacenamiento más reciente se agregó al almacenamiento de la pila. El almacenamiento
permanece en la pila.
Pop Latest Stash (Mostrar Aplica al directorio de trabajo el último almacenamiento que
almacenamiento más reciente se agregó al almacenamiento de la pila. A continuación, el
almacenamiento se elimina de la pila.
Stash (include Untracked) Agrega todos los archivos, incluidos los archivos sin
(Almacenamiento [incluir sin seguimiento, del directorio de trabajo a un almacenamiento
seguimiento) designado.
Show Git Output (Mostrar salida de Git Muestra una ventana con los comandos de Git que se ejecutan
cuando interactúa con la interfaz del panel de Git.
336
AWS Cloud9 Guía del usuario
Comandos de Git disponibles en el
campo de búsqueda del panel de Git
La siguiente tabla proporciona una descripción de los comandos de Git seleccionados a los que puede
acceder de esta manera.
Git: Agregar conexión remota Agrega al archivo de configuración de Git una conexión a un
repositorio remoto.
Git: Fusionar ramificación Integra los cambios realizados en una ramificación en otra
ramificación. Para obtener más información, consulte el
procedimiento de fusión de ramificaciones (p. 327).
337
AWS Cloud9 Guía del usuario
¿Por qué usar AWS Toolkit?
AWS Toolkit
¿Por qué usar AWS Toolkit?
AWS Toolkit es una extensión para el entorno de desarrollo integrado (IDE) de AWS Cloud9. Esta
extensión facilita a los desarrolladores el acceso a una amplia gama de servicios de AWS y el trabajo con
estos.
Important
El kit de herramientas de AWS solo está disponible en entornos de AWS Cloud9 creados con
instancias de Amazon EC2. No se puede acceder a esta característica si utiliza un entorno de
desarrollo de SSH (p. 515) en lugar de un entorno de EC2.
Además, la asistencia para AWS Toolkit se proporciona como una característica integrada
administrada por AWS Cloud9. Actualmente, los clientes no pueden personalizar el IDE de AWS
Cloud9 mediante la instalación de extensiones de terceros.
En la actualidad, los siguientes servicios y recursos de AWS son accesibles a través de la extensión de
AWS Toolkit:
Important
* Las características que proporciona AWS Toolkit para trabajar con funciones y aplicaciones
sin servidor de AWS Lambda reemplazan la asistencia que se proporcionaba anteriormente en
la sección Lambda de la ventana AWS Resources (Recursos de AWS). Cuando está habilitado,
AWS Toolkit es su principal herramienta para trabajar con funciones de Lambda y la ventana AWS
Resources (Recursos de AWS) no está disponible.
338
AWS Cloud9 Guía del usuario
Administración de credenciales de acceso para AWS Toolkit
3. En el panel AWS Resources (Recursos de AWS), active AWS AWS Toolkit para que muestre una
marca de verificación sobre un fondo verde.
Cuando se habilita AWS Toolkit, el IDE se actualiza para mostrar la configuración Enable AWS Toolkit
(Habilitar AWS Toolkit) y la opción AWS Toolkit en el lado del IDE debajo de la opción Environment
(Entorno).
Important
Si la instancia de EC2 del entorno de AWS Cloud9 no tiene acceso a internet (no se permite
tráfico saliente), puede aparecer un mensaje después de activar AWS Toolkit y volver a lanzar
el IDE. Este mensaje indica que las dependencias que requiere AWS Toolkit no se han podido
descargar. Tampoco puede usar AWS Toolkit.
Para solucionar este problema, cree un punto de enlace de la VPC para Amazon S3. Esto permite
el acceso a un bucket de Amazon S3 en su región de AWS, que contiene las dependencias
necesarias para mantener el IDE actualizado.
Para obtener más información, consulte Configuración de puntos de enlace de la VPC para
Amazon S3 para descargar dependencias (p. 75) .
Crear un perfil para proporcionar una credencial de acceso para AWS Toolkit
1. Para obtener sus claves de acceso (que consisten en un ID de clave de acceso y una clave de acceso
secreta), vaya a la consola de IAM en https://console.aws.amazon.com/iam.
2. Elija Users (Usuarios) en la barra de navegación y, a continuación, elija su nombre de usuario de AWS
(no la casilla).
3. Elija la pestaña Security credentials (Credenciales de seguridad) y, a continuación, Create access key
(Crear clave de acceso).
Note
Si ya tiene una clave de acceso, pero no puede acceder a la clave secreta, desactive la clave
anterior y cree una nueva.
4. En el cuadro de diálogo que muestra el ID de clave de acceso y la clave de acceso secreta, elija
Download .csv file (Descargar archivo .csv) para almacenar esta información en un lugar seguro.
5. Después de descargar las claves de acceso, lance un entorno de AWS Cloud9 e inicie una sesión del
terminal mediante las opciones Window (Ventana), New Terminal (Nuevo terminal).
6. En una ventana de terminal, ejecute el siguiente comando:
339
AWS Cloud9 Guía del usuario
Uso de roles de IAM para conceder permisos
a aplicaciones en instancias de EC2
En este caso, toolkituser es el nombre del perfil que se está utilizando, pero puede elegir el suyo
propio.
7. En la línea de comandos, ingrese el AWS Access Key ID y la AWS Secret Access Key que
descargó previamente desde la consola de IAM.
• Para Default region name, especifique su región de AWS (por ejemplo, us-east-1).
• Para Default output format, especifique un formato de archivo (json, por ejemplo).
Note
Para obtener más información acerca de las opciones al configurar un perfil, consulte
Fundamentos de configuración en la Guía del usuario de AWS Command Line Interface.
8. Una vez que haya creado correctamente su perfil, lance AWS Toolkit, vaya a la sección AWS Toolkit
menu (p. 343) (Menú de AWS Toolkit) y elija Connect to AWS (Conectarse a AWS).
9. Para el campo Select an AWS credential profile (Seleccionar un perfil de credenciales de AWS), elija
el perfil que acaba de crear en el terminal (profile:toolkituser, por ejemplo).
Si el perfil seleccionado contiene credenciales de acceso válidas, el panel AWS Explorer se actualiza para
mostrar los servicios de AWS a los que ahora puede acceder.
Después de crear el rol, debe asignarlo, junto con el permiso asociado, a la instancia mediante la creación
de un perfil de instancias. El perfil de instancias se adjunta a la instancia y puede proporcionar las
credenciales temporales del rol a una aplicación que se ejecute en la instancia.
Para obtener más información, consulte Uso de un rol de IAM para conceder permisos a aplicaciones que
se ejecutan en instancias Amazon EC2 en la Guía del usuario de IAM.
340
AWS Cloud9 Guía del usuario
Identificación de AWS Toolkit
341
AWS Cloud9 Guía del usuario
Desactivación de AWS Toolkit
1. Ventana AWS Explorer: permite interactuar con los servicios de AWS a los que se puede acceder a
través de Toolkit. Puede alternar entre mostrar y ocultar la ventana AWS Explorer mediante la opción
AWS en el lado izquierdo del IDE. Para obtener más información sobre el uso de este componente de
la interfaz y acceder a los servicios de AWS para diferentes regiones de AWS, consulte Uso de AWS
Explorer para trabajar con servicios y recursos en varias regiones de AWS (p. 343).
2. Menú Toolkit: permite administrar las conexiones a AWS, personalizar la visualización de la ventana
AWS Explorer, crear o implementar aplicaciones sin servidor, trabajar con repositorios de GitHub y
acceder a la documentación. Para obtener más información, consulte Acceso y uso del menú de AWS
Toolkit (p. 343) .
3. Panel AWS Configuration (Configuración de AWS): permite personalizar el comportamiento de los
servicios de AWS con los que interactúa mediante Toolkit. Para obtener más información, consulte
Modificación de la configuración de AWS Toolkit mediante el panel AWS Configuration (Configuración
de AWS) (p. 347) .
Cuando desactiva AWSToolkit, el IDE se actualiza para eliminar la opción AWS Toolkit en el lado del
IDE debajo de la opción Environment (Entorno).
• Ventana AWS Explorer (p. 343): acceda a los servicios de AWS desde diferentes regiones de AWS.
342
AWS Cloud9 Guía del usuario
Uso de AWS Explorer para trabajar con
servicios y recursos en varias regiones de AWS
• Menú de AWS Toolkit (p. 343): cree e implemente aplicaciones sin servidor, muestre u oculte regiones
de AWS, acceda a la asistencia del usuario e interactúe con repositorios de Git.
• Panel Configuración de AWS (p. 347): modifique la configuración que afecta a la forma en que puede
interactuar con los servicios de AWS en AWS Toolkit.
Por ejemplo, si las credenciales de su cuenta de AWS le permiten acceder a las funciones de Lambda,
puede expandir el nodo Lambda enumerado para una región de AWS y, a continuación, seleccionar una
función de Lambda específica que se pueda invocar o cargar como código en el IDE de AWS Cloud9.
También puede hacer clic con el botón derecho en el título del nodo para comenzar a crear una aplicación
que utilice AWS Serverless Application Model.
Note
Si no puede ver la opción para abrir la ventana AWS Explorer en el IDE, asegúrese de que
ha habilitado AWS Toolkit. Para obtener más información, consulte Habilitación de AWS
Toolkit (p. 338).
La ventana AWS Explorer también puede mostrar servicios alojados en varias regiones de AWS.
1. En la ventana AWS Explorer, elija el menú Toolkit, Show region in the Explorer (Mostrar región en
Explorer).
2. Desde la lista Select a region to show in the AWS Explorer (Seleccionar una región para mostrarla en
AWS Explorer), elija una región de AWS.
La región de AWS seleccionada se agrega a la ventana AWS Explorer. Para acceder a los servicios y
recursos disponibles, elija la flecha (>) delante del nombre de la región de AWS.
Note
También puede ocultar las regiones de AWS seleccionadas en la ventana AWS Explorer
utilizando las siguientes opciones:
• Haga clic con el botón derecho en la región de AWS y elija Hide region from the Explorer
(Ocultar región de Explorer).
• En el menú de AWS Toolkit, elija Hide region from the Explorer (Ocultar región de Explorer) y
seleccione una región para ocultarla.
343
AWS Cloud9 Guía del usuario
Acceso y uso del menú de AWS Toolkit
Para acceder al menú Toolkit, elija el icono de desplazamiento situado frente al título AWS: Explorer en la
ventana AWS Explorer.
344
AWS Cloud9 Guía del usuario
Acceso y uso del menú de AWS Toolkit
345
AWS Cloud9 Guía del usuario
Acceso y uso del menú de AWS Toolkit
Refresh AWS Explorer (Actualizar AWS Explorer) Elija esta opción para actualizar AWS Explorer
para mostrar cualquier servicio de AWS que se
haya modificado desde que abrió por última vez la
ventana.
Show region in the Explorer (Mostrar región en Muestra una región de AWS en la ventana AWS
Explorer Explorer. Para obtener más información, consulte
Uso de AWS Explorer para trabajar con servicios y
recursos en varias regiones de AWS (p. 343).
Hide region from the Explorer (Ocultar región en Oculta una región de AWS en la ventana AWS
Explorer Explorer. Para obtener más información, consulte
Uso de AWS Explorer para trabajar con servicios y
recursos en varias regiones de AWS (p. 343)
Create new SAM Application (Crear nueva Genera un conjunto de archivos de código para
aplicación de SAM una nueva aplicación sin servidor de AWS. Para
obtener más información sobre la creación e
implementación de aplicaciones de SAM, consulte
Trabajar con aplicaciones sin servidor de AWS
mediante AWS Toolkit (p. 370).
Deploy SAM Application (Implementar aplicación Implementa una aplicación sin servidor en AWS.
de SAM Para obtener más información sobre la creación e
implementación de aplicaciones de SAM, consulte
Trabajar con aplicaciones sin servidor de AWS
mediante AWS Toolkit (p. 370).
View Quick Start (Ver inicio rápido Abre la guía de inicio rápido.
View Toolkit Documentation (Ver documentación Abre la guía del usuario de AWS Toolkit.
de Toolkit
Create a New Issue on GitHub (Crear un nuevo Abre la página New Issue (Nuevo problema) de
problema en GitHub AWS Toolkit en GitHub
346
AWS Cloud9 Guía del usuario
Modificación de la configuración de AWS Toolkit mediante
el panel AWS Configuration (Configuración de AWS)
About AWS Toolkit (Acerca de AWS Toolkit) Muestra información sobre la versión de Toolkit en
ejecución y el sistema operativo de Amazon para el
que está configurado.
347
AWS Cloud9 Guía del usuario
Modificación de la configuración de AWS Toolkit mediante
el panel AWS Configuration (Configuración de AWS)
348
AWS Cloud9 Guía del usuario
Modificación de la configuración de AWS Toolkit mediante
el panel AWS Configuration (Configuración de AWS)
En la siguiente tabla se describen las opciones disponibles en el panel AWS Configuration (Configuración
de AWS).
AWS: On Default Region Missing (Falta la región Indica la acción que se va a realizar si la región de
predeterminada AWS predeterminada para el perfil de credenciales
seleccionado no está disponible en la ventana
AWS Explorer. Los usuarios pueden seleccionar
entre tres opciones:
AWS > S3: Max Items Per Page (AWS > S3: Especifica cuántos objetos o carpetas de Amazon
máximo de elementos por página) S3 se muestran a la vez en la ventana AWS
Explorer. Cuando se muestra el número máximo,
puede elegir Load Mode (Cargar más) para
mostrar el siguiente lote.
AWS > Samcli: Location (AWS > Samcli: ubicación) Indica la ubicación de la CLI de SAM que se utiliza
para crear, compilar, empaquetar e implementar
aplicaciones sin servidor (p. 370).
AWS > Samcli > Debug > Attach > Retry: Especifica cuántas veces intenta Toolkit adjuntar
Maximum: (AWS > Samcli > Depurar > Adjuntar > el depurador de la CLI de SAM antes de darse
Reintentar: máximo:) por vencido. El límite predeterminado es de 30
intentos.
AWS > Samcli > Debug > Attach > Timeout: Millis: Especifica cuánto tiempo intenta Toolkit adjuntar
(AWS > Depurar > Adjuntar > Tiempo de espera: el depurador de la CLI de SAM antes de darse por
milisegundos:) vencido. El tiempo de espera predeterminado es
de 30 000 milisegundos (30 segundos).
349
AWS Cloud9 Guía del usuario
API Gateway
AWS : Log Level: (: Nivel de registro: Establece la categoría de eventos del flujo de
trabajo que se registran. Los niveles disponibles
son:
Con AWS Toolkit, puede configurar una llamada a una API REST especificando el recurso de REST, el tipo
de método y los datos que se pasan como entrada.
Llamar a métodos API con AWS Toolkit puede provocar cambios en los recursos que no se
podrán deshacer. Por ejemplo, si llama a un método POST, los recursos de la API se actualizan si
la llamada se lleva a cabo correctamente.
Puede invocar una instancia de API Gateway en AWS desde AWS Toolkit.
1. En la ventana AWS Explorer (Explorador de AWS), elija el nodo API Gateway para ver la lista de API
de REST disponibles en la región de AWS actual.
2. Haga clic con el botón derecho en una API de REST y elija Invoke on AWS (Invocar en AWS).
Note
Se muestra la ventana Invoke methods (Métodos de invocación), que le permite configurar la llamada
a la API.
3. En Select a resource (Seleccionar un recurso), elija el recurso de REST con el que desea interactuar.
4. En Select a method (Seleccionar un método), elija uno de los siguientes tipos de método:
• GET: permite obtener un recurso del servicio backend al que se accede a través de la API.
350
AWS Cloud9 Guía del usuario
AWS App Runner
• OPTIONS: solicita información sobre los métodos y las operaciones que admite API Gateway.
• GET: crea un recurso en el servicio backend al que se accede a través de la API.
5. Para participar en la llamada al método de API, puede usar una cadena de consulta o una carga útil
con formato JSON:
Por ejemplo, puede agregar un nuevo recurso con un método POST que contenga la siguiente carga
útil:
Puede utilizar AWS App Runner para crear y administrar servicios basados en una imagen de origen
o código fuente. Si utiliza una imagen de origen, puede elegir una imagen de contenedor pública o
privada que se almacena en un repositorio de imágenes. App Runner es compatible con los siguientes
proveedores de repositorios de imágenes:
• Amazon Elastic Container Registry (Amazon ECR): almacena imágenes privadas en su cuenta de AWS.
• Amazon Elastic Container Registry Public (Amazon ECR Public): almacena imágenes de lectura pública.
Si elige la opción de código fuente, puede implementarla desde un repositorio de código fuente mantenido
por un proveedor de repositorios compatible. Actualmente, App Runner admite GitHub como proveedor de
repositorio de código fuente.
Requisitos previos
Interactuar con App Runner mediante AWS Toolkit requiere lo siguiente:
Además de estos requisitos básicos, asegúrese de que todos los usuarios pertinentes de IAM tengan
permisos para interactuar con el servicio de App Runner. También debe obtener información específica
acerca del origen del servicio, como el URI de la imagen del contenedor o la conexión al repositorio de
GitHub. Necesitará esta información al crear el servicio de App Runner.
351
AWS Cloud9 Guía del usuario
Requisitos previos
• AWSAppRunnerFullAccess: permite a los usuarios realizar todas las acciones de App Runner.
• AWSAppRunnerReadOnlyAccess: permite a los usuarios publicar y ver detalles sobre los recursos de
App Runner.
Además, si elige un repositorio privado de Amazon Elastic Container Registry (Amazon ECR) como origen
de servicio, debe crear el siguiente rol de acceso para su servicio de App Runner:
Puede crear este rol automáticamente al configurar la instancia de servicio con el panel de comandos de
AWS Toolkit.
Note
El rol vinculado a servicios AWSServiceRoleForAppRunner permite que AWS App Runner lleve a
cabo las siguientes tareas:
No necesita crear manualmente el rol vinculado al servicio . Al crear AWS App Runner en la AWS
Management Console o mediante operaciones de API a las que llama AWS Toolkit, AWS App
Runner crea este rol vinculado a servicios por usted.
Para obtener más información, consulte Identity and access management for App Runner (Administración
de identidades y accesos para App Runner) en la Guía para desarrolladores de AWS App Runner.
Source image
Si va a implementar desde una imagen de origen, puede obtener un enlace al repositorio de esa
imagen desde un registro de imágenes de AWS privado o público.
• Registro privado de Amazon ECR: copie el URI de un repositorio privado que utiliza la consola de
Amazon ECR en https://console.aws.amazon.com/ecr/repositories.
• Registro público de Amazon ECR: copie el URI de un repositorio público que utiliza la Galería
pública de Amazon ECR en https://gallery.ecr.aws/.
Note
También puede obtener el URI de un repositorio privado de Amazon ECR directamente desde
AWS Explorer en AWS Toolkit:
352
AWS Cloud9 Guía del usuario
Precios
• Abra AWS Explorer y expanda el nodo ECR para ver la lista de repositorios para esa región
de AWS.
• Haga clic con el botón derecho en un repositorio y elija Copy Repository URI (Copiar URI
del repositorio) para copiar el enlace en el portapapeles.
Puede especificar el URI del repositorio de imágenes al configurar la instancia de servicio con el panel
de comandos de AWS Toolkit.
Para obtener más información, consulte App Runner service based on a source image (Servicio de
App Runner basado en una imagen de origen) en la Guía para desarrolladores de AWS App Runner.
Source code
Para que el código fuente se implemente en un servicio de AWS App Runner, ese código se debe
almacenar en un repositorio Git mantenido por un proveedor de repositorios compatible. App Runner
admite un proveedor de repositorio de código fuente: GitHub.
Para obtener más información sobre la configuración de un repositorio de GitHub, consulte Getting
started documentation (Documentación de introducción) en GitHub.
Para implementar el código fuente en un servicio de App Runner desde un repositorio de GitHub, App
Runner establece una conexión con GitHub. Si el repositorio es privado (es decir, no es de acceso
público en GitHub), debe proporcionar detalles de conexión a App Runner.
Important
Para crear conexiones de GitHub, debe utilizar la consola de App Runner (https://
console.aws.amazon.com/apprunner) para crear una conexión que vincule GitHub a AWS.
Puede seleccionar las conexiones que están disponibles en la página GitHub connections
(Conexiones de GitHub) al configurar la instancia de servicio con el panel de comandos de
AWS Toolkit.
Para obtener más información, consulte Managing App Runner connections (Administración
de conexiones de App Runner) en la Guía para desarrolladores de AWS App Runner.
La instancia de servicio de App Runner proporciona un tiempo de ejecución administrado que permite
crear y ejecutar el código. Actualmente, AWS App Runner admite los siguientes tiempos de ejecución:
Como parte de la configuración del servicio, proporciona información sobre cómo se crea e inicia
el servicio de App Runner. Puede ingresar esta información mediante Command Palette (Paleta de
comandos) o especificar un archivo de configuración de App Runner con formato YAML. Los valores
de este archivo le indican a App Runner cómo crear e iniciar el servicio y proporcionan contexto de
tiempo de ejecución. Esto incluye la configuración de red y las variables de entorno correspondientes.
El archivo de configuración se llama apprunner.yaml. Se agrega de manera automática al directorio
raíz del repositorio de la aplicación.
Precios
Se le cobrará por los recursos informáticos y de memoria que utiliza la aplicación. Además, si automatiza
las implementaciones, también pagará una tarifa mensual fija por cada aplicación que cubre todas las
implementaciones automatizadas de ese mes. Si opta por implementar desde el código fuente, también
pagará una tarifa de compilación por el tiempo que demora App Runner en crear un contenedor a partir del
código fuente.
353
AWS Cloud9 Guía del usuario
Creación de servicios de App Runner
Temas
• Creación de servicios de App Runner (p. 354)
• Administración de los servicios de App Runner (p. 356)
Antes de crear un servicio de App Runner, asegúrese de haber completado los requisitos
previos (p. 351). Esto incluye proporcionar los permisos de IAM pertinentes y confirmar el repositorio de
origen específico que desea implementar.
Si elige ECR, especifique una imagen de contenedor de un repositorio mantenido por Amazon Elastic
Container Registry. Si elige Repository (Repositorio), especifique un repositorio de código fuente
mantenido por un proveedor de repositorios compatible. Actualmente, App Runner admite GitHub
como proveedor de repositorio de código fuente.
354
AWS Cloud9 Guía del usuario
Creación de servicios de App Runner
Cuando se crea el servicio, el estado cambia de Creating (Creando) a Running (En ejecución).
8. Una vez que el servicio comience a ejecutarse, haga clic derecho en él y elija Copy Service URL
(Copiar URL del servicio).
9. Para acceder a la aplicación implementada, pegue la URL copiada en la barra de direcciones del
navegador web.
Los repositorios remotos que ya están configurados con la administración del control de origen de
AWS Cloud9 están disponibles para su selección. También puede pegar un enlace al repositorio si no
aparece en la lista.
3. En Select a branch (Seleccionar una rama), elija qué rama Git del código fuente desea implementar.
4. En Choose configuration source (Elegir el origen de configuración), especifique cómo desea definir la
configuración del tiempo de ejecución.
Si elige Use configuration file (Usar archivo de configuración), la instancia de servicio se configura
mediante la configuración definida por el archivo de configuración de apprunner.yaml. Este archivo
se encuentra en el directorio raíz del repositorio de la aplicación.
Si elige Configure all settings here (Establecer la configuración aquí), utilice el panel de comandos
para especificar lo siguiente:
Cuando se crea el servicio, el estado cambia de Creating (Creando) a Running (En ejecución).
9. Una vez que el servicio comience a ejecutarse, haga clic derecho en él y elija Copy Service URL
(Copiar URL del servicio).
355
AWS Cloud9 Guía del usuario
Administración de los servicios de App Runner
10. Para acceder a la aplicación implementada, pegue la URL copiada en la barra de direcciones del
navegador web.
Note
Si falla el intento de crear un servicio de App Runner, el servicio muestra el estado de Create
failed (Error al crear) en AWS Explorer. Para obtener sugerencias acerca de la solución de
problemas, consulte When service creation fails (Cuando falla la creación del servicio) en la Guía
para desarrolladores de App Runner.
Se le cobrará por App Runner solo cuando se esté ejecutando. Por lo tanto, puede pausar
y reanudar la aplicación según sea necesario para administrar los costos. Esto resulta
especialmente útil en escenarios de desarrollo y pruebas.
Mientras el servicio se pausa, el estado del servicio cambia de Running(En ejecución) a Pausing
(Pausando) y luego a Paused (En pausa).
Mientras se reanuda el servicio, el estado del servicio cambia de Resuming (Reanudando) a Running
(En ejecución).
356
AWS Cloud9 Guía del usuario
Administración de los servicios de App Runner
La IDE de AWS Cloud9 muestra la lista de eventos de registro que componen la secuencia. Puede
elegir cargar eventos anteriores o más recientes en el editor.
Si elimina el servicio de App Runner, se elimina de forma permanente y los datos almacenados
se eliminan. Si necesita volver a crear el servicio, App Runner debe volver a recuperar el origen y
crearlo si se trata de un repositorio de código. La aplicación web obtiene un nuevo dominio de App
Runner.
357
AWS Cloud9 Guía del usuario
Pilas de AWS CloudFormation
Requisitos previos
• Asegúrese de que las credenciales que usa en el entorno de AWS Cloud9 incluyen acceso de lectura/
escritura adecuado al servicio AWS CloudFormation. Si en AWS Explorer, en CloudFormation, aparece
el mensaje “Error loading CloudFormation resources” (Error al cargar recursos de CloudFormation) o un
mensaje similar, verifique los permisos adjuntos a esas credenciales. Los cambios que lleve a cabo en
los permisos tardarán unos minutos en afectar a AWS Explorer.
1. En AWS Explorer, abra el menú contextual de la pila de AWS CloudFormation que quiere eliminar.
2. Elija Delete CloudFormation Stack (Eliminar pila de CloudFormation).
3. En el mensaje que aparece, elija Yes (Sí) para confirmar la eliminación.
Una vez que se elimine la pila, esta deja de estar en la lista de AWS Explorer.
En los temas siguientes se describe cómo utilizar AWS Toolkit para trabajar con CloudWatch Logs en una
cuenta de AWS.
Temas
• Visualización de los grupos de registros y flujos de registro de CloudWatch mediante AWS
Toolkit (p. 358)
• Trabajo con eventos de CloudWatch Logs en flujos de registro mediante AWS Toolkit (p. 359)
358
AWS Cloud9 Guía del usuario
Uso de eventos de CloudWatch Logs
Para obtener más información, consulte Trabajo con grupos y flujos de registros en la Guía del usuario de
Amazon CloudWatch.
Temas
• Visualización de grupos de registros y flujos de registro con el nodo de CloudWatch Logs (p. 359)
Los grupos de registros de la región de AWS actual se muestran en el nodo de CloudWatch Logs.
3. Para ver los flujos de registro de un grupo de registros específico, haga clic con el botón secundario en
el nombre del grupo de registros y, a continuación, elijaView Log Streams (Ver flujos de registro).
4. El contenido del grupo de registros se muestra en el encabezado Select a log stream (Seleccionar un
flujo de registro).
Puede elegir un flujo específico de la lista o ingresar texto en el campo para filtrar los flujos.
Después de elegir un flujo, los eventos de dicho flujo se muestran en la ventana Log Streams (Flujos
de registro) del IDE. Para obtener información sobre cómo interactuar con los eventos de registro en
cada flujo, consulte Uso de eventos de CloudWatch Logs (p. 359).
Temas
• Visualización y copia de información de flujos de registro (p. 359)
• Guardar el contenido del editor de flujos de registro en un archivo local (p. 360)
1. Para buscar un flujo de registro que desea ver, abra la ventana Log Stream (Flujo de registro).
Consulte Visualización de grupos de registros y flujos de registro de CloudWatch (p. 358).
Cada línea que muestra un evento tiene una marca de tiempo para mostrar cuándo se registró.
2. Puede ver y copiar información sobre los eventos del flujo mediante las siguientes opciones:
359
AWS Cloud9 Guía del usuario
Funciones de AWS Lambda
• Ver eventos por hora: para mostrar los eventos de registro más recientes y más antiguos,
seleccione Load newer events (Cargar eventos más recientes) o Load older events (Cargar eventos
más antiguos).
Note
Inicialmente, el editor de flujos de registro carga un lote de las 10 000 líneas más recientes
de eventos de registro o 1 MB de datos de registro (lo que sea menor). Si elige Load newer
events (Cargar eventos más recientes), el editor muestra los eventos que se registraron
después de cargar el último lote. Si elige Load older events (Cargar eventos más antiguos),
el editor muestra un lote de los eventos que ocurrieron antes de los que se muestran
actualmente.
• Copiar eventos de registro: seleccione los eventos que desea copiar, haga clic con el botón derecho
y seleccione la opción Copy (Copiar) del menú.
• Copiar el nombre del flujo de registro: haga clic con el botón derecho en la pestaña de la ventana
Log Stream (Flujo de registro) y elija Copy Log Stream Name (Copiar el nombre del flujo de
registro).
Esta opción permite guardar en un archivo solo aquellos eventos de registro que se muestran
actualmente en el editor de flujos de registro. Por ejemplo, si el tamaño total de un flujo de registro
es de 5 MB y solo se cargan 2 MB en el editor, el archivo guardado también contendrá 2 MB de
datos de registro solamente. Para mostrar más datos que se van a guardar, elija Load newer
events (Cargar eventos más recientes) o Load older events (Cargar eventos más antiguos) en el
editor.
1. Para buscar un flujo de registro que desea copiar, abra la ventana Log Streams (Flujos de registro).
Consulte Visualización de grupos de registros y flujos de registro de CloudWatch (p. 358).
2. Haga clic con el botón derecho en la pestaña Log Stream (Flujo de registro) y elija Save Current Log
Content to File (Guardar contenido de registro actual en archivo).
3. Utilice el cuadro de diálogo para seleccionar o crear una carpeta de descarga para el archivo de
registros y haga clic en Save (Guardar).
Lambda es un servicio informático completamente administrado que ejecuta código como respuesta a
eventos generados por código personalizado o procedentes de varios servicios de AWS, como Amazon
Simple Storage Service (Amazon S3), Amazon DynamoDB, Amazon Kinesis, Amazon Simple Notification
Service (Amazon SNS) y Amazon Cognito.
360
AWS Cloud9 Guía del usuario
Invocación de funciones de Lambda remotas
AWS Toolkit reemplaza la funcionalidad proporcionada por el complemento de Lambda en AWS Cloud9.
Para utilizar el complemento de Lambda, debe desactivar AWS Toolkit. Para obtener más información,
consulte Desactivación de AWS Toolkit (p. 342) .
Important
Si desea crear una aplicación de Lambda que use los recursos proporcionados por el Serverless
Application Model (SAM), consulte Trabajar con aplicaciones sin servidor de AWS mediante AWS
Toolkit (p. 370).
Temas
• Invocación de funciones de Lambda remotas (p. 361)
• Descarga, carga y eliminación de funciones de Lambda (p. 362)
AWS Toolkit reemplaza la funcionalidad proporcionada por el complemento de Lambda en AWS Cloud9.
Para utilizar el complemento de Lambda, debe desactivar AWS Toolkit. Para obtener más información,
consulte Desactivación de AWS Toolkit (p. 342) .
Para obtener más información acerca de Lambda, consulte la Guía para desarrolladores de AWS Lambda.
Note
Requisitos previos
• Asegúrese de que las credenciales configuradas incluyen acceso de lectura/escritura adecuado al
servicio AWS Lambda. Si en AWS Explorer, en Lambda, aparece un mensaje del tipo “Error loading
Lambda resources” (Error al cargar recursos de Lambda), verifique los permisos adjuntos a esas
credenciales. Los cambios que realice en los permisos tardarán unos minutos en afectar a AWS Explorer
en AWS Toolkit.
Llamar a métodos API con AWS Toolkit puede provocar cambios en los recursos que no se
podrán deshacer. Por ejemplo, si llama a un método POST, los recursos de la API se actualizan si
la llamada se lleva a cabo correctamente.
1. En AWS Explorer, elija el nombre de la función de Lambda que desea invocar y, a continuación, abra
su menú contextual.
2. Elija Invoke on AWS (Invocar en AWS).
3. En la ventana Invoke function (Invocar a función) que se abre, elija una opción para la carga que
necesita su función de Lambda. (La carga es el archivo JSON que desea proporcionar a su función de
361
AWS Cloud9 Guía del usuario
Descarga, carga y eliminación de funciones de Lambda
Lambda como entrada). Puede elegir Browse (Examinar) para seleccionar un archivo para utilizarlo
como carga o utilizar el campo desplegable para seleccionar una plantilla para la carga. En este caso,
la función de Lambda podría utilizar una cadena como entrada, como se muestra en el cuadro de
texto.
1. En AWS Explorer, en el nodo Lambda, haga clic con el botón derecho en la función y elija Download
(Descargar).
2. Cuando se le muestre Select a workspace folder for your new project (Seleccione una carpeta de
espacio de trabajo para su nuevo proyecto), puede realizar una de las siguientes acciones:
• Elegir la carpeta que se sugiere para crear una subcarpeta con el mismo nombre que su proyecto
de Lambda.
• Elija Select a different folder (Seleccionar una carpeta diferente) para abrir un cuadro de diálogo
para buscar y seleccionar una carpeta principal diferente para la subcarpeta del proyecto.
1. Una vez que haya descargado la función Lambda, abra la ventana Environment (Entorno) para ver sus
carpetas y archivos.
2. A continuación, compruebe que su función Lambda está incluida en un archivo /home/ec2-
user/.c9/launch.json. Si no está presente, haga lo siguiente para agregar un enlace CodeLens
al código de su función:
362
AWS Cloud9 Guía del usuario
Descarga, carga y eliminación de funciones de Lambda
1. Abra el archivo de código fuente que define la función Lambda (un archivo .js o .py, por ejemplo)
y compruebe si hay un enlace de CodeLens que le permita agregar su función Lambda a un archivo
launch.json. (Aparece un CodeLens encima de la función e incluye el enlace Add Debug
Config).
2. Elija Go (Ir) (el icono de la lupa) a la izquierda del IDE y escriba «sam hint» para que aparezca el
comando AWS: Toggle SAM hints in source files. Elija el comando para ejecutarlo.
3. Cierre el archivo de código fuente de Lambda y vuelva a abrirlo.
4. Si el CodeLens está disponible en el código fuente después de reabrir el archivo, elija Add Debug
Config para agregar la configuración de lanzamiento.
3. Si no puede agregar un CodeLens incluso después de activar la opción de sugerencia SAM, haga lo
siguiente para agregar la configuración de lanzamiento:
1. Elija Go (Ir) (el icono de la lupa) a la izquierda del IDE y escriba «sam hint» para que aparezca el
comando AWS: SAM Debug Configuration Editor. Elija el comando para ejecutarlo.
2. Aparece SAM Debug Configuration Editor (Editor de configuración de depuración de SAM), que le
permite definir las propiedades de configuración de lanzamiento. Para obtener información, consulte
el paso para configuring launch properties en Uso de plantillas de SAM para ejecutar y depurar
aplicaciones sin servidor (p. 373).
Note
Si su función Lambda no tiene un archivo template.yaml que sea necesario para las
aplicaciones de SAM, tendrá que agregar uno. Para obtener más información, consulte
Creación de su plantilla de SAM de AWS.
3. Cuando haya terminado de ingresar la información de configuración necesaria en el editor, la
configuración de lanzamiento se agregará al archivo launch.json.
Después de haber definido una configuración de lanzamiento para su función Lambda, puede ejecutarla
haciendo lo siguiente:
1. En la parte superior del IDE, elija la flecha situada junto a Auto y seleccione la configuración de
lanzamiento correspondiente.
2. A continuación, elija Next (Siguiente).
1. En AWS Explorer, abra el menú contextual (haga clic con el botón derecho en el nombre de la función
de Lambda que desea importar).
2. Elija Upload Lambda… (Cargar Lambda…)
3. Elija entre las tres opciones para cargar su función de Lambda.
363
AWS Cloud9 Guía del usuario
Descarga, carga y eliminación de funciones de Lambda
1. En la ventana AWS Explorer, haga clic con el botón derecho en el nodo Lambda y elija Deploy SAM
Application (Implementar aplicación de SAM).
2. En el panel de comandos, seleccione la plantilla YAML que define su función como aplicación sin
servidor.
3. A continuación, seleccione un bucket de Amazon S3 para la implementación de Lambda. También
puede crear un bucket para la implementación.
4. Ahora ingrese el nombre de la pila de AWS CloudFormation en la que va a realizar la implementación.
Si especifica una pila existente, el comando la actualiza. Si especifica una nueva pila, el comando la
crea.
Después de ingresar el nombre de la pila, su función Lambda comienza a implementarse como una
aplicación de SAM. Tras una implementación correcta, la aplicación Lambda de SAM debería estar
disponible de forma remota, lo que permite a los desarrolladores que trabajan en otros entornos de
desarrollo de AWS Cloud9 descargarla o invocarla.
Si desea crear una función Lambda desde cero, le recomendamos que siga los pasos para Cómo crear
una aplicación sin servidor con AWS Toolkit (p. 370).
364
AWS Cloud9 Guía del usuario
Recursos
1. En AWS Explorer, elija el nombre de la función de Lambda que desea eliminar y, a continuación, abra
su menú contextual.
2. Elija Delete (Eliminar).
3. En el mensaje que aparece, elija Yes (Sí) para confirmar la eliminación.
Una vez eliminada la función, esta deja de aparecer en la vista AWS Explorer.
Para ver los recursos disponibles, vaya a Resources (Recursos) y expanda el tipo de recurso para
enumerar los recursos disponibles para ese tipo. Por ejemplo, si selecciona el tipo de recurso
AWS::Lambda::Function, puede acceder a los recursos que definen distintas funciones, sus
propiedades y atributos.
Después de agregar un tipo de recurso a Resources (Recursos), puede interactuar con él y sus recursos
de las siguientes maneras:
• Ver una lista de los recursos existentes que están disponibles en la región actual de AWS de este tipo de
recurso.
• Ver una versión de solo lectura del archivo JSON que describe un recurso.
• Copiar el identificador de recurso para el recurso.
• Ver la documentación de AWS que explica el propósito del tipo de recurso y el esquema (en formatos
JSON y YAML) para modelar un recurso.
Además de los permisos para los recursos de servicio, una entidad de IAM requiere permisos para permitir
que AWS Toolkit llame a operaciones de la API de Cloud Control de AWS en su nombre. Las operaciones
de la API de Cloud Control permiten al usuario o rol de IAM acceder y actualizar los recursos remotos.
La forma más sencilla de conceder permisos consiste en adjuntar la política administrada de AWS,
PowerUserAccess, a la entidad de IAM que llama a estas operaciones de la API mediante la interfaz de
Toolkit. Esta política administrada otorga una serie de permisos para realizar tareas de desarrollo de
aplicaciones, incluido llamar a las operaciones de la API.
Para obtener permisos específicos que definen las operaciones de API permitidas en recursos remotos,
consulte la Guía del usuario de la API de Cloud Control de AWS.
365
AWS Cloud9 Guía del usuario
Amazon S3
• Copy Identifier (Copiar identificador): copie el identificador del recurso específico en el portapapeles.
(Por ejemplo, el recurso AWS::DynamoDB::Table se puede identificar mediante la propiedad
TableName).
• Preview (Vista previa): vea una versión de solo lectura de la plantilla con formato JSON que
describe el recurso.
Temas
• Trabajo con buckets de Amazon S3 (p. 366)
• Trabajo con objetos de Amazon S3 (p. 368)
Temas
• Creación de un bucket de Amazon S3 (p. 366)
• Agregar una carpeta a un bucket de Amazon S3 (p. 367)
• Eliminación de un bucket de Amazon S3 (p. 367)
• Configuración de la visualización de elementos de Amazon S3 (p. 367)
366
AWS Cloud9 Guía del usuario
Trabajo con buckets de Amazon S3
Nota
Dado que Amazon S3 permite que el bucket se utilice como una dirección URL con acceso
público, el nombre del bucket que elija deberá ser único de forma global. Si hay otra cuenta
que ya haya creado un bucket con el nombre que eligió, deberá utilizar otro nombre.
Puede consultar los registros de AWS Toolkit en la pestaña Output (Salida) si no se puede
crear un bucket. Por ejemplo, se produce un error BucketAlreadyExists si utiliza un
nombre de bucket que es está en uso. Para obtener más información, consulte Restricciones
y limitaciones de los buckets en la Guía del usuario de Amazon Simple Storage Service.
Después de crear un bucket, puede copiar su nombre y el nombre de recurso de Amazon (ARN)
en el portapapeles. Abra el menú contextual (clic con el botón derecho) de la entrada del bucket y
seleccione la opción correspondiente del menú.
La nueva carpeta ahora se muestra debajo de la carpeta o el bucket seleccionado en la ventana AWS
Explorer.
Para eliminar solo una carpeta, no todo el bucket, use la AWS Management Console.
Si el bucket contiene objetos, el bucket se vacía antes de su eliminación. Esto puede llevar
algún tiempo si es necesario eliminar cada versión de miles de objetos. Se muestra una
notificación una vez completada la eliminación.
367
AWS Cloud9 Guía del usuario
Trabajo con objetos de Amazon S3
El rango de valores aceptados está entre 3 y 1000. Esta configuración solo se aplica al
número de objetos o carpetas que se muestran a la vez. Todos los buckets que ha creado se
muestran a la vez. (De forma predeterminada, puede crear hasta 100 buckets en cada una de
sus cuentas de AWS).
Temas
• Carga de un archivo en un bucket de Amazon S3 (p. 368)
• Descarga de un objeto de Amazon S3 (p. 369)
• Eliminación de un objeto de Amazon S3 (p. 369)
• Generación de una URL prefirmada para un objeto de Amazon S3 (p. 369)
Ambos métodos le permiten cargar un archivo desde el entorno de un usuario y almacenarlo como un
objeto S3 en la nube de AWS. Puede cargar un archivo en un bucket o una carpeta que organice el
contenido de ese bucket.
Si abre el menú contextual (clic con el botón derecho) de un objeto de S3, puede elegir
Upload to Parent (Cargar en la cuenta principal). Esto le permite agregar un archivo a la
carpeta o al bucket que contiene el archivo seleccionado.
3. Con el administrador de archivos de su entorno, seleccione un archivo y, a continuación, elija Upload
(Cargar).
368
AWS Cloud9 Guía del usuario
Trabajo con objetos de Amazon S3
369
AWS Cloud9 Guía del usuario
Aplicaciones de AWS SAM
3. En el panel de comandos de AWS Toolkit, ingrese el número de minutos en que se puede utilizar la
URL para acceder al objeto. Pulse Intro para confirmar la operación.
El estado de la parte inferior del IDE confirma que la URL prefirmada del objeto se copió en el
portapapeles.
Temas
• Creación de una aplicación sin servidor (p. 370)
• Ejecución y depuración de aplicaciones sin servidor (p. 373)
• Implementación de una aplicación sin servidor (p. 378)
• Eliminación de una aplicación sin servidor de la nube de AWS (p. 379)
• Opciones de configuración para depurar aplicaciones sin servidor (p. 379)
Los requisitos previos necesarios para crear una aplicación sin servidor incluyen AWS SAM CLI y AWS
CLI, que se incluyen con AWS Cloud9.
1. En la ventana AWS Explorer, haga clic con el botón derecho en el nodo Lambda y, a continuación,
elija Create Lambda SAM Application (Crear aplicación de SAM de Lambda).
Note
También puede hacer clic en el icono de menú situado en el encabezado de AWS Explorer y
elegir Create Lambda SAM Application (Crear aplicación de SAM de Lambda).
2. Elija el tiempo de ejecución para su aplicación de SAM. Para este ejemplo, elija nodejs12.x.
Note
370
AWS Cloud9 Guía del usuario
Creación de una aplicación sin servidor
• AWS SAM Hello World: plantilla básica con una función de Lambda que devuelve el clásico mensaje
“Hola, mundo”.
• Aplicación de muestra AWS Step Functions: aplicación de muestra que ejecuta un flujo de trabajo
bursátil. Step Functions orquesta las interacciones de las funciones de Lambda involucradas.
4. Elija una ubicación para el nuevo proyecto. Puede seleccionar una carpeta de espacio de trabajo
existente si hay una disponible o buscar otra carpeta. Si elige Select a different folder (Seleccionar una
carpeta diferente), aparece un cuadro de diálogo que le permite seleccionar una ubicación de carpeta.
5. Ingrese un nombre para su nueva aplicación. Para este ejemplo, use my-sam-app-nodejs. Después
de pulsar Intro, AWS Toolkit tarda unos momentos en crear el proyecto.
Cuando se crea el proyecto, puede ver los archivos de la aplicación en la ventana Environment (Entorno).
Debería aparecer en la ventana Explorer.
371
AWS Cloud9 Guía del usuario
Creación de una aplicación sin servidor
372
AWS Cloud9 Guía del usuario
Ejecución y depuración de aplicaciones sin servidor
Para ver más de cerca la plantilla de AWS SAM, consulte la anatomía de la plantilla de AWS SAM en la
Guía para desarrolladores de AWS Serverless Application Model.
Alternativamente, puede depurar rápidamente las aplicaciones sin servidor que no se han confirmado en
una plantilla de SAM.
Comience a configurar el comportamiento de depuración mediante acciones en línea para identificar una
función de AWS Lambda apta. Para utilizar la infraestructura definida por la plantilla de SAM, utilice la
acción en línea en el archivo con formato YAML correspondiente. Para probar la función directamente sin
la plantilla, utilice el enlace contextual para el controlador de Lambda en el archivo de aplicación.
Note
En este ejemplo, estamos depurando una aplicación que usa JavaScript. No obstante, puede
usar las características de depuración disponibles en AWS Toolkit con los siguientes lenguajes y
tiempos de ejecución:
Su elección de lenguaje también afecta a la manera en que los vínculos contextuales indican los
controladores de Lambda aptos. Para obtener más información, consulte Ejecución y depuración
de funciones sin servidor directamente desde el código (p. 374) .
En este procedimiento, utilizará la aplicación de ejemplo que se creó en Creación de una aplicación sin
servidor (p. 370).
Para utilizar una plantilla de SAM para ejecutar y depurar una aplicación sin servidor
1. Para ver los archivos de aplicación que componen la aplicación sin servidor, vaya a la ventana
Environment (Entorno).
2. En la carpeta de la aplicación (por ejemplo, my-sample-app), abra el archivo template.yaml.
3. Encima del editor de template.yaml, seleccione Edit Launch Configuration (Editar la configuración
de lanzamiento) en el menú desplegable.
Un nuevo editor muestra el archivo launch.json que proporciona una configuración de depuración
con atributos predeterminados.
4.
Edite o confirme los valores de las siguientes propiedades de configuración:
373
AWS Cloud9 Guía del usuario
Ejecución y depuración de aplicaciones sin servidor
• "name": ingrese un nombre fácil de leer para que aparezca en el campo desplegable Configuration
(Configuración) de la vista Run (Ejecución).
• "target": asegúrese de que el valor es "template" para que la plantilla de SAM sea el punto de
entrada para la sesión de depuración.
• "templatePath": ingrese una ruta relativa o absoluta para el archivo template.yaml.
• "logicalId": asegúrese de que el nombre coincida con el especificado en la sección
Resources (Recursos) de la plantilla de SAM. En este caso, es HelloWorldFunction de
tipoAWS::Serverless::Function.
Para obtener más información sobre estas y otras entradas del archivo launch.json, consulte
Opciones de configuración para depurar aplicaciones sin servidor (p. 379).
5. Si está satisfecho con la configuración de depuración, guarde el archivo launch.json. A
continuación, elija el botón de reproducción verde junto a RUN para iniciar la depuración.
Note
Para los usuarios de Windows, si encuentra un error de montaje de Docker durante este
proceso, es posible que deba actualizar las credenciales de las unidades compartidas (en
la configuración de Docker). Un error de montaje de Docker tiene un aspecto similar al
siguiente.
Los controladores de Lambda que detectan los vínculos contextuales dependen del lenguaje y el tiempo de
ejecución que esté utilizando para su aplicación.
374
AWS Cloud9 Guía del usuario
Ejecución y depuración de aplicaciones sin servidor
JavaScript (Node.js 10.x, 12.x y 14.x) La función tiene las siguientes características:
Para ejecutar y depurar una aplicación sin servidor directamente desde el código de la aplicación
1. Para ver los archivos de la aplicación sin servidor, vaya a la carpeta de la aplicación mediante la
selección del icono de carpeta situado junto al editor.
2. Desde la carpeta de la aplicación (my-sample-app, por ejemplo), expanda la carpeta de la función
(hello-world, en este caso) y abra el archivo app.js.
3. En la acción en línea que identifica una función de controlador de Lambda válida, elija Add Debug
Configuration.
4. Seleccione el tiempo de ejecución en el que se ejecutará la aplicación de SAM.
5. En el editor del archivo launch.json, edite o confirme los valores de las siguientes propiedades de
configuración:
375
AWS Cloud9 Guía del usuario
Ejecución y depuración de aplicaciones sin servidor
Note
API Gateway admite dos tipos de API: REST y HTTP. Sin embargo, la característica API Gateway
con AWS Toolkit solo admite las API REST. A veces las API HTTP se llaman “API Gateway V2”.
1. Elija uno de los siguientes enfoques para crear una configuración de lanzamiento para un recurso de
AWS SAM API Gateway:
• Opción 1: visite el código fuente del controlador (archivo .js, .cs o .py) en su proyecto de AWS
SAM, coloque el cursor sobre el controlador de Lambda y elija Add Debug Configuration (Agregar
configuración de depuración). A continuación, en el menú, elija el elemento marcado como Evento
de API.
• Opción 2: edite launch.json y cree una nueva configuración de lanzamiento mediante la sintaxis
siguiente.
{
"type": "aws-sam",
"request": "direct-invoke",
"name": "myConfig",
"invokeTarget": {
"target": "api",
"templatePath": "n12/template.yaml",
"logicalId": "HelloWorldFunction"
},
"api": {
"path": "/hello",
"httpMethod": "post",
"payload": {
"json": {}
}
},
"sam": {},
"aws": {}
}
2. En el menú desplegable junto al botón Run (Ejecutar), elija la configuración de lanzamiento (llamada
myConfig en el ejemplo anterior).
3. (Opcional) Agregue puntos de interrupción al código del proyecto de Lambda.
4. Elija el botón Run (Ejecutar) junto al botón “reproducir” verde.
5. En el panel de resultados, vea los resultados.
376
AWS Cloud9 Guía del usuario
Ejecución y depuración de aplicaciones sin servidor
Configuración
Cuando utiliza el valor api de la propiedad invokeTarget.target, Toolkit cambia la validación y el
comportamiento de la configuración de lanzamiento para admitir un campo api.
{
"type": "aws-sam",
"request": "direct-invoke",
"name": "myConfig",
"invokeTarget": {
"target": "api",
"templatePath": "n12/template.yaml",
"logicalId": "HelloWorldFunction"
},
"api": {
"path": "/hello",
"httpMethod": "post",
"payload": {
"json": {}
},
"querystring": "abc=def&qrs=tuv",
"headers": {
"cookie": "name=value; name2=value2; name3=value3"
}
},
"sam": {},
"aws": {}
}
invokeTarget.logicalId
Un recurso de API.
path
La ruta de la API que solicita la configuración de lanzamiento; por ejemplo, "path": "/hello".
Debe ser una ruta de API válida resuelta desde el archivo template.yaml especificado por
invokeTarget.templatePath.
httpMethod
Uno de los verbos siguientes: “delete”, “get”, “head”, “options”, “patch”, “post”, “put”.
payload
La carga JSON (cuerpo HTTP) para enviar en la solicitud, con la misma estructura y las mismas reglas
que el campo lambda.payload.
Mapa opcional de pares nombre-valor, que se utiliza para especificar encabezados HTTP que se
incluirán en la solicitud, tal y como se muestra en el siguiente ejemplo.
"headers": {
"accept-encoding": "deflate, gzip;q=1.0, *;q=0.5",
"accept-language": "fr-CH, fr;q=0.9, en;q=0.8, de;q=0.7, *;q=0.5",
"cookie": "name=value; name2=value2; name3=value3",
377
AWS Cloud9 Guía del usuario
Implementación de una aplicación sin servidor
querystring
Cómo se proporciona la información de conexión de AWS. Para obtener más información, consulte
la tabla de propiedades de conexión de AWS (aws) en Opciones de configuración para depurar
aplicaciones sin servidor (p. 379).
sam
Procedimiento que sigue AWS SAM CLI para compilar la aplicación. Para obtener más información,
consulte las propiedades de AWS SAM CLI (“sam”) en Opciones de configuración para depurar
aplicaciones sin servidor (p. 379).
Requisitos previos
• Asegúrese de elegir un nombre de bucket que sea globalmente único para Amazon S3.
• Asegúrese de que las credenciales configuradas incluyen el acceso de lectura/escritura adecuado a los
siguientes servicios: Amazon S3, AWS CloudFormation, AWS Lambda y Amazon API Gateway.
• Para aplicaciones con el tipo de implementación Image, asegúrese de que dispone de un nombre de
bucket de Amazon S3 globalmente único y de un URI de repositorio de Amazon ECR para utilizarlo en la
implementación.
378
AWS Cloud9 Guía del usuario
Eliminación de una aplicación sin servidor
Si esto sucede, verifique el texto de la pestaña AWS Toolkit para obtener más información. A
continuación se muestra un ejemplo de información sobre un error.
Una vez que se haya realizado la implementación, verá la aplicación en AWS Explorer. Consulte
Invocación de funciones de Lambda remotas (p. 361) para obtener información acerca de cómo invocar
la función de Lambda que se creó como parte de la aplicación.
Si la eliminación de la pila se realiza correctamente, AWS Toolkit elimina el nombre de la pila de la lista
AWS CloudFormation en AWS Explorer.
379
AWS Cloud9 Guía del usuario
Opciones de configuración para
depurar aplicaciones sin servidor
payload Proporciona dos opciones para la carga del evento que proporciona
a la función de Lambda como entrada.
380
AWS Cloud9 Guía del usuario
Opciones de configuración para
depurar aplicaciones sin servidor
La extensión de AWS Toolkit utiliza AWS SAM CLI para compilar y depurar aplicaciones sin servidor
localmente. Puede configurar el comportamiento de los comandos de AWS SAM CLI que utilizan las
propiedades de la configuración de "sam" en el archivo launch.json.
381
AWS Cloud9 Guía del usuario
AWS Step Functions
Puede usar AWS Toolkit para hacer lo siguiente con Step Functions:
• Cree y publique una máquina de estado, que es un flujo de trabajo compuesto por pasos individuales.
• Descargue un archivo que defina un flujo de trabajo de máquina de estado.
• Ejecute un flujo de trabajo de máquina de estado con la entrada que ha ingresado o seleccionado.
Temas
• Requisitos previos (p. 382)
• Creación y publicación de una máquina de estado (p. 382)
• Ejecución de una máquina de estado en AWS Toolkit (p. 383)
• Descargue un archivo de definición de máquina de estado y visualice su flujo de trabajo (p. 384)
Requisitos previos
Step Functions puede ejecutar código y acceder a recursos de AWS (como invocar una función de
Lambda). Para mantener la seguridad, debe conceder a Step Functions acceso a esos recursos mediante
un rol de IAM.
Con AWS Toolkit, puede beneficiarse de los roles de IAM generados de forma automática, que son válidos
para la región de AWS en la que crea la máquina de estado. Para crear su propio rol de IAM para una
máquina de estado, consulte Cómo funciona AWS Step Functions con IAM en la Guía para desarrolladores
de AWS Step Functions.
1. En el panel de AWS Explorer, abra el menú contextual (haga clic con el botón derecho) de Step
Functions y, a continuación, elija Create a new Step Function state machine (Crear una nueva
máquina de estado de Step Functions).
2. En el panel de comandos, elija una plantilla inicial para el flujo de trabajo de la máquina de estado.
3. A continuación, elija un formato para el archivo de Lenguaje de estados de Amazon (ASL) que define
su máquina de estado.
Se abre un editor para mostrar el archivo de ASL que define el flujo de trabajo de la máquina de
estado.
382
AWS Cloud9 Guía del usuario
Ejecución de una máquina de estado en AWS Toolkit
Note
Para obtener información sobre editar el archivo de ASL para personalizar el flujo de trabajo,
consulte Estructura de las máquinas de estado.
4. En el archivo de ASL elija Publish to Step Functions (Publicar en Step Funcions) para agregar la
máquina de estado a la nube de AWS.
Note
También puede elegir Render graph (Gráfico de representación) en el archivo de ASL para
mostrar una representación visual del flujo de trabajo de la máquina de estado.
5. En el panel de comandos, elija una región de AWS para alojar su instancia de Step Functions.
6. A continuación, puede optar por crear una nueva instancia de Step Functions o actualizar una
existente.
Quick Create
Esta opción le permite crear una nueva instancia de Step Functions desde el archivo de ASL
con step-functions/latest/dg/concepts-standard-vs-express.html. Se le pide que especifique lo
siguiente:
• Un rol de IAM que permita a la instancia de Step Functions ejecutar código y acceder a
recursos de AWS. (Puede elegir un rol de IAM generado de forma automática que sea válido
para la región de AWS en la que crea la máquina de estado).
• Un nombre para la nueva función.
Si ya existe una máquina de estado en la región de AWS, puede elegir una para actualizarla con
el archivo de ASL actual.
Después de crear una máquina de estado, aparece en Step Functions en el panel AWS Explorer. Si
no aparece inmediatamente, elija el menú Toolkit, Refresh Explorer (Actualizar Explorer).
1. En el panel AWS Explorer, elija Step Functions. A continuación, abra el menú contextual (haga clic con
el botón derecho) de una máquina de estado específica y elija Start Execution (Iniciar ejecución).
2. En el panel Start Execution (Iniciar ejecución), agregue la entrada en formato JSON para el flujo de
trabajo de la máquina de estado. Para ello, ingrese el texto directamente en el campo siguiente o
cargue un archivo desde su dispositivo local.
3. Elija Execute (Ejecutar).
383
AWS Cloud9 Guía del usuario
Descargue un archivo de definición de máquina
de estado y visualice su flujo de trabajo
La pestaña de salida de AWS Toolkit muestra una confirmación de que el flujo de trabajo se inició y
el ARN del ID del proceso. Puede usar el ID del proceso para verificar en la consola de AWS Step
Functions si el flujo de trabajo se ejecutó correctamente. También puede ver las marcas de tiempo de
cuándo inició y finalizó el flujo de trabajo.
1. En el panel AWS Explorer, elija Step Functions. A continuación, abra el menú contextual (haga clic
con el botón derecho) de una máquina de estado específica y elija Download Definition (Descargar
definición).
Note
El menú contextual también ofrece las opciones Copy Name (Copiar nombre) y Copy ARN
(Copiar ARN).
2. En el cuadro de diálogo Save (Guardar), seleccione la carpeta del entorno en la que almacena el
archivo de máquina de estado descargado y, a continuación, elija Save (Guardar).
El archivo con formato JSON que define el flujo de trabajo de la máquina de estado se muestra en un
editor.
3. Para mostrar una representación visual del flujo de trabajo, elija Render graph (Gráfico de
representación).
Una ventana muestra un diagrama de flujo, que muestra la secuencia de estados del flujo de trabajo
de la máquina de estado.
Un documento de Systems Manager define las acciones que Systems Manager lleva a cabo en las
instancias administradas. Un documento de automatización es un tipo de documento de Systems Manager
que usa para llevar a cabo tareas de implementación y mantenimiento comunes como, por ejemplo, crear o
actualizar una imagen de máquina de Amazon (AMI). En este tema se destaca cómo crear, editar, publicar
y eliminar documentos de automatización con AWS Toolkit.
Temas
• Hipótesis y requisitos previos (p. 385)
• Permisos de IAM para documentos de Systems Manager Automation (p. 385)
• Creación de un nuevo documento de automatización de Systems Manager (p. 386)
384
AWS Cloud9 Guía del usuario
Hipótesis y requisitos previos
• Está familiarizado con Systems Manager. Para obtener más información, consulte la Guía del usuario de
AWS Systems Manager.
• Está familiarizado con los casos de uso de automatización de Systems Manager. Para obtener más
información, consulte AWS Systems Manager Automation en la Guía del usuario de AWS Systems
Manager.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ssm:ListDocuments",
"ssm:ListDocumentVersions",
"ssm:DescribeDocument",
"ssm:GetDocument",
"ssm:CreateDocument",
"ssm:UpdateDocument",
"ssm:UpdateDocumentDefaultVersion",
"ssm:DeleteDocument"
],
"Resource": "*"
}
]
}
Para obtener más información sobre cómo crear una política de IAM, consulte Creación de políticas de IAM
en la Guía del usuario de IAM.
385
AWS Cloud9 Guía del usuario
Creación de un nuevo documento de
automatización de Systems Manager
1. Elija el icono de búsqueda del panel de navegación de la izquierda o presione Ctrl + P para abrir el
panel de búsqueda.
2. En el panel de búsqueda, comience a ingresar el término “systems manager” y elija el comando AWS:
Create a new Systems Manager Document Locally (AWS: Crear un nuevo documento de Systems
Manager local) cuando se muestre.
3. Elija una de las plantillas iniciales para un ejemplo de Hello World.
4. Elija JSON o YAML como formato del documento.
Note
1. Abra el documento de automatización que quiere publicar con el procedimiento descrito en Edición de
un documento de automatización de Systems Manager existente (p. 387).
2. Elija el icono de búsqueda del panel de navegación de la izquierda o presione Ctrl + P para abrir el
panel de búsqueda.
3. En el panel de búsqueda, comience a ingresar el término “systems manager” y elija el comando
AWS: Publish a new Systems Manager Document (AWS: Publicar un nuevo documento de Systems
Manager) cuando se muestre.
4. En Step 1 of 3 (Paso 1 de 3), elija la región de AWS en la que quiere publicar el documento.
5. En Step 2 of 3 (Paso 2 de 3), elija Quick Create (Creación rápida) para crear un documento de
automatización. O elija Quick Update (Actualización rápida) para actualizar un documento de
automatización en esa región de AWS.
Note
386
AWS Cloud9 Guía del usuario
Edición de un documento de automatización
de Systems Manager existente
Note
Los únicos tipos de documentos que puede actualizar en AWS son los Owned by me (De mi propiedad).
También puede descargar los documentos de automatización compartidos o propiedad de Amazon
y editarlos en AWS Cloud9. Sin embargo, al publicar en AWS, tiene que usar la opción de crear un
documento nuevo o actualizar un documento existente de su propiedad. No puede crear nuevas versiones
de documentos que tengan otro propietario o sean propiedad de Amazon.
Para obtener más información, consulte Crear documentos de AWS Systems Manager en la Guía del
usuario de AWS Systems Manager.
1. En AWS Explorer, en Systems Manager, elija la categoría de documento de SSM que quiere
descargar: Owned by Amazon (Propiedad de Amazon), Owned by me (De mi propiedad) o Shared
with me (Compartido conmigo).
2. Para un documento específico, abra el menú contextual (haga clic con el botón derecho) y elija
Download as YAML (Descargar como YAML) o Download as JSON (Descargar como JSON).
El documento SSM con formato se muestra en una nueva pestaña del editor.
Después de finalizar la edición, puede usar el comando AWS: Publish a new Systems Manager Document
(Publicar un nuevo documento de Systems Manager) para crear un nuevo documento en la nube de AWS
o actualizar un documento existente de su propiedad.
Uso de versiones
Los documentos de automatización de Systems Manager utilizan versiones para la administración de
cambios. Con AWS Toolkit, puede establecer la versión predeterminada del documento, que es la versión
que se usa al ejecutar el documento.
• En AWS Explorer, vaya al documento en el que quiere establecer la versión predeterminada, abra el
menú contextual (haga clic con el botón derecho) del documento y elija Set default version (Establecer
versión predeterminada).
387
AWS Cloud9 Guía del usuario
Eliminación de un documento de
automatización de Systems Manager
Note
Si el documento elegido solo tiene una versión, no podrá cambiar el valor predeterminado.
1. En el panel de AWS Explorer, en Systems Manager, expanda Owned by Me (De mi propiedad) para
mostrar sus documentos.
2. Abra el menú contextual (haga clic con el botón derecho) del documento que quiera eliminar y elija
Delete document (Eliminar documento).
3. En el cuadro de diálogo de advertencia que se muestra, elija Delete (Eliminar) para confirmarlo.
Como alternativa, si quiere usar uno de los AWS SDK con las API de Systems Manager para ejecutar el
documento de automatización, consulte las referencias de AWS SDK.
Important
La ejecución de un documento de automatización puede crear nuevos recursos en AWS y puede
incurrir en costos de facturación. Le recomendamos encarecidamente que comprenda lo que
creará su documento de automatización en su cuenta antes de ejecutarlo.
388
AWS Cloud9 Guía del usuario
Solución de problemas
Asegúrese de que el perfil de las credenciales de AWS tiene los permisos necesarios para publicar
documentos de automatización. Si desea ver un ejemplo de política de permisos, consulte Permisos de
IAM para documentos de Systems Manager Automation (p. 385).
Asegúrese de haber publicado el documento en la misma región de AWS que está explorando en el panel
de AWS Explorer
He eliminado mi documento de automatización, pero se me siguen facturando los recursos que se crearon.
389
AWS Cloud9 Guía del usuario
Muestra de AWS CLI y aws-shell
Experimente con estos tutoriales para aumentar sus conocimientos y confianza con AWS Cloud9 con
diversos lenguajes de programación y servicios de AWS.
Temas
• Muestra de AWS Command Line Interface y aws-shell para AWS Cloud9 (p. 390)
• AWS CodeCommit Ejemplo de para AWS Cloud9 (p. 394)
• Ejemplo de Amazon DynamoDB para AWS Cloud9 (p. 400)
• Ejemplo de AWS CDK para AWS Cloud9 (p. 411)
• Muestra de LAMP para AWS Cloud9 (p. 418)
• Instalación de WordPress para AWS Cloud9 (p. 426)
• Muestra de Java para AWS Cloud9 (p. 429)
• Muestra de C++ para AWS Cloud9 (p. 439)
• Tutorial de Python para AWS Cloud9 (p. 446)
• Muestra de .NET Core para AWS Cloud9 (p. 450)
• Muestra de Node.js para AWS Cloud9 (p. 459)
• Muestra de PHP para AWS Cloud9 (p. 466)
• Tutorial: Ruby en AWS Cloud9 (p. 471)
• Ejemplo de Go para AWS Cloud9 (p. 478)
• Muestra de TypeScript para AWS Cloud9 (p. 484)
• Ejemplo de Docker para AWS Cloud9 (p. 490)
• Ejemplos relacionados (p. 498)
Para obtener más información sobre AWS CLI, consulte la Guía del usuario de AWS Command Line
Interface. Para el aws-shell, consulte los recursos siguientes:
390
AWS Cloud9 Guía del usuario
Requisitos previos
Para obtener una lista de comandos que puede ejecutar con AWS CLI para interactuar con AWS, consulte
la Referencia de los comandos de AWS CLI. Puede utilizar los mismos comandos con el aws-shell, salvo
que los inicie sin el prefijo aws.
La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon EC2 y Amazon S3. Para obtener más información, consulte Precios de
Amazon EC2 y Precios de Amazon S3.
Temas
• Requisitos previos (p. 391)
• Paso 1: Instalar AWS CLI, aws-shell o ambos en el entorno (p. 391)
• Paso 2: Configurar la administración de credenciales en su entorno (p. 392)
• Paso 3: Ejecutar comandos básicos con AWS CLI o aws-shell en su entorno (p. 393)
• Paso 4: limpieza (p. 393)
Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:
• Debe tener un entorno de desarrollo de AWS Cloud9 EC2. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).
Si utiliza un entorno de desarrollo de AWS Cloud9 EC2 y solo desea utilizar AWS CLI, puede pasar
directamente a Paso 3: Ejecutar comandos básicos con AWS CLI o aws-shell en su entorno (p. 393).
Esto se debe a que AWS CLI ya está instalado en un entorno de EC2 y ya hay un conjunto de credenciales
de acceso de AWS configurado en el entorno. Para obtener más información, consulte Credenciales
temporales administradas por AWS (p. 569).
Si no utiliza un entorno de EC2, siga estos pasos para instalar AWS CLI:
1. Con el entorno abierto, en el IDE, verifique si AWS CLI ya está instalado. En el terminal, ejecute
el comando aws --version . (Para iniciar una nueva sesión del terminal, en la barra de menús,
seleccione Window [Ventana], New Terminal [Nuevo terminal]). Si AWS CLI ya está instalado, aparece
el número de versión con información como los números de versión de Python y el número de versión
del sistema operativo de la instancia de Amazon EC2 o su propio servidor. Si la AWS CLI está
instalada, continúe en Paso 2: Configurar la administración de credenciales en su entorno (p. 392).
391
AWS Cloud9 Guía del usuario
Paso 2: Configurar la administración
de credenciales en su entorno
2. Para instalar AWS CLI, consulte Instalación de AWS Command Line Interface en la Guía del usuario
de AWS Command Line Interface. Por ejemplo, en el caso de un entorno de EC2 que ejecute Amazon
Linux, ejecute estos tres comandos en el terminal, de uno en uno, para instalar AWS CLI.
En el caso de un entorno de EC2 que ejecute Ubuntu Server, ejecute estos tres comandos en el
terminal en su lugar, de uno en uno, para instalar AWS CLI.
1. Con el entorno abierto, en el IDE, verifique si aws-shell ya está instalado. En el terminal, ejecute el
comando aws-shell . (Para iniciar una nueva sesión del terminal, en la barra de menús, seleccione
Window [Ventana], New Terminal [Nuevo terminal]). Si el aws-shell está instalado, se muestra el
símbolo de aws>. Si el aws-shell está instalado, continúe en Paso 2: Configurar la administración de
credenciales en su entorno (p. 392).
2. Para instalar el aws-shell, utilice pip. Para ello, debe tener instalado Python.
Para verificar si Python ya está instalado (y para instalarlo si es necesario), siga las instrucciones de
Paso 1: Instalar Python (p. 446) en la Muestra de Python y, a continuación, vuelva a este tema.
Para comprobar si pip ya está instalado, en el terminal, ejecute el comando pip --version .
Si lo está, aparece el número de versión. Si pip no está instalado, instálelo ejecutando estos tres
comandos, de uno en uno, en el terminal.
Si utiliza un entorno de desarrollo de EC2 de AWS Cloud9, puede avanzar hasta Paso 3: Ejecutar
comandos básicos con AWS CLI o aws-shell en su entorno (p. 393). Esto se debe a que las credenciales
ya están configuradas en un entorno de EC2. Para obtener más información, consulte Credenciales
temporales administradas por AWS (p. 569).
392
AWS Cloud9 Guía del usuario
Paso 3: Ejecutar comandos básicos
con AWS CLI o aws-shell en su entorno
Si no utiliza un entorno de EC2, debe almacenar manualmente sus credenciales en el entorno. Para ello,
siga las instrucciones de Llamar a los servicios de AWS desde un entorno en AWS Cloud9 (p. 81) y, a
continuación, vuelva a este tema.
1. Si desea utilizar el aws-shell pero aún no lo ha iniciado, inicie el aws-shell ejecutando el comando
aws-shell. Se muestra el símbolo aws>.
2. Cree un bucket. Ejecute el comando aws s3 mb con AWS CLI o el comando s3 mb con aws-
shell y especifique el nombre del bucket que se va a crear. En este ejemplo, utilizamos un bucket
denominado cloud9-123456789012-bucket, donde 123456789012 es su ID de cuenta de AWS.
Si usa otro nombre, sustitúyalo en todo este paso.
Note
Los nombres de bucket deben ser únicos en todo AWS, no solo en la cuenta de AWS. El
nombre del bucket sugerido anterior puede ayudarle a crear un nombre de bucket único. Si
recibe un mensaje que contiene el error BucketAlreadyExists, debe ejecutar el comando
de nuevo con otro nombre de bucket.
3. Enumere los buckets disponibles. Ejecute el comando aws s3 ls con AWS CLI o el comando s3 ls
con aws-shell. Se muestra una lista de los buckets disponibles.
4. Eliminar el bucket. Ejecute el comando aws s3 rb con AWS CLI o el comando s3 rb con aws-shell
y especifique el nombre del bucket que se va a eliminar.
Para confirmar si el bucket se ha eliminado, ejecute de nuevo el comando aws s3 ls con AWS CLI o
el comando s3 ls con aws-shell. El nombre del bucket que se haya eliminado no debería aparecer ya
en la lista.
Note
Para continuar experimentando con AWS CLI, consulte Trabajar con Amazon Web Services en la Guía del
usuario de AWS Command Line Interface y en Referencia de los comandos de AWS CLI. Para continuar
experimentando con aws-shell, consulte Referencia de los comandos de AWS CLI y tenga en cuenta que
debe iniciar los comandos sin el prefijo aws.
Paso 4: limpieza
Si utiliza el shell de AWS, puede dejar de utilizarlo ejecutando el comando .exit o .quit .
393
AWS Cloud9 Guía del usuario
AWS CodeCommitEjemplo de
Para evitar que se apliquen cargos continuos en su cuenta de AWS después de terminar de usar esta
muestra, debe eliminar el entorno. Para obtener instrucciones, consulte Eliminación de un entorno en AWS
Cloud9 (p. 111).
La creación de esta muestra puede generar cargos en su cuenta de AWS. Estos incluyen posibles cargos
por servicios como Amazon EC2 y CodeCommit. Para obtener más información, consulte Precios de
Amazon EC2 y Precios de AWS CodeCommit.
Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:
• Debe tener un entorno de desarrollo de AWS Cloud9 EC2. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).
Puede completar este paso con la AWS Management Console (p. 394) o con la interfaz de línea de
comandos de AWS (AWS CLI) (p. 395).
394
AWS Cloud9 Guía del usuario
Paso 1: Configurar el grupo de IAM
con los permisos de acceso necesarios
En este paso, le recomendamos que inicie sesión con las credenciales de un usuario administrador de
IAM en su cuenta de AWS. Si no puede hacerlo, consulte con el administrador de su cuenta de AWS.
2. Abra la consola de IAM. Para ello, en la barra de navegación de la consola, elija Services (Servicios). A
continuación, elija IAM.
3. Seleccione Groups (Grupos).
4. Elija el nombre del grupo.
5. En la pestaña Permissions (Permisos), en Managed Policies (Políticas administradas), elija Attach Policy
(Adjuntar política).
6. En la lista con los nombres de las políticas, seleccione una de las siguientes casillas:
• Seleccione AWSCodeCommitPowerUser para acceder a toda la funcionalidad de CodeCommit y a
los recursos relacionados con el repositorio, a excepción de que no permite eliminar repositorios de
CodeCommit ni crear o eliminar los recursos relacionados con el repositorio en otros servicios de
AWS, como Amazon CloudWatch Events.
• Seleccione AWSCodeCommitFullAccess para tener el control total de repositorios de CodeCommit y
los recursos relacionados en la cuenta de AWS, incluida la posibilidad de eliminar repositorios.
(Si no ve ninguno de los nombres de política en la lista, escríbalo en el cuadro Filter (Filtrar) para
mostrarlo).
7. Elija Attach Policy (Adjuntar política).
Para ver la lista de los permisos de acceso que estas políticas administradas por AWS asignan a un grupo,
consulte Políticas administradas (predefinidas) por AWS para AWS CodeCommit en la Guía del usuario de
AWS CodeCommit.
En el comando anterior, reemplace MyGroup por el nombre del grupo. Reemplace POLICY_ARN por el
ARN de la política administrada por AWS como se indica a continuación:
Para ver la lista de los permisos de acceso que estas políticas administradas por AWS asignan a un grupo,
consulte Políticas administradas (predefinidas) por AWS para AWS CodeCommit en la Guía del usuario de
AWS CodeCommit.
395
AWS Cloud9 Guía del usuario
Paso 2: Crear un repositorio en CodeCommit
Puede completar este paso con la AWS Management Console (p. 396) o con la interfaz de línea de
comandos de AWS (AWS CLI) (p. 396).
Si decide usar otro nombre para el repositorio sustitúyalo en todo este ejemplo.
396
AWS Cloud9 Guía del usuario
Paso 3: Conectar el entorno con el repositorio remoto
Note
Si prefiere trabajar con Git a través de una interfaz visual, puede clonar el repositorio remoto y,
a continuación, agregar archivos utilizando la característica del panel de Git (p. 315) que está
disponible en el IDE.
Complete uno de los siguientes conjuntos de procedimientos, en función del tipo de entorno de desarrollo
de AWS Cloud9 que tenga.
397
AWS Cloud9 Guía del usuario
Paso 4: Clonar el repositorio remoto en su entorno
Para clonar el repositorio, ejecute el comando git clone , especificando la dirección URL de la
clonación del repositorio, que se muestra aquí como CLONE_URL .
Para un entorno de EC2, se proporciona una URL de clonación HTTPS que comienza por https://. Para
un entorno de SSH, se proporciona una URL de clonación SSH que comienza por ssh://.
Para obtener la URL de clonación completa del repositorio, consulte Uso de la consola de AWS
CodeCommit para ver la información de los repositorios en la Guía del usuario de AWS CodeCommit.
Si su repositorio no tiene ningún archivo, se muestra un mensaje de advertencia, por ejemplo, You
appear to have cloned an empty repository. Este es el comportamiento esperado y se
abordará más adelante.
Si el repositorio clonado ya tiene archivos, ha terminado y puede ignorar el resto de esta muestra.
1. Cree un archivo nuevo. En la barra de menús, elija File (Archivo), New File (Archivo nuevo).
2. Escriba el contenido siguiente en el archivo y, a continuación, elija File (Archivo), Save (Guardar)
para guardar el archivo como bird.txt en el directorio MyDemoCloud9Repo de su entorno de AWS
Cloud9.
bird.txt
--------
Birds are a group of endothermic vertebrates, characterized by feathers,
toothless beaked jaws, the laying of hard-shelled eggs, a high metabolic
rate, a four-chambered heart, and a lightweight but strong skeleton.
Note
insect.txt
----------
Insects are a class of invertebrates within the arthropod phylum that
have a chitinous exoskeleton, a three-part body (head, thorax, and abdomen),
three pairs of jointed legs, compound eyes, and one pair of antennae.
398
AWS Cloud9 Guía del usuario
Paso 5: Agregar archivos al repositorio
reptile.txt
-----------
Reptiles are tetrapod (four-limbed vertebrate) animals in the class
Reptilia, comprising today's turtles, crocodilians, snakes,
amphisbaenians, lizards, tuatara, and their extinct relatives.
cd MyDemoCloud9Repo
Untracked files:
(use "git add <file>..." to include in what will be committed)
bird.txt
insect.txt
reptile.txt
7. Confirme que los archivos se agregaron correctamente al espacio provisional de Git ejecutando el
comando git status de nuevo. Los tres archivos aparecen ahora como cambios por confirmar.
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
10. Confirme si los archivos se han enviado correctamente. Abra la consola de CodeCommit si aún no
está abierta, en https://console.aws.amazon.com/codecommit.
11. En la barra de navegación superior, cerca del borde derecho, elija la región de AWS en la que creó el
repositorio (por ejemplo, EE. UU. Este [Ohio]).
12. En la página Dashboard (Panel), seleccione MyDemoCloud9Repo. Se muestran los tres archivos.
Para continuar experimentando con el repositorio de CodeCommit, consulte Examinar el contenido del
repositorio en la Guía del usuario de AWS CodeCommit.
Si es la primera vez que utiliza Git y no desea estropear el repositorio de CodeCommit, experimente con un
repositorio de Git de muestra en el sitio web Try Git.
399
AWS Cloud9 Guía del usuario
Paso 6: Limpieza
Paso 6: Limpieza
Para evitar que se hagan cargos continuos en su cuenta de AWS una vez terminada esta muestra,
le conviene eliminar el repositorio de CodeCommit. Para obtener instrucciones, consulte Eliminar un
repositorio de AWS CodeCommit en la Guía del usuario de AWS CodeCommit.
También debe eliminar el entorno. Para obtener instrucciones, consulte la sección sobre eliminación de
entornos (p. 111).
DynamoDB es una base de datos NoSQL completamente administrada. Puede utilizar DynamoDB para
crear una tabla de base de datos capaz de almacenar y recuperar cualquier cantidad de datos, así como
de atender cualquier nivel de tráfico de solicitudes. DynamoDB distribuye automáticamente los datos
y el tráfico de la tabla entre un número de servidores suficiente como para administrar la capacidad de
solicitudes especificada y la cantidad de datos almacenados, manteniendo al mismo tiempo un rendimiento
uniforme y rápido. Para obtener más información, consulte Amazon DynamoDB en la página web de AWS.
La creación de esta muestra puede generar cargos en su cuenta de AWS. Estos incluyen posibles cargos
por servicios como Amazon EC2 y DynamoDB. Para obtener más información, consulte Precios de
Amazon EC2 y Precios de Amazon DynamoDB.
Para obtener más información sobre otras ofertas de base de datos de AWS, consulte Amazon Relational
Database Service (RDS), Amazon ElastiCache y Amazon Redshift en el sitio web de AWS. Consulte
también AWS Database Migration Service en el sitio web de AWS.
Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:
• Debe tener un entorno de desarrollo de AWS Cloud9 EC2. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).
400
AWS Cloud9 Guía del usuario
Paso 1: Instalar y configurar AWS
CLI, aws-shell o ambos en el entorno
1. Para configurar la administración de credenciales para AWS CLI o aws-shell e instalar AWS CLI, aws-
shell o ambos en su entorno, siga los pasos 1 y 2 del Ejemplo de AWS CLI y aws-shell (p. 390) y, a
continuación, vuelva a este tema. Si ya ha instalado y configurado AWS CLI, aws-shell o ambos en su
entorno, no es necesario hacerlo de nuevo.
2. Pruebe la instalación y configuración de AWS CLI, aws-shell o ambos ejecutando el comando
list-tables desde una sesión del terminal en su entorno para obtener una lista de las tablas
de DynamoDB, si hay alguna. Para comenzar una nueva sesión de terminal, en la barra de menús,
seleccione Windows (Ventanas), New Terminal (Nuevo terminal).
Note
En este ejemplo, si está utilizando el aws-shell, omita aws de cada comando que comience por
aws. Para iniciar el shell de AWS, ejecute el comando aws-shell . Para dejar de usar el shell
de AWS, ejecute el comando .exit o .quit .
Si este comando se ejecuta correctamente, genera una matriz TableNames que contiene una lista de
tablas de DynamoDB existentes que es posible que ya tenga. Si no tiene aún tablas de DynamoDB, la
matriz de TableNames estará vacía.
{
"TableNames": []
}
Si tiene cualquier tabla de DynamoDB, la matriz de TableNames contiene una lista de los nombres de
las tablas.
Esta tabla de ejemplo, denominada Weather, contiene información acerca de las previsiones
meteorológicas para algunas ciudades de Estados Unidos. La tabla contiene los siguientes tipos de
información (en DynamoDB, cada fragmento de información se denomina atributo):
401
AWS Cloud9 Guía del usuario
Paso 3: Agregar un elemento a la tabla
Para crear la tabla, en una sesión del terminal del IDE de AWS Cloud9, ejecute el comando create-
table de DynamoDB.
En este comando:
• --table-name representa el nombre de la tabla (Weather en este ejemplo). Los nombres de tabla
deben ser únicos de cada región de AWS de la cuenta de AWS.
• --attribute-definitions representa los atributos que se utilizan para identificar de forma única los
elementos de la tabla. Cada uno de los elementos de esta tabla se identifica de forma única por medio
de una combinación de un atributo ID numérico y un atributo Date representado como una cadena con
formato ISO-8601.
• --key-schema representa el esquema de claves de la tabla. Esta tabla tiene una clave principal
compuesta de CityID y Date. Esto significa que cada uno de los elementos de la tabla debe tener un
valor de atributo CityID y un valor de atributo Date, pero no puede haber dos elementos de la tabla
que tengan el mismo valor de atributo CityID y valor de atributo Date.
• --provisioned-throughput representa la capacidad de lectura-escritura de la tabla. DynamoDB
permite hasta 5 lecturas de alta consistencia por segundo para elementos de hasta 4 KB de tamaño o
hasta 5 lecturas eventualmente consistentes por segundo para los elementos de hasta 4 KB de tamaño.
DynamoDB también permite hasta 5 escrituras por segundo para los elementos con un tamaño de hasta
1 KB.
Note
Si este comando se ejecuta correctamente, se muestra información resumida sobre la tabla nueva que se
está creando. Para confirmar que la tabla se ha creado correctamente, ejecute el comando describe-
table de DynamoDB y especifique el nombre de la tabla (--table-name).
1. Cree un archivo denominado weather-item.json con el siguiente contenido. Para crear un archivo
nuevo, en la barra de menús, elija File (Archivo), New File (Nuevo archivo). Para guardar el archivo, elija
File (Archivo), Save (Guardar).
402
AWS Cloud9 Guía del usuario
Paso 4: Agregar varios elementos a la tabla
{
"CityID": { "N": "1" },
"Date": { "S": "2017-04-12" },
"City": { "S": "Seattle" },
"State": { "S": "WA" },
"Conditions": { "S": "Rain" },
"Temperatures": { "M": {
"HighF": { "N": "59" },
"LowF": { "N": "46" }
}
}
}
{
"Weather": [
{
"PutRequest": {
"Item": {
"CityID": { "N": "1" },
"Date": { "S": "2017-04-13" },
"City": { "S": "Seattle" },
"State": { "S": "WA" },
"Conditions": { "S": "Rain" },
"Temperatures": { "M": {
"HighF": { "N": "52" },
"LowF": { "N": "43" }
}
}
403
AWS Cloud9 Guía del usuario
Paso 4: Agregar varios elementos a la tabla
}
}
},
{
"PutRequest": {
"Item": {
"CityID": { "N": "1" },
"Date": { "S": "2017-04-14" },
"City": { "S": "Seattle" },
"State": { "S": "WA" },
"Conditions": { "S": "Rain" },
"Temperatures": { "M": {
"HighF": { "N": "49" },
"LowF": { "N": "43" }
}
}
}
}
},
{
"PutRequest": {
"Item": {
"CityID": { "N": "2" },
"Date": { "S": "2017-04-12" },
"City": { "S": "Portland" },
"State": { "S": "OR" },
"Conditions": { "S": "Thunderstorms" },
"Temperatures": { "M": {
"HighF": { "N": "59" },
"LowF": { "N": "43" }
}
}
}
}
},
{
"PutRequest": {
"Item": {
"CityID": { "N": "2" },
"Date": { "S": "2017-04-13" },
"City": { "S": "Portland" },
"State": { "S": "OR" },
"Conditions": { "S": "Rain" },
"Temperatures": { "M": {
"HighF": { "N": "51" },
"LowF": { "N": "41" }
}
}
}
}
},
{
"PutRequest": {
"Item": {
"CityID": { "N": "2" },
"Date": { "S": "2017-04-14" },
"City": { "S": "Portland" },
"State": { "S": "OR" },
"Conditions": { "S": "Rain Showers" },
"Temperatures": { "M": {
"HighF": { "N": "49" },
"LowF": { "N": "39" }
}
}
}
}
404
AWS Cloud9 Guía del usuario
Paso 4: Agregar varios elementos a la tabla
},
{
"PutRequest": {
"Item": {
"CityID": { "N": "3" },
"Date": { "S": "2017-04-12" },
"City": { "S": "Portland" },
"State": { "S": "ME" },
"Conditions": { "S": "Rain" },
"Temperatures": { "M": {
"HighF": { "N": "59" },
"LowF": { "N": "40" }
}
}
}
}
},
{
"PutRequest": {
"Item": {
"CityID": { "N": "3" },
"Date": { "S": "2017-04-13" },
"City": { "S": "Portland" },
"State": { "S": "ME" },
"Conditions": { "S": "Partly Sunny" },
"Temperatures": { "M": {
"HighF": { "N": "54" },
"LowF": { "N": "37" }
}
}
}
}
},
{
"PutRequest": {
"Item": {
"CityID": { "N": "3" },
"Date": { "S": "2017-04-14" },
"City": { "S": "Portland" },
"State": { "S": "ME" },
"Conditions": { "S": "Mostly Sunny" },
"Temperatures": { "M": {
"HighF": { "N": "53" },
"LowF": { "N": "37" }
}
}
}
}
}
]
}
En este código, hay 8 objetos Item que definen los 8 elementos que se van a añadir a la tabla, de
forma similar al elemento único que se ha definido en el paso anterior. Sin embargo, al ejecutar el
comando batch-write-item de DynamoDB en el siguiente paso, debe proporcionar un objeto
con formato JSON que incluya cada uno de los objetos Item en un objeto PutRequest contenedor.
A continuación, debe incluir esos objetos PutRequest en una matriz principal que tenga el mismo
nombre que la tabla.
2. Ejecute el comando batch-write-item de DynamoDB y especifique la ruta de los elementos con
formato JSON que se van a agregar (--request-items).
405
AWS Cloud9 Guía del usuario
Paso 5: Crear un índice secundario global
--request-items file://more-weather-items.json
Si el comando se ejecuta correctamente, se muestra el siguiente mensaje, que confirma que los
elementos se han agregado correctamente.
{
"UnprocessedItems": {}
}
3. Para confirmar el contenido actual de la tabla, ejecute de nuevo el comando scan de DynamoDB.
Para comprender estos tipos de índices secundarios, primero debe conocer las claves primarias, que
identifican de forma única los elementos de una tabla. DynamoDB admite una clave principal simple o
una clave principal compuesta. Una clave principal simple posee un único atributo y ese valor del atributo
debe ser único para cada elemento de la tabla. Este atributo también se conoce como clave de partición (o
un atributo hash), que DynamoDB puede utilizar para particionar elementos para que el acceso sea más
rápido. Una tabla también puede tener una clave principal compuesta, que contiene dos atributos. El primer
atributo es la clave de partición y el segundo es una clave de ordenación (también conocida como atributo
de rango). En una tabla con una clave principal compuesta, puede haber dos elementos que tengan el
mismo valor de clave de partición, pero no pueden tener también el mismo valor de clave de ordenación.
La tabla Weather tiene una clave principal compuesta.
Un índice secundario local tiene la misma clave de partición que la propia tabla, pero este tipo de índice
puede tener una clave de ordenación diferente. Un índice secundario global puede tener una clave de
partición y una clave de ordenación que son diferentes a la tabla en sí.
Por ejemplo, ya puede utilizar la clave principal para obtener acceso a elementos Weather por CityID.
Para obtener acceso a los elementos Weather por State, puede crear un índice secundario local que
tenga una clave de partición de CityID (debe ser la misma que la tabla) y una clave de ordenación de
State. Para obtener acceso a los elementos Weather por City, puede crear un índice secundario global
que tenga una clave de partición de City y una clave de ordenación de Date.
Solo puede crear índices secundarios locales mientras está creando una tabla. Dado que la tabla Weather
ya existe, no puede añadirle cualquier índice secundario local. Sin embargo, puede añadir índices
secundarios globales. Añada uno ahora para practicar.
Note
La creación de índices secundarios puede producir cargos adicionales en su cuenta de AWS.
[
{
"Create": {
406
AWS Cloud9 Guía del usuario
Paso 5: Crear un índice secundario global
"IndexName": "weather-global-index",
"KeySchema": [
{
"AttributeName": "City",
"KeyType": "HASH"
},
{
"AttributeName": "Date",
"KeyType": "RANGE"
}
],
"Projection": {
"ProjectionType": "INCLUDE",
"NonKeyAttributes": [
"State",
"Conditions",
"Temperatures"
]
},
"ProvisionedThroughput": {
"ReadCapacityUnits": 5,
"WriteCapacityUnits": 5
}
}
}
]
En este código:
• El nombre del índice secundario global es weather-global-index.
• El atributo City es la clave de partición (atributo hash) y el atributo Date es la clave de ordenación
(atributo de rango).
• Projection define los atributos que se van a recuperar de forma predeterminada (además del
atributo hash y cualquier atributo de rango) por cada elemento que coincida con una búsqueda de
tabla que utilice este índice. En este ejemplo, se recuperan los atributosState, Conditions, HighF
(parte de Temperatures) y LowF ( Temperatures) (así como los atributos City y Date) para cada
elemento coincidente.
• Al igual que las tablas, un índice secundario global debe definir su configuración de desempeño
aprovisionado.
• La configuración de IndexName, KeySchema, Projection y ProvisionedThroughput debe
estar incluida en un objeto Create, que define el índice secundario global que se va a crear al
ejecutar el comando update-table de DynamoDB en el siguiente paso.
2. Ejecute el comando update-table de DynamoDB.
En este comando:
• --table-name es el nombre de la tabla que se va a actualizar.
• --attribute-definitions son los atributos que se van a incluir en el índice. La clave de partición
siempre aparece primero y cualquier clave de ordenación aparece siempre en segundo lugar.
• --global-secondary-index-updates es la ruta al archivo que define el índice secundario
global.
Si este comando se ejecuta correctamente, se muestra información resumida sobre el nuevo índice
secundario global que se está creando. Para confirmar que el índice secundario global se ha creado
407
AWS Cloud9 Guía del usuario
Paso 6: Obtener elementos de la tabla
Cuando el índice secundario global se haya creado correctamente, el valor de TableStatus cambia de
UPDATING a ACTIVE y el valor de IndexStatus cambia de CREATING a ACTIVE. No siga realizando
los pasos hasta que el índice secundario global se haya creado correctamente. Esto puede tardar varios
minutos.
• get-item devuelve un conjunto de atributos del elemento con la clave principal especificada.
• scan devuelve uno o más elementos y atributos de elementos obteniendo acceso a todos los
elementos de una tabla o un índice secundario.
• query busca elementos según los valores de clave principal. Puede consultar cualquier tabla o índice
secundario que cuente con una clave principal compuesta (una clave de partición y una clave de
ordenación).
En este ejemplo, así es cómo se utiliza cada uno de estos comandos para obtener el elemento que
contiene el valor del atributo CityID de 1 y el valor del atributo Date de 2017-04-12.
En este y otros comandos, para ver todos los atributos del elemento, no incluya --projection-
expression. En este ejemplo, dado que no está incluyendo --projection-expression, tampoco
es necesario incluir --expression-attribute-names.
408
AWS Cloud9 Guía del usuario
Paso 6: Obtener elementos de la tabla
Fíjese en que el comando scan ha tenido que analizar los 9 elementos para obtener el resultado,
mientras que el comando query solo ha tenido que analizar 1 elemento.
Ejecute el comando batch-get-item de DynamoDB y especifique la ruta a un archivo que describa los
elementos que se van a obtener (--request-items).
409
AWS Cloud9 Guía del usuario
Paso 6: Obtener elementos de la tabla
Para este ejemplo, el código del archivo batch-get-item.json especifica que se deben buscar en
la tabla Weather los elementos con un CityID de 3 y un Date de 2017-04-13 o 2017-04-14. Para
cada elemento encontrado, se muestran los valores de atributo de CityState, Date y HighF (parte de
Temperatures), si existen.
{
"Weather" : {
"Keys": [
{
"CityID": { "N": "3" },
"Date": { "S": "2017-04-13" }
},
{
"CityID": { "N": "3" },
"Date": { "S": "2017-04-14" }
}
],
"ProjectionExpression": "City, #S, #D, Temperatures.HighF",
"ExpressionAttributeNames": { "#S": "State", "#D": "Date" }
}
}
410
AWS Cloud9 Guía del usuario
Paso 7: limpieza
para obtener las condiciones de la previsión en ciudades con el nombre Portland para las fechas
2017-04-13 y 2017-04-14.
Paso 7: limpieza
Para evitar que se apliquen cargos continuos en su cuenta de AWS después de terminar de usar esta
muestra, elimine la tabla. Al eliminar la tabla, también se elimina el índice secundario global. También debe
eliminar su entorno.
Si la tabla se elimina correctamente, se muestra un mensaje que contiene la frase Requested resource
not found.
411
AWS Cloud9 Guía del usuario
Requisitos previos
desarrolladores pueden utilizar para crear modelos de componentes de la infraestructura de AWS como
código.
El AWS CDK incluye AWS Construct Library, que puede utilizar para resolver rápidamente muchas tareas
en AWS. Por ejemplo, puede utilizar la construcción Fleet para implementar código de forma completa
y segura en una flota de hosts. Puede crear sus propias construcciones para crear modelos de diversos
elementos de sus arquitecturas, compartirlos con otras personas o publicarlos en la comunidad. Para
obtener más información, consulte la Guía del desarrollador del kit de desarrollo de la nube de AWS.
La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon EC2, Amazon SNS y Amazon SQS. Para obtener más información,
consulte Precios de Amazon EC2, Precios de Amazon SNS y Precios de Amazon SQS.
Temas
• Requisitos previos (p. 412)
• Paso 1: Instalar las herramientas necesarias (p. 412)
• Paso 2: Agregar el código (p. 415)
• Paso 3: Ejecutar el código (p. 416)
• Paso 4: limpieza (p. 418)
Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:
• Debe tener un entorno de desarrollo de AWS Cloud9 EC2. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).
1. Node Version Manager (p. 412) o nvm, que se utiliza para instalar Node.js más adelante.
2. Node.js (p. 413), que es necesario para la muestra y contiene el administrador de paquetes de nodo o
npm, que se utiliza para instalar TypeScript y el AWS CDK más adelante.
3. TypeScript (p. 414), que lo requiere esta muestra. (El AWS CDK también ofrece compatibilidad con
otros lenguajes de programación).
4. AWS CDK (p. 414).
412
AWS Cloud9 Guía del usuario
Paso 1: Instalar las herramientas necesarias
2. Confirme si nvm ya está instalado. Para ello, ejecute el comando nvm con la opción --version.
nvm --version
Si se ejecuta correctamente, el resultado contiene el número de versión de nvm , en cuyo caso puede
ir directamente a Paso 1.2: Instalar Node.js (p. 413).
3. Descargue e instale nvm . Para ello, ejecute el script de instalación. En este ejemplo, la
versión instalada es la 0.33.0, pero puede consultar la última versión de nvm aquí.
4. Comience a utilizar nvm . Puede cerrar la sesión del terminal e iniciarla de nuevo, o bien cargar el
archivo ~/.bashrc que contiene los comandos para cargar nvm.
. ~/.bashrc
node --version
También puede ejecutar nvm install stable para instalar la versión de soporte a largo
plazo (LTS) de Node.js. AWS Cloud9 es compatible con la versión LTS de Node.js.
3. Comience a utilizar Node.js 10.3.0. Para ello, ejecute el comando nvm junto con la acción alias, el
número de versión para el alias y la versión que se va a utilizar para dicho alias, tal y como se indica a
continuación.
413
AWS Cloud9 Guía del usuario
Paso 1: Instalar las herramientas necesarias
Note
tsc --version
3. Confirme que TypeScript se ha instalado. Para ello, ejecute el compilador TypeScript de la línea de
comandos con la opción --version.
tsc --version
cdk --version
Si el AWS CDK está instalado, el resultado contendrá el AWS CDK y los números de compilación.
Vaya a Paso 2: Agregar el código (p. 415).
2. Para instalar AWS CDK, ejecute el comando npm junto con la acción install, el nombre del paquete
de AWS CDK que se instalará y la opción -g para instalar el paquete de manera global en el entorno.
3. Confirme que el AWS CDK se ha instalado y que se hace referencia a él de forma correcta. Para ello,
ejecute el comando cdk con la opción --version.
cdk --version
414
AWS Cloud9 Guía del usuario
Paso 2: Agregar el código
Si se ejecuta correctamente, se muestran los números de compilación y versión del AWS CDK.
1. Con la sesión del terminal aún abierta en el IDE, cree un directorio para almacenar el código fuente del
proyecto; por ejemplo, un directorio ~/environment/hello-cdk en su entorno. Luego, cambie a
ese directorio.
2. Configure el directorio como un proyecto de lenguaje TypeScript para el AWS CDK. Para ello, ejecute
el comando cdk con la acción init, la plantilla sample-app y la opción --language junto con el
nombre del lenguaje de programación.
• Un subdirectorio .git y un archivo.gitignore ocultos, que hacen que el proyecto sea compatible
con herramientas de control de código fuente como Git.
• Un subdirectorio lib, que incluye un archivo hello-cdk-stack.ts. Este archivo contiene el
código de la pila del AWS CDK. Este código se describe en el siguiente paso de este procedimiento.
• Un subdirectorio bin, que incluye un archivo hello-cdk.ts. Este archivo contiene el punto de
entrada de la aplicación del AWS CDK.
• Un subdirectorio node_modules, que contiene los paquetes de código de apoyo que la aplicación y
la pila pueden utilizar según sea necesario.
• Un archivo .npmignore oculto, que enumera los tipos de subdirectorios y los archivos que npm no
necesita al compilar el código.
• Un archivocdk.json, que contiene la información para poder ejecutar el comando cdk más
fácilmente.
• Un archivo package-lock.json, que contiene información que npm puede utilizar para reducir
posibles errores de compilación y ejecución.
• Un archivo package.json, que contiene información para poder ejecutar el comando npm más
fácilmente y con posiblemente menos errores de compilación y ejecución.
• Un archivo README.md, que enumera comandos útiles que puede ejecutar con npm y el AWS
CDK.
• Un archivo tsconfig.json, que contiene información para poder ejecutar el comando tsc más
fácilmente y con posiblemente menos errores de compilación y ejecución.
3. En la ventana Environment (Entorno), abra el archivo lib/hello-cdk-stack.ts y examine el
siguiente código en ese archivo.
415
AWS Cloud9 Guía del usuario
Paso 3: Ejecutar el código
topic.subscribeQueue(queue);
}
}
• Las clases Stack, App, StackProps, Queue y Topic representan una pila de AWS
CloudFormation y sus propiedades, un programa ejecutable, una cola de Amazon SQS y un tema
de Amazon SNS, respectivamente.
• La clase HelloCdkStack representa la pila de AWS CloudFormation para esta aplicación. Esta
pila contiene la nueva cola de Amazon SQS y el tema de Amazon SNS para esta aplicación.
4. En la ventana Environment (Entorno), abra el archivo bin/hello-cdk.ts y examine el siguiente
código en ese archivo.
#!/usr/bin/env node
import cdk = require('@aws-cdk/cdk');
import { HelloCdkStack } from '../lib/hello-cdk-stack';
Este código carga, crea una instancia y luego ejecuta la clase HelloCdkStack a partir del archivo
lib/hello-cdk-stack.ts.
5. Use npm para ejecutar el compilador de TypeScript para comprobar si hay errores de codificación y,
a continuación, habilite el AWS CDK para ejecutar el archivo bin/hello-cdk.js del proyecto. Para
ello, desde el directorio raíz del proyecto, ejecute el comando npm con la acción run y especifique el
valor del comando build en el archivo package.json, tal y como se indica a continuación.
El comando anterior ejecuta el compilador TypeScript, lo que añade los archivos de soporte bin/
hello-cdk.d.ts y lib/hello-cdk-stack.d.ts. El compilador también transpone los archivos
hello-cdk.ts y hello-cdk-stack.ts en los archivos hello-cdk.js y hello-cdk-stack.js.
1. Haga que el AWS CDK cree la plantilla de pila de AWS CloudFormation. Para ello, con la sesión del
terminal aún abierta en el IDE, desde el directorio raíz del proyecto, ejecute el comando cdk con la
acción synth y el nombre de la pila.
416
AWS Cloud9 Guía del usuario
Paso 3: Ejecutar el código
cdk bootstrap
Note
Si ejecuta cdk bootstrap sin especificar ninguna opción, se utilizan la cuenta de AWS
y la región de AWS predeterminadas. También puede arrancar un entorno específico
especificando una combinación de perfil y cuenta/región. Por ejemplo:
3. Haga que el AWS CDK ejecute la plantilla de pila de AWS CloudFormation para implementar la pila.
Para ello, desde el directorio raíz del proyecto, ejecute el comando cdk con la acción deploy y el
nombre de la pila.
Por ejemplo, para enviar un mensaje al tema, con la sesión del terminal aún abierta en el IDE, use
AWS CLI para ejecutar el comando publish de Amazon SNS, y especifique el asunto y cuerpo del
mensaje, la región de AWS del tema y el nombre de recurso de Amazon (ARN) del tema.
aws sns publish --subject "Hello from the AWS CDK" --message "This is a message
from the AWS CDK." --topic-arn arn:aws:sns:us-east-2:123456789012:HelloCdkStack-
HelloCdkTopic1A234567-8BCD9EFGHIJ0K
417
AWS Cloud9 Guía del usuario
Paso 4: limpieza
Si se ejecuta correctamente, la salida del comando publish muestra el valor de MessageId del
mensaje que se publicó.
Para verificar la cola para ver si se ha recibido el mensaje, ejecute el comando receive-message
de Amazon SQS y proporcione la URL de la cola.
Paso 4: limpieza
Para evitar que se realicen cargos continuos en su cuenta de AWS después de que haya terminado de
usar esta muestra, elimine la pila de AWS CloudFormation. De esta forma se eliminan el tema de Amazon
SNS y la cola de Amazon SQS. También debe eliminar el entorno.
Si se ejecuta correctamente, la salida muestra que la pila HelloCdkStack se ha eliminado sin errores.
La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon Elastic Compute Cloud (Amazon EC2). Para obtener más información,
consulte Precios de Amazon EC2.
418
AWS Cloud9 Guía del usuario
Requisitos previos
Temas
• Requisitos previos (p. 419)
• Paso 1: Instalar las herramientas (p. 419)
• Paso 2: Configurar MySQL (p. 421)
• Paso 3: Configurar un sitio web (p. 422)
• Paso 4: limpieza (p. 425)
Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:
• Debe tener un entorno de desarrollo de AWS Cloud9 EC2. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).
Debe finalizar este paso iniciando Apache HTTP Server y después MySQL.
1. Asegúrese de que las últimas actualizaciones de seguridad y correcciones de errores están instaladas
en la instancia. Para ello, en una sesión del terminal del IDE de AWS Cloud9, ejecute el comando yum
update (para Amazon Linux) o apt update (para Ubuntu Server). (Para iniciar una nueva sesión del
terminal, en la barra de menús, seleccione Window [Ventana], New Terminal [Nuevo terminal]).
2. Compruebe si Apache HTTP Server ya está instalado. Para ello, ejecute el comando httpd -v (para
Amazon Linux) o apache2 -v (para Ubuntu Server).
419
AWS Cloud9 Guía del usuario
Paso 1: Instalar las herramientas
5. Después de instalar Apache HTTP Server, PHP y MySQL, inicie Apache HTTP Server y, a
continuación, confirme que se ha iniciado ejecutando el siguiente comando.
Para Amazon Linux (es posible que tenga que ejecutar el comando dos veces):
420
AWS Cloud9 Guía del usuario
Paso 2: Configurar MySQL
Para terminar este paso, practique el inicio y la salida del cliente de línea de comandos de MySQL.
1. Implemente las prácticas de seguridad recomendadas de MySQL para la instalación de MySQL. Para
ello, ejecute el siguiente comando en una sesión del terminal en el IDE de AWS Cloud9.
sudo mysql_secure_installation
1. Enter current password for root (enter for none) (Ingrese la contraseña raíz actual [Intro para
ninguna]: pulse Enter (sin contraseña).
2. Set root password (Establecer la contraseña raíz): escriba Y y, a continuación, pulse Enter.
3. New password (Nueva contraseña): escriba una contraseña y, a continuación, pulse Enter.
4. Re-enter new password (Volver a ingresar la nueva contraseña): escriba la contraseña de nuevo
y, a continuación, pulse Enter. (Asegúrese de almacenar la contraseña en un lugar seguro para
usarla más adelante).
5. Remove anonymous users (Eliminar usuarios anónimos): escriba Y y, a continuación, pulse Enter.
6. Disallow root login remotely (No permitir el inicio de sesión raíz de forma remota): escriba Y y, a
continuación, pulse Enter.
7. Remove test database and access to it (Eliminar la base de datos de prueba y acceder a ella):
escriba Y y, a continuación, pulse Enter.
8. Reload privilege tables now (Volver a cargar tablas de privilegios ahora): escriba Y y, a
continuación, pulse Enter.
1. Would you like to setup VALIDATE PASSWORD plugin (¿Quiere configurar el complemento
VALIDATE PASSWORD?): escriba y y, a continuación, pulse Enter.
2. There are three levels of password validation policy (Existen tres niveles de política de validación de
contraseñas): escriba 0, 1, o 2 y, a continuación, pulse Enter.
3. New password (Nueva contraseña): escriba una contraseña y, a continuación, pulse Enter.
4. Re-enter new password (Volver a ingresar la nueva contraseña): escriba la contraseña de nuevo
y, a continuación, pulse Enter. (Asegúrese de almacenar la contraseña en un lugar seguro para
usarla más adelante).
5. Do you wish to continue with the password provided (¿Desea continuar con la contraseña
proporcionada?): escriba y y, a continuación, pulse Enter.
6. Remove anonymous users (Eliminar usuarios anónimos): escriba y y, a continuación, pulse Enter.
7. Disallow root login remotely (No permitir el inicio de sesión raíz de forma remota): escriba y y, a
continuación, pulse Enter.
421
AWS Cloud9 Guía del usuario
Paso 3: Configurar un sitio web
8. Remove test database and access to it (Eliminar la base de datos de prueba y acceder a ella):
escriba y y, a continuación, pulse Enter.
9. Reload privilege tables now (Volver a cargar tablas de privilegios ahora): escriba y y, a
continuación, pulse Enter.
3. Para interactuar directamente con MySQL, inicie el cliente de línea de comandos de MySQL como
usuario raíz mediante la ejecución del siguiente comando. Cuando se le solicite, escriba la contraseña
del usuario raíz que ha definido anteriormente y, a continuación, pulse Enter. (El símbolo cambia a
mysql> mientras se encuentra en el cliente de línea de comandos de MySQL).
4. Para salir del cliente de línea de comandos de MySQL, ejecute el siguiente comando. (El símbolo
vuelve a cambiar a ). $.)
exit;
A continuación, habilitará el tráfico web entrante para ver esa página web mediante la configuración
del grupo de seguridad de Amazon EC2 y la lista de control de acceso de red (ACL de red) en Amazon
Virtual Private Cloud (Amazon VPC) que están asociados a este entorno de EC2. Cada entorno de EC2
debe estar asociado a un grupo de seguridad de Amazon EC2 y a una ACL de red de Amazon VPC. Sin
embargo, aunque la ACL de red predeterminada de una cuenta de AWS permite todo el tráfico de entrada
y salida del entorno, el grupo de seguridad predeterminado permite únicamente el tráfico entrante mediante
SSH a través del puerto 22. Para obtener más información, consulte the section called “Configuración de
Amazon VPC” (p. 500).
Para finalizar este paso, debe ver correctamente la página web desde fuera del IDE de AWS Cloud9.
1. Configure la raíz del sitio web predeterminado para Apache HTTP Server (/var/www/html) con los
propietarios y los permisos de acceso recomendados. Para ello, ejecute los seis comandos siguientes,
de uno en uno, en el orden que se indica a continuación, desde una sesión del terminal en el IDE de
AWS Cloud9. Para entender lo que hace cada comando, lea la información que aparece detrás del
comando # en cada comando.
sudo usermod -G web-content -a ec2-user # Add the user ec2-user (your default user for
this environment) to the group web-content.
sudo usermod -G web-content -a apache # Add the user apache (Apache HTTP Server) to the
group web-content.
sudo find /var/www/html -type f -exec chmod u=rw,g=rx,o=rx {} \; # Change all file
permissions within /var/www/html to user read/write, group read-only, and others read/
execute.
422
AWS Cloud9 Guía del usuario
Paso 3: Configurar un sitio web
sudo usermod -G web-content -a ubuntu # Add the user ubuntu (your default user for this
environment) to the group web-content.
sudo usermod -G web-content -a www-data # Add the user www-data (Apache HTTP Server) to
the group web-content.
sudo find /var/www/html -type f -exec chmod u=rw,g=rx,o=rx {} \; # Change all file
permissions within /var/www/html to user read/write, group read-only, and others read/
execute.
2. Cree una página web basada en PHP denominada index.php en la carpeta raíz del sitio web
predeterminado para Apache HTTP Server (que es /var/www/html) ejecutando el siguiente
comando.
El comando anterior de Amazon Linux también cambia el propietario del archivo a ec2-user, el grupo
del archivo a web-content y los permisos del archivo a lectura/escritura para el usuario y a lectura/
ejecución para el grupo y otros usuarios.
El comando anterior de Ubuntu Server cambia también el propietario del archivo a ubuntu, cambia
el grupo del archivo a web-content y cambia los permisos del archivo a lectura/escritura para el
usuario y a lectura/ejecución para el grupo y otros usuarios.
Si se ejecuta correctamente, los comandos anteriores crean el archivo index.php con el siguiente
contenido.
<?php
phpinfo();
?>
3. Habilite el tráfico web entrante a través del puerto 80 para ver la nueva página web. Para ello,
configure la ACL de red en Amazon VPC y el grupo de seguridad en Amazon EC2 que están
asociados a este entorno de EC2. Para ello, ejecute los ocho comandos siguientes, de uno en uno, en
423
AWS Cloud9 Guía del usuario
Paso 3: Configurar un sitio web
el orden que se indica a continuación. Para entender lo que hace cada comando, lea la información
que aparece detrás del comando # en cada comando.
Important
La ejecución de los siguientes comandos permite el tráfico web entrante a través del puerto
80 para todos los entornos de EC2 de instancias de Amazon EC2 que están asociados al
grupo de seguridad y a la ACL de red de este entorno. Esto podría provocar la habilitación
inesperada del tráfico web entrante a través del puerto 80 para entornos de EC2 e instancias
de Amazon EC2 distintos del actual.
Note
Los comandos del segundo al cuarto siguientes habilitan el grupo de seguridad para permitir
el tráfico web entrante a través del puerto 80. Si tiene un grupo de seguridad predeterminado,
que solo permite el tráfico SSH a través del puerto 22, debe ejecutar el primer comando y
después los comandos del segundo al cuarto. Sin embargo, si tiene un grupo de seguridad
personalizado que ya permite el tráfico web entrante a través del puerto 80, puede omitir sin
problemas la ejecución de estos comandos.
Los comandos del quinto al octavo siguientes habilitan la ACL de red para permitir el tráfico
web entrante a través del puerto 80. Si tiene una ACL de red predeterminada, que ya permite
todo el tráfico entrante a través de todos los puertos, puede pasar por alto la ejecución de
dichos comandos. Sin embargo, si tiene una ACL de red personalizada que no permite que el
tráfico web entrante a través del puerto 80, debe ejecutar el primer comando seguido de los
comandos quinto hasta el octavo.
424
AWS Cloud9 Guía del usuario
Paso 4: limpieza
4. Obtenga la URL al archivo index.php en la raíz del servidor web. Para ello, ejecute el siguiente
comando y utilice una nueva pestaña del navegador web o un navegador web distinto desde el IDE
de AWS Cloud9 para ir a la URL que se muestra. Si se ejecuta correctamente, la página web muestra
información acerca de Apache HTTP Server, MySQL, PHP y otra configuración relacionada.
Paso 4: limpieza
Si desea seguir usando este entorno, pero desactivar el tráfico web entrante a través del puerto 80, ejecute
los ocho comandos siguientes, uno por uno, en el orden que se indica a continuación, para eliminar las
reglas de tráfico entrante correspondientes que configuró anteriormente en el grupo de seguridad y en la
ACL de red que están asociados al entorno. Para entender lo que hace cada comando, lea la información
que aparece detrás del comando # en cada comando.
Important
La ejecución de los siguientes comandos desactiva el tráfico web entrante a través del puerto 80
para todos los entornos de EC2 y las instancias de Amazon EC2 que están asociados al grupo de
seguridad y a la ACL de red de este entorno. Esto podría provocar la desactivación inesperada
del tráfico web entrante a través del puerto 80 para entornos de EC2 e instancias de Amazon EC2
distintos del actual.
Note
Los comandos del quinto al octavo siguientes eliminan las reglas existentes para impedir que
la ACL de red permita el tráfico web entrante a través del puerto 80. Si tiene una ACL de red
predeterminada, que ya permite todo el tráfico entrante a través de todos los puertos, puede pasar
por alto la ejecución de dichos comandos. Sin embargo, si tiene una ACL de red personalizada
con reglas existentes que permite el tráfico web entrante a través del puerto 80 y desea eliminar
estas reglas, debe ejecutar el primer comando seguido de los comandos quinto hasta el octavo.
425
AWS Cloud9 Guía del usuario
Muestra de WordPress
based traffic over port 80. Advanced users: if you originally created this rule with a
different number, change this suggested rule number to match.
Si ha terminado de usar este entorno, debe eliminarlo para evitar que se apliquen cargos continuos en su
cuenta de AWS. Para obtener instrucciones, consulte Eliminación de un entorno en AWS Cloud9 (p. 111).
La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen
posibles cargos por servicios como Amazon Elastic Compute Cloud (Amazon EC2). Para obtener
más información, consulte Precios de Amazon EC2.
Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:
• Debe tener un entorno de desarrollo de AWS Cloud9 EC. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).
• Tiene una instancia EC2 actualizada con todos los paquetes de software más recientes. En la ventana
del terminal del IDE de AWS Cloud9, puede ejecutar yum update con la opción -y para instalar
actualizaciones sin necesidad de confirmación. Si le gustaría examinar las actualizaciones antes de la
instalación, puede omitir esta opción.
1. Instalación y configuración del servidor MariaDB, que es una base de datos relacional de código abierto
que almacena información de las instalaciones de WordPress
2. Instalación y configuración de WordPress, que incluye la edición del archivo de configuración
wordpress.conf
3. Configuración del servidor Apache que aloja el sitio de WordPress
4. Vista previa del contenido web de WordPress alojado en el servidor Apache
426
AWS Cloud9 Guía del usuario
Paso 1: Instalación y configuración del servidor MariaDB
Cuando proporcione respuestas al script, presione Intro en la primera pregunta para mantener la
contraseña raíz en blanco. Pulse n para Set root password? y, luego, y para cada una de las
demás opciones de seguridad.
mysql_secure_installation
3. Ahora cree una tabla de base de datos para almacenar información de WordPress utilizando el cliente
MariaDB.
cd /home/ec2-user/environment
mkdir config wordpress
touch config/wordpress.conf
2. Utilice el editor del IDE o vim para actualizar el archivo wordpress.conf con información de
configuración del anfitrión que permita al servidor Apache servir contenido de WordPress:
3. A continuación, ejecute los comandos siguientes para recuperar el archivo necesario e instalar
WordPress:
cd /home/ec2-user/environment
427
AWS Cloud9 Guía del usuario
Paso 3: Configurar el servidor HTTP Apache
wget https://wordpress.org/latest.tar.gz
tar xvf latest.tar.gz
touch wordpress/wp-config.php
5. Utilice el editor del IDE o vim para actualizar wp-config.php con los detalles de configuración base
de su sitio web de WordPress:
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'wp_test' );
define('FORCE_SSL', true);
httpd -v
cd /etc/httpd/conf.d
sudo ln -s /home/ec2-user/environment/config/wordpress.conf
3. Ahora diríjase al directorio /var/www, que es la carpeta raíz predeterminada para los servidores
Apache. A continuación, utilice el comando ln para vincular el directorio wordpress que creó
anteriormente al directorio de trabajo actual (/var/www):
cd /var/www
sudo ln -s /home/ec2-user/environment/wordpress
428
AWS Cloud9 Guía del usuario
Paso 4: Vista previa del contenido web de WordPress
4. Ejecute el comando chmod para permitir que el servidor Apache ejecute contenido en el subdirectorio
wordpress:
5. Ahora reinicie el servidor Apache para permitirle detectar las nuevas configuraciones:
<h1>Hello World!</h1>
La página web, que muestra el mensaje ¡Hola, mundo!, aparece en la pestaña de vista previa de la
aplicación. Para ver el contenido web en su navegador preferido, elija Pop Out Into a New Window
(Mostrar en una ventana nueva).
De forma predeterminada, todas las páginas web a las que accede en la pestaña de vista previa
de la aplicación del IDE de AWS Cloud9 utilizan automáticamente el protocolo HTTPS. Si el URI
de una página presenta el protocolo no seguro http, se reemplaza automáticamente por https.
Para acceder al contenido no seguro, tampoco puede restablecer https a http manualmente.
Para obtener orientación sobre cómo implementar HTTPS para su sitio web, consulte la
documentación de WordPress.
Si utiliza un entorno de desarrollo de AWS Cloud9 respaldado por una instancia de EC2 con
2 GiB o más de memoria, recomendamos que active la compatibilidad con Java mejorada. Esto
proporciona acceso a características de productividad clave como la finalización de código, lint de
errores, acciones específicas del contexto y opciones de depuración, como puntos de interrupción
e incrementos.
429
AWS Cloud9 Guía del usuario
Requisitos previos
Esta muestra le permite ejecutar código Java en un entorno de desarrollo de AWS Cloud9.
La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon EC2 y Amazon S3. Para obtener más información, consulte Precios de
Amazon EC2 y Precios de Amazon S3.
Temas
• Requisitos previos (p. 430)
• Paso 1: Instalar las herramientas necesarias (p. 430)
• Paso 2: Agregar el código (p. 432)
• Paso 3: Compilar y ejecutar el código (p. 432)
• Paso 4: Configurar el uso del AWS SDK for Java (p. 432)
• Paso 5: Configurar la administración de credenciales de AWS en su entorno (p. 437)
• Paso 6: Agregar el código de AWS SDK (p. 437)
• Paso 7: Compilar y ejecutar el código de AWS SDK (p. 439)
• Paso 8: eliminar (p. 439)
Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:
• Debe tener un entorno de desarrollo de AWS Cloud9 EC2. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).
1. Confirme si OpenJDK 8 ya está instalado. Para ello, en una sesión del terminal en el IDE de AWS
Cloud9, ejecute la versión de la línea de comandos del ejecutador de Java con la opción -version .
(Para iniciar una nueva sesión del terminal, en la barra de menús, seleccione Window [Ventana], New
Terminal [Nuevo terminal]).
java -version
En función del resultado del comando anterior, realice una de las siguientes acciones:
• Si el resultado indica que no se encuentra el comando java, continúe con el paso 2 de este
procedimiento para instalar OpenJDK 8.
430
AWS Cloud9 Guía del usuario
Paso 1: Instalar las herramientas necesarias
• Si el resultado contiene valores que comienzan con Java(TM), Java Runtime Environment,
Java SE, J2SE o Java2, el OpenJDK no está instalado o no se ha establecido como el conjunto de
herramientas de desarrollo de Java predeterminado. Continúe con el paso 2 de este procedimiento
para instalar OpenJDK 8 y, a continuación, cambie a OpenJDK 8.
• Si el resultado contiene valores que comienzan por java version 1.8 y OpenJDK, continúe en
Paso 2: Agregar el código (p. 432). OpenJDK 8 se instala correctamente para esta muestra.
• Si el resultado contiene un java version menor que 1.8 y valores que comienzan por OpenJDK,
continúe con el paso 2 de este procedimiento para actualizar la versión de OpenJDK instalada a
OpenJDK 8.
2. Asegúrese de que las últimas actualizaciones de seguridad y correcciones de errores están
instaladas. Para ello, ejecute la herramienta yum (para Amazon Linux) o la herramienta apt (para
Ubuntu Server) con el comando update .
3. Instale OpenJDK 8. Para ello, ejecute la herramienta yum (para Amazon Linux) o la herramienta apt
(para Ubuntu Server) con el comando install y especifique el paquete OpenJDK 8.
Para obtener más información, consulte Cómo descargar e instalar paquetes OpenJDK
preconfigurados en el sitio web de OpenJDK.
4. Cambie o actualice el conjunto de herramientas de desarrollo Java predeterminado a OpenJDK
8. Para ello, ejecute el comando update-alternatives con la opción --config. Ejecute este
comando dos veces para cambiar o actualizar las versiones de la línea de comandos del ejecutor y
compilador de Java.
En cada solicitud, escriba el número de selección para OpenJDK 8 (el que contiene java-1.8).
5. Confirme que las versiones de la línea de comandos del ejecutor y el compilador de Java utilizan
OpenJDK 8. Para ello, ejecute las versiones de la línea de comandos del ejecutor y el compilador de
Java con la opción -version.
java -version
javac -version
431
AWS Cloud9 Guía del usuario
Paso 2: Agregar el código
javac hello.java
2. Utilice la versión de la línea de comandos del ejecutador de Java para ejecutar el archivo
hello.class. Para ello, desde el mismo directorio que el archivo hello.class, ejecute el
ejecutador de Java, especificando el nombre de la clase hello que se declaró en el archivo
hello.java, con dos enteros para añadirlos (por ejemplo, 5 y 9).
java hello 5 9
Hello, World!
The sum of 2 and 3 is 5.
The sum of 5 and 9 is 14.
En este paso, instale Apache Maven o Gradle en su entorno. Maven y Gradle son sistemas de
automatización de compilación comunes que se pueden utilizar con proyectos Java. Después de instalar
Maven o Gradle, se usa para generarlo un nuevo proyecto Java. En este nuevo proyecto, añada una
referencia al AWS SDK for Java. Este AWS SDK for Java proporciona una forma práctica de interactuar
con los servicios de AWS como Amazon S3, desde su código Java.
Temas
432
AWS Cloud9 Guía del usuario
Paso 4: Configurar el uso del AWS SDK for Java
mvn -version
Si es así, el resultado contendrá el número de versión de Maven. Si Maven ya está instalado, vaya al
paso 4 de este procedimiento para utilizar Maven con el fin de generar un nuevo proyecto Java en su
entorno.
2. Instale Maven utilizando el terminal para ejecutar los siguientes comandos.
Para Amazon Linux, los siguientes comandos obtienen información sobre el repositorio de paquetes
donde se almacena Maven y, a continuación, utilizan esta información para instalar Maven.
Para obtener más información sobre los comandos anteriores, consulte Paquetes Extra para
Enterprise Linux (EPEL) en el sitio web wiki del proyecto Fedora.
mvn -version
4. Utilice Maven para generar un nuevo proyecto Java. Para ello, utilice el terminal para ejecutar el
siguiente comando desde el directorio donde desea que Maven genere el proyecto (por ejemplo, el
directorio raíz de su entorno).
my-app
|- src
| `- main
| `- java
| `- com
| `- mycompany
| `- app
| `-App.java
|- test
| `- java
| `- com
| `- mycompany
| `- app
433
AWS Cloud9 Guía del usuario
Paso 4: Configurar el uso del AWS SDK for Java
| `- AppTest.java
`- pom.xml
Para obtener más información sobre la estructura de directorios anterior, consulte Arquetipo de inicio
rápido de Maven e Introducción al diseño de directorios estándar en el sitio web del proyecto Apache
Maven.
5. Modifique el archivo Project Object Model (POM) del proyecto. (Un archivo POM define la
configuración de un proyecto Maven). Para ello, en la ventana Environment (Entorno), abra el archivo
my-app/pom.xml. En el editor, reemplace el contenido actual del archivo por el siguiente código y, a
continuación, guarde el archivo pom.xml.
434
AWS Cloud9 Guía del usuario
Paso 4: Configurar el uso del AWS SDK for Java
El archivo POM anterior incluye la configuración del proyecto que especifica declaraciones como las
siguientes:
• La configuración artifactid de my-app establece el nombre del directorio raíz del proyecto y la
configuración group-id de com.mycompany.app establece la estructura de subdirectorios com/
mycompany/app y la declaración package en los archivos App.Java y AppTest.java.
• La configuración artifactId de my-app, con la configuración packaging de jar, la
configuración version de 1.0-SNAPSHOT y la configuración descriptorRef de jar-with-
dependencies establece el nombre del archivo JAR de salida de my-app-1.0-SNAPSHOT-jar-
with-dependencies.jar.
• La sección plugin declara que se creará un único JAR, que incluye todas las dependencias.
• La sección dependency con la configuración groupId de com.amazon.aws y la configuración
artifactId de aws-java-sdk incluye los archivos de biblioteca de AWS SDK for Java. La
versión de AWS SDK for Java que se usará se declara mediante la configuración version. Para
utilizar otra versión, reemplace este número de versión.
gradle -version
Si es así, el resultado contendrá el número de versión de Gradle. Si Gradle ya está instalado, vaya al
paso 4 de este procedimiento para utilizar Gradle con el fin de generar un nuevo proyecto Java en su
entorno.
2. Instale Gradle utilizando el terminal para ejecutar los siguientes comandos. Estos comandos instalan y
ejecutan la herramienta SDKMAN! y, a continuación, utilizan SDKMAN! para instalar la última versión
de Gradle.
Para obtener más información sobre los comandos anteriores, consulte Installation en el sitio web de
SDKMAN e Install with a package manager en el sitio web Gradle.
3. Confirme la instalación ejecutando Gradle con la opción -version .
gradle -version
4. Utilice Gradle para generar un nuevo proyecto Java en su entorno. Para ello, use el terminal para
ejecutar los siguientes comandos con el fin de crear un directorio para el proyecto y, a continuación,
cambie a ese directorio.
mkdir my-app
cd my-app
5. Ejecute el siguiente comando para que Gradle genere un nuevo proyecto de aplicación Java en el
directorio my-app de su entorno.
435
AWS Cloud9 Guía del usuario
Paso 4: Configurar el uso del AWS SDK for Java
my-app
|- .gradle
| `- (various supporting project folders and files)
|- gradle
| `- (various supporting project folders and files)
|- src
| |- main
| | `- java
| | `- App.java
| `- test
| `- java
| `- AppTest.java
|- build.gradle
|- gradlew
|- gradlew.bat
`- settings.gradle
6. Modifique AppTest.java para el proyecto. (Si no lo hace, es posible que el proyecto no se compile
ni ejecute del modo previsto). Para ello, en la ventana Environment (Entorno), abra el archivo my-
app/src/test/java/AppTest.java. En el editor, reemplace el contenido actual del archivo por el
siguiente código y, a continuación, guarde el archivo AppTest.java.
import org.junit.Test;
import static org.junit.Assert.*;
repositories {
jcenter()
mavenCentral()
}
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath "io.spring.gradle:dependency-management-plugin:1.0.3.RELEASE"
}
}
dependencyManagement {
436
AWS Cloud9 Guía del usuario
Paso 5: Configurar la administración
de credenciales de AWS en su entorno
imports {
mavenBom 'com.amazonaws:aws-java-sdk-bom:1.11.330'
}
}
dependencies {
compile 'com.amazonaws:aws-java-sdk-s3'
testCompile group: 'junit', name: 'junit', version: '4.12'
}
run {
if (project.hasProperty("appArgs")) {
args Eval.me(appArgs)
}
}
mainClassName = 'App'
El archivo build.gradle anterior incluye la configuración del proyecto que especifica declaraciones
como las siguientes:
En este paso, se almacenan las credenciales dentro del entorno. Para ello, siga las instrucciones de
Llamar a los servicios de AWS desde un entorno en AWS Cloud9 (p. 81) y, a continuación, vuelva a este
tema.
Para obtener más información, consulte Configurar las credenciales y la región de AWS para el desarrollo
en la Guía para desarrolladores de AWS SDK for Java.
package com.mycompany.app;
import com.amazonaws.auth.profile.ProfileCredentialsProvider;
437
AWS Cloud9 Guía del usuario
Paso 6: Agregar el código de AWS SDK
import com.amazonaws.services.s3.AmazonS3;
import com.amazonaws.services.s3.AmazonS3ClientBuilder;
import com.amazonaws.services.s3.model.AmazonS3Exception;
import com.amazonaws.services.s3.model.Bucket;
import com.amazonaws.services.s3.model.CreateBucketRequest;
import java.util.List;
s3 = AmazonS3ClientBuilder.standard()
.withCredentials(new ProfileCredentialsProvider())
.withRegion(region)
.build();
438
AWS Cloud9 Guía del usuario
Paso 7: Compilar y ejecutar el código de AWS SDK
System.out.println(b.getName());
}
}
cd my-app
mvn package
java -cp target/my-app-1.0-SNAPSHOT-jar-with-dependencies.jar com.mycompany.app.App my-
test-bucket us-east-2
gradle build
gradle run -PappArgs="['my-test-bucket', 'us-east-2']"
my-test-bucket
Paso 8: eliminar
Para evitar que se apliquen cargos continuos en su cuenta de AWS después de terminar de usar esta
muestra, debe eliminar el entorno. Para obtener instrucciones, consulte Eliminación de un entorno en AWS
Cloud9 (p. 111).
La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon EC2 y Amazon S3. Para obtener más información, consulte Precios de
Amazon EC2 y Precios de Amazon S3.
439
AWS Cloud9 Guía del usuario
Requisitos previos
Temas
• Requisitos previos (p. 440)
• Paso 1: Instalar g++ y los paquetes de desarrollo necesarios (p. 440)
• Paso 2: Instalar CMake (p. 441)
• Paso 3: Obtener y compilar el SDK para C++ (p. 441)
• Paso 4: Crear archivos de C++ y CMakeLists (p. 442)
• Paso 5: Compilar y ejecutar el código de C++ (p. 445)
• Paso 6: Limpieza (p. 446)
Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:
• Debe tener un entorno de desarrollo de AWS Cloud9 EC. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).
También tiene que agregar archivos de encabezado (paquetes -dev) para libcurl, libopenssl,
libuuid, zlib y, de manera opcional, libpulse para obtener asistencia de Amazon Polly.
El proceso de instalación de herramientas de desarrollo varía ligeramente según si utiliza una instancia de
Amazon Linux/Amazon Linux 2 o una instancia de Ubuntu.
Para verificar si ya tiene gcc instalado, puede ejecutar el siguiente comando en el terminal de AWS
Cloud9:
g++ --version
Si g++ no está instalado, puede instalarlo fácilmente como parte del grupo de paquetes denominado
“Herramientas de desarrollo”. Estas herramientas se agregan a una instancia con el comando yum
groupinstall:
Ahora instale los paquetes para las bibliotecas requeridas mediante el administrador de paquetes del
sistema:
440
AWS Cloud9 Guía del usuario
Paso 2: Instalar CMake
Ubuntu-based systems
Para verificar si ya tiene gcc instalado, puede ejecutar el siguiente comando en el terminal de AWS
Cloud9:
g++ --version
Si GCC no está instalado, puede instalarlo en un sistema basado en Ubuntu mediante los siguientes
comandos:
Ahora instale los paquetes para las bibliotecas requeridas mediante el administrador de paquetes del
sistema:
1. En la ventana del terminal del IDE, ejecute el siguiente comando para obtener el archivo requerido:
wget https://cmake.org/files/v3.18/cmake-3.18.0.tar.gz
2. Extraiga los archivos del archivo y vaya al directorio que contiene los archivos desempaquetados:
3. A continuación, ejecute un script de arranque y ejecute los comandos siguientes para instalar cmake:
./bootstrap
make
sudo make install
cmake --version
441
AWS Cloud9 Guía del usuario
Paso 4: Crear archivos de C++ y CMakeLists
opciones disponibles en Introducción al uso de AWS SDK para C++ en la Guía para desarrolladores de
AWS SDK for C++.
En esta muestra se explica cómo usar git para clonar el código fuente del SDK y cmake para crear el
SDK para C++.
1. Clone el repositorio remoto y obtenga todos los submódulos de Git repetidamente para su entorno de
AWS Cloud9 ejecutando el siguiente comando en el terminal:
2. Desplácese hasta el nuevo directorio aws-sdk-cpp, cree un subdirectorio en el que crear el AWS
SDK para C++ y, a continuación, diríjase a:
cd aws-sdk-cpp
mkdir sdk_build
cd sdk_build
3. Note
Para ahorrar tiempo, en este paso se crea solo la sección Amazon S3 del AWS SDK for C
++. Si desea crear el SDK completo, omita el fragmento -DBUILD_ONLY=s3 del comando
cmake.
La creación del SDK para C++ completo puede tardar más de una hora en completarse en
función de los recursos informáticos disponibles para su instancia de Amazon EC2 o para su
propio servidor.
Use cmake para compilar la sección Amazon S3 del SDK para C++ en el directorio sdk_build
mediante la ejecución del siguiente comando:
cmake .. -DBUILD_ONLY=s3
4. A continuación, ejecute el comando make install para que se pueda acceder al SDK creado:
También puede crear un archivo CMakeLists.txt con instrucciones que cmake utiliza para crear su
biblioteca de C++.
1. En el IDE de AWS Cloud9, cree un archivo con este contenido y guárdelo con el nombre s3-
demo.cpp en la raíz (/) de su entorno.
#include <iostream>
#include <aws/core/Aws.h>
#include <aws/s3/S3Client.h>
#include <aws/s3/model/Bucket.h>
#include <aws/s3/model/CreateBucketConfiguration.h>
#include <aws/s3/model/CreateBucketRequest.h>
#include <aws/s3/model/DeleteBucketRequest.h>
442
AWS Cloud9 Guía del usuario
Paso 4: Crear archivos de C++ y CMakeLists
if (outcome.IsSuccess()) {
std::cout << "Looking for a bucket named '" << bucketName << "'..."
<< std::endl << std::endl;
Aws::Vector<Aws::S3::Model::Bucket> bucket_list =
outcome.GetResult().GetBuckets();
return true;
}
}
std::cout << "Could not find the bucket." << std::endl << std::endl;
return true;
}
else {
std::cout << "ListBuckets error: "
<< outcome.GetError().GetMessage() << std::endl;
}
return false;
}
Aws::S3::Model::CreateBucketRequest request;
request.SetBucket(bucketName);
Aws::S3::Model::CreateBucketOutcome outcome =
s3Client.CreateBucket(request);
if (outcome.IsSuccess()) {
std::cout << "Bucket created." << std::endl << std::endl;
return true;
}
else {
std::cout << "CreateBucket error: "
<< outcome.GetError().GetMessage() << std::endl;
return false;
}
}
443
AWS Cloud9 Guía del usuario
Paso 4: Crear archivos de C++ y CMakeLists
Aws::S3::Model::DeleteBucketRequest request;
request.SetBucket(bucketName);
Aws::S3::Model::DeleteBucketOutcome outcome =
s3Client.DeleteBucket(request);
if (outcome.IsSuccess()) {
std::cout << "Bucket deleted." << std::endl << std::endl;
return true;
}
else {
std::cout << "DeleteBucket error: "
<< outcome.GetError().GetMessage() << std::endl;
return false;
}
}
if (argc < 3) {
std::cout << "Usage: s3-demo <bucket name> <AWS Region>" << std::endl
<< "Example: s3-demo my-bucket us-east-1" << std::endl;
return false;
}
Aws::SDKOptions options;
Aws::InitAPI(options);
{
Aws::String bucket_name = argv[1];
Aws::String region = argv[2];
Aws::Client::ClientConfiguration config;
config.region = region;
Aws::S3::S3Client s3_client(config);
if (!FindTheBucket(s3_client, bucket_name)) {
return 1;
}
if (!CreateTheBucket(s3_client, bucket_name)) {
return 1;
}
if (!FindTheBucket(s3_client, bucket_name)) {
return 1;
}
if (!DeleteTheBucket(s3_client, bucket_name)) {
return 1;
}
if (!FindTheBucket(s3_client, bucket_name)) {
return 1;
}
}
Aws::ShutdownAPI(options);
444
AWS Cloud9 Guía del usuario
Paso 5: Compilar y ejecutar el código de C++
return 0;
}
2. Cree un archivo con este contenido y guárdelo con el nombre CMakeLists.txt en la raíz (/) de su
entorno. Este archivo le permite compilar el código en un archivo ejecutable.
cmake .
make
2. Ahora puede ejecutar el programa desde la línea de comandos. En el siguiente comando, reemplace
my-unique-bucket-name por un nombre único para el bucket de Amazon S3 y, si es necesario,
reemplace us-east-1 por el identificador de otra región de AWS en la que desee crear un bucket.
Bucket created.
Bucket deleted.
445
AWS Cloud9 Guía del usuario
Paso 6: Limpieza
Paso 6: Limpieza
Para evitar que se apliquen cargos continuos en su cuenta de AWS después de usar esta muestra, elimine
el entorno. Para obtener instrucciones, consulte Eliminación de un entorno en AWS Cloud9 (p. 111).
El uso de este tutorial puede producir cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon Elastic Compute Cloud (Amazon EC2) y Amazon Simple Storage
Service (Amazon S3). Para obtener más información, consulte Precios de Amazon EC2 y Precios de
Amazon S3.
Temas
• Requisitos previos (p. 446)
• Paso 1: Instalar Python (p. 446)
• Paso 2: Agregar el código (p. 447)
• Paso 3: Ejecutar el código (p. 447)
• Paso 4: Instalar y configurar el AWS SDK for Python (Boto3) (p. 448)
• Paso 5: Agregar el código de AWS SDK (p. 449)
• Paso 6: Ejecutar el código de AWS SDK (p. 450)
• Paso 7: limpieza (p. 450)
Requisitos previos
Antes de utilizar este ejemplo, asegúrese de que cumple los siguientes requisitos.
En este tutorial se da por hecho que tiene un entorno de EC2 que está conectado a una instancia de
Amazon EC2 que ejecuta Amazon Linux o Ubuntu Server. Para obtener más información, consulte
Creación de un entorno de EC2 (p. 54).
Si tiene un tipo de entorno o sistema operativo distinto, es posible que tenga que adaptar las
instrucciones de este tutorial.
• Ha abierto el IDE de AWS Cloud9 para ese entorno
Al abrir un entorno, AWS Cloud9 abre el IDE de ese entorno en el navegador web. Para obtener más
información, consulte Apertura de un entorno en AWS Cloud9 (p. 78).
446
AWS Cloud9 Guía del usuario
Paso 2: Agregar el código
de menús, seleccione Window [Ventana], New Terminal [Nuevo terminal]). Si Python está instalado,
vaya directamente a Paso 2: Agregar el código (p. 447).
2. Ejecute el comando yum update (para Amazon Linux) o apt update (para Ubuntu Server) para
garantizar que las últimas actualizaciones de seguridad y correcciones de errores están instaladas.
import sys
print('Hello, World!')
Hello, World!
The sum of 2 and 3 is 5.
The sum of 5 and 9 is 14.
4. De forma predeterminada, AWS Cloud9 selecciona automáticamente un ejecutor para el código. Para
cambiar el ejecutor, seleccione Runner (Ejecutor) y, a continuación, seleccione Python 2 o Python 3.
447
AWS Cloud9 Guía del usuario
Paso 4: Instalar y configurar el AWS SDK for Python (Boto3)
Note
Puede crear ejecutores personalizados para versiones específicas de Python. Para obtener
más información, consulte Crear un compilador o ejecutor (p. 183).
Instalar pip
En el IDE de AWS Cloud9, confirme si pip ya está instalado para la versión activa de Python mediante la
ejecución del comando python -m pip --version . Si pip está instalado, vaya a la siguiente sección.
Para instalar pip, ejecute los siguientes comandos. Dado que sudo se encuentra en un entorno diferente
al del usuario, tiene que especificar la versión de Python que va a utilizar si difiere de la versión con alias
actual.
sudo python36 -m pip install boto3 # Install boto3 for Python 3.6.
python -m pip show boto3 # Verify boto3 is installed for the current version of
Python.
Para obtener más información, consulte la sección "Instalación" de la guía Inicio rápido en AWS SDK for
Python (Boto3).
Para almacenar sus credenciales en el entorno, siga las instrucciones de Llamar a los servicios de AWS
desde un entorno en AWS Cloud9 (p. 81) y, a continuación, vuelva a este tema.
Para obtener información adicional, consulte Credenciales en la AWS SDK for Python (Boto3).
448
AWS Cloud9 Guía del usuario
Paso 5: Agregar el código de AWS SDK
En el IDE de AWS Cloud9, cree un archivo con el siguiente contenido y guárdelo con el nombre s3.py.
import sys
import boto3
from botocore.exceptions import ClientError
def list_my_buckets(s3_resource):
print('Buckets:\n\t', *[b.name for b in s3_resource.buckets.all()], sep="\n\t")
try:
print('\nCreating new bucket:', bucket_name)
bucket = s3_resource.create_bucket(
Bucket=bucket_name,
CreateBucketConfiguration={
'LocationConstraint': s3_resource.meta.client.meta.region_name
}
)
except ClientError as e:
print(f"Couldn't create a bucket for the demo. Here's why: "
f"{e.response['Error']['Message']}")
raise
bucket.wait_until_exists()
list_my_buckets(s3_resource)
if not keep_bucket:
print('\nDeleting bucket:', bucket.name)
bucket.delete()
bucket.wait_until_not_exists()
list_my_buckets(s3_resource)
else:
print('\nKeeping bucket:', bucket.name)
def main():
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('bucket_name', help='The name of the bucket to create.')
parser.add_argument('region', help='The region in which to create your bucket.')
parser.add_argument('--keep_bucket', help='Keeps the created bucket. When not '
'specified, the bucket is deleted '
'at the end of the demo.',
action='store_true')
args = parser.parse_args()
s3_resource = (
boto3.resource('s3', region_name=args.region) if args.region
else boto3.resource('s3'))
try:
create_and_delete_my_bucket(s3_resource, args.bucket_name, args.keep_bucket)
except ClientError:
print('Exiting the demo.')
449
AWS Cloud9 Guía del usuario
Paso 6: Ejecutar el código de AWS SDK
if __name__ == '__main__':
main()
Los nombres de bucket de Amazon S3 deben ser únicos en AWS, no solo en la cuenta de
AWS.
3. Elija Run (Ejecutar) y compare los resultados.
Buckets:
a-pre-existing-bucket
a-pre-existing-bucket
my-test-bucket
a-pre-existing-bucket
Paso 7: limpieza
Para evitar que se apliquen cargos continuos en su cuenta de AWS cuando finalice este tutorial, elimine
el entorno de AWS Cloud9. Para obtener instrucciones, consulte Eliminación de un entorno en AWS
Cloud9 (p. 111).
La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon EC2 y Amazon S3. Para obtener más información, consulte Precios de
Amazon EC2 y Precios de Amazon S3.
Temas
450
AWS Cloud9 Guía del usuario
Requisitos previos
Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:
• Debe tener un entorno de desarrollo de AWS Cloud9 EC. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).
1. Confirme si la versión más reciente del SDK de .NET Core ya está instalada en su entorno. Para ello,
en una sesión del terminal en el IDE de AWS Cloud9, ejecute la interfaz de la línea de comandos (CLI)
de .NET Core con la opción --version .
dotnet --version
Para Ubuntu Server, en una sesión del terminal en el IDE de AWS Cloud9, ejecute el siguiente
comando para garantizar que las últimas actualizaciones de seguridad y correcciones de errores estén
451
AWS Cloud9 Guía del usuario
Paso 1: Instalar las herramientas necesarias
instaladas. [Para iniciar una nueva sesión del terminal, en la barra de menús, seleccione Window, New
Terminal (Ventana, Nuevo terminal)].
3. Descargue el script de instalación del SDK de .NET Core en el entorno ejecutando el siguiente
comando.
wget https://dot.net/v1/dotnet-install.sh
4. Haga que el script de instalación sea ejecutable por el usuario actual mediante la ejecución del
siguiente comando.
5. Ejecute el script de instalación, que descarga e instala el SDK de .NET Core, mediante la ejecución
del siguiente comando.
./dotnet-install.sh -c Current
6. Agregue el SDK de .NET Core a su PATH. Para ello, en el perfil de shell del entorno (por ejemplo, el
archivo .bashrc), agregue el subdirectorio $HOME/.dotnet a la variable PATH del entorno, como se
indica a continuación.
vi ~/.bashrc
b. Para Amazon Linux, con la flecha hacia abajo o la tecla j, vaya a la línea que comienza por
export PATH.
export PATH=$PATH:$HOME/.local/bin:$HOME/bin:$HOME/.dotnet
Para Ubuntu Server, pulse la tecla de flecha derecha, pulse Enter dos veces y, a continuación,
escriba la siguiente línea sola al final del archivo.
export PATH=$HOME/.dotnet:$PATH
f. Guarde el archivo. Para ello, pulse la tecla Esc (desaparecerá -- INSERT --- desde el final de
la pantalla), escriba :wq (para escribir y, a continuación, salir del archivo) y, a continuación, pulse
Enter.
7. Cargue el SDK de .NET Core mediante el aprovisionamiento del archivo .bashrc.
. ~/.bashrc
8. Confirme que el SDK de .NET Core está cargado mediante la ejecución de la CLI de .NET Core con la
opción --help .
452
AWS Cloud9 Guía del usuario
Paso 2 (opcional): Instalar la extensión de la
CLI de .NET para las funciones de Lambda
dotnet --help
Si se ejecuta correctamente, se muestra el número de versión del SDK de .NET Core, con información
de uso adicional.
9. Si ya no desea mantener el script de instalación del SDK de .NET Core en su entorno, puede
eliminarlo del siguiente modo.
rm dotnet-install.sh
2. Ahora configure la propiedad PATH y la variable de entorno DOTNET_ROOT para que apunten a la
herramienta Lambda instalada. En el archivo .bashrc, busque la sección export PATH y edítela
para que se parezca a la siguiente (consulte el Paso 1 para obtener más detalles sobre la edición de
este archivo):
export PATH=$PATH:$HOME/.local/bin:$HOME/bin:$HOME/.dotnet:$HOME/.dotnet/tools
export DOTNET_ROOT=$HOME/.dotnet
Cree un proyecto de aplicación de consola de .NET Core. Para ello, ejecute la CLI de .NET Core con el
comando new , especificando el tipo de plantilla de proyecto de aplicación de consola y el lenguaje de
programación que se utilizará (en esta muestra, C#).
La opción -n indica que el proyecto se emite en un nuevo directorio, hello. A continuación, vaya a ese
directorio.
El comando anterior añade un subdirectorio llamado obj con varios archivos, y algunos archivos
independientes adicionales, al directorio hello. Debe tener en cuenta los dos archivos clave siguientes:
453
AWS Cloud9 Guía del usuario
Paso 4: Agregar el código
En el editor, reemplace el contenido actual del archivo por el siguiente código y, a continuación, guarde el
archivo Program.cs.
using System;
namespace hello
{
class Program
{
static void Main(string[] args)
{
if (args.Length < 2) {
Console.WriteLine("Please provide 2 numbers");
return;
}
Console.WriteLine("Hello, World!");
}
}
}
a. En la barra de menús, seleccione Run, Build System, New Build System (Ejecutar, Sistema de
compilación, Nuevo sistema de compilación).
b. En la pestaña My Builder.build (Mi Builder.build), reemplace el contenido de la pestaña por el
código siguiente.
{
"cmd" : ["dotnet", "build"],
"info" : "Building..."
}
454
AWS Cloud9 Guía del usuario
Paso 5: Compilar y ejecutar el código
f. Seleccione Save.
2. Con el contenido del archivo Program.cs mostrado en el editor, seleccione Run, Build System, .NET
Core (Ejecutar, Sistema de compilación, .NET Core). A continuación, elija Run, Build (Ejecutar,
Compilar).
Este constructor añade los subdirectorios bin y Debug al subdirectorio hello/obj. Tenga en cuenta
los siguientes tres archivos clave.
Note
a. En la barra de menús, seleccione Run, Run With, New Runner (Ejecutar, Ejecutar con, Nuevo
ejecutor).
b. En la pestaña My Runner.run (Mi Runner.run), reemplace el contenido de la pestaña por el código
siguiente.
{
"cmd" : ["dotnet", "run", "$args"],
"working_dir": "$file",
"info" : "Running..."
}
a. Con el contenido del archivo Program.cs mostrado en el editor, seleccione Run, Run
Configurations, New Run Configuration (Ejecutar, Configuraciones de ejecución, Nueva
configuración de ejecución).
b. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija .NET Core.
c. En el cuadro Command (Comando), escriba hello 5 9.
d. Elija Run (Ejecutar).
De forma predeterminada, este ejecutor indica a .NET Core que ejecute el archivo hello.dll en
el directorio hello/bin/Debug/netcoreapp3.1.
Hello, World!
455
AWS Cloud9 Guía del usuario
Paso 6: Crear y configurar un proyecto de aplicación
de consola de .NET Core que use AWS SDK for .NET
En este nuevo proyecto, añada una referencia al AWS SDK for .NET. AWS SDK for .NET proporciona un
método práctico para interactuar con servicios de AWS, como Amazon S3, desde su código de .NET. A
continuación, configure la administración de credenciales de AWS en su entorno. El AWS SDK for .NET
necesita estas credenciales para interactuar con los servicios de AWS.
La opción -n indica que el proyecto se emite en un nuevo directorio, s3. A continuación, vaya a ese
directorio.
2. Agregue una referencia de proyecto al paquete de Amazon S3 en AWS SDK for .NET. Para ello,
ejecute la CLI de .NET Core con el comando add package y especifique el nombre del paquete de
Amazon S3 en NuGet. (NuGet define cómo se crean, alojan y consumen los paquetes para .NET, y
proporciona las herramientas para cada uno de esos roles).
Al agregar una referencia de proyecto al paquete de Amazon S3, NuGet también agrega una
referencia de proyecto al resto del AWS SDK for .NET.
Note
Para almacenar sus credenciales en el entorno, siga las instrucciones de Llamar a los servicios de AWS
desde un entorno en AWS Cloud9 (p. 81) y, a continuación, vuelva a este tema.
Para obtener información adicional, consulte Configuración de credenciales de AWS en la Guía para
desarrolladores de AWS SDK for .NET.
456
AWS Cloud9 Guía del usuario
Paso 7: Agregar el código de AWS SDK
using Amazon;
using Amazon.S3;
using Amazon.S3.Model;
using Amazon.S3.Util;
using System;
using System.Threading.Tasks;
namespace s3
{
class Program
{
async static Task Main(string[] args)
{
if (args.Length < 2) {
Console.WriteLine("Usage: <the bucket name> <the AWS Region to use>");
Console.WriteLine("Example: my-test-bucket us-east-2");
return;
}
if (args[1] != "us-east-2") {
Console.WriteLine("Cannot continue. The only supported AWS Region ID is " +
"'us-east-2'.");
return;
}
457
AWS Cloud9 Guía del usuario
Paso 8: Compilar y ejecutar el código de AWS SDK
{
Console.WriteLine("Created the bucket named '{0}'.", bucketName);
} else {
Console.WriteLine("Did not create the bucket named '{0}'.", bucketName);
}
1. Compile el proyecto. Para ello, con el contenido del archivo s3/Program.cs mostrado en el editor,
en la barra de menú, elija Run, Build (Ejecutar, Compilar).
2. Ejecute la aplicación con el nombre del bucket de Amazon S3 que desea crear y el ID de la región de
my-test-bucket en la que desea crearlo (por ejemplo, AWS y us-east-2) de la siguiente manera.
a. Con el contenido del archivo s3/Program.cs aún mostrado en el editor, seleccione Run,
Run Configurations, New Run Configuration (Ejecutar, Configuraciones de ejecución, Nueva
configuración de ejecución).
b. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija .NET Core.
c. En el cuadro Command (Comando), escriba el nombre de la aplicación, el nombre del bucket de
Amazon S3 que desea crear y el ID de la región de AWS donde desea crearlo (por ejemplo, s3
my-test-bucket us-east-2).
d. Elija Run (Ejecutar).
De forma predeterminada, este ejecutor indica a .NET Core que ejecute el archivo s3.dll en el
directorio s3/bin/Debug/netcoreapp3.1.
458
AWS Cloud9 Guía del usuario
Paso 9: limpieza
Paso 9: limpieza
Para evitar que se apliquen cargos continuos en su cuenta de AWS después de terminar de usar esta
muestra, debe eliminar el entorno. Para obtener instrucciones, consulte Eliminación de un entorno en AWS
Cloud9 (p. 111).
La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon EC2 y Amazon S3. Para obtener más información, consulte Precios de
Amazon EC2 y Precios de Amazon S3.
Temas
• Requisitos previos (p. 459)
• Paso 1: Instalar las herramientas necesarias (p. 459)
• Paso 2: Agregar el código (p. 460)
• Paso 3: Ejecutar el código (p. 460)
• Paso 4: Instalar y configurar AWS SDK for JavaScript in Node.js (p. 461)
• Paso 5: Agregar el código de AWS SDK (p. 462)
• Paso 6: Ejecutar el código de AWS SDK (p. 465)
• Paso 7: limpieza (p. 466)
Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:
• Debe tener un entorno de desarrollo de AWS Cloud9 EC2. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).
1. En una sesión del terminal del IDE de AWS Cloud9, confirme si Node.js, ya se ha instalado. Para
ello, ejecute el comando node --version . (Para iniciar una nueva sesión del terminal, en la barra
de menús, seleccione Window [Ventana], New Terminal [Nuevo terminal]). Si es así, el resultado
contendrá el número de versión de Node.js. Si Node.js está instalado, continúe en Paso 2: Agregar el
código (p. 460).
459
AWS Cloud9 Guía del usuario
Paso 2: Agregar el código
2. Ejecute el comando yum update (para Amazon Linux) o apt update (para Ubuntu Server) para
garantizar que las últimas actualizaciones de seguridad y correcciones de errores están instaladas.
3. Para instalar Node.js, comience por ejecutar este comando para descargar Node Version Manager
(nvm). (nvm es un sencillo script de shell Bash que resulta útil para instalar y administrar versiones de
Node.js. Para obtener más información, consulte Node Version Manager en el sitio web de GitHub).
4. Para comenzar a utilizar nvm, cierre la sesión del terminal e iníciela de nuevo, o cargue el archivo
~/.bashrc que contiene los comandos para cargar nvm.
. ~/.bashrc
console.log('Hello, World!');
Hello, World!
460
AWS Cloud9 Guía del usuario
Paso 4: Instalar y configurar AWS
SDK for JavaScript in Node.js
Puede mejorar esta muestra para utilizar AWS SDK for JavaScript in Node.js y crear un bucket de
Amazon S3, mostrar una lista de los buckets disponibles y, a continuación, eliminar el bucket que
acaba de crear.
En este paso, instalará y configurará el módulo de cliente de servicio de Amazon S3 de AWS SDK for
JavaScript in Node.js, que proporciona una forma cómoda de interactuar con el servicio de AWS de
Amazon S3, desde su código de JavaScript.
Si desea usar otros servicios de AWS, tiene que instalarlos por separado. Para obtener más
información acerca de la instalación de módulos de AWS, consulte en la Guía para desarrolladores de
AWS(V3).
Una vez instalado AWS SDK for JavaScript in Node.js, debe configurar la administración de
credenciales en su entorno. AWS SDK for JavaScript in Node.js necesita estas credenciales para
interactuar con los servicios de AWS.
Para obtener más información, consulte Instalación del SDK para JavaScript en la Guía para
desarrolladores de AWS SDK for JavaScript.
461
AWS Cloud9 Guía del usuario
Paso 5: Agregar el código de AWS SDK
Cada vez que utilice AWS SDK for JavaScript in Node.js para llamar a un servicio de AWS, debe
proporcionar un conjunto de credenciales con la llamada. Estas credenciales determinan si AWS SDK
for JavaScript in Node.js tiene los permisos adecuados para realizar esa llamada. Si las credenciales
no cubren los permisos adecuados, la llamada no se realizará correctamente.
En este paso, se almacenan las credenciales dentro del entorno. Para ello, siga las instrucciones de
Llamar a los servicios de AWS desde un entorno en AWS Cloud9 (p. 81) y, a continuación, vuelva a
este tema.
Puede mejorar esta muestra para utilizar AWS SDK for JavaScript in Node.js y crear un bucket de
Amazon S3, mostrar una lista de los buckets disponibles y, a continuación, eliminar el bucket que
acaba de crear.
En este paso va a instalar y configurar AWS SDK for JavaScript in Node.js, que ofrece un método
práctico para interactuar con servicios de AWS, como Amazon S3, desde el código de JavaScript. Una
vez instalado AWS SDK for JavaScript in Node.js, debe configurar la administración de credenciales
en su entorno. AWS SDK for JavaScript in Node.js necesita estas credenciales para interactuar con
los servicios de AWS.
Para obtener más información, consulte Instalación del SDK para JavaScript en la Guía para
desarrolladores de AWS SDK for JavaScript.
Cada vez que utilice AWS SDK for JavaScript in Node.js para llamar a un servicio de AWS, debe
proporcionar un conjunto de credenciales con la llamada. Estas credenciales determinan si AWS SDK
for JavaScript in Node.js tiene los permisos adecuados para realizar esa llamada. Si las credenciales
no cubren los permisos adecuados, la llamada no se realizará correctamente.
En este paso, se almacenan las credenciales dentro del entorno. Para ello, siga las instrucciones de
Llamar a los servicios de AWS desde un entorno en AWS Cloud9 (p. 81) y, a continuación, vuelva a
este tema.
En este paso, agregará algo más de código, esta vez para interactuar con Amazon S3 y crear un
bucket, ver una lista de los buckets disponibles y después eliminar el bucket que acaba de crear.
Ejecutará este código más adelante.
462
AWS Cloud9 Guía del usuario
Paso 5: Agregar el código de AWS SDK
En el IDE de AWS Cloud9, cree un archivo con este contenido y guárdelo con el nombre s3.js.
if (process.argv.length < 4) {
console.log(
"Usage: node s3.js <the bucket name> <the AWS Region to use>\n" +
"Example: node s3.js my-test-bucket us-east-2"
);
process.exit(1);
}
import {
ListBucketsCommand,
CreateBucketCommand,
DeleteBucketCommand}
from "@aws-sdk/client-s3";
import {s3Client} from "./libs/s3Client" // Helper function that creates an Amazon S3
service client module.
const create_bucket_params = {
Bucket: bucket_name,
CreateBucketConfiguration: {
LocationConstraint: region,
},
};
463
AWS Cloud9 Guía del usuario
Paso 5: Agregar el código de AWS SDK
};
run();
En este paso, agregará algo más de código, esta vez para interactuar con Amazon S3 y crear un
bucket, ver una lista de los buckets disponibles y después eliminar el bucket que acaba de crear.
Ejecutará este código más adelante.
En el IDE de AWS Cloud9, cree un archivo con este contenido y guárdelo con el nombre s3.js.
if (process.argv.length < 4) {
console.log('Usage: node s3.js <the bucket name> <the AWS Region to use>\n' +
'Example: node s3.js my-test-bucket us-east-2');
process.exit(1);
}
AWS.config.update({
region: region
});
var create_bucket_params = {
Bucket: bucket_name,
CreateBucketConfiguration: {
LocationConstraint: region
}
};
} else {
console.log("My buckets now are:\n");
callback(err);
});
}
464
AWS Cloud9 Guía del usuario
Paso 6: Ejecutar el código de AWS SDK
callback(err);
});
}
callback(err);
});
}
2. En el IDE de AWS Cloud9, en la barra de menús, elija Run (Ejecutar), Run Configurations
(Configuraciones de ejecución), New Run Configuration (Nueva configuración de ejecución).
3. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija Node.js.
4. En Command (Comando), escriba s3.js my-test-bucket us-east-2, donde my-test-bucket
es el nombre del bucket que quiere crear y después eliminar y us-east-2 es el ID de la región de
AWS en la que desea crear el bucket. Para obtener más ID, consulte Amazon Simple Storage Service
(Amazon S3) en la Referencia general de Amazon Web Services.
Note
Los nombres de bucket de Amazon S3 deben ser únicos en AWS, no solo en la cuenta de
AWS.
5. Elija el botón Run (Ejecutar) y compare los resultados.
my-test-bucket
465
AWS Cloud9 Guía del usuario
Paso 7: limpieza
Paso 7: limpieza
Para evitar que se apliquen cargos continuos en su cuenta de AWS después de terminar de usar esta
muestra, debe eliminar el entorno. Para obtener instrucciones, consulte Eliminación de un entorno en AWS
Cloud9 (p. 111).
La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon EC2 y Amazon S3. Para obtener más información, consulte Precios de
Amazon EC2 y Precios de Amazon S3.
Temas
• Requisitos previos (p. 466)
• Paso 1: Instalar las herramientas necesarias (p. 466)
• Paso 2: Agregar el código (p. 467)
• Paso 3: Ejecutar el código (p. 468)
• Paso 4: Instalar y configurar el AWS SDK for PHP (p. 468)
• Paso 5: Agregar el código de AWS SDK (p. 469)
• Paso 6: Ejecutar el código de AWS SDK (p. 471)
• Paso 7: limpieza (p. 471)
Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:
• Debe tener un entorno de desarrollo de AWS Cloud9 EC2. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).
El siguiente procedimiento instala solo PHP. Para instalar herramientas relacionadas como, por
ejemplo, un servidor web Apache y una base de datos MySQL, consulte el Tutorial: Instalar un
466
AWS Cloud9 Guía del usuario
Paso 2: Agregar el código
servidor web LAMP en Amazon Linux en la Guía del usuario de Amazon EC2 para instancias de
Linux.
1. En una sesión del terminal en el IDE de AWS Cloud9, confirme si PHP ya se ha instalado. Para
ello, ejecute el comando php --version . (Para iniciar una nueva sesión del terminal, en la barra
de menús, seleccione Window [Ventana], New Terminal [Nuevo terminal]). Si es así, el resultado
contendrá el número de versión de PHP. Si PHP está instalado, continúe en Paso 2: Agregar el
código (p. 467).
2. Ejecute el comando yum update (para Amazon Linux) o apt update (para Ubuntu Server) para
garantizar que las últimas actualizaciones de seguridad y correcciones de errores están instaladas.
En Amazon Linux 2:
Note
Puede ver la versión de Amazon Linux usando el comando siguiente:
cat /etc/system-release
Para obtener más información, consulte Installation and Configuration en el sitio web de PHP.
<?php
print('Hello, World!');
467
AWS Cloud9 Guía del usuario
Paso 3: Ejecutar el código
Note
El código anterior no depende de archivos externos. Sin embargo, si alguna vez incluye o necesita
otros archivos PHP en su archivo y quiere que AWS Cloud9 utilice esos archivos para finalizar
el código mientras escribe, active la configuración Project, PHP Support, Enable PHP code
completion (Proyecto, Soporte de PHP, Habilitar finalización de código PHP) en Preferences
(Preferencias) y, a continuación, agregue las rutas de esos archivos a la configuración Project,
PHP Support, PHP Completion Include Paths (Proyecto, Soporte de PHP, Rutas de inclusión para
finalización de PHP). (Para ver y cambiar las preferencias, elija AWS Cloud9, Preferences [AWS
Cloud9, Preferencias] en la barra de menús).
Hello, World!
The sum of 2 and 3 is 5.
The sum of 5 and 9 is 14.
En este paso, se instala y configura el AWS SDK for PHP, que proporciona un método práctico para
interactuar con los servicios de AWS, como Amazon S3, desde el código de PHP. Para poder instalar el
AWS SDK for PHP, debe instalar Composer. Una vez instalado el AWS SDK for PHP, debe configurar
468
AWS Cloud9 Guía del usuario
Paso 5: Agregar el código de AWS SDK
la administración de credenciales en su entorno. El AWS SDK for PHP necesita estas credenciales para
interactuar con los servicios de AWS.
Para Amazon Linux o Ubuntu Server, use el comando php para ejecutar el instalador de Composer para
instalar el AWS SDK for PHP.
Este comando crea varias carpetas y archivos en su entorno. El archivo principal que se va a utilizar es
autoload.php, que está en la carpeta vendor de su entorno.
Note
Después de la instalación, Composer podría sugerir que se instalen dependencias adicionales.
Puede hacerlo con un comando como los siguientes, especificando la lista de dependencias que
desea instalar. Por ejemplo, el siguiente comando indica a Composer que instale la siguiente lista
de dependencias.
Para obtener más información, consulte Instalación en la Guía para desarrolladores de AWS SDK for PHP.
En este paso, se almacenan las credenciales dentro del entorno. Para ello, siga las instrucciones de
Llamar a los servicios de AWS desde un entorno en AWS Cloud9 (p. 81) y, a continuación, vuelva a este
tema.
Para obtener información adicional, consulte la sección sobre creación de un cliente de Uso básico en la
Guía para desarrolladores de AWS SDK for PHP.
469
AWS Cloud9 Guía del usuario
Paso 5: Agregar el código de AWS SDK
En el IDE de AWS Cloud9, cree un archivo con este contenido y guárdelo con el nombre s3.php.
<?php
require './vendor/autoload.php';
if ($argc < 4) {
exit("Usage: php s3.php <the time zone> <the bucket name> <the AWS Region to use>\n" .
"Example: php s3.php America/Los_Angeles my-test-bucket us-east-2");
}
$timeZone = $argv[1];
$bucketName = $argv[2];
$region = $argv[3];
date_default_timezone_set($timeZone);
$promise = $s3->listBucketsAsync();
$result = $promise->wait();
listMyBuckets($s3);
try {
$promise = $s3->createBucketAsync([
'Bucket' => $bucketName,
'CreateBucketConfiguration' => [
'LocationConstraint' => $region
]
]);
$promise->wait();
listMyBuckets($s3);
$promise = $s3->deleteBucketAsync([
'Bucket' => $bucketName
]);
470
AWS Cloud9 Guía del usuario
Paso 6: Ejecutar el código de AWS SDK
$promise->wait();
listMyBuckets($s3);
?>
Los nombres de bucket de Amazon S3 deben ser únicos en AWS, no solo en la cuenta de
AWS.
• us-east-2 es el ID de la región de AWS en la que desea crear el bucket. Para obtener más ID,
consulte Amazon Simple Storage Service (Amazon S3) en la Referencia general de Amazon Web
Services.
4. Elija el botón Run (Ejecutar) y compare los resultados.
my-test-bucket
Paso 7: limpieza
Para evitar que se apliquen cargos continuos en su cuenta de AWS después de terminar de usar esta
muestra, debe eliminar el entorno. Para obtener instrucciones, consulte Eliminación de un entorno en AWS
Cloud9 (p. 111).
471
AWS Cloud9 Guía del usuario
Requisitos previos
Note
El uso de este tutorial puede producir cargos en su cuenta de AWS. Entre estos se incluyen
posibles cargos por servicios como Amazon EC2 y Amazon S3. Para obtener más información,
consulte Precios de Amazon EC2 y Precios de Amazon S3.
Requisitos previos
Antes de utilizar este ejemplo, asegúrese de que cumple los siguientes requisitos.
En este tutorial se da por hecho que tiene un entorno de EC2 que está conectado a una instancia de
Amazon EC2 que ejecuta Amazon Linux o Ubuntu Server. Para obtener más información, consulte
Creación de un entorno de EC2 (p. 54).
Si tiene un tipo de entorno o sistema operativo distinto, es posible que tenga que adaptar las
instrucciones de este tutorial.
• Ha abierto el IDE de AWS Cloud9 para ese entorno
Al abrir un entorno, AWS Cloud9 abre el IDE de ese entorno en el navegador web. Para obtener más
información, consulte Apertura de un entorno en AWS Cloud9 (p. 78).
Pasos
• Paso 1: Instalar las herramientas necesarias (p. 472)
• Paso 2: Agregar el código (p. 473)
• Paso 3: Ejecutar el código (p. 473)
• Paso 4: Instalar y configurar el AWS SDK for Ruby (p. 474)
• Paso 5: Agregar el código de AWS SDK (p. 476)
• Paso 6: Ejecutar el código de AWS SDK (p. 477)
• Paso 7: limpieza (p. 477)
En este paso instalará Ruby, que es necesario para ejecutar este tutorial.
1. En una sesión del terminal del IDE de AWS Cloud9, confirme si Ruby ya está instalado mediante
la ejecución del comando ruby --version . (Para iniciar una nueva sesión del terminal, en la
barra de menús, seleccione Window [Ventana], New Terminal [Nuevo terminal]). Si es así, la salida
contendrá el número de versión de Ruby. Si Ruby está instalado, continúe en Paso 2: Agregar el
código (p. 473).
2. Ejecute el comando yum update (para Amazon Linux) o apt update (para Ubuntu Server) para
garantizar que las últimas actualizaciones de seguridad y correcciones de errores están instaladas.
472
AWS Cloud9 Guía del usuario
Paso 2: Agregar el código
Para obtener más información sobre el cifrado, consulte Installing Ruby en el sitio web de Ruby.
Paso siguiente
Paso 2: Agregar el código (p. 473)
1. En el IDE de AWS Cloud9, cree un archivo nuevo (File [Archivo], New File [Archivo nuevo] en la barra
de menús).
2. Añada el código siguiente.
argv0 = ARGV[0]
argv1 = ARGV[1]
sum = argv0.to_i + argv1.to_i
Paso siguiente
Paso 3: Ejecutar el código (p. 473)
1. En el IDE de AWS Cloud9, en la barra de menús, elija Run (Ejecutar), Run Configurations
(Configuraciones de ejecución), New Run Configuration (Nueva configuración de ejecución).
2. En la pestaña [New] - Idle ([Nuevo] - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija Ruby (elemento 1 en la captura de pantalla que se muestra a continuación).
3. En Command (Comando) (elemento 2 en la captura de pantalla), escriba hello.rb 5 9. Dado este
comando, ARGV[0] en el código recibe un valor de 5 y ARGV[1] recibe un valor de 9.
473
AWS Cloud9 Guía del usuario
Paso 4: Instalar y configurar el AWS SDK for Ruby
4. Elija el botón Run (Ejecutar) (elemento 3 a continuación) y compare la salida con la siguiente.
Hello, World!
The sum of 2 and 3 is 5.
The sum of 5 and 9 is 14.
Paso siguiente
Paso 4: Instalar y configurar el AWS SDK for Ruby (p. 474)
Puede mejorar este tutorial para utilizar el AWS SDK for Ruby y crear un bucket de Amazon S3, mostrar
una lista de los buckets disponibles y, a continuación, eliminar el bucket que acaba de crear.
En este paso, se instala y se configura el AWS SDK for Ruby, que proporciona un método práctico para
interactuar con los servicios de AWS, como Amazon S3, desde el código de Ruby.
• Para poder instalar el AWS SDK for Ruby, debe instalar RubyGems.
• Una vez instalado el AWS SDK for Ruby, debe configurar la administración de credenciales en su
entorno. El AWS SDK for Ruby necesita estas credenciales para interactuar con los servicios de AWS.
474
AWS Cloud9 Guía del usuario
Paso 4: Instalar y configurar el AWS SDK for Ruby
Si RubyGems está instalado, continúe en 4.2: Instalar AWS SDK for Ruby (p. 475).
2. Para instalar RubyGems, ejecute el comando install como se indica a continuación.
Para obtener más información, consulte Download RubyGems (Descargar RubyGems) en el sitio web
de RubyGems.
La instalación del paquete aws-sdk completo puede ejecutarse varios minutos antes de que
comience a mostrar el progreso en la ventana del terminal.
Note
Si no utiliza una instancia de EC2 administrada por AWS Cloud9 (es decir, un entorno de EC2),
en función de los permisos y la configuración del usuario de la instancia, es posible que tenga que
utilizar sudo para instalar el SDK, tal y como se muestra en el siguiente comando.
Para obtener más información, consulte Instalación de AWS SDK for Ruby en la Guía para desarrolladores
de AWS SDK for Ruby.
Si está siguiendo este tutorial estrictamente, habrá permitido a AWS Cloud9 crear y administrar su
instancia de EC2. Si este es el caso, AWS Cloud9 también administra las credenciales temporales
automáticamente, por lo que puede omitir este paso.
De lo contrario, tendrá que almacenar sus credenciales en el entorno. Para ello, siga las instrucciones de
Llamar a los servicios de AWS desde un entorno en AWS Cloud9 (p. 81) y, a continuación, vuelva a este
tema.
475
AWS Cloud9 Guía del usuario
Paso 5: Agregar el código de AWS SDK
Para obtener información adicional, consulte Configuración de AWS SDK for Ruby en la Guía para
desarrolladores de AWS SDK for Ruby.
Paso siguiente
Paso 5: Agregar el código de AWS SDK (p. 476)
En este paso, se facilita el código para interactuar con Amazon S3. Este código crea un bucket, enumera
los buckets disponibles y, a continuación, elimina el bucket que se creó. (Ejecutará este código en el
siguiente paso).
En el IDE de AWS Cloud9, cree un archivo con el siguiente código y guárdelo con el nombre s3.rb.
require "aws-sdk"
# Replace us-west-2 with the AWS Region you're using for Amazon S3.
if ARGV.length < 2
puts "Usage: ruby s3.rb <the bucket name> <the AWS Region to use>\n" +
"Example: ruby s3.rb my-test-bucket us-west-2"
end
bucket_name = ARGV[0]
region = ARGV[1]
s3 = Aws::S3::Client.new(region: region)
resp.buckets.each do |bucket|
puts bucket.name
end
end
list_my_buckets(s3)
list_my_buckets(s3)
476
AWS Cloud9 Guía del usuario
Paso 6: Ejecutar el código de AWS SDK
s3.delete_bucket(bucket: bucket_name)
list_my_buckets(s3)
Paso siguiente
Paso 6: Ejecutar el código de AWS SDK (p. 477)
1. En el IDE de AWS Cloud9, en la barra de menús, elija Run (Ejecutar), Run Configurations
(Configuraciones de ejecución), New Run Configuration (Nueva configuración de ejecución).
2. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija Ruby.
3. En Command (Comando), escriba s3.rb YOUR_BUCKET_NAME THE_AWS_REGION, donde:
Los nombres de bucket de Amazon S3 deben ser únicos globalmente en AWS, no solo en su cuenta
de AWS.
• THE_AWS_REGION es el ID de la región de AWS en la que desea crear el bucket.
Por ejemplo, para la región EE.UU. Este (Ohio), utilice us-east-2. Para obtener más ID, consulte
Amazon Simple Storage Service (Amazon S3) en la Referencia general de Amazon Web Services.
4. Seleccione el botón Run (Ejecutar). El resultado debería ser similar al siguiente.
my-test-bucket
Paso siguiente
Paso 7: limpieza (p. 477)
Paso 7: limpieza
(Paso anterior: Paso 6: Ejecutar el código de AWS SDK (p. 477))
Para evitar que se apliquen cargos continuos en su cuenta de AWS después de terminar de usar este
tutorial, elimine el entorno. Para obtener instrucciones, consulte Eliminación de un entorno en AWS
Cloud9 (p. 111).
477
AWS Cloud9 Guía del usuario
Ejemplo de Go
La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon EC2 y Amazon S3. Para obtener más información, consulte Precios de
Amazon EC2 y Precios de Amazon S3.
Temas
• Requisitos previos (p. 478)
• Paso 1: Instalar las herramientas necesarias (p. 478)
• Paso 2: Agregar el código (p. 479)
• Paso 3: Ejecutar el código (p. 480)
• Paso 4: Instalar y configurar el AWS SDK for Go (p. 481)
• Paso 5: Agregar el código de AWS SDK (p. 482)
• Paso 6: Ejecutar el código de AWS SDK (p. 483)
• Paso 7: limpieza (p. 484)
Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:
• Debe tener un entorno de desarrollo de AWS Cloud9 EC. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).
1. En una sesión del terminal del IDE de AWS Cloud9, confirme si Go ya está instalado. Para ello,
ejecute el comando go version . (Para iniciar una nueva sesión del terminal, en la barra de
menús, seleccione Window [Ventana], New Terminal [Nuevo terminal]). Si se ejecuta correctamente,
el resultado debería contener el número de versión de Go. De lo contrario, se debería obtener
un mensaje de error como resultado. Si Go está instalado, continúe en Paso 2: Agregar el
código (p. 479).
2. Ejecute el comando yum update (para Amazon Linux) o apt update (para Ubuntu Server) para
garantizar que las últimas actualizaciones de seguridad y correcciones de errores están instaladas.
478
AWS Cloud9 Guía del usuario
Paso 2: Agregar el código
Los comandos anteriores suponen que se emplea la última versión estable de Go en el momento
en que este tema se escribió. Para obtener más información, consulte Downloads en el sitio web del
lenguaje de programación Go.
4. Agregue la ruta de los binarios de Go a la variable de entorno PATH, como se muestra a continuación.
PATH=$PATH:/usr/local/go/bin
c. Guarde el archivo.
5. Dé el origen del archivo ~/.bashrc para que el terminal pueda encontrar el binario de Go al que
acaba de hacer referencia.
. ~/.bashrc
package main
import (
"fmt"
"os"
"strconv"
)
func main() {
fmt.Printf("Hello, World!\n")
first, _ := strconv.Atoi(os.Args[1])
second, _ := strconv.Atoi(os.Args[2])
sum := first + second
479
AWS Cloud9 Guía del usuario
Paso 3: Ejecutar el código
1. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija New Runner (Ejecutor nuevo).
2. En la pestaña My Runner.run (Mi Runner.run), sustituya el contenido de la pestaña por
este código.
{
"cmd" : ["go", "run", "$file", "$args"],
"info" : "Running $project_path$file_name...",
"selector" : "source.go"
}
3. Elija File (Archivo), Save As (Guardar como) en la barra de menús y guarde el archivo
como Go.run en la carpeta /.c9/runners.
4. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija Go.
5. Elija la pestaña hello.go para hacerla activa.
3. En Command (Comando), escriba hello.go 5 9. En el código, 5 representa os.Args[1] y 9
representa os.Args[2].
480
AWS Cloud9 Guía del usuario
Paso 4: Instalar y configurar el AWS SDK for Go
Hello, World!
The sum of 2 and 3 is 5.
The sum of 5 and 9 is 14.
En este paso, se instala y configura el AWS SDK for Go, que proporciona un práctico método para
interactuar con los servicios de AWS, como Amazon S3, desde el código de Go. Antes de instalar el
AWS SDK for Go, debe configurar la variable de entorno GOPATH. Una vez instalado el AWS SDK for
Go y establecida la variable de entorno GOPATH, debe configurar la administración de credenciales en el
entorno. El AWS SDK for Go necesita estas credenciales para interactuar con los servicios de AWS.
GOPATH=~/environment/go
export GOPATH
3. Guarde el archivo.
4. Dé el origen del archivo ~/.bashrc para que el terminal pueda encontrar la variable de entorno
GOPATH a la que acaba de hacer referencia.
. ~/.bashrc
5. Confirme que la variable de entorno GOPATH está establecida correctamente ejecutando el comando
echo $GOPATH . Si es correcto, el resultado debe ser /home/ec2-user/environment/go o /
home/ubuntu/environment/go.
go get -u github.com/aws/aws-sdk-go/...
Go instala la fuente de AWS SDK for Go en la ubicación especificada en la variable de entorno GOPATH,
que es la carpeta go de su entorno.
En este paso, se almacenan las credenciales dentro del entorno. Para ello, siga las instrucciones de
Llamar a los servicios de AWS desde un entorno en AWS Cloud9 (p. 81) y, a continuación, vuelva a este
tema.
481
AWS Cloud9 Guía del usuario
Paso 5: Agregar el código de AWS SDK
En el IDE de AWS Cloud9, cree un archivo con este contenido y guárdelo con el nombre s3.go.
package main
import (
"fmt"
"os"
"github.com/aws/aws-sdk-go/aws"
"github.com/aws/aws-sdk-go/aws/session"
"github.com/aws/aws-sdk-go/service/s3"
)
func main() {
if len(os.Args) < 3 {
fmt.Printf("Usage: go run s3.go <the bucket name> <the AWS Region to use>\n" +
"Example: go run s3.go my-test-bucket us-east-2\n")
os.Exit(1)
}
sess := session.Must(session.NewSessionWithOptions(session.Options{
SharedConfigState: session.SharedConfigEnable,
}))
svc := s3.New(sess, &aws.Config{
Region: aws.String(os.Args[2]),
})
listMyBuckets(svc)
createMyBucket(svc, os.Args[1], os.Args[2])
listMyBuckets(svc)
deleteMyBucket(svc, os.Args[1])
listMyBuckets(svc)
}
if err != nil {
exitErrorf("Unable to list buckets, %v", err)
}
fmt.Printf("\n")
}
482
AWS Cloud9 Guía del usuario
Paso 6: Ejecutar el código de AWS SDK
_, err := svc.CreateBucket(&s3.CreateBucketInput{
Bucket: aws.String(bucketName),
CreateBucketConfiguration: &s3.CreateBucketConfiguration{
LocationConstraint: aws.String(region),
},
})
if err != nil {
exitErrorf("Unable to create bucket, %v", err)
}
err = svc.WaitUntilBucketExists(&s3.HeadBucketInput{
Bucket: aws.String(bucketName),
})
}
_, err := svc.DeleteBucket(&s3.DeleteBucketInput{
Bucket: aws.String(bucketName),
})
if err != nil {
exitErrorf("Unable to delete bucket, %v", err)
}
err = svc.WaitUntilBucketNotExists(&s3.HeadBucketInput{
Bucket: aws.String(bucketName),
})
}
Los nombres de bucket de Amazon S3 deben ser únicos en AWS, no solo en la cuenta de
AWS.
483
AWS Cloud9 Guía del usuario
Paso 7: limpieza
my-test-bucket
Paso 7: limpieza
Para evitar que se apliquen cargos continuos en su cuenta de AWS después de terminar de usar esta
muestra, debe eliminar el entorno. Para obtener instrucciones, consulte Eliminación de un entorno en AWS
Cloud9 (p. 111).
La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre estos se incluyen posibles
cargos por servicios como Amazon EC2 y Amazon S3. Para obtener más información, consulte Precios de
Amazon EC2 y Precios de Amazon S3.
Temas
• Requisitos previos (p. 484)
• Paso 1: Instalar las herramientas necesarias (p. 485)
• Paso 2: Agregar el código (p. 486)
• Paso 3: Ejecutar el código (p. 486)
• Paso 4: Instalar y configurar AWS SDK for JavaScript in Node.js (p. 487)
• Paso 5: Agregar el código de AWS SDK (p. 488)
• Paso 6: Ejecutar el código de AWS SDK (p. 489)
• Paso 7: limpieza (p. 490)
Requisitos previos
Antes de utilizar esta muestra, asegúrese de que su configuración cumpla los siguientes requisitos:
• Debe tener un entorno de desarrollo de AWS Cloud9 EC2. En este ejemplo se da por hecho que ya tiene
un entorno de EC2 que está conectado a una instancia de Amazon EC2 que ejecuta Amazon Linux o
Ubuntu Server. Si tiene otro tipo de entorno o sistema operativo, es posible que tenga que adaptar las
instrucciones de este ejemplo para configurar herramientas relacionadas. Para obtener más información,
consulte Creación de un entorno en AWS Cloud9 (p. 53).
• Ya tiene abierto el IDE de AWS Cloud9 para el entorno existente. Al abrir un entorno, AWS Cloud9 abre
el IDE de ese entorno en el navegador web. Para obtener más información, consulte Apertura de un
entorno en AWS Cloud9 (p. 78).
484
AWS Cloud9 Guía del usuario
Paso 1: Instalar las herramientas necesarias
1. En una sesión del terminal en el IDE de AWS Cloud9, confirme que TypeScript ya esté instalado.
Para ello, ejecute el compilador TypeScript de la línea de comandos con la opción --version .
(Para iniciar una nueva sesión del terminal, en la barra de menús, seleccione Window [Ventana],
New Terminal [Nuevo terminal]). Si es así, la salida contendrá el número de versión de TypeScript. Si
TypeScript está instalado, continúe en Paso 2: Agregar el código (p. 486).
tsc --version
2. Confirme si npm ya está instalado mediante la ejecución de npm con la opción --version. Si es así,
el resultado contendrá el número de versión de npm. Si npm está instalado, vaya al paso 10 de este
procedimiento para utilizar npm para instalar TypeScript.
npm --version
3. Ejecute el comando yum update (para Amazon Linux) o apt update (para Ubuntu Server) para
garantizar que las últimas actualizaciones de seguridad y correcciones de errores están instaladas.
4. Para instalar npm, comience por ejecutar el siguiente comando para descargar Node Version Manager
(nvm). (nvm es un sencillo script de shell Bash que resulta útil para instalar y administrar versiones de
Node.js. Para obtener más información, consulte Node Version Manager en el sitio web de GitHub).
5. Para comenzar a utilizar nvm, cierre la sesión del terminal e iníciela de nuevo, o cargue el archivo
~/.bashrc que contiene los comandos para cargar nvm.
. ~/.bashrc
6. Confirme que nvm está instalado mediante la ejecución de nvm con la opción --version.
nvm --version
7. Instale la versión más reciente de Node.js ejecutando nvm. (npm se incluye en Node.js).
8. Confirme que Node.js está instalado ejecutando la versión de la línea de comandos de Node.js con la
opción --version.
node --version
9. Confirme que npm está instalado mediante la ejecución de npm con la opción --version.
485
AWS Cloud9 Guía del usuario
Paso 2: Agregar el código
npm --version
10. Instale TypeScript ejecutando npm con la opción -g. De este modo se instala TypeScript como un
paquete global en el entorno.
11. Confirme que TypeScript está instalado ejecutando el compilador de TypeScript de la línea de
comandos con la opción --version.
tsc --version
console.log('Hello, World!');
486
AWS Cloud9 Guía del usuario
Paso 4: Instalar y configurar AWS
SDK for JavaScript in Node.js
4. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija Node.js.
5. En Command (Comando), escriba hello.js 5 9. En el código, 5 representa process.argv[2] y
9 representa process.argv[3]. (process.argv[0] representa el nombre del tiempo de ejecución
(node) y process.argv[1] representa el nombre del archivo (hello.js)).
6. Elija Run (Ejecutar) y compare los resultados. Cuando haya terminado, elija Stop (Detener).
Hello, World!
The sum of 2 and 3 is 5.
The sum of 5 and 9 is 14.
Note
En lugar de crear una nueva configuración de ejecución en el IDE, también puede ejecutar este
código si ejecuta el comando node hello.js 5 9 desde el terminal.
En este paso, va a instalar y configurar AWS SDK for JavaScript in Node.js El SDK proporciona un método
práctico para interactuar con servicios de AWS, como Amazon S3, desde su código de JavaScript. Una
vez instalado AWS SDK for JavaScript in Node.js, debe configurar la administración de credenciales en su
entorno. El SDK necesita estas credenciales para interactuar con los servicios de AWS.
Este comando agrega varias carpetas a la carpeta node_modules del Paso 3: Ejecutar el
código (p. 486). Estas carpetas contienen código fuente y dependencias para AWS SDK for JavaScript
487
AWS Cloud9 Guía del usuario
Paso 5: Agregar el código de AWS SDK
in Node.js. Para obtener más información, consulte Instalación del SDK para JavaScript en la Guía para
desarrolladores de AWS SDK for JavaScript.
En este paso, se almacenan las credenciales dentro del entorno. Para ello, siga las instrucciones de
Llamar a los servicios de AWS desde un entorno en AWS Cloud9 (p. 81) y, a continuación, vuelva a este
tema.
Para obtener información adicional, consulte Configuración de credenciales en Node.js en la Guía para
desarrolladores de AWS SDK for JavaScript.
1. En el IDE de AWS Cloud9, en el mismo directorio que el archivo hello.js de los pasos anteriores,
cree un archivo denominado s3.ts.
2. Desde un terminal del IDE de AWS Cloud9, en el mismo directorio que el archivo s3.ts, habilite el
código para llamar a operaciones de Amazon S3 de forma asincrónica ejecutando dos veces npm
para instalar la biblioteca asíncrona para TypeScript y de nuevo para JavaScript.
if (process.argv.length < 4) {
console.log('Usage: node s3.js <the bucket name> <the AWS Region to use>\n' +
'Example: node s3.js my-test-bucket us-east-2');
process.exit(1);
}
const AWS = require('aws-sdk'); // To set the AWS credentials and AWS Region.
const async = require('async'); // To call AWS operations asynchronously.
AWS.config.update({
region: region
});
488
AWS Cloud9 Guía del usuario
Paso 6: Ejecutar el código de AWS SDK
} else {
console.log("My buckets now are:\n");
callback(err);
});
}
callback(err);
});
}
callback(err);
});
}
489
AWS Cloud9 Guía del usuario
Paso 7: limpieza
TypeScript utiliza el archivo s3.ts, AWS SDK for JavaScript in Node.js, la biblioteca asíncrona y un
conjunto de archivos de biblioteca ECMAScript 6 (ES6) para transponer el código de TypeScript del
archivo s3.ts a código de JavaScript equivalente en un archivo llamado s3.js.
2. En la ventana Environment (Entorno), abra el archivo s3.js.
3. En la barra de menús, elija Run (Ejecutar), Run Configurations (Configuraciones de ejecución), New
Run Configuration (Nueva configuración de ejecución).
4. En la pestaña [New] - Idle (Nuevo - Inactivo), elija Runner: Auto (Ejecutor: automático) y, a
continuación, elija Node.js.
5. En Command (Comando), escriba s3.js YOUR_BUCKET_NAME THE_AWS_REGION ,
donde YOUR_BUCKET_NAME el nombre del bucket que quiere crear y después eliminar y
THE_AWS_REGION es el ID de la región de AWS en la que se creará el bucket. Por ejemplo, para la
región EE.UU. Este (Ohio), utilice us-east-2. Para obtener más ID, consulte Amazon Simple Storage
Service (Amazon S3) en la Referencia general de Amazon Web Services.
Note
Los nombres de bucket de Amazon S3 deben ser únicos en AWS, no solo en la cuenta de
AWS.
6. Elija Run (Ejecutar) y compare los resultados. Cuando haya terminado, elija Stop (Detener).
my-test-bucket
Paso 7: limpieza
Para evitar que se apliquen cargos continuos en su cuenta de AWS después de terminar de usar esta
muestra, debe eliminar el entorno. Para obtener instrucciones, consulte Eliminación de un entorno en AWS
Cloud9 (p. 111).
La creación de esta muestra puede generar cargos en su cuenta de AWS. Entre ellos, se incluyen posibles
cargos por servicios como Amazon EC2. Para obtener más información, consulte Precios de Amazon EC2.
Temas
490
AWS Cloud9 Guía del usuario
Requisitos previos
Requisitos previos
• Debe tener una instancia de Amazon EC2 que ejecute Amazon Linux o Ubuntu Server. Esta muestra
supone que ya tiene una instancia de Amazon EC2 que ejecuta Amazon Linux o Ubuntu Server en su
cuenta de AWS. Para lanzar una instancia de Amazon EC2, consulte Lanzar una máquina virtual Linux.
En la página de elección de una instancia de Amazon Machine Image (AMI) del asistente, elija una AMI
cuyo nombre para mostrar comience por Amazon Linux AMI o Ubuntu Server.
• Si la instancia Amazon EC2 se ejecuta en Amazon VPC, hay requisitos adicionales. Consulte
Configuración de VPC para entornos de desarrollo de AWS Cloud9 (p. 500).
• La instancia Amazon EC2 debe tener al menos de 8 a 16 GB de espacio libre en disco. Esta muestra
utiliza imágenes de Docker de un tamaño superior a 3 GB y puede utilizar incrementos adicionales
de 3 GB o más de espacio en disco para crear imágenes. Si intenta ejecutar esta muestra en un
disco que tenga menos de 8 GB de espacio libre, es posible que la imagen de Docker no se cree o
que el contenedor Docker no se ejecute. Para consultar el espacio libre en el disco de la instancia,
puede ejecutar un comando como df -h (para "información del sistema de archivos del disco en
formato legible") en la instancia. Para aumentar el tamaño del disco de una instancia existente, consulte
Modificación de un volumen en la Guía del usuario de Amazon EC2 para instancias de Linux.
1. Conéctese a la instancia de Amazon EC2 en ejecución mediante un cliente SSH como la utilidad ssh
o PuTTY. Para ello, consulte "Paso 3: conectarse a la instancia" en Lanzar una máquina virtual Linux.
2. Compruebe si Docker está instalado en la instancia. Para ello, ejecute el comando docker en la
instancia con la opción --version .
docker --version
Si Docker está instalado, se muestran la versión y el número de compilación de Docker. En este caso,
vaya al paso 5 más adelante de este procedimiento.
3. Instalar Docker. Para ello, ejecute el comando yum o apt con la acción install y especifique el
paquete docker o docker.io que se va a instalar.
491
AWS Cloud9 Guía del usuario
Paso 2: Crear la imagen
4. Confirme que Docker está instalado. Para ello, vuelva a ejecutar el comando docker --version .
Se muestran la versión y el número de compilación de Docker.
5. Ejecute Docker. Para ello, ejecute el comando service con el servicio docker y la acción start.
6. Confirme que Docker se está ejecutando. Para ello, ejecute el comando docker con la acción info
.
1. En la instancia, cree el Dockerfile. Para ello, con el cliente SSH todavía conectado a la instancia,
en el directorio /tmp de la instancia, cree un archivo llamado Dockerfile. Por ejemplo, ejecute el
comando touch del modo siguiente.
# Add the AWS Cloud9 SSH public key to the Docker container.
# This assumes a file named authorized_keys containing the
# AWS Cloud9 SSH public key already exists in the same
# directory as the Dockerfile.
RUN mkdir -p /home/ubuntu/.ssh
ADD ./authorized_keys /home/ubuntu/.ssh/authorized_keys
RUN chown -R ubuntu /home/ubuntu/.ssh /home/ubuntu/.ssh/authorized_keys && \
chmod 700 /home/ubuntu/.ssh && \
chmod 600 /home/ubuntu/.ssh/authorized_keys
492
AWS Cloud9 Guía del usuario
Paso 2: Crear la imagen
USER root
# Start SSH in the Docker container.
CMD ssh-keygen -A && /usr/sbin/sshd -D
Para añadir el contenido anterior al archivo Dockerfile, puede utilizar la utilidad vi en la instancia
tal y como se indica a continuación.
sudo vi /tmp/Dockerfile
Note
Desde AWS CodeBuild, puede acceder a una lista de imágenes de Docker que se actualiza
con frecuencia. Para obtener más información, consulte Imágenes de Docker proporcionadas
por CodeBuild en la Guía del usuario de AWS CodeBuild.
3. En la instancia, cree un archivo que contenga la clave pública SSH de AWS Cloud9 para que la utilice
el contenedor Docker. Para ello, en el mismo directorio que el archivo Dockerfile, cree un archivo
llamado authorized_keys, por ejemplo, ejecutando el comando touch .
4. Añada la clave pública SSH de AWS Cloud9 al archivo authorized_keys. Para obtener la clave
pública SSH de AWS Cloud9 haga lo siguiente:
Para confirmar que Docker ha creado correctamente la imagen, ejecute el comando docker con la
acción image ls.
Si se realiza correctamente, la salida muestra una entrada en la que el campo REPOSITORY está
configurado en cloud9-image y el campo TAG está configurado en latest.
6. Anote la dirección IP pública de la instancia de Amazon EC2. Lo necesitará para el Paso 4: Crear el
entorno (p. 495). Si no está seguro de cuál es la dirección IP pública de la instancia, puede ejecutar
el siguiente comando en la instancia para obtenerla.
curl http://169.254.169.254/latest/meta-data/public-ipv4
1. Para ejecutar el contenedor Docker, ejecute el comando docker en la instancia con la acción run y
las siguientes opciones.
sudo docker run -d -it --expose 9090 -p 0.0.0.0:9090:22 --name cloud9 cloud9-
image:latest
• -d ejecuta el contenedor en modo desasociado y sale siempre que el proceso raíz que se utiliza
para ejecutar las salidas del contenedor (en esta muestra, el cliente SSH).
• -it ejecuta el contenedor con un pseudoTTY asignado y mantiene STDIN abierto, incluso si el
contenedor no está asociado.
• --expose hace que el puerto especificado (en esta muestra, el puerto 9090) esté disponible desde
el contenedor.
• -p hace que el puerto especificado esté disponible internamente para la instancia de Amazon EC2 a
través de la dirección IP y el puerto especificados. En esta muestra, se puede acceder internamente
al puerto 9090 del contenedor a través del puerto 22 de la instancia de Amazon EC2.
• --name es un nombre en lenguaje natural para el contenedor (en esta muestra, cloud9).
• cloud9-image:latest es el nombre en lenguaje natural de la imagen creada que se va a utilizar
para ejecutar el contenedor.
Para confirmar que Docker está ejecutando correctamente el contenedor, ejecute el comando
docker con la acción container ls.
494
AWS Cloud9 Guía del usuario
Paso 4: Crear el entorno
Si se realiza correctamente, la salida muestra una entrada en la que el campo IMAGE está configurado
en cloud9-image:latest y el campo NAMES está configurado en cloud9.
2. Inicie sesión en el contenedor en ejecución. Para ello, ejecute el comando docker con la acción
exec y las siguientes opciones.
• -it ejecuta el contenedor con un pseudoTTY asignado y mantiene STDIN abierto, incluso si el
contenedor no está asociado.
• cloud9 es el nombre en lenguaje natural del contenedor en ejecución.
• bash inicia el shell estándar en el contenedor en ejecución.
Si se realiza correctamente, el símbolo del terminal cambia para mostrar el nombre del usuario que ha
iniciado sesión del contenedor y el ID del contenedor.
Note
Si desea salir del contenedor en ejecución, ejecute el comando exit . El símbolo del
terminal cambia vuelve a mostrar el nombre del usuario que ha iniciado sesión de la instancia
y el DNS privado de la instancia. El contenedor debe seguir en ejecución.
3. Para el directorio del contenedor en ejecución en el que desee que AWS Cloud9 se inicie después
de iniciar sesión, establezca sus permisos de acceso a rwxr-xr-x . Eso significa que el propietario
debe tener permisos de lectura, escritura y ejecución, el grupo debe tener permisos de lectura y
ejecución y el resto deben tener permisos de lectura y ejecución. Por ejemplo, si la ruta del directorio
es ~, puede establecer estos permisos en el directorio ejecutando el comando chmod en el
contenedor en ejecución del siguiente modo.
4. Anote la ruta al directorio en el contenedor en ejecución que contiene el binario Node.js, ya que lo
necesitará para el Paso 4: Crear el entorno (p. 495). Si no está seguro de cuál es esta ruta, ejecute
el siguiente comando en el contenedor en ejecución para obtenerla.
which node
• Si es la única persona que utiliza la cuenta de AWS o es un usuario de IAM en una única cuenta de
AWS, vaya a https://console.aws.amazon.com/cloud9.
• Si su organización utiliza AWS Single Sign-On (SSO), solicite instrucciones de inicio de sesión al
administrador de la cuenta de AWS.
2. En la barra de navegación de AWS, en el selector de región de AWS, elija la región de AWS donde
desea crear el entorno de SSH.
495
AWS Cloud9 Guía del usuario
Paso 5: Ejecutar el código
3. Si aparece una página de bienvenida, en New AWS Cloud9 environment (Nuevo entorno de AWS
Cloud9), elija Create environment (Crear entorno). De lo contrario, elija Create environment (Crear
entorno).
4. En la página Name environment (Asignar nombre al entorno), en Name (Nombre), escriba un nombre
para el entorno.
5. Para agregar una descripción para el entorno, escríbala en Description (Descripción).
6. Elija Next Step (Paso siguiente).
7. En Environment type: (Tipo de entorno), elija Connect and run in remote server (SSH) (Conectar y
ejecutar en un servidor remoto (SSH)).
8. En User (Usuario), escriba ubuntu.
9. En Host (Anfitrión), escriba la dirección IP pública de la instancia de Amazon EC2 que anotó
anteriormente.
10. En Puerto, escriba 9090.
11. Amplíe Advanced settings (Configuración avanzada).
12. En Environment path (Ruta de entorno), escriba la ruta del directorio en el contenedor en ejecución
que desee que se inicie AWS Cloud9 después de iniciar sesión.
13. En Node.js binary path (Ruta del binario de Node.js), escriba la ruta al directorio en el contenedor en
ejecución que contiene el binario de Node.js, que anotó anteriormente.
14. Elija Next Step (Paso siguiente).
15. Seleccione Create environment (Crear entorno).
16. Cuando aparezca el cuadro de diálogo AWS Cloud9 Installer (Instalador de AWS Cloud9), elija Next
(Siguiente).
17. En la lista de componentes que se instalarán, desactive la casilla c9.ide.lambda.docker y, a
continuación, seleccione Next (Siguiente). Esto se debe a que AWS Cloud9 no puede ejecutar Docker
dentro de Docker.
18. Cuando el cuadro de diálogo AWS Cloud9 Installer (Instalador de AWS Cloud9) muestre Installation
Completed (Instalación completada), elija Next (Siguiente) y, a continuación, Finish (Finalizar).
Aparece el IDE de AWS Cloud9 para el contenedor en ejecución y puede comenzar a trabajar con los
archivos y el código del contenedor.
Note
1. Con el IDE de AWS Cloud9 mostrado para el contenedor en ejecución, inicie el servidor de
conversación de muestra. Para ello, en la ventana Environment (Entorno), haga clic con el botón
derecho en el archivo workspace/server.js de muestra y, a continuación, seleccione Run
(Ejecutar).
2. Obtenga una vista previa de la aplicación de muestra. Para ello, en la ventana Environment (Entorno),
abra el archivo workspace/client/index.html. A continuación, en la barra de menús, seleccione
Tools, Preview, Preview Running Application (Herramientas, Vista previa, Vista previa de la aplicación
en ejecución).
3. En la pestaña de vista previa de la aplicación, en Your Name (Su nombre), escriba su nombre. En
Message (Mensaje) escriba un mensaje. A continuación, elija Send (Enviar). El servidor de chat añade
su nombre y su mensaje a la lista.
496
AWS Cloud9 Guía del usuario
Paso 6: Limpieza
Paso 6: Limpieza
En este paso, eliminará el entorno y los archivos de soporte de AWS Cloud9 y Docker de la instancia
de Amazon EC2. Además, para evitar que se apliquen cargos continuos en su cuenta de AWS una vez
terminada esta muestra, debe terminar la instancia de Amazon EC2 que ejecuta Docker.
sudo rm -r ~/.c9
1. Elimine el contenedor Docker de la instancia. Para ello, ejecute el comando docker en la instancia
con las acciones de detención stop y rm, y el nombre en lenguaje natural del contenedor.
2. Elimine la imagen de Docker de la instancia. Para ello, ejecute el comando docker en la instancia
con la acción image rm y la etiqueta de la imagen.
3. Elimine los archivos de soporte de Docker adicionales que aún puedan quedar. Para ello, ejecute el
comando docker en la instancia con la acción system prune .
4. Desinstale Docker. Para ello, ejecute el comando yum en la instancia con la acción remove y
especifique el paquete docker que se va a desinstalar.
497
AWS Cloud9 Guía del usuario
Ejemplos relacionados
También puede eliminar los archivos Dockerfile y authorized_keys que creó anteriormente. Por
ejemplo, ejecute el siguiente comando rm en la instancia.
sudo rm /tmp/Dockerfile
sudo rm /tmp/authorized_keys
Ejemplos relacionados
• Introducción a AWS RoboMaker en la Guía para desarrolladores de AWS RoboMaker. Este ejemplo
utiliza AWS Cloud9 para modificar, crear y agrupar una aplicación de robot de muestra.
498
AWS Cloud9 Guía del usuario
Entornos de EC2 comparados con entornos de SSH
Temas
• Entornos de EC2 comparados con entornos de SSH en AWS Cloud9 (p. 499)
• Configuración de VPC para entornos de desarrollo de AWS Cloud9 (p. 500)
• Requisitos de anfitrión del entorno SSH (p. 515)
• Uso del instalador de AWS Cloud9 (p. 518)
• Intervalos de direcciones IP de entrada con SSH para AWS Cloud9 (p. 520)
• Contenido de Amazon Machine Image (AMI) para un entorno de desarrollo de EC2 de AWS
Cloud9 (p. 522)
• Uso de roles vinculados a servicios de AWS Cloud9 (p. 524)
• Registro de llamadas a la API de AWS Cloud9 con AWS CloudTrail (p. 528)
• Etiquetas (p. 540)
En la siguiente tabla se destacan las similitudes y diferencias entre el uso de entornos de EC2 y entornos
de SSH en AWS Cloud9.
AWS Cloud9 crea una instancia de Amazon Puede utilizar una instancia de informática
EC2 asociada y administra el ciclo de vida de la en la nube existente o su propio servidor. Es
instancia (incluidas las operaciones de comenzar, responsable de administrar su ciclo de vida.
parar y terminar).
La instancia se ejecuta en Amazon Linux o Ubuntu Puede utilizar cualquier instancia de informática en
Server. la nube que ejecute Linux, o su propio servidor con
Linux.
AWS Cloud9 configura automáticamente AWS Si desea utilizar AWS CLI en la instancia o en un
Command Line Interface (AWS CLI) en la servidor propio, debe configurarlo por su cuenta.
instancia.
499
AWS Cloud9 Guía del usuario
Configuración de Amazon VPC
La instancia tiene acceso a cientos de paquetes Es posible que tenga que descargar, instalar y
útiles, con algunos paquetes comunes ya configurar paquetes adicionales para completar
instalados y configurados, por ejemplo, Git, tareas comunes.
Docker, Node.js y Python.
AWS Toolkit (p. 338), el panel de Git (p. 315) y AWS Toolkit, el panel de Git y la asistencia
la asistencia mejorada para Java (p. 138) están mejorada para Java no están disponibles.
disponibles para su uso.
Temas
• Requisitos de Amazon VPC para AWS Cloud9 (p. 500)
• Cree una instancia de Amazon VPC para AWS Cloud9 (p. 511)
• Crear una subred para AWS Cloud9 (p. 513)
• Configuración de una subred como pública o privada (p. 514)
Utilice la siguiente lista de comprobación para confirmar que la VPC cumple todos de los siguientes
requisitos.
500
AWS Cloud9 Guía del usuario
Requisitos de Amazon VPC para AWS Cloud9
La VPC puede estar en la misma Ver una lista de VPC de una • Cree una instancia de
cuenta de AWS y la misma región de AWS (p. 502) Amazon VPC para AWS
región de AWS que el entorno de Cloud9 (p. 511)
desarrollo de AWS Cloud9. • Trabajar con VPC compartidas
en la Guía del usuario de
-O BIEN- Amazon VPC
La VPC puede ser una VPC
compartida en una cuenta de
AWS diferente a la del entorno.
(Sin embargo, la VPC debe
encontrarse en la misma región
de AWS que el entorno).
La VPC debe tener una única • Ver una lista de subredes de • Crear una subred para AWS
subred pública. (Una subred una VPC (p. 503) Cloud9 (p. 513)
es pública cuando su tráfico se • Confirmar si una subred es • Configuración de una
dirige a una gateway de Internet.) pública (p. 503) subred como pública o
privada (p. 514)
Si su entorno está accediendo a
su instancia EC2 directamente a • Ver o cambiar la configuración
través de SSH, la instancia solo de una gateway de
se puede iniciar en una subred internet (p. 504)
pública. • Cree un gateway de
Internet (p. 504)
Si va a acceder a una
Instancia de Amazon EC2
sin entrada (p. 68) mediante
Systems Manager, la instancia
se puede iniciar en una subred
pública o privada.
La subred pública debe tener • Confirmar si una subred • Crear una tabla de
una tabla de enrutamiento con un tiene una tabla de enrutamiento (p. 505)
conjunto mínimo de rutas. enrutamiento (p. 505) • Adjuntar una tabla de
• Ver o cambiar la enrutamiento a una
configuración de una tabla de subred (p. 505)
enrutamiento (p. 506)
• Configuración mínima sugerida
de la tabla de enrutamiento
para AWS Cloud9 (p. 506)
501
AWS Cloud9 Guía del usuario
Requisitos de Amazon VPC para AWS Cloud9
Los grupos de seguridad • Ver una lista de los grupos • Crear un grupo de seguridad
asociados de la VPC (o de la de seguridad de una en una VPC (p. 510)
instancia de informática en la VPC (p. 506)
nube de AWS, dependiendo de • Ver una lista de los grupos de
su arquitectura) deben permitir seguridad de una instancia
un conjunto mínimo de tráfico de informática en la nube de
entrante y saliente. AWS (p. 507)
• Ver o cambiar la configuración
de un grupo de seguridad en
una VPC (p. 507)
• Ver una lista de los grupos de
seguridad de una instancia
de informática en la nube de
AWS (p. 507)
• Configuración mínima del
tráfico entrante y saliente para
AWS Cloud9 (p. 508)
Para una capa adicional de • Confirmar si una VPC Crear una ACL de red (p. 511)
seguridad, si la VPC tiene una tiene al menos una ACL de
ACL de red, esta debe permitir red (p. 510)
un conjunto mínimo de tráfico • Ver una lista de las ACL de red
entrante y saliente. para una VPC (p. 510)
• Ver o cambiar la configuración
de una ACL de red (p. 511)
• Configuración mínima del
tráfico entrante y saliente para
AWS Cloud9 (p. 508)
Note
Para los siguientes procedimientos, si utiliza las consolas de Amazon VPC o Amazon EC2,
le recomendamos que inicie sesión en la AWS Management Console y abra la consola de
Amazon VPC (https://console.aws.amazon.com/vpc) o la consola de Amazon EC2 (https://
console.aws.amazon.com/ec2) con las credenciales de un usuario administrador de IAM en su
cuenta de AWS.
Si utiliza AWS CLI o aws-shell, le recomendamos que configure AWS CLI o aws-shell con las
credenciales de un usuario administrador de IAM en su cuenta de AWS. Si no puede hacerlo,
consulte con el administrador de su cuenta de AWS.
Para usar AWS CLI o aws-shell, ejecute el comando describe-vpcs de Amazon EC2, por ejemplo, de
la siguiente manera.
502
AWS Cloud9 Guía del usuario
Requisitos de Amazon VPC para AWS Cloud9
En el comando anterior, reemplace us-east-2 por la región de AWS en la que AWS Cloud9 creará el
entorno. Para ejecutar el comando anterior en Windows, reemplace las comillas simples por comillas
dobles. Para ejecutar el comando anterior con aws-shell, omita aws.
Para usar AWS CLI o aws-shell, ejecute el comando describe-subnets de Amazon EC2, por ejemplo,
de la siguiente manera.
En el comando anterior, reemplace us-east-2 por el ID de la región de AWS que contiene las subredes.
Para ejecutar el comando anterior en Windows, reemplace las comillas simples por comillas dobles. Para
ejecutar el comando anterior con aws-shell, omita aws.
Si va a iniciar la instancia EC2 de su entorno en una subred privada, asegúrese de que el tráfico
saliente está permitido para esa instancia para poder conectarse al servicio SSM. Para las
subredes privadas, el tráfico saliente se configura normalmente a través de una gateway de
traducción de direcciones de red (NAT) o de puntos de enlace de la VPC. (Una gateway NAT
requiere una subred pública).
Si elige puntos de enlace de la VPC en lugar de una gateway NAT para acceder a SSM, es
posible que las actualizaciones automáticas y los parches de seguridad de la instancia no
funcionen.
Para usar la consola de Amazon VPC, elija Subnets (Subredes) en el panel de navegación. Seleccione
la casilla junto a la subred que desea que AWS Cloud9 utilice. En la pestaña Route Table (Tabla de
enrutamiento), si hay una entrada en la columna Target (Destino) que comience por igw-, la subred es
pública.
Para usar AWS CLI o aws-shell, ejecute el comando describe-route-tables de Amazon EC2.
En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la subred y reemplace
subnet-12a3456b por el ID de subred. Para ejecutar el comando anterior en Windows, reemplace las
comillas simples por comillas dobles. Para ejecutar el comando anterior con aws-shell, omita aws.
En la salida, si hay al menos un resultado que comience por igw-, la subred es pública.
En la salida, si no hay resultados, la tabla de enrutamiento podría estar asociada con la VPC en lugar de
estarlo con la subred. Para confirmarlo, ejecute el comando describe-route-tables de Amazon
EC2 para la VPC relacionada con la subred en lugar de la propia subred, por ejemplo, como se indica a
continuación.
503
AWS Cloud9 Guía del usuario
Requisitos de Amazon VPC para AWS Cloud9
En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la VPC y reemplace
vpc-1234ab56 por el ID de VPC. Para ejecutar el comando anterior en Windows, reemplace las comillas
simples por comillas dobles. Para ejecutar el comando anterior con aws-shell, omita aws.
En la salida, si hay al menos un resultado que comience por igw-, la VPC contiene una gateway de
internet.
Para usar AWS CLI o aws-shell para ver la configuración, ejecute el comando describe-internet-
gateways de Amazon EC2.
En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la gateway de Internet
y reemplace igw-1234ab5c por el ID de gateway de Internet. Para ejecutar el comando anterior con aws-
shell, omita aws.
Para usar AWS CLI o aws-shell, ejecute el comando create-internet-gateway de Amazon EC2.
En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la nueva gateway
de Internet. Para ejecutar el comando anterior en Windows, reemplace las comillas simples por comillas
dobles. Para ejecutar el comando anterior con aws-shell, omita aws.
Para usar AWS CLI o aws-shell, ejecute el comando attach-internet-gateway de Amazon EC2, por
ejemplo, de la siguiente manera.
En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la gateway de Internet,
reemplace igw-a1b2cdef por el ID de gateway de Internet y reemplace vpc-1234ab56 por el ID de
VPC. Para ejecutar el comando anterior con aws-shell, omita aws.
504
AWS Cloud9 Guía del usuario
Requisitos de Amazon VPC para AWS Cloud9
Para usar AWS CLI o aws-shell, ejecute el comando describe-route-tables de Amazon EC2.
En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la subred pública
y reemplace subnet-12a3456b por el ID de subred pública. Para ejecutar el comando anterior en
Windows, reemplace las comillas simples por comillas dobles. Para ejecutar el comando anterior con aws-
shell, omita aws.
Si hay valores en la salida, la subred pública tiene al menos una tabla de ruteo.
En la salida, si no hay resultados, la tabla de enrutamiento podría estar asociada con la VPC en lugar de
estarlo con la subred. Para confirmarlo, ejecute el comando describe-route-tables de Amazon
EC2 para la VPC relacionada con la subred en lugar de la propia subred, por ejemplo, como se indica a
continuación.
En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la VPC y reemplace
vpc-1234ab56 por el ID de VPC. Para ejecutar el comando anterior en Windows, reemplace las comillas
simples por comillas dobles. Para ejecutar el comando anterior con aws-shell, omita aws.
En la salida, si hay al menos un resultado, la VPC tiene al menos una tabla de enrutamiento.
Para usar AWS CLI o aws-shell, ejecute el comando associate-route-table de Amazon EC2, por
ejemplo, de la siguiente manera.
En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la tabla de ruteo,
reemplace subnet-12a3456b por el ID de subred y reemplace rtb-ab12cde3 por el ID de tabla de
ruteo. Para ejecutar el comando anterior con aws-shell, omita aws.
505
AWS Cloud9 Guía del usuario
Requisitos de Amazon VPC para AWS Cloud9
Para usar AWS CLI o aws-shell, ejecute el comando create-route-table de Amazon EC2, por
ejemplo, de la siguiente manera.
En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la nueva tabla de ruteo
y reemplace vpc-1234ab56 por el ID de VPC. Para ejecutar el comando anterior en Windows, reemplace
las comillas simples por comillas dobles. Para ejecutar el comando anterior con aws-shell, omita aws.
Para usar AWS CLI o aws-shell para ver la configuración, ejecute el comando describe-route-tables
de Amazon EC2, por ejemplo, de la siguiente manera.
En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la tabla de ruteo y
reemplace rtb-ab12cde3 por el ID de tabla de ruteo. Para ejecutar el comando anterior con aws-shell,
omita aws.
Para usar AWS CLI o aws-shell, ejecute el comando describe-security-groups de Amazon EC2.
506
AWS Cloud9 Guía del usuario
Requisitos de Amazon VPC para AWS Cloud9
En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la VPC y reemplace
vpc-1234ab56 por el ID de VPC. Para ejecutar el comando anterior en Windows, reemplace las comillas
simples por comillas dobles. Para ejecutar el comando anterior con aws-shell, omita aws.
Para usar AWS CLI o aws-shell, ejecute el comando describe-security-groups de Amazon EC2,
por ejemplo, de la siguiente manera.
En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la instancia y
reemplace i-12a3c456d789e0123 por el ID de instancia. Para ejecutar el comando anterior en Windows,
reemplace las comillas simples por comillas dobles. Para ejecutar el comando anterior con aws-shell, omita
aws.
Para usar AWS CLI o aws-shell para ver la configuración, ejecute el comando describe-security-
groups de Amazon EC2, por ejemplo, de la siguiente manera.
En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la instancia y
reemplace sg-12a3b456 por el ID de grupo de seguridad. Para ejecutar el comando anterior con aws-
shell, omita aws.
Para usar AWS CLI o aws-shell para ver la configuración, ejecute el comando describe-security-
groups de Amazon EC2, por ejemplo, de la siguiente manera.
507
AWS Cloud9 Guía del usuario
Requisitos de Amazon VPC para AWS Cloud9
En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la instancia y
reemplace sg-12a3b456 por el ID de grupo de seguridad. Para ejecutar el comando anterior con aws-
shell, omita aws.
Si un grupo de seguridad de una instancia no tiene una regla de entrada, esto significa que no
se permite el tráfico entrante procedente de otro anfitrión a la instancia. Para obtener información
sobre el uso de instancias EC2 sin entrada, consulte Acceder a instancias EC2 sin entrada con
AWS Systems Manager (p. 68).
• Entrada: Todas las direcciones IP que usan SSH a través del puerto 22. Sin embargo, puede restringir
estas direcciones IP a la que AWS Cloud9 utiliza únicamente. Para obtener más información, consulte
Intervalos de direcciones IP de entrada con SSH para AWS Cloud9 (p. 520).
Note
Para los entornos de EC2 creados el 31 de julio de 2018 o después, AWS Cloud9 utiliza grupos
de seguridad para restringir las direcciones IP entrantes mediante SSH en el puerto 22 solo a
las direcciones que utiliza AWS Cloud9. Para obtener más información, consulte Intervalos de
direcciones IP de entrada con SSH para AWS Cloud9 (p. 520).
• Entrada (ACL de red solo): para los entornos de EC2 y para los entornos de SSH asociados con
instancias de Amazon EC2 que ejecutan Amazon Linux o Ubuntu Server, todas las direcciones IP que
usan TCP en los puertos 32768-61000. Para obtener más información, así como los rangos de puertos
de otros tipos de instancias de Amazon EC2, consulte Puertos efímeros en la Guía del usuario de
Amazon VPC.
• Salida: todos los orígenes de tráfico con cualquier protocolo y puerto.
Puede configurar este comportamiento en el nivel del grupo de seguridad. Para un nivel adicional de
seguridad, también puede utilizar una ACL de red. Para obtener más información, consulteComparación de
grupos de seguridad y ACL de red en la Guía del usuario de Amazon VPC.
Por ejemplo, para añadir reglas de entrada y salida a un grupo de seguridad, configure dichas reglas tal y
como se indica a continuación.
Reglas de entrada
Note
Para los entornos de EC2 creados el 31 de julio de 2018 o después, AWS Cloud9 agrega una
regla de entrada para restringir las direcciones IP entrantes mediante SSH en el puerto 22 solo
508
AWS Cloud9 Guía del usuario
Requisitos de Amazon VPC para AWS Cloud9
a las direcciones que utiliza AWS Cloud9. Para obtener más información, consulte Intervalos de
direcciones IP de entrada con SSH para AWS Cloud9 (p. 520).
Reglas de salida
Si también decide añadir reglas de entrada y salida a una ACL de red, configure dichas reglas tal y como
se indica a continuación.
Reglas de entrada
Reglas de salida
Para obtener más información acerca de los grupos de seguridad y las ACL de red, consulte lo siguiente
en la Guía del usuario de Amazon VPC.
• Seguridad
• Grupos de seguridad de su VPC
509
AWS Cloud9 Guía del usuario
Requisitos de Amazon VPC para AWS Cloud9
• ACL de red
• En la consola de Amazon VPC, elija Security Groups (Grupos de seguridad) en el panel de navegación.
Elija Create Security Group (Crear grupo de seguridad) y luego siga las instrucciones en pantalla.
• En la consola de Amazon EC2, expanda Network & Security (Red y seguridad) en el panel de
navegación y, a continuación, elija Security Groups (Grupos de seguridad). Elija Create Security Group
(Crear grupo de seguridad) y luego siga las instrucciones en pantalla.
Para usar AWS CLI o aws-shell, ejecute el comando create-security-group de Amazon EC2, por
ejemplo, de la siguiente manera.
En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la VPC y reemplace
vpc-1234ab56 por el ID de VPC. Para ejecutar el comando anterior con aws-shell, omita aws.
Para usar AWS CLI o aws-shell, ejecute el comando describe-network-acls de Amazon EC2.
En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la VPC y reemplace
vpc-1234ab56 por el ID de VPC. Para ejecutar el comando anterior en Windows, reemplace las comillas
simples por comillas dobles. Para ejecutar el comando anterior con aws-shell, omita aws.
Si la salida contiene al menos una entrada en la lista, la VPC tiene al menos una ACL de red.
Para usar AWS CLI o aws-shell, ejecute el comando describe-network-acls de Amazon EC2.
En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la VPC y reemplace
vpc-1234ab56 por el ID de VPC. Para ejecutar el comando anterior en Windows, reemplace las comillas
simples por comillas dobles. Para ejecutar el comando anterior con aws-shell, omita aws.
510
AWS Cloud9 Guía del usuario
Cree una instancia de Amazon VPC para AWS Cloud9
Para usar AWS CLI o aws-shell para ver la configuración, ejecute el comando describe-network-acls
de Amazon EC2.
En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la ACL de red y
reemplace acl-1234ab56 por el ID de ACL de red. Para ejecutar el comando anterior con aws-shell,
omita aws.
Para usar AWS CLI o aws-shell, ejecute el comando create-network-acl de Amazon EC2.
En el comando anterior, reemplace us-east-2 por la región de AWS que contiene la VPC a la que desea
conectar la nueva ACL de red y reemplace vpc-1234ab56 por el ID de la VPC. Para ejecutar el comando
anterior con aws-shell, omita aws.
En este procedimiento, recomendamos que inicie sesión en la AWS Management Console y que
abra la consola de Amazon VPC con las credenciales de un administrador de IAM en su cuenta
de AWS. Si no puede hacerlo, consulte con el administrador de su cuenta de AWS.
En algunas organizaciones no se permite crear VPC. Si no puede crear una VPC, consulte al
administrador de su cuenta de AWS o al administrador de red.
1. Si la consola de Amazon VPC aún no está abierta, inicie sesión en la AWS Management Console y
abra la consola de Amazon VPC en https://console.aws.amazon.com/vpc.
2. En la barra de navegación, si la región de AWS no es la misma que la del entorno, elija la región de
AWS correcta.
3. Elija VPC Dashboard (Panel de VPC) en el panel de navegación, si todavía no se muestra la página
VPC Dashboard (Panel de VPC).
4. Elija Launch VPC Wizard (Lanzar el asistente de VPC).
5. En Step 1: Select a VPC Configuration (Paso 1: Seleccionar una configuración de la VPC), asegúrese
de que esté seleccionada la opción VPC with a Single Public Subnet (VPC con una única subred
pública) y, luego, elija Select (Seleccionar).
6. Para Step 2: VPC with a Single Public Subnet (Paso 2: VPC con una sola subred pública), le
recomendamos que deje la siguiente configuración predeterminada. (Sin embargo, puede cambiar la
511
AWS Cloud9 Guía del usuario
Cree una instancia de Amazon VPC para AWS Cloud9
configuración de CIDR si tiene CIDR personalizados que desea utilizar. Para obtener más información,
consulte Tamaño de VPC y subred en la Guía del usuario de Amazon VPC).
Amazon VPC crea los siguientes recursos que son compatibles con AWS Cloud9:
• Una VPC
• Una subred pública para la VPC
• Una tabla de enrutamiento para la subred pública con la configuración mínima requerida
• Una gateway de internet para la subred pública
• Una ACL de red para la subred pública con la configuración mínima requerida
10. De forma predeterminada, la VPC permite el tráfico entrante de todos los tipos, protocolos, puertos y
las direcciones IP. Puede restringir este comportamiento para permitir únicamente las direcciones IP
procedentes de AWS Cloud9 usando SSH en el puerto 22. Un enfoque es definir reglas entrantes en
la ACL de red predeterminada de la VPC, tal y como se indica a continuación.
a. En el panel de navegación de la consola de Amazon VPC, elija Your VPCs (Sus VPC).
b. Seleccione la casilla de la VPC que acaba de crear.
c. En la pestaña Description (Descripción), seleccione el enlace situado junto a Network ACL (ACL
de red).
d. Seleccione la casilla situada junto a la ACL de red que se muestra.
e. En la pestaña Inbound Rules (Reglas de entrada), seleccione Edit inbound rules (Editar reglas de
entrada).
f. En Rule # 100 (Regla n.º 100), en Type (Tipo), elija SSH (22).
g. En Source (Fuente), ingrese uno de los bloques de CIDR de la lista Intervalos de direcciones IP
de entrada con SSH para AWS Cloud9 (p. 520) que coincide con la región de AWS de esta
VPC.
h. Elija Add another rule.
i. Para Rule # (Regla n.º), ingrese 200.
j. En Type, seleccione SSH (22).
k. En Source (Fuente), ingrese el otro bloque de CIDR de la lista Intervalos de direcciones IP de
entrada con SSH para AWS Cloud9 (p. 520) que coincide con la región de AWS de esta VPC.
l. Como mínimo, también debe permitir el tráfico entrante de todas las direcciones IP con TCP en
los puertos 32768-61000 para los tipos de instancia de Amazon Linux y Ubuntu Server. (Para
obtener más información, así como los rangos de puertos de otros tipos de instancias de Amazon
EC2, consulte Puertos efímeros en la Guía del usuario de Amazon VPC). Para hacerlo, elija Add
another rule (Agregar otra regla).
m. Para Rule # (Regla n.º), ingrese 300.
n. En Type, elija Custom TCP Rule.
o. En Port Range (Rango de puertos), ingrese 32768-61000 (para los tipos de instancia de
Amazon Linux y Ubuntu Server).
p. En Source (Origen), escriba 0.0.0.0/0.
512
AWS Cloud9 Guía del usuario
Crear una subred para AWS Cloud9
q. Seleccione Save.
r. Es posible que tenga que agregar más reglas entrantes o salientes para la ACL de red, en
función de cómo tenga previsto utilizar AWS Cloud9. Consulte la documentación de los servicios
web o las API específicos en los que desea permitir las comunicaciones entrantes y salientes
para la VPC. Más específicamente, active las opciones de configuración Type (Tipo), Protocol
(Protocolo), Port Range (Rango de puertos) y Source (Fuente) para las reglas de ACL de red a fin
de permitir que el tráfico fluya hacia y desde las subredes.
La opción de lanzar el EC2 de su entorno en una subred privada solo está disponible si crea un entorno de
EC2 “sin entrada” mediante la consola, la línea de comandos o AWS CloudFormation (p. 68).
Siga los mismos pasos para crear una subred (p. 513) que pueda convertirse en pública o privada. Si la
subred está asociada a una tabla de enrutamiento que tiene una ruta a una gateway de internet, esta se
convierte en una subred pública. No obstante, si la subred está asociada a una tabla de enrutamiento que
no tiene ninguna ruta a una gateway de internet, se convierte en una subred privada. Para obtener más
información, consulte Configuración de una subred como pública o privada (p. 514)
Si ha seguido el procedimiento anterior para crear una VPC para AWS Cloud9, no es necesario que siga
también este procedimiento. Esto se debe a que el asistente para Create new VPC (Crear nueva VPC)
crea una subred automáticamente.
Important
• La cuenta de AWS ya debe tener una VPC compatible en la misma región de AWS para el
entorno. Para obtener más información, consulte los requisitos de VPC en Requisitos de
Amazon VPC para AWS Cloud9 (p. 500).
• En este procedimiento, recomendamos que inicie sesión en la AWS Management Console y
que abra la consola de Amazon VPC con las credenciales de un administrador de IAM en su
cuenta de AWS. Si no puede hacerlo, consulte con el administrador de su cuenta de AWS.
• Es posible que algunas organizaciones no le permitan crear subredes. Si no puede crear una
subred, consulte con el administrador de su cuenta de AWS o el administrador de red.
1. Si la consola de Amazon VPC aún no está abierta, inicie sesión en la AWS Management Console y
abra la consola de Amazon VPC en https://console.aws.amazon.com/vpc.
2. En la barra de navegación, si la región de AWS no es la misma región de AWS que la del entorno, elija
la región de AWS correcta.
3. Elija Subnets (Subredes) en el panel de navegación, si todavía no se muestra la página Subnets
(Subredes).
4. Elija Create Subnet.
5. En el cuadro de diálogo Create Subnet (Crear subred), en Name tag (Etiqueta de nombre), ingrese el
nombre de la subred.
513
AWS Cloud9 Guía del usuario
Configuración de una subred como pública o privada
Para obtener información acerca de los bloques de CIDR, consulte Tamaño de VPC y subred en la
Guía del usuario de Amazon VPC. Véase también 3.1. Basic Concept and Prefix Notation (Notación de
prefijos y conceptos básicos) en RFC 4632 o el artículo sobre bloques CIDR IPv4 en Wikipedia.
Después de crear la subred, configúrelo como una subred pública o privada (p. 514).
Una subred pública tiene una dirección IP pública y una gateway de internet (IGW) adjunta a esta que
permite la comunicación entre la instancia de la subred e internet y otros servicios de AWS.
Una instancia de una subred privada tiene una dirección IP privada y una gateway de traducción de
direcciones de red (NAT) se utiliza para enviar tráfico de ida y vuelta entre la instancia de la subred e
internet y otros servicios de AWS. La gateway NAT debe estar alojada en una subred pública.
Public subnets
Note
Incluso si la instancia de su entorno se lanza en una subred privada, la VPC debe incluir al
menos una subred pública. Esto se debe a que la gateway NAT que reenvía el tráfico hacia y
desde la instancia debe estar alojada en una subred pública.
Configurar una subred como pública implica adjuntarle una gateway de internet (IGW), configurar una
tabla de enrutamiento para especificar una ruta a esa IGW y definir la configuración de un grupo de
seguridad para controlar el tráfico entrante y saliente.
La orientación para llevar a cabo estas tareas se proporciona en Cree una instancia de Amazon VPC
para AWS Cloud9 (p. 511).
Important
Si el entorno de desarrollo usa SSM para acceder a una instancia EC2 (p. 68), asegúrese
de que la subred pública en la que se lanza la instancia asigna una dirección IP pública
a la instancia. Para ello, puede especificar su propia dirección IP o habilitar la asignación
automática de una dirección IP pública. Para ver los pasos necesarios para modificar la
configuración de asignación automática de IP, consulte Direcciones IP en su VPC en la Guía
del usuario de Amazon VPC.
Private subnets
Si va a crear una instancia sin entrada a la que se accede a través de Systems Manager, puede
lanzarla en una subred privada. Debido a que una subred privada no tiene una dirección IP pública,
se requiere una gateway NAT para asignar la dirección IP privada a una dirección pública para las
solicitudes y, a continuación, asignar la dirección IP pública a la dirección privada para la respuesta.
514
AWS Cloud9 Guía del usuario
Requisitos de anfitrión del entorno SSH
Warning
Se le cobrará por la creación y el uso de una gateway NAT en su cuenta. Se aplican las
tarifas de procesamiento de datos y uso por horas de la gateway NAT. También se aplican
cargos de Amazon EC2 por la transferencia de datos. Para obtener más información, consulte
Precios de Amazon VPC.
Para conocer los pasos de esta tarea, consulte Usar gateways NAT en la Guía del usuario de Amazon
VPC.
Important
Al crear un entorno de EC2, AWS Cloud9 crea un nuevo entorno, solicita a Amazon EC2 que lance una
nueva instancia y, a continuación, conecta esa instancia al nuevo entorno. La creación de un entorno de
EC2 tiene los siguientes beneficios:
• Lanzamiento automático de instancias. Al crear un entorno de EC2, AWS Cloud9 solicita a Amazon EC2
que cree una nueva instancia al mismo tiempo. En un entorno de SSH, debe proporcionar una instancia
de informática en la nube existente (por ejemplo, una instancia de Amazon EC2) o su propio servidor.
• Cierre automático de instancias. De forma predeterminada, AWS Cloud9 cierra automáticamente el
entorno de EC2 30 minutos después de que se cierren todas las instancias del navegador web que
estén conectadas al IDE para el entorno de EC2. Puede cambiar este comportamiento en cualquier
momento. Esto ayuda a reducir la posibilidad de que se apliquen cargos adicionales a su cuenta de AWS
por utilizar Amazon EC2.
• Limpieza automática de instancias. Cuando se elimina un entorno de EC2, la instancia de Amazon EC2
conectada se elimina automáticamente. Esto ayuda a reducir la posibilidad de que se apliquen cargos
adicionales a su cuenta de AWS por utilizar Amazon EC2. En un entorno de SSH que esté conectado a
una instancia de informática en la nube, debe acordarse de eliminar la instancia.
• Credenciales temporales administradas de AWS. Para un entorno de EC2, puede activar o desactivar
fácilmente todas las acciones de AWS para todos los recursos de AWS en la cuenta de AWS de la
persona que llama (con algunas restricciones). No es necesario configurar perfiles de instancias para la
instancia de Amazon EC2 de su entorno ni almacenar credenciales de acceso de AWS permanentes de
una entidad de AWS (por ejemplo, un usuario de IAM).
Para obtener más información, consulte Credenciales temporales administradas por AWS (p. 569).
515
AWS Cloud9 Guía del usuario
Cuándo y cómo crear un entorno de SSH
• Kit de herramientas y panel de Git de AWS. Estas herramientas para interactuar con los servicios de
AWS y usar el control de origen visual solo están disponibles en entornos de AWS Cloud9 creados con
una instancia de Amazon EC2.
Si desea crear un entorno de EC2 en su lugar, consulte Creación de un entorno de EC2 (p. 54). En caso
contrario, siga leyendo información sobre cómo crear entornos de SSH.
Requisito Instrucciones
Desea utilizar una instancia de informática en la 1. Asegúrese de que la instancia cumpla los
nube de AWS existente (por ejemplo, una instancia requisitos (p. 517) que se describen más
de Amazon EC2) en su cuenta de AWS en lugar adelante en este tema.
de que AWS Cloud9 lance una nueva instancia al 2. Cree un entorno de SSH (p. 53) al que AWS
mismo tiempo que se crea el entorno. Cloud9 pueda conectar la instancia.
Desea utilizar un tipo de instancias de Amazon 1. Lance una instancia de Amazon EC2 basada
EC2 que AWS Cloud9 no admite actualmente para en el tipo de instancias deseado. O bien
un entorno de EC2 (por ejemplo, R4). identifique una instancia existente en su
cuenta de AWS que ejecute el tipo de
instancias deseado.
2. Asegúrese de que la instancia cumpla los
requisitos (p. 517) que se describen más
adelante en este tema.
3. Cree un entorno de SSH (p. 53) al que AWS
Cloud9 pueda conectar la instancia.
Desea utilizar una instancia de Amazon EC2 1. Lance una instancia de Amazon EC2 basada
basada en una Amazon Machine Image (AMI) que en la AMI deseada. O bien, identifique una
no es de Amazon Linux ni Ubuntu Server. instancia existente en su cuenta de AWS que
esté basada en la AMI deseada.
2. Asegúrese de que la instancia cumpla los
requisitos (p. 517) que se describen más
adelante en este tema.
3. Cree un entorno de SSH (p. 53) al que AWS
Cloud9 pueda conectar la instancia.
Desea conectar varios entornos a una única 1. Asegúrese de que la instancia o el servidor
instancia de informática en la nube existente o a su cumplen los requisitos (p. 517) que se
propio servidor. describen más adelante en este tema.
2. Cree un entorno de SSH (p. 53) para cada
entorno al que desea que AWS Cloud9
conecte la instancia o el servidor.
516
AWS Cloud9 Guía del usuario
Requisitos del host SSH
Note
El lanzamiento de una instancia de Amazon EC2 podría incurrir en cargos en su cuenta de AWS
por Amazon EC2. Para obtener más información, consulte Precios de Amazon EC2.
Para conectar una instancia de informática en la nube de AWS existente para verificar y cumplir
los requisitos, consulte uno o varios de los siguientes recursos:
• En el caso de Amazon EC2, consulte Conexión con la instancia de Linux en la Guía del
usuario de Amazon EC2 para instancias de Linux.
• Para Amazon Lightsail, consulte Connect to your Linux/Unix-based Lightsail instance en la
documentación de Amazon Lightsail.
• Para AWS Elastic Beanstalk, consulte Listado y conexión a instancias de servidor en la Guía
para desarrolladores de AWS Elastic Beanstalk.
• Para AWS OpsWorks, consulte Uso de SSH para iniciar sesión en una instancia de Linux en
la Guía del usuario de AWS OpsWorks.
• Para otros servicios de AWS, consulte la documentación del servicio.
Para conectarse a su propio servidor con la finalidad de comprobar y cumplir los requisitos,
puede buscar en Internet una frase como "conectarse a un servidor con el comando
SSH" (desde macOS o Linux) o "conectarse a un servidor con PuTTY" (desde Windows).
• Node.js debe estar instalado. Actualmente, se admiten todas las versiones desde Node.js 0.6.16 hasta
Node.js 12.x.
Warning
Para verificar la versión, ejecute el comando desde el terminal del servidor o de la instancia existente
node --version . Para instalar Node.js en la instancia o el servidor, consulte uno de los siguientes
recursos:
• Paso 1: Instalar las herramientas necesarias (p. 459) en la Muestra de Node.js.
517
AWS Cloud9 Guía del usuario
AWS Cloud9Instalador de
Por ejemplo, si la ruta del directorio es ~ (donde ~ representa el directorio de inicio del nombre de inicio
de sesión especificado para el Usuario en la página Configure settings [Configurar ajustes]), puede
establecer estos permisos en el directorio ejecutando el comando chmod desde la instancia o el servidor
mediante el comando y las instrucciones que se indican a continuación.
• Descargue y ejecute el instalador de AWS Cloud9 (p. 518) en la instancia o servidor existente.
• Si lo prefiere, puede restringir el tráfico de entrada por SSH únicamente a las direcciones IP que utiliza
AWS Cloud9. Para ello, establezca el tráfico SSH de entrada en los rangos de IP, tal y como se describe
en Intervalos de direcciones IP de entrada con SSH para AWS Cloud9 (p. 520).
Cuando esté seguro de que la instancia o el servidor cumplen todos los requisitos anteriores, cree un
entorno de SSH (p. 65) al que AWS Cloud9 pueda conectarse.
Este tema describe cómo descargar y ejecutar este script de instalación en la instancia de destino o
servidor.
518
AWS Cloud9 Guía del usuario
Solución de problemas del instalador de AWS Cloud9
3. Si no hay errores en el mensaje Listo, puede crear el entorno SSH (p. 65).
Si se muestra un mensaje de error, consulte la siguiente sección para obtener información sobre la
resolución de problemas.
Si el problema no aparece en la lista o si necesita ayuda adicional, consulte el foro de discusión de AWS
Cloud9. (Cuando entre en este foro, es posible que AWS requiera que inicie sesión). También puede
ponerse en contacto con nosotros directamente.
Solución recomendada: ejecute el script de instalación en la instancia o servidor con la utilidad curl
como alternativa.
Solución recomendada: instale la utilidad make y, a continuación, intente volver a ejecutar el script de
instalación en la instancia o servidor.
Para instalar la utilidad make , ejecute uno de los siguientes comandos en la instancia o el servidor.
• Para Amazon Linux, Amazon Linux 2 y Red Hat Enterprise Linux (RHEL) ejecutándose en Amazon EC2:
sudo yum -y groupinstall "Development Tools"
• Para Ubuntu Server en ejecución en Amazon EC2: sudo apt install -y build-essential
• Para SUSE: sudo zypper install -y make
519
AWS Cloud9 Guía del usuario
Intervalos de direcciones IP de entrada con SSH
Solución recomendada: instale la utilidad gcc y, a continuación, intente volver a ejecutar el script de
instalación en la instancia o servidor.
Para instalar la utilidad gcc , ejecute uno de los siguientes comandos en la instancia o el servidor.
• Para Amazon Linux, Amazon Linux 2 y Red Hat Enterprise Linux (RHEL) ejecutándose en Amazon EC2:
sudo yum -y groupinstall "Development Tools"
• Para Ubuntu Server en ejecución en Amazon EC2: sudo apt install -y build-essential
• Para SUSE: sudo zypper install -y gcc
• Para otros sistemas operativos, consulte Instalación de GCC.
Causa posible: la biblioteca para el control de terminales ncurses no está instalada en la instancia o el
servidor.
Solución recomendada: instale la biblioteca para el control de terminales ncurses (y, en algunos
sistemas operativos, la biblioteca glibc-static ) y, a continuación, intente volver a ejecutar el script de
instalación en la instancia o servidor.
Para instalar la biblioteca para el control de terminales ncurses (y, en algunos sistemas operativos,
la biblioteca glibc-static ), puede ejecutar uno de los siguientes comandos en la instancia o en el
servidor:
• Para Amazon Linux, Amazon Linux 2 y Red Hat Enterprise Linux (RHEL) ejecutándose en Amazon EC2:
sudo yum -y install ncurses-devel
• Para SUSE: sudo zypper install -y ncurses-devel y sudo zypper install -y glibc-
static
En el caso de un entorno de EC2 creado el 31 de julio de 2018 o después, puede omitir este
tema. Esto se debe a que AWS Cloud9 restringe automáticamente el tráfico SSH entrante de ese
entorno solo a las direcciones IP que se describen más adelante en este tema. Para ello, AWS
Cloud9 agrega automáticamente una regla al grupo de seguridad asociado con la instancia de
Amazon EC2 del entorno. Esta regla restringe el tráfico SSH entrante sobre el puerto 22 solo a
aquellas direcciones IP de la región de AWS asociada.
Los intervalos de direcciones IP de la mayoría de las regiones de AWS están en el archivo ip-
ranges.json, tal y como se describe en Rangos de direcciones IP de AWS en la Referencia general de
AWS.
520
AWS Cloud9 Guía del usuario
Direcciones IP no incluidas en ip-ranges.json
Note
Consulte a continuación (p. 521) los rangos de direcciones IP para las regiones Asia-Pacífico
(Hong Kong), Europa (Milán) y Medio Oriente (Baréin) que no se incluyen actualmente en el
archivo ip-ranges.json.
• En Windows, si usa AWS Tools for Windows PowerShell, ejecute el siguiente comando.
Estos rangos IP podrían cambiar ocasionalmente. Cuando haya un cambio, enviamos notificaciones
a los suscriptores del tema AmazonIpSpaceChanged. Para obtener estas notificaciones, consulte
Notificaciones de rangos de direcciones IP de AWS en la Referencia general de AWS.
Para utilizar estos rangos de direcciones IP cuando configure los entornos que utilizan instancias de
informática en la nube de AWS, consulte Configuración de VPC para entornos de desarrollo de AWS
Cloud9 (p. 500). Además, si elige restringir el tráfico entrante en los entornos de EC2 o los entornos de
SSH asociados con las instancias de Amazon EC2 que se ejecutan en Amazon Linux o Ubuntu Server,
asegúrese también de permitir como mínimo todas las direcciones IP que usan TCP en los puertos
32768-61000. Para obtener más información, así como intervalos de puertos para otros tipos de instancias
de informática en la nube de AWS, consulte Puertos efímeros en la Guía del usuario de Amazon VPC.
Para utilizar estos rangos de direcciones IP al configurar los entornos de SSH que utilizan su red, consulte
la documentación de la red o al administrador de red.
18.163.139.32/27
15.161.135.96/27
15.185.91.32/27
521
AWS Cloud9 Guía del usuario
Contenido de AMI
Temas
• Amazon Linux 2 o Amazon Linux (p. 522)
• Servidor Ubuntu (p. 523)
Le recomendamos que elija la opción Amazon Linux 2 si crea un entorno de Amazon EC2
mediante la consola (p. 55). Además de proporcionar un entorno en tiempo de ejecución seguro,
estable y de alto rendimiento, la AMI de Amazon Linux 2 incluye asistencia a largo plazo hasta
2023.
El soporte estándar para la versión anterior de la AMI de Amazon Linux se suspendió el 31 de
diciembre de 2020. Ahora esta versión anterior solo recibe soporte de mantenimiento. Para
obtener más información, consulte la página de Amazon Linux 2.
A menos que se especifique lo contrario, las referencias a Amazon Linux en este tema se refieren
a instancias de Amazon Linux y Amazon Linux 2.
Para mostrar la versión de una instancia de Amazon Linux, ejecute el siguiente comando desde el IDE de
AWS Cloud9 para el entorno conectado o desde una utilidad SSH como el comando ssh o PuTTY.
cat /etc/system-release
Para mostrar una lista de los paquetes que están instalados en una instancia de Amazon Linux, ejecute
uno o más de los siguientes comandos.
Para mostrar una lista de los paquetes instalados con los nombres de los paquetes que contienen el texto
especificado:
522
AWS Cloud9 Guía del usuario
Servidor Ubuntu
En el comando anterior, reemplace YOUR_SEARCH_TERM por parte del nombre del paquete. Por ejemplo,
para mostrar una lista de todos los paquetes instalados con nombres que contienen sql:
Para mostrar una lista de todos los paquetes instalados, mostrados página por página:
Note
Amazon Linux 2 le permite utilizar la biblioteca Extras para instalar actualizaciones de software y
de aplicaciones en sus instancias. Estas actualizaciones de software se denominan temas. Para
obtener más información, consulte Biblioteca Extras de Amazon Linux 2 en la Guía del usuario de
Amazon EC2 para instancias de Linux.
Para ver opciones adicionales, ejecute el comando man yum. Consulte también los siguientes recursos:
Servidor Ubuntu
Para mostrar la versión de una instancia de Ubuntu Server, ejecute el siguiente comando desde el IDE de
AWS Cloud9 para el entorno conectado o desde una utilidad SSH como el comando ssh o PuTTY.
lsb_release -a
Para mostrar una lista de los paquetes que están instalados en un Ubuntu Server, ejecute uno o más de
los siguientes comandos.
Para mostrar una lista de los paquetes instalados con los nombres de los paquetes que contienen el texto
especificado:
En el comando anterior, reemplace YOUR_SEARCH_TERM por parte del nombre del paquete. Por ejemplo,
para mostrar una lista de todos los paquetes instalados con nombres que contienen sql:
523
AWS Cloud9 Guía del usuario
Roles vinculados a servicios
Para mostrar una lista de todos los paquetes instalados, página por página:
Para ver opciones adicionales, ejecute el comando man apt. Consulte también Búsqueda de paquetes de
Ubuntu en el sitio web de Ubuntu.
Con un rol vinculado a un servicio, resulta más sencillo configurar AWS Cloud9, porque no es preciso
agregar los permisos necesarios. AWS Cloud9 define los permisos de sus roles vinculados a servicios y
solo AWS Cloud9 puede asumir sus roles. Los permisos definidos incluyen las políticas de confianza y de
permisos, y que la política de permisos no se pueda asociar a ninguna otra entidad de IAM.
Las funciones se pueden eliminar únicamente después de eliminar primero sus recursos relacionados.
De esta forma, se protegen los recursos de AWS Cloud9, ya que se evita que se puedan eliminar
accidentalmente permisos de acceso a los recursos.
Para obtener información acerca de otros servicios que admiten roles vinculados a servicios, consulte
Servicios de AWS que funcionan con IAM y busque los servicios que muestran Yes (Sí) en la columna
Service Linked Role (Rol vinculado a servicios). Seleccione una opción Sí con un enlace para ver la
documentación acerca del rol vinculado al servicio en cuestión.
524
AWS Cloud9 Guía del usuario
Permisos de roles vinculados a servicios de AWS Cloud9
Si utiliza License Manager y recibe el error unable to access your environment, tiene que
reemplazar el rol vinculado a un servicio anterior por la versión compatible con License Manager.
Para reemplazar el rol antiguo, elimínelo. A continuación, se crea el rol actualizado de forma
automática.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ec2:RunInstances",
"ec2:CreateSecurityGroup",
"ec2:DescribeVpcs",
"ec2:DescribeSubnets",
"ec2:DescribeSecurityGroups",
"ec2:DescribeInstances",
"ec2:DescribeInstanceStatus",
"cloudformation:CreateStack",
"cloudformation:DescribeStacks",
"cloudformation:DescribeStackEvents",
"cloudformation:DescribeStackResources"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"ec2:TerminateInstances",
"ec2:DeleteSecurityGroup",
"ec2:AuthorizeSecurityGroupIngress"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"cloudformation:DeleteStack"
],
"Resource": "arn:aws:cloudformation:*:*:stack/aws-cloud9-*"
},
{
"Effect": "Allow",
"Action": [
"ec2:CreateTags"
],
"Resource": [
"arn:aws:ec2:*:*:instance/*",
"arn:aws:ec2:*:*:security-group/*"
],
"Condition": {
"StringLike": {
"aws:RequestTag/Name": "aws-cloud9-*"
}
}
},
{
"Effect": "Allow",
"Action": [
"ec2:StartInstances",
525
AWS Cloud9 Guía del usuario
Permisos de roles vinculados a servicios de AWS Cloud9
"ec2:StopInstances"
],
"Resource": "*",
"Condition": {
"StringLike": {
"ec2:ResourceTag/aws:cloudformation:stack-name": "aws-cloud9-*"
}
}
},
{
"Effect": "Allow",
"Action": [
"ec2:StartInstances",
"ec2:StopInstances"
],
"Resource": [
"arn:aws:license-manager:*:*:license-configuration:*"
]
},
{
"Effect": "Allow",
"Action": [
"iam:ListInstanceProfiles",
"iam:GetInstanceProfile"
],
"Resource": [
"arn:aws:iam::*:instance-profile/cloud9/*"
]
},
{
"Effect": "Allow",
"Action": [
"iam:PassRole"
],
"Resource": [
"arn:aws:iam::*:role/service-role/AWSCloud9SSMAccessRole"
],
"Condition": {
"StringLike": {
"iam:PassedToService": "ec2.amazonaws.com"
}
}
}
]
}
Debe configurar permisos para permitir que AWS Cloud9 cree un rol vinculado a un servicio en nombre de
una entidad de IAM (como un usuario, grupo o rol).
Para permitir que AWS Cloud9 cree el rol vinculado a un servicio AWSServiceRoleForAWSCloud9,
agregue la siguiente instrucción a la política de permisos de la entidad de IAM en cuyo nombre AWS
Cloud9 necesita crear el rol vinculado a un servicio.
{
"Effect": "Allow",
"Action": [
"iam:CreateServiceLinkedRole"
],
"Resource": "*",
"Condition": {
"StringLike": {
"iam:AWSServiceName": "cloud9.amazonaws.com"
}
}
526
AWS Cloud9 Guía del usuario
Creación de un rol vinculado a un servicio de AWS Cloud9
Para permitir que una entidad de IAM elimine el rol vinculado al servicio AWSServiceRoleForAWSCloud9,
agregue la siguiente instrucción a la política de permisos de la entidad de IAM que necesita eliminar un rol
vinculado a un servicio.
{
"Effect": "Allow",
"Action": [
"iam:DeleteServiceLinkedRole",
"iam:GetServiceLinkedRoleDeletionStatus"
],
"Resource": "*",
"Condition": {
"StringLike": {
"iam:AWSServiceName": "cloud9.amazonaws.com"
}
}
}
527
AWS Cloud9 Guía del usuario
Regiones admitidas para los roles
vinculados a un servicio de AWS Cloud9
Para obtener más información acerca de CloudTrail, consulte la Guía del usuario de AWS CloudTrail.
Para mantener un registro continuo de eventos en la cuenta de AWS, incluidos los eventos de AWS
Cloud9, cree un registro de seguimiento. Un registro de seguimiento permite a CloudTrail enviar archivos
de registro a un bucket de Amazon S3. De forma predeterminada, cuando se crea un registro de
seguimiento en la consola, el registro de seguimiento se aplica a todas las regiones de AWS. El registro
de seguimiento registra los eventos de todas las regiones de la partición de AWS y envía los archivos
de registro al bucket de Amazon S3 especificado. También es posible configurar otros servicios de AWS
para analizar en profundidad y actuar en función de los datos de eventos recopilados en los registros de
CloudTrail. Para obtener más información, consulte los siguientes temas:
AWS Cloud9 admite el registro de las siguientes acciones como eventos en archivos de registros de
CloudTrail:
• CreateEnvironmentEC2
• CreateEnvironmentSSH
• CreateEnvironmentMembership
• DeleteEnvironment
528
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9
• DeleteEnvironmentMembership
• DescribeEnvironmentMemberships
• DescribeEnvironments
• DescribeEnvironmentStatus
• ListEnvironments
• ListTagsForResource
• TagResource
• UntagResource
• UpdateEnvironment
• UpdateEnvironmentMembership
Note
• DisableManagedCredentialsByCollaborator
• EnvironmentTokenSuccessfullyCreated
• ManagedCredentialsUpdatedOnEnvironment
Cada entrada de registro o evento contiene información sobre quién generó la solicitud. La información de
identidad del usuario le ayuda a determinar lo siguiente:
• Si la solicitud se realizó con credenciales de usuario AWS Identity and Access Management (IAM) o
credenciales de usuario raíz.
• Si la solicitud se realizó con credenciales de seguridad temporales de un rol o fue un usuario federado.
• Si la solicitud la realizó otro servicio de AWS.
529
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9
CreateEnvironmentEC2
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
CreateEnvironmentEC2.
{
"Records": [
{
"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::111122223333:user/MyUser",
"accountId": "111122223333",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"userName": "MyUser",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2019-01-14T11:29:47Z"
}
},
"invokedBy": "signin.amazonaws.com"
},
"eventTime": "2019-01-14T11:33:27Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "CreateEnvironmentEC2",
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "signin.amazonaws.com",
"requestParameters": {
"instanceType": "t2.small",
"subnetId": "subnet-1d4a9eEX",
"description": "HIDDEN_DUE_TO_SECURITY_REASONS",
"dryRun": true,
"automaticStopTimeMinutes": 30,
"name": "my-test-environment",
"clientRequestToken": "cloud9-console-f8e37272-e541-435d-a567-5c684EXAMPLE"
},
"responseElements": null,
"requestID": "f0e629fb-fd37-49bd-b2cc-e9822EXAMPLE",
"eventID": "8a906445-1b2a-47e9-8d7c-5b242EXAMPLE",
"eventType": "AwsApiCall",
"recipientAccountId": "111122223333"
}
]
}
CreateEnvironmentSSH
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
CreateEnvironmentSSH.
530
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9
{
"Records": [
{
"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::111122223333:user/MyUser",
"accountId": "111122223333",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"userName": "MyUser",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2019-01-14T11:29:47Z"
}
},
"invokedBy": "signin.amazonaws.com"
},
"eventTime": "2019-01-14T11:33:27Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "CreateEnvironmentSSH",
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "signin.amazonaws.com",
"requestParameters": {
"host": "198.51.100.0",
"port": 22,
"name": "my-ssh-environment",
"description": "HIDDEN_DUE_TO_SECURITY_REASONS",
"clientRequestToken": "cloud9-console-b015a0e9-469e-43e3-be90-6f432EXAMPLE",
"loginName": "ec2-user"
},
"responseElements": {
"environmentId": "5c39cc4a85d74a8bbb6e23ed6EXAMPLE"
},
"requestID": "f0e629fb-fd37-49bd-b2cc-e9822EXAMPLE",
"eventID": "8a906445-1b2a-47e9-8d7c-5b242EXAMPLE",
"eventType": "AwsApiCall",
"recipientAccountId": "111122223333"
}
]
}
CreateEnvironmentMembership
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
CreateEnvironmentMembership.
{
"Records": [
{
"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::111122223333:user/MyUser",
"accountId": "111122223333",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"userName": "MyUser",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
531
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9
"creationDate": "2019-01-14T11:29:47Z"
}
},
"invokedBy": "signin.amazonaws.com"
},
"eventTime": "2019-01-14T11:33:27Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "CreateEnvironmentMembership",
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "signin.amazonaws.com",
"requestParameters": {
"environmentId": "2f5ff70a640f49398f67e3bdeEXAMPLE",
"userArn": "arn:aws:iam::111122223333:user/MyUser",
"permissions": "read-write"
},
"responseElements": {
"membership": {
"environmentId": "2f5ff70a640f49398f67e3bdeEXAMPLE",
"permissions": "read-write",
"userId": "AIDACKCEVSQ6C2EXAMPLE",
"userArn": "arn:aws:iam::111122223333:user/MyUser"
}
},
"requestID": "f0e629fb-fd37-49bd-b2cc-e9822EXAMPLE",
"eventID": "8a906445-1b2a-47e9-8d7c-5b242EXAMPLE",
"eventType": "AwsApiCall",
"recipientAccountId": "111122223333"
}
]
}
DeleteEnvironment
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
DeleteEnvironment.
{
"Records": [
{
"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::111122223333:user/MyUser",
"accountId": "111122223333",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"userName": "MyUser",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2019-01-14T11:29:47Z"
}
},
"invokedBy": "signin.amazonaws.com"
},
"eventTime": "2019-01-14T11:33:27Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "DeleteEnvironment",
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "signin.amazonaws.com",
"requestParameters": {
"environmentId": "2f5ff70a640f49398f67e3bdeEXAMPLE"
532
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9
},
"responseElements": null,
"requestID": "f0e629fb-fd37-49bd-b2cc-e9822EXAMPLE",
"eventID": "8a906445-1b2a-47e9-8d7c-5b242EXAMPLE",
"eventType": "AwsApiCall",
"recipientAccountId": "111122223333"
}
]
}
DeleteEnvironmentMembership
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
DeleteEnvironmentMembership.
{
"Records": [
{
"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::111122223333:user/MyUser",
"accountId": "111122223333",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"userName": "MyUser",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2019-01-14T11:29:47Z"
}
},
"invokedBy": "signin.amazonaws.com"
},
"eventTime": "2019-01-14T11:33:27Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "DeleteEnvironmentMembership",
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "signin.amazonaws.com",
"requestParameters": {
"environmentId": "2f5ff70a640f49398f67e3bdeEXAMPLE",
"userArn": "arn:aws:iam::111122223333:user/MyUser",
},
"responseElements": null,
"requestID": "f0e629fb-fd37-49bd-b2cc-e9822EXAMPLE",
"eventID": "8a906445-1b2a-47e9-8d7c-5b242EXAMPLE",
"eventType": "AwsApiCall",
"recipientAccountId": "111122223333"
}
]
}
DescribeEnvironmentMemberships
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
DescribeEnvironmentMemberships.
{
"Records": [
{
533
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9
"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::111122223333:user/MyUser",
"accountId": "111122223333",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"userName": "MyUser",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2019-01-14T11:29:47Z"
}
},
"invokedBy": "signin.amazonaws.com"
},
"eventTime": "2019-01-14T11:33:27Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "DescribeEnvironmentMemberships",
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "signin.amazonaws.com",
"requestParameters": {
"nextToken": "NEXT_TOKEN_EXAMPLE",
"permissions": [ "owner" ],
"maxResults": 15
},
"responseElements": null,
"requestID": "f0e629fb-fd37-49bd-b2cc-e9822EXAMPLE",
"eventID": "8a906445-1b2a-47e9-8d7c-5b242EXAMPLE",
"readOnly": true,
"eventType": "AwsApiCall",
"recipientAccountId": "111122223333"
}
]
}
DescribeEnvironments
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
DescribeEnvironments.
{
"Records": [
{
"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::111122223333:user/MyUser",
"accountId": "111122223333",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"userName": "MyUser",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2019-01-14T11:29:47Z"
}
},
"invokedBy": "signin.amazonaws.com"
},
"eventTime": "2019-01-14T11:33:27Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "DescribeEnvironments",
534
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "signin.amazonaws.com",
"requestParameters": {
"environmentIds": [
"2f5ff70a640f49398f67e3bdeb811ab2"
]
},
"responseElements": null,
"requestID": "f0e629fb-fd37-49bd-b2cc-e9822EXAMPLE",
"eventID": "8a906445-1b2a-47e9-8d7c-5b242EXAMPLE",
"readOnly": true,
"eventType": "AwsApiCall",
"recipientAccountId": "111122223333"
}
]
}
DescribeEnvironmentStatus
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
DescribeEnvironmentStatus.
{
"eventVersion": "1.08",
"userIdentity": {
"type": "AssumedRole",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:sts::123456789012:myuser_role",
"accountId": "123456789012",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"sessionContext": {
"sessionIssuer": {
"type": "Role",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:sts::123456789012:myuser_role",
"accountId": "123456789012",
"userName": "barshane_role"
},
"webIdFederationData": {},
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2021-03-12T15:10:54Z"
}
}
},
"eventTime": "2021-03-12T15:13:31Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "DescribeEnvironmentStatus",
"awsRegion": "us-east-1",
"sourceIPAddress": "XX.XX.XXX.XX",
"userAgent": "aws-internal/3 aws-sdk-java/1.11.951
Linux/4.9.230-0.1.ac.223.84.332.metal1.x86_64 OpenJDK_64-Bit_Server_VM/25.282-b08
java/1.8.0_282 vendor/Oracle_Corporation",
"requestParameters": {
"environmentId": "31ea8a12746a4221b7d8e07d9ef6ee21"
},
"responseElements": null,
"requestID": "68b163fb-aa88-4f40-bafd-4a18bf24cbd5",
"eventID": "c0fc52a9-7331-4ad0-a8ee-157995dfb5e6",
"readOnly": true,
"eventType": "AwsApiCall",
"managementEvent": true,
"eventCategory": "Management",
535
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9
"recipientAccountId": "123456789012"
}
ListEnvironments
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
ListEnvironments.
{
"Records": [
{
"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::111122223333:user/MyUser",
"accountId": "111122223333",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"userName": "MyUser",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2019-01-14T11:29:47Z"
}
},
"invokedBy": "signin.amazonaws.com"
},
"eventTime": "2019-01-14T11:33:27Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "ListEnvironments",
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "signin.amazonaws.com",
"requestParameters": {
"nextToken": "NEXT_TOKEN_EXAMPLE",
"maxResults": 15
},
"responseElements": null,
"requestID": "f0e629fb-fd37-49bd-b2cc-e9822EXAMPLE",
"eventID": "8a906445-1b2a-47e9-8d7c-5b242EXAMPLE",
"readOnly": true,
"eventType": "AwsApiCall",
"recipientAccountId": "123456789012"
}
]
}
ListTagsForResource
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
ListTagsForResource.
{
"eventVersion": "1.08",
"userIdentity": {
"type": "AssumedRole",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:sts::123456789012:myuser_role",
"accountId": "123456789012",
"accessKeyId": "AIDACKCEVSQ6C2EXAMPLE",
"sessionContext": {
536
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9
"sessionIssuer": {
"type": "Role",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "123456789012:myuser_role",
"accountId": "123456789012",
"userName": "barshane_role"
},
"webIdFederationData": {},
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2021-03-23T16:41:51Z"
}
}
},
"eventTime": "2021-03-23T16:42:58Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "ListTagsForResource",
"awsRegion": "us-east-1",
"sourceIPAddress": "XX.XX.XXX.XX",
"userAgent": "aws-internal/3 aws-sdk-java/1.11.976
Linux/4.9.230-0.1.ac.224.84.332.metal1.x86_64 OpenJDK_64-Bit_Server_VM/25.282-b08
java/1.8.0_282 vendor/Oracle_Corporation cfg/retry-mode/legacy",
"requestParameters": {
"resourceARN": "arn:aws:cloud9:us-
east-1:123456789012:environment:3XXXXXXXXX6a4221b7d8e07d9ef6ee21"
},
"responseElements": {
"tags": "HIDDEN_DUE_TO_SECURITY_REASONS"
},
"requestID": "5750a344-8462-4020-82f9-f1d500a75162",
"eventID": "188d572d-9a14-4082-b98b-0389964c7c30",
"readOnly": true,
"eventType": "AwsApiCall",
"managementEvent": true,
"eventCategory": "Management",
"recipientAccountId": "123456789012"
}
TagResource
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
TagResource.
{
"eventVersion": "1.08",
"userIdentity": {
"type": "AssumedRole",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:sts:: 123456789012:myuser_role",
"accountId": "123456789012",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"sessionContext": {
"sessionIssuer": {
"type": "Role",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::123456789012:role/myuser_role",
"accountId": "123456789012",
"userName": "MyUser"
},
"webIdFederationData": {},
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2021-03-23T15:03:57Z"
}
537
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9
}
},
"eventTime": "2021-03-23T15:08:16Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "TagResource",
"awsRegion": "us-east-1",
"sourceIPAddress": "54.XXX.XXX.XXX",
"userAgent": "aws-internal/3 aws-sdk-java/1.11.976
Linux/4.9.230-0.1.ac.224.84.332.metal1.x86_64 OpenJDK_64-Bit_Server_VM/25.282-b08
java/1.8.0_282 vendor/Oracle_Corporation cfg/retry-mode/legacy",
"requestParameters": {
"resourceARN": "arn:aws:cloud9:us-
east-1:123456789012:environment:3XXXXXXXXX6a4221b7d8e07d9ef6ee21",
"tags": "HIDDEN_DUE_TO_SECURITY_REASONS"
},
"responseElements": null,
"requestID": "658e9d70-91c2-41b8-9a69-c6b4cc6a9456",
"eventID": "022b2893-73d1-44cb-be6f-d3faa68e83b1",
"readOnly": false,
"eventType": "AwsApiCall",
"managementEvent": true,
"eventCategory": "Management",
"recipientAccountId": "123456789012"
}
UntagResource
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
UntagResource.
{
"eventVersion": "1.08",
"userIdentity": {
"type": "AssumedRole",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:sts::123456789012/MyUser",
"accountId": "123456789012",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"sessionContext": {
"sessionIssuer": {
"type": "Role",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::123456789012:MyUser",
"accountId": "123456789012",
"userName": "MyUser"
},
"webIdFederationData": {},
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2021-03-23T15:58:36Z"
}
}
},
"eventTime": "2021-03-23T16:05:08Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "UntagResource",
"awsRegion": "us-east-1",
"sourceIPAddress": "3.XX.XX.XXX",
"userAgent": "aws-internal/3 aws-sdk-java/1.11.976
Linux/4.9.230-0.1.ac.224.84.332.metal1.x86_64 OpenJDK_64-Bit_Server_VM/25.282-b08
java/1.8.0_282 vendor/Oracle_Corporation cfg/retry-mode/legacy",
"requestParameters": {
"resourceARN": "arn:aws:cloud9:us-
east-1:123456789012:environment:3XXXXXXXXX6a4221b7d8e07d9ef6ee21",
538
AWS Cloud9 Guía del usuario
Descripción de las entradas de los
archivos de registro de AWS Cloud9
"tagKeys": "HIDDEN_DUE_TO_SECURITY_REASONS"
},
"responseElements": null,
"requestID": "0eadaef3-dc0a-4cd7-85f6-135b8529f75f",
"eventID": "41f2f2e2-4b17-43d4-96fc-9857981ca1de",
"readOnly": false,
"eventType": "AwsApiCall",
"managementEvent": true,
"eventCategory": "Management",
"recipientAccountId": "123456789012"
}
UpdateEnvironment
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
UpdateEnvironment.
{
"Records": [
{
"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::111122223333:user/MyUser",
"accountId": "111122223333",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"userName": "MyUser",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2019-01-14T11:29:47Z"
}
},
"invokedBy": "signin.amazonaws.com"
},
"eventTime": "2019-01-14T11:33:27Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "UpdateEnvironment",
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "signin.amazonaws.com",
"requestParameters": {
"environmentId": "2f5ff70a640f49398f67e3bdeEXAMPLE",
"description": "HIDDEN_DUE_TO_SECURITY_REASONS",
"name": "my-test-environment-renamed"
},
"responseElements": null,
"requestID": "f0e629fb-fd37-49bd-b2cc-e9822EXAMPLE",
"eventID": "8a906445-1b2a-47e9-8d7c-5b242EXAMPLE",
"eventType": "AwsApiCall",
"recipientAccountId": "111122223333"
}
]
}
UpdateEnvironmentMembership
En el ejemplo siguiente, se muestra una entrada de registro de CloudTrail que ilustra la acción
UpdateEnvironmentMembership.
539
AWS Cloud9 Guía del usuario
Etiquetas
"Records": [
{
"eventVersion": "1.05",
"userIdentity": {
"type": "IAMUser",
"principalId": "AIDACKCEVSQ6C2EXAMPLE",
"arn": "arn:aws:iam::111122223333:user/MyUser",
"accountId": "111122223333",
"accessKeyId": "AKIAIOSFODNN7EXAMPLE",
"userName": "MyUser",
"sessionContext": {
"attributes": {
"mfaAuthenticated": "false",
"creationDate": "2019-01-14T11:29:47Z"
}
},
"invokedBy": "signin.amazonaws.com"
},
"eventTime": "2019-01-14T11:33:27Z",
"eventSource": "cloud9.amazonaws.com",
"eventName": "UpdateEnvironmentMembership",
"awsRegion": "us-west-2",
"sourceIPAddress": "192.0.2.0",
"userAgent": "signin.amazonaws.com",
"requestParameters": {
"environmentId": "2f5ff70a640f49398f67e3bdeEXAMPLE",
"userArn": "arn:aws:iam::111122223333:user/MyUser",
"permissions": "read-only"
},
"responseElements": {
"membership": {
"environmentId": "2f5ff70a640f49398f67e3bdeEXAMPLE",
"permissions": "read-only",
"userId": "AIDACKCEVSQ6C2EXAMPLE",
"userArn": "arn:aws:iam::111122223333:user/MyUser"
}
},
"requestID": "f0e629fb-fd37-49bd-b2cc-e9822EXAMPLE",
"eventID": "8a906445-1b2a-47e9-8d7c-5b242EXAMPLE",
"eventType": "AwsApiCall",
"recipientAccountId": "111122223333"
}
]}
Etiquetas
Una etiqueta es un nombre o atributo que usted o AWS adjuntan a un recurso de AWS. Cada etiqueta
consta de una clave y un valor emparejado. También puede usar etiquetas para controlar el acceso a sus
recursos de AWS Cloud9, como se describe en Controlar el acceso con etiquetas de recursos de AWS
en la Guía del usuario de IAM. Las etiquetas también pueden ayudarle a administrar la información de
facturación, como se describe en Etiquetas de asignación de costos definidas por el usuario.
Cuando crea un entorno de desarrollo de EC2 de AWS Cloud9 (p. 54), AWS Cloud9 incluye ciertas
etiquetas del sistema que necesita para administrar el entorno. Las etiquetas del sistema comienzan por
"aws:". Durante ese proceso de creación, también puede añadir sus propias etiquetas de recursos.
Una vez creado el entorno puede ver las etiquetas que están adjuntas al entorno, agregar nuevas
etiquetas de recursos al entorno, o modificar o quitar las etiquetas que ha agregado anteriormente. Puede
asociar hasta 50 etiquetas definidas por el usuario a un entorno de AWS Cloud9.
540
AWS Cloud9 Guía del usuario
Propagación de actualizaciones de
etiquetas a los recursos subyacentes
• En la consola de AWS Cloud9, seleccione el entorno que le interese y, a continuación, elija View Details
(Ver detalles).
Warning
Las etiquetas que se crean o actualizan para AWS Cloud9 mediante los métodos anteriores
no se propagan automáticamente a los recursos subyacentes. Para información sobre cómo
hacerlo, consulte la siguiente sección, Propagación de actualizaciones de etiquetas a los recursos
subyacentes (p. 541).
Para facilitar el uso de los siguientes procedimientos, puede obtener el ID del entorno que le interesa. Si
desea hacerlo, siga estos pasos:
1. En la consola de AWS Cloud9, seleccione el entorno que le interese y, a continuación, elija View
Details (Ver detalles).
2. Busque la propiedad Environment ARN (ARN de entorno) y registre el ID de entorno, que es la parte
del ARN de entorno después de "environment:".
Debe propagar las actualizaciones de etiqueta a uno o más de los siguientes lugares, dependiendo de
para qué vaya a usar las etiquetas.
541
AWS Cloud9 Guía del usuario
Propagación de actualizaciones de
etiquetas a los recursos subyacentes
También puede actualizar las etiquetas usando los comandos de la CLI describe-stacks y update-
stack.
También puede actualizar las etiquetas con los comandos de la CLI describe-tags, create-tags y delete-
tags.
También puede actualizar las etiquetas con los comandos de la CLI describe-tags, create-tags y delete-
tags.
542
AWS Cloud9 Guía del usuario
Protección de los datos
Seguridad de la nube: AWS es responsable de proteger la infraestructura que ejecuta todos los servicios
ofrecidos en la nube de AWS y de proporcionar servicios que puede utilizar de forma segura. Nuestra
responsabilidad en torno a la seguridad es la mayor prioridad en AWS y auditores externos prueban y
verifican la eficacia de nuestra seguridad con frecuencia como parte de los programas de conformidad de
AWS.
Seguridad en la nube: su responsabilidad viene determinada por el servicio de AWS que usa y por otros
factores, como la confidencialidad de los datos, los requisitos de la organización, y las normas y los
reglamentos aplicables.
AWS Cloud9 cumple el modelo de responsabilidad compartida en los servicios concretos de AWS que
admite. Para obtener información sobre la seguridad de los servicios de AWS, consulte la página de
documentación sobre la seguridad de los servicios de AWS y los servicios de AWS sujetos a las medidas
de conformidad de AWS de cada programa de conformidad.
En los siguientes temas, se le mostrará cómo configurar AWS Cloud9 para satisfacer sus objetivos de
seguridad y conformidad.
Temas
• Protección de los datos en AWS Cloud9 (p. 543)
• Administración de identidades y accesos en AWS Cloud9 (p. 546)
• Registro y monitoreo en AWS Cloud9 (p. 573)
• Validación de la conformidad en AWS Cloud9 (p. 573)
• Resiliencia en AWS Cloud9 (p. 577)
• Seguridad de la infraestructura en AWS Cloud9 (p. 577)
• Configuración y análisis de vulnerabilidades en AWS Cloud9 (p. 577)
• Prácticas recomendadas de seguridad para AWS Cloud9 (p. 578)
Con fines de protección de datos, recomendamos proteger las credenciales de Cuenta de AWS y
configurar cuentas de usuario individuales con AWS Identity and Access Management (IAM). De esta
543
AWS Cloud9 Guía del usuario
Cifrado de datos
manera, solo se otorgan a cada usuario los permisos necesarios para cumplir con sus obligaciones
laborales. También recomendamos proteger sus datos de las siguientes formas:
Cifrado de datos
El cifrado de datos se refiere a la protección de los datos mientras están en tránsito (a medida que viajan
entre AWS Cloud9 y su cuenta AWS) y en reposo (mientras se almacenan en almacenes de configuración
de AWS Cloud9 e instancias de cómputos en la nube de AWS).
En el contexto de AWS Cloud9, los siguientes tipos de datos pueden requerir protección mediante cifrado:
Su contenido y datos
Información que usted manipula, recopila y almacena. Los siguientes son ejemplos de este tipo de datos:
Datos manipulados, recopilados y almacenados por AWS Cloud9. Los siguientes son ejemplos de este tipo
de datos:
AWS Cloud9 también transmite parte de su contenido y datos a través de su servicio de plano de datos.
Esto incluye sus archivos, entrada de terminal, texto de salida y algunos comandos IDE (por ejemplo, para
guardar archivos).
544
AWS Cloud9 Guía del usuario
Cifrado de datos
Cifrado en reposo
El cifrado en reposo hace referencia a la protección de sus datos del acceso no autorizado mediante el
cifrado de datos mientras están almacenados. Los datos del cliente almacenados en un entorno de AWS
Cloud9, como archivos de código, paquetes o dependencias, siempre se almacenan en los recursos del
cliente. Si el cliente utiliza un entorno de Amazon EC2, los datos se almacenan en el volumen asociado de
Amazon Elastic Block Store (Amazon EBS) que existe en su cuenta de AWS. Si el cliente utiliza un entorno
SSH, los datos se almacenan en almacenamiento local en su servidor Linux.
Cuando se crean instancias de Amazon EC2 para un entorno de desarrollo de AWS Cloud9, se crea un
volumen de Amazon EBS sin cifrar y se adjunta a esa instancia. Los clientes que deseen cifrar sus datos
deben crear un volumen de EBS cifrado y adjuntarlo a la instancia de EC2.
Los metadatos sobre los entornos de desarrollo de AWS Cloud9, como los nombres de los entornos, los
miembros de los entornos y la configuración del IDE, se almacenan en AWS, no en los recursos del cliente.
La información específica del cliente, como las descripciones del entorno y la configuración del IDE, está
cifrada.
Cifrado en tránsito
El cifrado en tránsito se refiere a proteger sus datos de ser interceptados mientras se mueven entre los
extremos de comunicación. Todos los datos transmitidos entre el cliente del comprador y el servicio AWS
Cloud9 se cifran a través de HTTPS, WSS y SSH cifrado.
• HTTPS: garantiza las solicitudes seguras entre el navegador web del cliente y el servicio AWS Cloud9.
AWS Cloud9 también carga activos de Amazon CloudFront enviados a través de HTTPS desde el
navegador del cliente.
• WSS (WebSocket Secure): permite la comunicación bidireccional segura a través de WebSockets entre
el navegador web del cliente y el servicio AWS Cloud9.
• SSH cifrado (Secure Shell): permite la transmisión segura de datos entre el navegador web del cliente y
el servicio AWS Cloud9.
El uso de los protocolos HTTPS, WSS y SSH depende del uso de un navegador compatible con AWS
Cloud9. Consulte Navegadores compatibles con AWS Cloud9 (p. 604).
Note
Los protocolos de cifrado se implementan de forma predeterminada en AWS Cloud9. Los clientes
no pueden cambiar la configuración de cifrado en tránsito.
Administración de claves
AWS Key Management Service (AWS KMS) es un servicio administrado para crear y controlar las
AWS KMS keys, las claves de cifrado utilizadas para cifrar los datos del cliente. AWS Cloud9 genera y
administra claves criptográficas para cifrar datos en nombre de los clientes.
Puede configurar entornos de desarrollo de EC2 de AWS Cloud9 (respaldados por instancias de
Amazon EC2) que se lanzarán en VPC y subredes específicas. Para obtener más información sobre la
configuración de Amazon Virtual Private Cloud, consulte Configuración de VPC para entornos de desarrollo
de AWS Cloud9 (p. 500).
545
AWS Cloud9 Guía del usuario
Identity and Access Management
Si desea usar AWS Cloud9 para acceder a AWS, necesita una cuenta de AWS y unas credenciales de
AWS. Para aumentar la seguridad de su cuenta de AWS, le recomendamos que utilice un usuario de IAM a
la hora de proporcionar credenciales de acceso en lugar de usar las credenciales de su cuenta de AWS.
Para obtener más información acerca de cómo trabajar con IAM, consulte AWS Identity and Access
Management.
Para obtener información general sobre los usuarios de IAM y por qué son importantes para la seguridad
de su cuenta, consulte AWSCredenciales de seguridad de en la Referencia general de Amazon Web
Services.
AWS Cloud9 cumple el modelo de responsabilidad compartida en los servicios concretos de Amazon
Web Services (AWS) que admite. Para obtener información sobre la seguridad de los servicios de AWS,
consulte la página de documentación sobre la seguridad de los servicios de AWS y los servicios de AWS
sujetos a las medidas de conformidad de AWS de cada programa de conformidad.
Público
La forma en que utilice AWS Identity and Access Management (IAM) difiere en función del trabajo que
realice en AWS Cloud9.
Usuario de servicio: si utiliza el servicio de AWS Cloud9 para realizar su trabajo, su administrador le
proporciona las credenciales y los permisos que necesita. A medida que utilice más características de
AWS Cloud9 para realizar su trabajo, es posible que necesite permisos adicionales. Entender cómo se
administra el acceso puede ayudarle a solicitar los permisos correctos a su administrador. Si no puede
acceder a una característica en AWS Cloud9, consulte Solución de problemas de AWS Cloud9 (p. 579).
Administrador de servicio: si está a cargo de los recursos de AWS Cloud9 en su empresa, probablemente
tenga acceso completo a AWS Cloud9. Su trabajo consiste en determinar qué a características y recursos
de AWS Cloud9 deben acceder sus empleados. A continuación, debe enviar solicitudes a su administrador
de IAM para cambiar los permisos de los usuarios de su servicio. Revise la información de esta página
para conocer los conceptos básicos de IAM. Para obtener más información sobre cómo su empresa puede
utilizar IAM con AWS Cloud9, consulte Cómo AWS Cloud9 funciona con IAM (p. 548).
Administrator de IAM (Administrador de IAM): si es un administrador de IAM, es posible que quiera conocer
información sobre cómo escribir políticas para administrar el acceso a AWS Cloud9. Para consultar
ejemplos de políticas basadas en la identidad de AWS Cloud9 que puede utilizar en IAM, consulte
Creación de políticas administradas por el cliente para AWS Cloud9 (p. 557).
Cuando se inscriba en AWS, tendrá que proporcionar la dirección de correo electrónico y la contraseña
asociadas a su cuenta de AWS. Estas son las credenciales raíz y proporcionan acceso completo a todos
los recursos de AWS.
546
AWS Cloud9 Guía del usuario
Autenticación con identidades
Important
Como una práctica recomendada de seguridad de AWS, recomendamos utilizar las credenciales
raíz solo para crear un grupo de administradores de IAM con un usuario administrador de IAM.
Se trata de un grupo que da al usuario permisos completos a la cuenta de AWS. Después,
podrá utilizar este usuario administrador para crear otros usuarios y roles de IAM con permisos
limitados. Para obtener más información, consulte Crear usuarios de IAM individuales y Creación
del primer grupo y usuario administrador de IAM en la Guía del usuario de IAM.
Usuario de IAM
Un usuario de IAM es simplemente una identidad dentro de una cuenta de AWS que tiene permisos
personalizados específicos (por ejemplo, para crear un entorno de desarrollo de AWS Cloud9). Puede
utilizar un nombre de usuario y una contraseña de IAM para iniciar sesión en páginas web seguras de
AWS, como la consola de AWS Cloud9, AWS Management Console, los foros de debate de AWS y AWS
Support Center.
Además de un nombre de usuario y una contraseña, también puede generar claves de acceso para
cada usuario. Puede utilizar estas claves cuando obtenga acceso a los servicios de AWS mediante
programación, ya sea a través de uno de los varios AWS SDK o mediante la AWS Command Line Interface
(AWS CLI) o el aws-shell. AWS SDK, la AWS CLI y el aws-shell usan estas claves de acceso para firmar
criptográficamente la solicitud. Si no utiliza estas herramientas, debe firmar la solicitud. AWS Cloud9 es
compatible con Signature Version 4, un protocolo para autenticar solicitudes entrantes de la API. Para
obtener más información acerca de cómo autenticar solicitudes, consulte Proceso de firma Signature
Version 4 en la Referencia general de Amazon Web Services.
Rol de IAM
Un rol de IAM es otra identidad de IAM que puede crear en la cuenta que tiene permisos específicos. Es
similar a un usuario de IAM, pero no está asociado a una persona determinada. Un rol de IAM le permite
obtener claves de acceso temporales que se pueden utilizar para tener acceso a los servicios y recursos
de AWS. Los roles de IAM con credenciales temporales son útiles en las siguientes situaciones.
Puede utilizar un rol de IAM en su cuenta para conceder permisos a un servicio de AWS para acceder
a los recursos de su cuenta. Por ejemplo, puede crear un rol que permita a AWS Lambda acceder a un
bucket de Amazon S3 en su nombre y, a continuación, cargar los datos almacenados en el bucket en un
almacenamiento de datos de Amazon Redshift. Para obtener más información, consulte Creación de un rol
para delegarle permisos a un servicio de AWS en la Guía del usuario de IAM.
En lugar de almacenar claves de acceso en una instancia de Amazon EC2 para que las usen aplicaciones
que se ejecutan en la instancia y que realizan solicitudes de API de AWS, puede usar un rol de IAM para
administrar credenciales temporales para estas aplicaciones. Para asignar un rol de AWS a una instancia
de Amazon EC2 y ponerla a disposición de todas las aplicaciones, cree un perfil de instancias adjunto a la
instancia. Un perfil de instancias contiene el rol y permite a los programas que se encuentran en ejecución
en la instancia de Amazon EC2 obtener credenciales temporales. Para obtener más información, consulte
Creación y uso de un perfil de instancias para administrar credenciales temporales y Uso de un rol de
IAM para conceder permisos a aplicaciones que se ejecutan en instancias de Amazon EC2 en la Guía del
usuario de IAM.
Note
En lugar de adjuntar un perfil de instancias a una instancia de Amazon EC2 que se conecta a un
entorno, AWS Cloud9 puede configurar y administrar automáticamente credenciales temporales
en su nombre en un entorno de EC2. Para obtener más información, consulte Credenciales
temporales administradas por AWS (p. 569) .
547
AWS Cloud9 Guía del usuario
Administración de acceso mediante políticas
En lugar de crear un usuario de IAM, puede usar identidades de usuario preexistentes de AWS Directory
Service, del directorio de usuarios de la empresa o de un proveedor de identidades web. Estas identidades
se conocen como usuarios federados. AWS asigna un rol a un usuario federado cuando se solicita acceso
a través de un proveedor de identidades. Para obtener más información, consulte Usuarios federados y
roles en la Guía del usuario de IAM.
Cada recurso de AWS es propiedad de una cuenta de AWS y los permisos para crear o tener acceso a
un recurso se rigen por las políticas de permisos. Un administrador de cuentas puede asociar políticas de
permisos a identidades de IAM (es decir, usuarios, grupos y funciones).
Cuando concede permisos, decide quién obtiene los permisos, los recursos a los que se tiene acceso y las
acciones que se pueden realizar en esos recursos.
Entorno arn:aws:cloud9:REGION_ID:ACCOUNT_ID:environment:E
Por ejemplo, puede indicar un entorno específico en la instrucción usando su ARN, de la siguiente manera.
"Resource": "arn:aws:cloud9:us-
east-2:123456789012:environment:70d899206236474f9590d93b7c41dfEX"
Para especificar todos los recursos, utilice el carácter comodín (*) en el elemento Resource, tal y como se
indica a continuación.
548
AWS Cloud9 Guía del usuario
Cómo AWS Cloud9 funciona con IAM
"Resource": "*"
Para especificar varios recursos en una única instrucción, separe sus ARN con comas, tal y como se indica
a continuación.
"Resource": [
"arn:aws:cloud9:us-east-2:123456789012:environment:70d899206236474f9590d93b7c41dfEX",
"arn:aws:cloud9:us-east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX"
]
AWS Cloud9 proporciona un conjunto de operaciones para trabajar con recursos de AWS Cloud9. Para ver
una lista, consulte la Referencia de permisos de AWS Cloud9 (p. 565).
Por ejemplo:
• Si utiliza las credenciales de cuenta raíz de la cuenta de AWS para crear un entorno de desarrollo de
AWS Cloud9 (lo cual, si bien es posible, no se recomienda como práctica recomendada de seguridad de
AWS), la cuenta de AWS es el propietario del entorno.
• Si crea un usuario de IAM en su cuenta de AWS y concede permisos para crear un entorno para ese
usuario, el usuario puede crear un entorno. Sin embargo, su cuenta de AWS, a la que pertenece el
usuario, es la propietaria del entorno.
• Si crea un rol de IAM en la cuenta de AWS con permisos para crear un entorno, cualquier persona que
pueda asumir ese rol puede crear entorno. La cuenta de AWS, a la que pertenece el rol, es la propietaria
del entorno.
Las políticas que se adjuntan a una identidad de IAM se denominan políticas basadas en identidad (o
políticas de IAM). Las políticas de permisos que se asocian a un recurso se denominan políticas basadas
en recursos. AWS Cloud9 solo admite las políticas basadas en identidades y recursos.
Cada una de las siguientes acciones de la API solo necesita que se adjunte una política de IAM a la
identidad de IAM que desea que llame a estas acciones de API:
• CreateEnvironmentEC2
• DescribeEnvironments
Las siguientes acciones de API requieren una política basada en recursos. No es necesaria una política
de IAM, pero AWS Cloud9 utilizará una política de IAM si esta se ha adjuntado a la identidad de IAM que
desea que llame a estas acciones de API. La política basada en recursos debe aplicarse al recurso de
AWS Cloud9 deseado.
549
AWS Cloud9 Guía del usuario
Políticas administradas por AWS
• CreateEnvironmentMembership
• DeleteEnvironment
• DeleteEnvironmentMembership
• DescribeEnvironmentMemberships
• DescribeEnvironmentStatus
• UpdateEnvironment
• UpdateEnvironmentMembership
Para obtener más información sobre lo que hace cada una de estas acciones de API, consulte la
Referencia de la API de AWS Cloud9.
No se puede asociar una política basada en recursos a un recurso de AWS Cloud9 directamente. En
cambio, AWS Cloud9 adjunta las políticas basadas en recursos correspondientes a los recursos de AWS
Cloud9 a medida que agrega, modifica, actualiza o elimina miembros del entorno.
Para conceder permisos a un usuario para realizar acciones en recursos de AWS Cloud9, adjunte una
política de permisos a un grupo de IAM al que pertenezca el usuario. Le recomendamos adjuntar una
política administrada (predefinida) por AWS para AWS Cloud9 siempre que sea posible. Las políticas
administradas por AWS se adjuntan más fácil y rápidamente. También contienen conjuntos predefinidos
de permisos de acceso para situaciones de uso y tipos de usuario comunes, por ejemplo, la administración
completa de un entorno, los usuarios de un entorno y los usuarios que únicamente tienen acceso de
lectura a un entorno. Para ver una lista de las políticas administradas de AWS para AWS Cloud9, consulte
Políticas administradas por AWS para AWS Cloud9 (p. 550).
Para casos de uso más detallados y tipos de usuario únicos, puede crear y adjuntar sus propias políticas
administradas por el cliente. Consulte Opciones de configuración adicionales para AWS Cloud9 (Team y
Enterprise) (p. 24) y Creación de políticas administradas por el cliente para AWS Cloud9 (p. 557).
Para adjuntar una política de IAM (administrada por AWS o por el cliente) a una identidad de IAM, consulte
Conexión de políticas de IAM (Consola) en la Guía del usuario de IAM.
Cuando se realiza una solicitud para acceder a un recurso durante una sesión, si no hay ninguna
instrucción Deny aplicable, pero tampoco existe ninguna declaración Allow aplicable en la política de
la sesión, el resultado de la evaluación de la política es un denegación implícita. (Para obtener más
información, consulte Cómo determinar si una solicitud se permite o se deniega dentro de una cuenta en la
Guía del usuario de IAM).
No obstante, para operaciones de la API de AWS Cloud9 que requieren una política basada en recursos
(consulte más arriba), se conceden permisos a la entidad de IAM que llama si se especifica como
Principal en la política de recursos. Este permiso explícito tiene prioridad sobre la denegación implícita
de la política de la sesión, lo que permite a la sesión llamar a la operación de la API de AWS Cloud9
correctamente.
550
AWS Cloud9 Guía del usuario
Políticas administradas por AWS
por el cliente que proporcionen a su equipo solo los permisos necesarios. Para comenzar a hacerlo con
rapidez, puede utilizar nuestras políticas administradas de AWS. Estas políticas cubren casos de uso
comunes y están disponibles en su Cuenta de AWS. Para obtener más información acerca de las políticas
administradas de AWS, consulte Políticas administradas de AWS en la Guía del usuario de IAM.
Los Servicios de AWS mantienen y actualizan las políticas administradas por AWS. No puede cambiar los
permisos en las políticas administradas de AWS. En ocasiones, los servicios agregan permisos adicionales
a una política administrada por AWS para admitir características nuevas. Este tipo de actualización afecta
a todas las identidades (usuarios, grupos y roles) donde se asocia la política. Es más probable que los
servicios actualicen una política administrada por AWS cuando se lanza una nueva característica o cuando
se ponen a disposición nuevas operaciones. Los servicios no quitan permisos de una política administrada
por AWS, por lo que las actualizaciones de políticas no deteriorarán los permisos existentes.
Además, AWS admite políticas administradas para funciones de trabajo que abarcan varios servicios. Por
ejemplo, la política ViewOnlyAccess administrada por AWS proporciona acceso de solo lectura a muchos
recursos y Servicios de AWS. Cuando un servicio lanza una nueva característica, AWS agrega permisos
de solo lectura para las operaciones y los recursos nuevos. Para obtener una lista y descripciones de las
políticas de funciones de trabajo, consulte Políticas administradas de AWS para funciones de trabajo en la
Guía del usuario de IAM.
Esta política concede permisos administrativos que proporcionan acceso de administrador a AWS
Cloud9.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"cloud9:*",
"iam:GetUser",
"iam:ListUsers",
"ec2:DescribeVpcs",
"ec2:DescribeSubnets"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
551
AWS Cloud9 Guía del usuario
Políticas administradas por AWS
"iam:CreateServiceLinkedRole"
],
"Resource": "*",
"Condition": {
"StringLike": {
"iam:AWSServiceName": "cloud9.amazonaws.com"
}
}
},
{
"Effect": "Allow",
"Action": "ssm:StartSession",
"Resource": "arn:aws:ec2:*:*:instance/*",
"Condition": {
"StringLike": {
"ssm:resourceTag/aws:cloud9:environment": "*"
},
"StringEquals": {
"aws:CalledViaFirst": "cloud9.amazonaws.com"
}
}
},
{
"Effect": "Allow",
"Action": [
"ssm:StartSession"
],
"Resource": [
"arn:aws:ssm:*:*:document/*"
]
}
]
}
Esta política concede permisos de usuario para crear entornos de desarrollo de AWS Cloud9 y
administrar entornos propios.
• AWS Cloud9: creación y obtención de información sobre sus entornos, y obtención y cambio de la
configuración de usuario para dichos entornos.
• Amazon EC2: obtención de información acerca de los múltiples recursos de Amazon VPC y subredes de
su cuenta de AWS.
• IAM: obtención de información acerca de los usuarios de IAM en su cuenta de AWS y creación del rol
vinculado al servicio de AWS Cloud9 en su cuenta de AWS según sea necesario.
• Systems Manager: permite al usuario llamar a StartSession para iniciar una conexión a una instancia
para una sesión del Administrador de sesiones. Este permiso es necesario para los usuarios que abren
un entorno que se comunica con su instancia de EC2 a través de Systems Manager. Para obtener más
información, consulte Acceder a instancias EC2 sin entrada con AWS Systems Manager (p. 68)
{
"Version": "2012-10-17",
"Statement": [
552
AWS Cloud9 Guía del usuario
Políticas administradas por AWS
{
"Effect": "Allow",
"Action": [
"cloud9:ValidateEnvironmentName",
"cloud9:UpdateUserSettings",
"cloud9:GetUserSettings",
"iam:GetUser",
"iam:ListUsers",
"ec2:DescribeVpcs",
"ec2:DescribeSubnets"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"cloud9:CreateEnvironmentEC2",
"cloud9:CreateEnvironmentSSH"
],
"Resource": "*",
"Condition": {
"Null": {
"cloud9:OwnerArn": "true"
}
}
},
{
"Effect": "Allow",
"Action": [
"cloud9:GetUserPublicKey"
],
"Resource": "*",
"Condition": {
"Null": {
"cloud9:UserArn": "true"
}
}
},
{
"Effect": "Allow",
"Action": [
"cloud9:DescribeEnvironmentMemberships"
],
"Resource": [
"*"
],
"Condition": {
"Null": {
"cloud9:UserArn": "true",
"cloud9:EnvironmentId": "true"
}
}
},
{
"Effect": "Allow",
"Action": [
"iam:CreateServiceLinkedRole"
],
"Resource": "*",
"Condition": {
"StringLike": {
"iam:AWSServiceName": "cloud9.amazonaws.com"
}
}
},
{
553
AWS Cloud9 Guía del usuario
Políticas administradas por AWS
"Effect": "Allow",
"Action": "ssm:StartSession",
"Resource": "arn:aws:ec2:*:*:instance/*",
"Condition": {
"StringLike": {
"ssm:resourceTag/aws:cloud9:environment": "*"
},
"StringEquals": {
"aws:CalledViaFirst": "cloud9.amazonaws.com"
}
}
},
{
"Effect": "Allow",
"Action": [
"ssm:StartSession"
],
"Resource": [
"arn:aws:ssm:*:*:document/*"
]
}
]
}
Esta política concede permisos de pertenencia que proporcionan la capacidad de unirse a un entorno
compartido de AWS Cloud9.
• AWS Cloud9: obtención de información sobre sus entornos, y obtención y cambio de la configuración de
usuario para dichos entornos.
• IAM: obtención de información acerca de los usuarios de IAM en su cuenta de AWS y creación del rol
vinculado al servicio de AWS Cloud9 en su cuenta de AWS según sea necesario.
• Systems Manager: permite al usuario llamar a StartSession para iniciar una conexión a una instancia
para una sesión del Administrador de sesiones. Este permiso es necesario para los usuarios que abren
un entorno que se comunica con su instancia de EC2 a través de Systems Manager. Para obtener más
información, consulte Acceder a instancias EC2 sin entrada con AWS Systems Manager (p. 68)
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"cloud9:GetUserSettings",
"cloud9:UpdateUserSettings",
"iam:GetUser",
"iam:ListUsers"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
554
AWS Cloud9 Guía del usuario
Políticas administradas por AWS
"cloud9:DescribeEnvironmentMemberships"
],
"Resource": [
"*"
],
"Condition": {
"Null": {
"cloud9:UserArn": "true",
"cloud9:EnvironmentId": "true"
}
}
},
{
"Effect": "Allow",
"Action": "ssm:StartSession",
"Resource": "arn:aws:ec2:*:*:instance/*",
"Condition": {
"StringLike": {
"ssm:resourceTag/aws:cloud9:environment": "*"
},
"StringEquals": {
"aws:CalledViaFirst": "cloud9.amazonaws.com"
}
}
},
{
"Effect": "Allow",
"Action": [
"ssm:StartSession"
],
"Resource": [
"arn:aws:ssm:*:*:document/*"
]
}
]
}
AWS Cloud9 define los permisos de sus roles vinculados a los servicios y solo AWS Cloud9 puede asumir
sus roles. Los permisos definidos incluyen las políticas de confianza y de permisos y que la política de
permisos no se pueda adjuntar a ninguna otra entidad de IAM.
Para obtener más información acerca de cómo utiliza AWS Cloud9 los roles vinculados a servicios,
consulte Uso de roles vinculados a servicios de AWS Cloud9 (p. 524).
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ec2:RunInstances",
555
AWS Cloud9 Guía del usuario
Políticas administradas por AWS
"ec2:CreateSecurityGroup",
"ec2:DescribeVpcs",
"ec2:DescribeSubnets",
"ec2:DescribeSecurityGroups",
"ec2:DescribeInstances",
"ec2:DescribeInstanceStatus",
"cloudformation:CreateStack",
"cloudformation:DescribeStacks",
"cloudformation:DescribeStackEvents",
"cloudformation:DescribeStackResources"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"ec2:TerminateInstances",
"ec2:DeleteSecurityGroup",
"ec2:AuthorizeSecurityGroupIngress"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"cloudformation:DeleteStack"
],
"Resource": "arn:aws:cloudformation:*:*:stack/aws-cloud9-*"
},
{
"Effect": "Allow",
"Action": [
"ec2:CreateTags"
],
"Resource": [
"arn:aws:ec2:*:*:instance/*",
"arn:aws:ec2:*:*:security-group/*"
],
"Condition": {
"StringLike": {
"aws:RequestTag/Name": "aws-cloud9-*"
}
}
},
{
"Effect": "Allow",
"Action": [
"ec2:StartInstances",
"ec2:StopInstances"
],
"Resource": "*",
"Condition": {
"StringLike": {
"ec2:ResourceTag/aws:cloudformation:stack-name": "aws-cloud9-*"
}
}
},
{
"Effect": "Allow",
"Action": [
"ec2:StartInstances",
"ec2:StopInstances"
],
"Resource": [
"arn:aws:license-manager:*:*:license-configuration:*"
]
556
AWS Cloud9 Guía del usuario
Creación de políticas administradas
por el cliente para AWS Cloud9
},
{
"Effect": "Allow",
"Action": [
"iam:ListInstanceProfiles",
"iam:GetInstanceProfile"
],
"Resource": [
"arn:aws:iam::*:instance-profile/cloud9/*"
]
},
{
"Effect": "Allow",
"Action": [
"iam:PassRole"
],
"Resource": [
"arn:aws:iam::*:role/service-role/AWSCloud9SSMAccessRole"
],
"Condition": {
"StringLike": {
"iam:PassedToService": "ec2.amazonaws.com"
}
}
}
]
}
AWS Cloud9 comenzó a realizar AWS Cloud9 comenzó a realizar 15 de marzo de 2021
un seguimiento de los cambios un seguimiento de los cambios
de las políticas administradas por
AWS.
557
AWS Cloud9 Guía del usuario
Creación de políticas administradas
por el cliente para AWS Cloud9
Para obtener instrucciones sobre cómo crear una política administrada por el cliente, consulte Crear una
política de IAM (Consola) en la Guía del usuario de IAM.
Temas
• Especificar elementos de política: efectos, entidades principales, acciones y recursos (p. 558)
• Ejemplos de políticas administradas por el cliente (p. 558)
• Effect: especifique el efecto (permitir o denegar) cuando el usuario solicite la acción específica. Si
no concede acceso de forma explícita (permitir) a un recurso, el acceso se deniega implícitamente.
También puede denegar explícitamente el acceso a un recurso. Puede hacerlo para asegurarse de que
un usuario no tenga acceso a un recurso, aunque otra política se lo conceda.
• Principal: en las políticas basadas en identidad (políticas de IAM), el usuario al que se adjunta esta
política es la entidad principal implícita. Para las políticas basadas en recursos, debe especificar el
usuario, cuenta, servicio u otra entidad que desee que reciba permisos.
• Resource: use un ARN para identificar el recurso al que se aplica la política.
• Action: use palabras de clave de acción para identificar las operaciones de recursos que desea permitir
o denegar. Por ejemplo, el permiso cloud9:CreateEnvironmentEC2 concede al usuario permiso
para realizar la operación CreateEnvironmentEC2.
Para obtener más información acerca de la sintaxis y las descripciones de las políticas de IAM, consulte
Referencia de políticas JSON de IAM en la Guía del usuario de IAM.
Para ver una tabla con todas las acciones de API de AWS Cloud9 y los recursos a los que se aplican,
consulte Referencia de permisos de AWS Cloud9 (p. 565).
Para crear o adjuntar una política administrada por el cliente a una identidad de IAM, consulte Crear una
política de IAM (Consola) y Conexión de políticas de IAM (Consola), en la Guía del usuario de IAM.
Note
En los siguientes ejemplos se utiliza la región EE. UU. Este (Ohio) (us-east-2), un ID de
cuenta de AWS ficticio (123456789012) y un ID de entorno de desarrollo de AWS Cloud9 ficticio
(81e900317347585a0601e04c8d52eaEX).
Temas
• Obtener información sobre entornos (p. 559)
• Crear entornos de EC2 (p. 559)
558
AWS Cloud9 Guía del usuario
Creación de políticas administradas
por el cliente para AWS Cloud9
• Crear entornos de EC2 con tipos de instancias de Amazon EC2 específicas (p. 560)
• Crear entornos de EC2 en subredes de Amazon VPC específicas (p. 560)
• Crear entornos de EC2 con un nombre de entorno específico (p. 561)
• Crear entornos de SSH únicamente (p. 561)
• Actualizar entornos o impedir la actualización de un entorno (p. 561)
• Obtener listas de los miembros de un entorno (p. 562)
• Compartir entornos con un usuario específico únicamente (p. 562)
• Impedir compartir entornos (p. 563)
• Cambiar o evitar el cambio, de la configuración de miembros del entorno (p. 563)
• Eliminar o impedir la eliminación, de los miembros de entorno (p. 564)
• Eliminar o impedir la eliminación de un entorno (p. 564)
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "cloud9:DescribeEnvironments",
"Resource": "*"
}
]
}
Note
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "cloud9:CreateEnvironmentEC2",
"Resource": "*"
}
]
}
Note
559
AWS Cloud9 Guía del usuario
Creación de políticas administradas
por el cliente para AWS Cloud9
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "cloud9:CreateEnvironmentEC2",
"Resource": "*",
"Condition": {
"StringLike": {
"cloud9:InstanceType": "t3.*"
}
}
}
]
}
Note
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "cloud9:CreateEnvironmentEC2",
"Resource": "*",
"Condition": {
"StringLike": {
"cloud9:SubnetId": [
"subnet-12345678",
"subnet-23456789"
]
}
}
}
]
}
Note
560
AWS Cloud9 Guía del usuario
Creación de políticas administradas
por el cliente para AWS Cloud9
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "cloud9:CreateEnvironmentEC2",
"Resource": "*",
"Condition": {
"StringEquals": {
"cloud9:EnvironmentName": "my-demo-environment"
}
}
}
]
}
Note
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "cloud9:CreateEnvironmentSSH",
"Resource": "*"
},
{
"Effect": "Deny",
"Action": "cloud9:CreateEnvironmentEC2",
"Resource": "*"
}
]
}
{
"Version": "2012-10-17",
"Statement": [
{
561
AWS Cloud9 Guía del usuario
Creación de políticas administradas
por el cliente para AWS Cloud9
"Effect": "Allow",
"Action": "cloud9:UpdateEnvironment",
"Resource": "*"
}
]
}
Note
Observe que el permiso de acceso anterior ya se incluye en la política administrada por AWS
AWSCloud9Administrator.
La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, impide de forma
explícita que dicha entidad cambie información sobre el entorno con el ARN especificado.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": "cloud9:UpdateEnvironment",
"Resource": "arn:aws:cloud9:us-
east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX"
}
]
}
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "cloud9:DescribeEnvironmentMemberships",
"Resource": "*"
}
]
}
Note
Observe que el permiso de acceso anterior ya se incluye en la política administrada por AWS
AWSCloud9Administrator. Además, el permiso de acceso anterior es más permisivo que el
permiso equivalente de la política administrada por AWS AWSCloud9User.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
562
AWS Cloud9 Guía del usuario
Creación de políticas administradas
por el cliente para AWS Cloud9
"cloud9:CreateEnvironmentMembership"
],
"Resource": "*",
"Condition": {
"StringEquals": {
"cloud9:UserArn": "arn:aws:iam::123456789012:user/MyDemoUser"
}
}
}
]
}
Note
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": [
"cloud9:CreateEnvironmentMembership",
"cloud9:UpdateEnvironmentMembership"
],
"Resource": "*"
}
]
}
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "cloud9:UpdateEnvironmentMembership",
"Resource": "*"
}
]
}
Note
La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, impide de forma
explícita que dicha entidad cambie la configuración de los miembros del entorno con el ARN especificado.
563
AWS Cloud9 Guía del usuario
Creación de políticas administradas
por el cliente para AWS Cloud9
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": "cloud9:UpdateEnvironmentMembership",
"Resource": "arn:aws:cloud9:us-
east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX"
}
]
}
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "cloud9:DeleteEnvironmentMembership",
"Resource": "*"
}
]
}
Note
La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, impide de forma
explícita que dicha entidad elimine ningún miembro del entorno con el ARN especificado.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": "cloud9:DeleteEnvironmentMembership",
"Resource": "arn:aws:cloud9:us-
east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX"
}
]
}
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "cloud9:DeleteEnvironment",
564
AWS Cloud9 Guía del usuario
Referencia de permisos de AWS Cloud9
"Resource": "*"
}
]
}
Note
La siguiente instrucción de política de IAM de ejemplo, adjunta a una entidad de IAM, impide de forma
explícita que dicha entidad elimine el entorno con el ARN especificado.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Action": "cloud9:DeleteEnvironment",
"Resource": "arn:aws:cloud9:us-
east-2:123456789012:environment:81e900317347585a0601e04c8d52eaEX"
}
]
}
Las acciones se especifican en el campo Action de la política. Para especificar una acción,
use el prefijo cloud9: seguido del nombre de operación de la API (por ejemplo, "Action":
"cloud9:DescribeEnvironments"). Para especificar varias acciones en una única instrucción,
sepárelas con comas (por ejemplo, "Action": [ "cloud9:UpdateEnvironment",
"cloud9:DeleteEnvironment" ]).
En el siguiente ejemplo se permite que una entidad de IAM obtenga información acerca de los entornos y
las pertenencias a los entornos de cualquier entorno de su cuenta.
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"cloud9:Describe*"
],
"Resource": "*"
}
]
565
AWS Cloud9 Guía del usuario
Referencia de permisos de AWS Cloud9
Note
Observe que el permiso de acceso anterior ya se incluye en la política administrada por AWS
AWSCloud9Administrator. Observe también que el permiso de acceso anterior es más
permisivo que el permiso equivalente de la política administrada por AWS AWSCloud9User.
Puede usar las tablas siguientes como referencia cuando configure políticas de permisos de
control de acceso y de escritura para adjuntarlas a una identidad de IAM (políticas basadas en
identidades).
En la tabla Public API operations se enumeran las operaciones de la API a las que los clientes
pueden llamar mediante los SDK y AWS Command Line Interface.
En Permission-only API operations se enumeran las operaciones de la API a las que el código
del cliente o AWS Command Line Interface no pueden llamar directamente. No obstante, los
usuarios de IAM requieren permisos para estas operaciones a las que se llama cuando se
realizan acciones de AWS Cloud9 mediante la consola.
CreateEnvironmentEC2 cloud9:CreateEnvironmentEC2*
CreateEnvironmentMembershipcloud9:CreateEnvironmentMembership
arn:aws:cloud9:REGION_ID:ACCOUNT_ID:
DeleteEnvironmentMembershipcloud9:DeleteEnvironmentMembership
arn:aws:cloud9:REGION_ID:ACCOUNT_ID:
DescribeEnvironmentMemberships
cloud9:DescribeEnvironmentMemberships
*
DescribeEnvironments cloud9:DescribeEnvironmentsarn:aws:cloud9:REGION_ID:ACCOUNT_ID:
DescribeEnvironmentStatus cloud9:DescribeEnvironmentStatus
arn:aws:cloud9:REGION_ID:ACCOUNT_ID:
566
AWS Cloud9 Guía del usuario
Referencia de permisos de AWS Cloud9
UpdateEnvironmentMembershipcloud9:UpdateEnvironmentMembership
arn:aws:cloud9:REGION_ID:ACCOUNT_ID:
567
AWS Cloud9 Guía del usuario
Referencia de permisos de AWS Cloud9
568
AWS Cloud9 Guía del usuario
Credenciales temporales administradas por AWS
Para un entorno de desarrollo de EC2 de AWS Cloud9, AWS Cloud9 pones las credenciales de
acceso temporales de AWS a su disposición en el entorno. Las denominamos credenciales temporales
administradas por AWS. Esto proporciona los siguientes beneficios:
• No es necesario almacenar las credenciales de acceso de AWS permanentes de una entidad de AWS
(por ejemplo, un usuario de IAM) en cualquier lugar del entorno. Esto impide que los miembros del
entorno accedan a esas credenciales sin su conocimiento y aprobación.
• No es necesario configurar, administrar ni adjuntar manualmente un perfil de instancias a la instancia
de Amazon EC2 que se conecta al entorno. (Un perfil de instancia es otra estrategia para administrar
credenciales temporales de acceso a AWS).
• AWS Cloud9 renueva constantemente sus credenciales temporales, por lo que un único conjunto de
credenciales solo se puede utilizar durante un tiempo limitado. Esta es una práctica recomendada de
seguridad de AWS. Para obtener más información, consulte Creación y actualización de credenciales
temporales administradas por AWS (p. 572) .
• AWS Cloud9 pone restricciones adicionales sobre cómo se pueden usar las credenciales temporales
para acceder a los recursos y las acciones de AWS desde el entorno. Esta también es una práctica
recomendada de seguridad de AWS.
Important
Actualmente, si la instancia de EC2 de su entorno se lanza en una subred privada, no puede usar
credenciales temporales administradas por AWS para permitir que el entorno de EC2 acceda a un
servicio de AWS en nombre de una entidad de AWS (un usuario de IAM, por ejemplo).
Para obtener más información sobre cuándo puede lanzar una instancia de EC2 en una subred
privada, consulte Crear una subred para AWS Cloud9 (p. 513).
A continuación, se explica cómo funcionan las credenciales temporales administradas por AWS cuando un
entorno de EC2 intenta acceder a un servicio de AWS en nombre de una entidad de AWS (por ejemplo, un
usuario de IAM):
1. AWS Cloud9 verifica si la entidad de AWS que llama (por ejemplo, el usuario de IAM) tiene permisos
para llevar a cabo la acción solicitada para el recurso solicitado en AWS. Si el permiso no existe o se
deniega explícitamente, la solicitud produce un error.
2. AWS Cloud9 verifica las credenciales temporales administradas por AWS para ver si sus permisos
permiten la acción solicitada para el recurso solicitado en AWS. Si el permiso no existe o se deniega
explícitamente, la solicitud produce un error. Para ver una lista de los permisos que admiten las
credenciales temporales administradas por AWS, consulte Acciones admitidas por las credenciales
temporales administradas por AWS (p. 570).
569
AWS Cloud9 Guía del usuario
Credenciales temporales administradas por AWS
• Si tanto la entidad de AWS como las credenciales temporales administradas por AWS permiten la acción
solicitada para el recurso solicitado, la solicitud se realiza correctamente.
• Si la entidad de AWS o las credenciales temporales administradas por AWS deniegan explícitamente
(o no aprueban de forma explícita) la acción solicitada para el recurso solicitado, la solicitud generará
un error. Esto significa que, aunque la entidad de AWS que llama tenga los permisos adecuados, se
producirá un error en la solicitud si AWS Cloud9 no lo permite también explícitamente. Del mismo modo,
si AWS Cloud9 permite que un recurso específico realice una acción específica, se producirá un error en
la solicitud si la entidad de AWS no lo permite también explícitamente.
El propietario de un entorno de EC2 puede activar o desactivar las credenciales temporales administradas
por AWS para ese entorno en cualquier momento, como se indica a continuación:
1. Con el entorno abierto, en el IDE de AWS Cloud9, en la barra de menú, elija AWS Cloud9, Preferences
(Preferencias).
2. En la pestaña Preferences (Preferencias), en el panel de navegación, elija AWS Settings, Credentials
(Configuración de AWS, Credenciales).
3. Use credenciales temporales administradas por AWS para activar o desactivar dichas credenciales de
AWS.
Note
También puede activar o desactivar las credenciales temporales administradas por AWS mediante
la llamada a la operación de la API UpdateEnvironment de AWS Cloud9 y asignar un valor
al parámetro managedCredentialsAction. Puede solicitar esta operación de API utilizando
herramientas de AWS estándar como AWS SDK y la AWS CLI.
Si desactiva las credenciales temporales administradas por AWS, de forma predeterminada el entorno no
puede acceder a los servicios de AWS, independientemente de la entidad de AWS que realice la solicitud.
Si no puede o no quiere activar las credenciales temporales administradas por AWS para un entorno, pero
aún necesita el entorno para acceder a los servicios de AWS, tenga en cuenta las siguientes alternativas:
• Adjunte un perfil de instancias a la instancia de Amazon EC2 que se conecta al entorno. Para ver
instrucciones, consulte la sección sobre la creación y uso de un perfil de instancia para administrar
credenciales temporales (p. 83).
• Almacene las credenciales de acceso de AWS permanentes en el entorno, por ejemplo, configurando
variables de entorno especiales o ejecutando el comando aws configure. Para obtener instrucciones,
consulte Crear y almacenar las credenciales de acceso permanente en un entorno (p. 86).
Las alternativas anteriores anulan todos los permisos permitidos (o denegados) por las credenciales
temporales administradas por AWS en un entorno de EC2.
570
AWS Cloud9 Guía del usuario
Credenciales temporales administradas por AWS
• cloud9:DescribeEnvironmentStatus
• cloud9:UpdateEnvironment
• Para IAM, solo se permiten las siguientes acciones:
• iam:AttachRolePolicy
• iam:ChangePassword
• iam:CreatePolicy
• iam:CreatePolicyVersion
• iam:CreateRole
• iam:CreateServiceLinkedRole
• iam:DeletePolicy
• iam:DeletePolicyVersion
• iam:DeleteRole
• iam:DeleteRolePolicy
• iam:DeleteSSHPublicKey
• iam:DetachRolePolicy
• iam:GetInstanceProfile
• iam:GetPolicy
• iam:GetPolicyVersion
• iam:GetRole
• iam:GetRolePolicy
• iam:GetSSHPublicKey
• iam:GetUser
• iam:List*
• iam:PassRole
• iam:PutRolePolicy
• iam:SetDefaultPolicyVersion
• iam:UpdateAssumeRolePolicy
• iam:UpdateRoleDescription
• iam:UpdateSSHPublicKey
• iam:UploadSSHPublicKey
• Todas las acciones de IAM que interactúan con roles se permiten solo para nombres de rol que
comienzan por Cloud9-. Sin embargo, iam:PassRole funciona con todos los nombres de rol.
• Para AWS Security Token Service (AWS STS), solo se permiten las siguientes acciones:
• sts:GetCallerIdentity
• sts:DecodeAuthorizationMessage
• Todas las acciones de AWS admitidas se limitan a la dirección IP del entorno. Esta es una práctica
recomendada de seguridad de AWS.
Si AWS Cloud9 no admite una acción o un recurso para el que el entorno de EC2 necesita acceso o si las
credenciales temporales administradas por AWS están desactivadas para un entorno de EC2 y no puede
volver a activarlas, tenga en cuenta las siguientes alternativas:
• Adjunte un perfil de instancias a la instancia de Amazon EC2 que se conecta al entorno de EC2. Para
obtener instrucciones, consulte Creación y uso de un perfil de instancias para administrar credenciales
temporales (p. 83).
571
AWS Cloud9 Guía del usuario
Credenciales temporales administradas por AWS
• Almacene las credenciales de acceso de AWS permanentes en el entorno de EC2, por ejemplo,
configurando variables de entorno especiales o ejecutando el comando aws configure. Para obtener
instrucciones, consulte Crear y almacenar las credenciales de acceso permanente en un entorno (p. 86).
Las alternativas anteriores anulan todos los permisos permitidos (o denegados) por las credenciales
temporales administradas por AWS en un entorno de EC2.
Las credenciales temporales administradas por AWS se actualizan en cualquiera de las siguientes
condiciones:
• Siempre que pase un determinado periodo de tiempo. Actualmente, esto es cada cinco minutos.
• Cada vez que se vuelve a cargar la pestaña del navegador web, que muestra el IDE del entorno.
• Cuando se alcanza la marca temporal que se muestra en el archivo ~/.aws/credentials para el
entorno.
• Si la configuración de las credenciales temporales administradas por AWS está desactivada, cuando
vuelve a activarla. (Para ver o cambiar esta configuración, elija AWS Cloud9, Preferences [AWS Cloud9,
Preferencias] en la barra de menús del IDE. En la pestaña Preferences [Preferencias], en el panel de
navegación, elija AWS Settings, Credentials [Configuración de AWS, Credenciales]).
• Para garantizar la seguridad, las credenciales temporales administradas por AWS caducan
automáticamente después de 15 minutos. Para que se actualicen las credenciales, el propietario
del entorno debe estar conectado al entorno de AWS Cloud9 a través del IDE. Para obtener más
información sobre el rol del propietario del entorno, consulteControl del acceso a las credenciales
temporales administradas por AWS (p. 572).
Las credenciales temporales administradas por AWS también caducan automáticamente cada
de 15 minutos. Para que las credenciales se actualicen y los colaboradores puedan seguir
utilizándolas, el propietario del entorno debe estar conectado al entorno de AWS Cloud9 a través
del IDE.
Solo el propietario del entorno puede volver a habilitar las credenciales temporales administradas por
AWS para que puedan compartirse con otros miembros. Cuando el propietario del entorno abre el IDE, un
cuadro de diálogo confirma que las credenciales temporales administradas por AWS están desactivadas.
El propietario del entorno puede volver a habilitar las credenciales o mantenerlas desactivadas para todos
los miembros.
Warning
Para cumplir con las prácticas de seguridad recomendadas, mantenga desactivadas las
credenciales temporales administradas si no está seguro de la identidad del último usuario
agregado al entorno. Puede verificar la lista de miembros con permisos de lectura/escritura en la
ventana Collaborate (p. 99) (Colaborar).
572
AWS Cloud9 Guía del usuario
Registro y monitoreo
Si no configura un registro de seguimiento, puede ver los eventos más recientes de la consola de
CloudTrail en el Event history (Historial de eventos). Mediante la información recopilada por CloudTrail,
puede determinar la solicitud que se realizó a AWS Cloud9, la dirección IP desde la que se realizó, quién la
realizó y cuándo, etc.
Para obtener más información, consulte Registro de llamadas a la API de AWS Cloud9 con AWS
CloudTrail (p. 528) .
Para obtener más información, consulte Monitoreo de Amazon EC2 en la Guía del usuario de Amazon EC2
para instancias de Linux.
SOC
Los informes de Controles del Sistema y Organizaciones (SOC) de AWS son informes de análisis
independientes de terceros que muestran cómo AWS logra los controles y objetivos clave de conformidad.
PCI
La norma de seguridad de datos del sector de pagos con tarjeta (PCI DSS) es un estándar registrado de
seguridad de información administrado por el Consejo de Estándares de Seguridad de PCI, que fundaron
American Express, Discover Financial Services, JCB International, MasterCard Worldwide y Visa Inc.
573
AWS Cloud9 Guía del usuario
Validación de conformidad
FedRAMP
El Programa Federal de Administración de Riesgos y Autorizaciones (FedRAMP) es un amplio programa
gubernamental de EE. UU. que ofrece un enfoque estandarizado para la supervisión continua, la
autorización y la evaluación de la seguridad de servicios y productos en la nube.
Los servicios que se someten a la evaluación y autorización de FedRAMP tendrán el siguiente estado:
• Evaluación de una organización de terceros (3PAO): el asesor de terceros está evaluando actualmente
este servicio.
• Revisión de la Junta de Autorización Conjunta (JAB): este servicio se está sometiendo a una revisión de
la JAB.
DoD CC SRG
La Guía de requisitos de seguridad (SRG, por sus siglas en inglés) de informática en la nube del
Departamento de Defensa (DoD, por sus siglas en inglés) proporciona un proceso estandarizado de
evaluación y autorización para que los proveedores de servicios de nube (CSP) obtengan una autorización
provisional del DoD, de modo que puedan servir a los clientes del DoD.
Los servicios que se sometan a la evaluación y autorización de DoD CC SRG tendrán el siguiente estado:
• Evaluación de una organización de terceros (3PAO): el asesor de terceros está evaluando actualmente
este servicio.
• Revisión de la Junta de Autorización Conjunta (JAB): este servicio se está sometiendo a una revisión de
la JAB.
• Revisión de la Agencia de Sistemas de Información de Defensa (DISA): este servicio se encuentra
actualmente en proceso de revisión de DISA.
574
AWS Cloud9 Guía del usuario
Validación de conformidad
HIPAA BAA
La Ley de Portabilidad y Responsabilidad de Seguros Médicos de 1996 (HIPAA) es una ley federal que
exige la creación de estándares nacionales para proteger la información médica confidencial del paciente
para evitar que se divulgue sin el consentimiento o el conocimiento del paciente.
AWS permite a las entidades cubiertas y a sus asociados comerciales sujetos a HIPAA procesar,
almacenar y transmitir información médica protegida (PHI) de forma segura. Además, desde julio de 2013,
AWS ofrece un Apéndice de socios comerciales (BAA) estandarizado para dichos clientes
IRAP
El Programa de Asesores Registrados de Seguridad de la Información (IRAP) permite a los clientes del
gobierno australiano validar que existen controles apropiados y determinar el modelo de responsabilidad
adecuado para cumplir los requisitos del Manual de Seguridad de la Información (ISM) del gobierno
australiano producido por el Centro Australiano de Ciberseguridad (ACSC).
*Los espacios de nombres le ayudan a identificar servicios en el entorno de AWS. Por ejemplo, al crear
políticas de IAM, trabajar con nombres de recursos de Amazon (ARN) y leer registros de AWS CloudTrail.
C5
El catálogo de controles de conformidad de computación en la nube (C5) es un esquema de certificación
respaldado por el gobierno alemán presentado en Alemania por la Oficina Federal de Seguridad de
la Información (BSI) para ayudar a las organizaciones a demostrar la seguridad operativa frente a
ciberataques comunes al utilizar servicios en la nube en el contexto de las "Recomendaciones de
seguridad para proveedores de nube" del gobierno alemán.
Servicio SDK C5
FINMA
FINMA es el regulador independiente de los mercados financieros de Suiza. Amazon Web Services (AWS)
ha completado el informe FINMA ISAE 3000 Tipo 2.
575
AWS Cloud9 Guía del usuario
Validación de conformidad
GSMA
GSM Association es una organización del sector que representa los intereses de los operadores de redes
móviles en todo el mundo. Las regiones de Europa (París) y Este de EE. UU. (Ohio) de Amazon Web
Services (AWS) están ahora certificadas por GSM Association (GSMA) en virtud de su Administración
de suscripciones de esquema de acreditación de seguridad (SAS-SM) con alcance de operaciones y
administración del centro de datos (DCOM). Esta alineación con los requisitos de GSMA demuestra el
compromiso continuo de cumplir con las mayores expectativas de los proveedores de servicios en la nube.
AWS Cloud9 ✓ ✓
PiTuKri
La alineación de AWS con los requisitos de PiTuKri demuestra el compromiso continuo de cumplir las
expectativas más elevadas para los proveedores de servicios en la nube establecidas por la Agencia
Finlandesa de Transportes y Comunicaciones, Traficom.
Para obtener una lista de los servicios de AWS en el ámbito de programas de conformidad específicos,
consulte Servicios de AWS en el ámbito del programa de conformidad. Para obtener información general,
consulte Programas de conformidad de AWS.
Puede descargar los informes de auditoría de terceros mediante AWS Artifact. Para obtener más
información, consulte Descarga de informes en AWS Artifact.
576
AWS Cloud9 Guía del usuario
Resiliencia
Para obtener más información sobre las regiones y zonas de disponibilidad de AWS, consulte
Infraestructura global de AWS.
Además de la infraestructura global de AWS, AWS Cloud9 es compatible con características concretas que
lo ayudan en sus necesidades de resiliencia y copia de seguridad de los datos.
• Integre AWS Cloud9 con AWS CodeCommit, un servicio de control de versiones alojado en Amazon
Web Services que puede utilizar para almacenar y administrar activos de forma privada (como
documentos, código fuente y archivos binarios) en la nube. Para obtener más información, consulte
Integrar AWS Cloud9 con AWS CodeCommit en la Guía del usuario de AWS CodeCommit.
• Use el sistema de control de versiones de Git en entornos de desarrollo de AWS Cloud9 para hacer
copias de seguridad de archivos y datos en un repositorio remoto de GitHub. Para obtener más
información, consulte Control de código fuente visual con el panel de Git (p. 315) .
Puede utilizar llamadas a la API publicadas en AWS para obtener acceso a AWS Cloud9 a través de la
red. Los clientes deben ser compatibles con Transport Layer Security (TLS) 1.0 o una versión posterior.
Recomendamos TLS 1.2 o una versión posterior. Los clientes también deben ser compatibles con
conjuntos de cifrado con confidencialidad directa total (PFS) tales como Ephemeral Diffie-Hellman (DHE)
o Elliptic Curve Ephemeral Diffie-Hellman (ECDHE). La mayoría de los sistemas modernos como Java 7 y
posteriores son compatibles con estos modos.
Además, las solicitudes deben estar firmadas mediante un ID de clave de acceso y una clave de acceso
secreta que esté asociada a una entidad de seguridad de IAM. También puede utilizar AWS Security
Token Service (AWS STS) para generar credenciales de seguridad temporales para firmar solicitudes.
Note
577
AWS Cloud9 Guía del usuario
Prácticas recomendadas de seguridad
Important
Para obtener más información sobre las responsabilidades de los clientes con el modelo de
responsabilidad compartida, consulte Protección de los datos en AWS Cloud9 (p. 543).
• Almacene su código de forma segura en un sistema de control de versiones, por ejemplo, AWS
CodeCommit.
• Para sus entornos de desarrollo de EC2 de AWS Cloud9, configure y utilice volúmenes cifrados de
Amazon Elastic Block Store.
• Para sus entornos de EC2, utilice etiquetas (p. 540) para controlar el acceso a sus recursos de AWS
Cloud9.
• Para sus entornos de desarrollo de AWS Cloud9 compartidos, siga las prácticas recomendadas (p. 104)
correspondientes.
578
AWS Cloud9 Guía del usuario
Si el problema no aparece en la lista o si necesita ayuda adicional, consulte el foro de debate de AWS
Cloud9. (Cuando entre en este foro, es posible que AWS requiera que inicie sesión). También puede
ponerse en contacto con nosotros directamente.
Temas
• Error de creación del entorno: “No hemos podido crear las instancias de EC2...” (p. 580)
• Error al crear el entorno: “no dispone de autorización para sts:AssumeRole”. (p. 580)
• Error de consola: “el usuario no está autorizado para realizar la acción en el recurso” (p. 581)
• Las identidades federadas no pueden crear entornos (p. 581)
• No se puede abrir un entorno (p. 582)
• El instalador de AWS Cloud9 se bloquea o falla (p. 583)
• Error del entorno de SSH: “se precisa la versión 2.7 de Python para instalar pty.js” (p. 583)
• Aviso de vista previa de aplicaciones o vista previa de archivo: “Cookies de terceros
desactivadas” (p. 584)
• La pestaña de vista previa de la aplicación muestra un mensaje de error o está en blanco (p. 586)
• No se puede mostrar la aplicación en ejecución fuera del IDE (p. 587)
• Después de volver a cargar un entorno, es necesario actualizar la vista previa de la
aplicación (p. 589)
• No se pueden ejecutar algunos comandos o scripts en un entorno de EC2 (p. 589)
• Error de AWS CLI/aws-shell: “el token de seguridad incluido en la solicitud no es válido” en un entorno
de EC2 (p. 589)
• Las instancias de Amazon EC2 no se actualizan automáticamente (p. 590)
• Error de ejecución de la función local Lambda: no se puede instalar SAM Local (p. 590)
• Advertencia del IDE: “Este entorno se está quedando sin memoria” o “Este entorno tiene una elevada
carga de CPU” (p. 591)
• La vista previa de un archivo devuelve un error 499 (p. 592)
• Error de eliminación del entorno: “No se pudieron eliminar uno o más entornos” (p. 592)
• Advertencia de la consola: “Cambio al motor de finalización de código mínimo...” (p. 593)
• El instalador de AWS Cloud9 no finaliza después de mostrar: “Package Cloud9 IDE 1” (p. 593)
• Error de VPC para cuentas de EC2-Classic: “No se puede acceder a su entorno” (p. 594)
• No se puede abrir el entorno de AWS Cloud9: “Los colaboradores no pueden acceder a este entorno.
Espere hasta que se complete la eliminación de las credenciales temporales administradas o contacte
con el propietario de este entorno”. (p. 595)
• Mensaje de error que notifica que el perfil de instancias AWSCloud9SSminStanceProfile no existe en la
cuenta al crear un entorno de EC2 mediante AWS CloudFormation (p. 595)
• Mensaje de error que indica que no tiene autorización para ejecutar: ssm:StartSession en el recurso al
crear un entorno de EC2 mediante AWS CloudFormation (p. 596)
• Mensaje de error que indica que no tiene autorización “para ejecutar: iam:GetInstanceProfile en el
recurso: perfil de instancias AWSCloud9SSMInstanceProfile” al crear un entorno de EC2 mediante
AWS CLI (p. 596)
• No se puede conectar al entorno de EC2 porque Docker utiliza las direcciones IP de VPC (p. 597)
579
AWS Cloud9 Guía del usuario
Error de creación del entorno: “No hemos
podido crear las instancias de EC2...”
• Error al ejecutar AWS Toolkit, que indica que el entorno se está quedando sin inodes y que se debe
aumentar el límite de “fs.inotify.max_user_watches”. (p. 597)
• Aviso: error al instalar dependencias para el soporte de colaboración (p. 598)
• Error con gdb al depurar proyectos de C++ (p. 598)
• Error al ejecutar aplicaciones SAM localmente en AWS Toolkit porque el entorno de AWS Cloud9 no
tiene suficiente espacio en disco (p. 599)
• No se puede cargar el IDE con versiones anteriores del navegador Microsoft Edge (p. 600)
• Error al crear un entorno cuando se aplica el cifrado predeterminado a volúmenes de Amazon
EBS (p. 600)
• No se puede obtener una vista previa del contenido web en el IDE porque la conexión al sitio no es
segura (p. 601)
• No se puede lanzar AWS Cloud9 desde la consola cuando la configuración de licencias AWS License
Manager está asociada a instancias de Amazon EC2 (p. 601)
• No se puede interactuar con la ventana de terminal en AWS Cloud9 debido a errores de sesión de
tmux (p. 602)
Causa: AWS está verificando y activando actualmente su cuenta de AWS. Hasta que no se complete la
activación, que puede tardar hasta 24 horas, no puede crear este u otros entornos.
Solución: vuelva a intentar crear el entorno más adelante. Si después de 24 horas sigue recibiendo
este mensaje, envíe un correo electrónico a [email protected]. Tenga en cuenta que AWS
CloudFormation crea una pila relacionada en su cuenta, aunque se produzca un error en el intento de
crear un entorno. Estas pilas cuentan en el límite de creación de pilas de su cuenta. Para evitar el límite
de creación de pilas, puede eliminar de forma segura estas pilas con error. Para obtener más información,
consulte Eliminación de una pila en la consola de AWS CloudFormation en la Guía del usuario de AWS
CloudFormation.
Causas posibles: no existe un rol vinculado al servicio de AWS Cloud9 en su cuenta de AWS.
Soluciones recomendadas: cree un rol vinculado al servicio de AWS Cloud9 en su cuenta de AWS
ejecutando el siguiente comando con la AWS Command Line Interface (AWS CLI) o el aws-shell.
580
AWS Cloud9 Guía del usuario
Error de consola: “el usuario no está autorizado
para realizar la acción en el recurso”
Causa: el usuario con el que inició sesión en la consola de AWS Cloud9 no tiene los permisos de acceso
de AWS adecuados para realizar la acción.
Solución: asegúrese de que el usuario tenga los permisos de acceso de AWS adecuados y, a
continuación, intente realizar la acción de nuevo. Para obtener más información, consulte uno o más de los
siguientes temas:
• Paso 3: Agregar permisos de acceso para AWS Cloud9 al grupo (p. 14) en Configuración de equipo
• Paso 6. Habilitar usuarios y grupos dentro de la organización para utilizar AWS Cloud9 (p. 22) en
Configuración de empresa
• Acerca de los roles de acceso de los miembros del entorno (p. 94) en Trabajo con entornos compartidos
Causa: AWS Cloud9 utiliza roles vinculados a un servicio. El rol vinculado al servicio se crea la primera
vez que se crea un entorno en una cuenta utilizando la llamada iam:CreateServiceLinkedRole.
Sin embargo, los usuarios federados no pueden llamar a las API de IAM. Para obtener más información,
consulte GetFederationToken en la Referencia de la API de AWS Security Token Service.
Solución: pida al administrador de la cuenta de AWS que cree el rol vinculado al servicio para AWS Cloud9
bien en la consola de IAM o ejecutando este comando con AWS Command Line Interface (AWS CLI):
581
AWS Cloud9 Guía del usuario
No se puede abrir un entorno
Para obtener más información, consulte Uso de roles vinculados a servicios en la Guía del usuario de IAM.
Causas posibles:
• El usuario de IAM que ha iniciado sesión en la consola de AWS Cloud9 no tiene los permisos de acceso
de AWS necesarios para abrir el entorno.
• Si el entorno está asociado con una instancia de informática en la nube de AWS (por ejemplo, una
instancia de Amazon EC2):
• La VPC asociada a la instancia no se establecerá en la configuración correcta para AWS Cloud9.
• La instancia está pasando de un estado a otro o no está superando las comprobaciones de estado
automatizadas mientras AWS Cloud9 intenta conectarse a la instancia.
• Si el entorno es un entorno de SSH, la instancia de informática en la nube asociada o su propio servidor
no tienen la configuración adecuada para permitir el acceso de AWS Cloud9.
Soluciones recomendadas:
• Asegúrese de que el usuario de IAM que ha iniciado sesión en la consola de AWS Cloud9 tiene los
permisos de acceso de AWS necesarios para abrir el entorno y, a continuación, intente abrir el entorno
de nuevo. Para obtener más información, consulte los siguientes temas o consulte con el administrador
de su cuenta de AWS:
• Paso 3: Agregar permisos de acceso para AWS Cloud9 al grupo (p. 14) en Configuración de equipo
• Políticas administradas por AWS para AWS Cloud9 (p. 550) en Autenticación y control de acceso
• Ejemplos de políticas administradas por el cliente para equipos que utilizan AWS Cloud9 (p. 27) en
Configuración de equipo avanzada
• Ejemplos de políticas administradas por el cliente (p. 558) en Autenticación y control de acceso
• Cambio de los permisos de un usuario de IAM en la Guía del usuario de IAM.
• Solución de problemas de políticas de IAM en la Guía del usuario de IAM
Si el usuario de IAM que ha iniciado sesión sigue sin poder abrir el entorno, podría intentar cerrar sesión
y, a continuación, iniciar sesión de nuevo como el usuario raíz de la cuenta de AWS o bien como usuario
administrador de IAM en la cuenta. A continuación, vuelva a intentar abrir el entorno. Si puede abrir
el entorno de este modo, lo más probable es que haya un problema con los permisos de acceso del
usuario de IAM.
• Si el entorno está asociado con una instancia de informática en la nube de AWS (por ejemplo, una
instancia de Amazon EC2):
• Asegúrese de que la VPC asociada a la instancia tiene la configuración correcta para AWS Cloud9 e
intente abrir el entorno de nuevo. Para obtener más información, consulte Requisitos de Amazon VPC
para AWS Cloud9 (p. 500).
582
AWS Cloud9 Guía del usuario
El instalador de AWS Cloud9 se bloquea o falla
Si desea consultar pasos adicionales de resolución de problemas de VPC, vea el vídeo relacionado de
5 minutos Vídeos de AWS Knowledge Center: ¿Qué puedo comprobar si no puedo conectarme a una
instancia en una VPC? en el sitio web de YouTube.
Warning
Cuando haya terminado la solución de problemas, asegúrese de establecer las reglas de
entrada en un rango de direcciones adecuado, tal y como se describe en the section called
“Intervalos de direcciones IP de entrada con SSH” (p. 520).
• Reinicie la instancia, asegúrese de que esté en ejecución y haya superado todas las verificaciones
del sistema e intente abrir de nuevo el entorno. Para obtener más información, consulte Reinicio de
instancias y Visualización de comprobaciones de estado en la Guía del usuario de Amazon EC2 para
instancias de Linux.
• Si el entorno es un entorno de SSH, asegúrese de que la instancia de informática en la nube asociada
o su propio servidor tengan la configuración adecuada para permitir el acceso de AWS Cloud9 y, a
continuación, intente abrir el entorno de nuevo. Para obtener más información, consulte Requisitos de
anfitrión del entorno SSH (p. 515).
Causa: el instalador de AWS Cloud9 ha detectado uno o más errores de los que no se puede recuperar y,
por lo tanto, se produce un error.
Solución: consulte los problemas más comunes, las posibles causas y las soluciones recomendadas en
Solución de problemas del instalador de AWS Cloud9 (p. 519).
Causa: para funcionar según lo previsto, el entorno de SSH necesita que la versión 2.7 de Python esté
instalada.
Solución: instale la versión 2.7 de Python en el entorno. Para comprobar su versión, ejecute el comando
desde la terminal de servidor python --version . Para instalar Python 2.7 en su servidor, consulte uno
de los siguientes temas:
583
AWS Cloud9 Guía del usuario
Aviso de vista previa de aplicaciones o vista previa
de archivo: “Cookies de terceros desactivadas”
Causa: aunque las cookies de terceros no son necesarias para abrir el IDE de AWS Cloud9, debe habilitar
las cookies de terceros para utilizar las características de Vista previa de la aplicación o Vista previa de
archivo.
Solución: habilite las cookies de terceros en su navegador web, vuelva a cargar su IDE y, a continuación,
intente abrir la vista previa de nuevo.
• Apple Safari: Administrar cookies y datos de sitios web en Safari en el sitio web de soporte de Apple.
• Google Chrome: Cambiar las configuraciones de las cookies en Borrar, habilitar y administrar cookies en
Chrome en el sitio web de ayuda de Google Chrome.
• Internet Explorer: Bloquear o permitir cookies en Eliminar y administrar cookies en el sitio web de soporte
técnico de Microsoft.
• Microsoft Edge: bloqueo de cookies de terceros en el sitio web de soporte técnico de Microsoft.
• Mozilla Firefox: configuración Aceptar cookies de páginas web en Habilitar y deshabilitar cookies que los
sitios web utilizan para rastrear tus preferencias en el sitio web de soporte de Mozilla.
• Cualquier otro navegador web: consulte la documentación de ese navegador web.
Para habilitar las cookies de terceros solo para AWS Cloud9 (si el navegador web permite este grado de
detalle), especifique los siguientes dominios en función de la compatibilidad con las regiones de AWS en
las que desee utilizar AWS Cloud9.
vfs.cloud9.us-east-1.amazonaws.com
vfs.cloud9.us-east-2.amazonaws.com
vfs.cloud9.us-west-1.amazonaws.com
vfs.cloud9.us-west-2.amazonaws.com
584
AWS Cloud9 Guía del usuario
Aviso de vista previa de aplicaciones o vista previa
de archivo: “Cookies de terceros desactivadas”
vfs.cloud9.ap-east-1.amazonaws.com
vfs.cloud9.ap-south-1.amazonaws.com
vfs.cloud9.ap-
northeast-3.amazonaws.com
vfs.cloud9.ap-
northeast-2.amazonaws.com
vfs.cloud9.ap-
southeast-1.amazonaws.com
vfs.cloud9.ap-
southeast-2.amazonaws.com
vfs.cloud9.ap-
northeast-1.amazonaws.com
vfs.cloud9.ca-central-1.amazonaws.com
vfs.cloud9.eu-central-1.amazonaws.com
vfs.cloud9.eu-west-1.amazonaws.com
vfs.cloud9.eu-west-2.amazonaws.com
585
AWS Cloud9 Guía del usuario
La pestaña de vista previa de la aplicación
muestra un mensaje de error o está en blanco
vfs.cloud9.eu-south-1.amazonaws.com
vfs.cloud9.eu-west-3.amazonaws.com
vfs.cloud9.eu-north-1.amazonaws.com
vfs.cloud9.me-south-1.amazonaws.com
vfs.cloud9.sa-east-1.amazonaws.com
Causas posibles:
Soluciones recomendadas:
586
AWS Cloud9 Guía del usuario
No se puede mostrar la aplicación
en ejecución fuera del IDE
• Asegúrese de que la aplicación se está ejecutando a través del puerto 8080, 8081 o 8082. Para ver
algunos ejemplos en Node.js y Python, consulte Ejecutar una aplicación (p. 168).
• Asegúrese de que la aplicación se está ejecutando con una dirección IP de 127.0.0.1, localhost o
0.0.0.0. Para ver algunos ejemplos en Node.js y Python, consulte Ejecutar una aplicación (p. 168).
• Añada :8080, :8081 o :8082 a la URL de la pestaña de vista previa.
• Asegúrese de que su red permite el tráfico de entrada a través de los puertos 8080, 8081 o 8082. Si no
puede realizar cambios en su red, consulte con el administrador de red.
• Si intenta ir a una dirección que contiene una IP de 127.0.0.1, localhost o 0.0.0.0, intente
ir a la dirección: https://12a34567b8cd9012345ef67abcd890e1.vfs.cloud9.us-
east-2.amazonaws.com/, donde 12a34567b8cd9012345ef67abcd890e1 es el ID que AWS
Cloud9 asigna al entorno y us-east-2 es el ID de la región de AWS para el entorno. También puede
intentar ir a esta dirección fuera del IDE, pero solo funciona cuando el IDE del entorno está abierto y la
aplicación se está ejecutando en el mismo navegador web.
• Cuando esté seguro de que se cumplen todas estas condiciones, intente detener la aplicación y, a
continuación, iníciela de nuevo.
• Si detuvo la aplicación y la inició de nuevo, intente elegir otra vez Preview, Preview Running Application
(Vista previa, Vista previa de la aplicación en ejecución) o Tools, Preview, Preview Running Application
(Herramientas, Vista previa, Vista previa de la aplicación en ejecución) en la barra de menús. O bien
intente elegir el botón Refresh (Actualizar) (flecha circular) en la correspondiente pestaña de vista previa
de la aplicación, si la pestaña ya está visible.
Causas posibles:
587
AWS Cloud9 Guía del usuario
No se puede mostrar la aplicación
en ejecución fuera del IDE
Soluciones recomendadas:
588
AWS Cloud9 Guía del usuario
Después de volver a cargar un entorno, es
necesario actualizar la vista previa de la aplicación
Causa: a veces, los usuarios escriben código que puede ejecutar un bucle infinito o que utiliza tanta
memoria que hace que el IDE de AWS Cloud9 se ponga en pausa o se detenga cuando se ejecuta la vista
previa de la aplicación. Para evitar que esto ocurra, AWS Cloud9 no vuelve a cargar las pestañas de vista
previa de la aplicación cuando se vuelve a cargar un entorno.
Solución: después de volver a cargar un entorno que muestra una pestaña de vista previa de la aplicación,
para mostrar la vista previa de la aplicación, elija el botón Click to load the page (Hacer clic para cargar la
página) en la pestaña.
Causa: las instancias de Amazon EC2 que AWS Cloud9 utiliza para un entorno de EC2 dependen de
Amazon Linux (que se basa en Red Hat Enterprise Linux [RHEL]) o Ubuntu Server.
Solución: si instala o administra paquetes o ejecuta comandos o scripts en el IDE de un entorno de EC2,
asegúrese de que son compatibles con RHEL (para Amazon Linux) o Ubuntu Server, en función de la
instancia para ese entorno.
Causa: puede generarse un token de seguridad no válido si tiene las credenciales temporales
administradas por AWS habilitadas y se ha producido una de las siguientes situaciones:
• Intentó ejecutar un comando que las credenciales temporales administradas por AWS no permiten. Para
ver una lista de comandos permitidos, consulte Acciones admitidas por las credenciales temporales
administradas por AWS (p. 570).
• Las credenciales temporales administradas por AWS caducan automáticamente después de 15 minutos.
589
AWS Cloud9 Guía del usuario
Las instancias de Amazon EC2
no se actualizan automáticamente
• Las credenciales temporales administradas por AWS para un entorno compartido estaban desactivadas
porque alguien distinto del propietario del entorno agregó un nuevo miembro.
Soluciones recomendadas:
• Ejecute solo aquellos comandos permitidos por las credenciales temporales administradas de AWS. Si
necesita ejecutar un comando que no permiten las credenciales temporales administradas por AWS,
puede configurar AWS CLI o aws-shell en el entorno con un conjunto de credenciales permanentes,
lo que acabaría con esta limitación. Para obtener instrucciones, consulte Crear y almacenar las
credenciales de acceso permanente en un entorno (p. 86).
• Para credenciales desactivadas o caducadas, asegúrese de que el propietario del entorno abra el
entorno de modo que AWS Cloud9 pueda actualizar las credenciales temporales en el entorno. Para
obtener más información, consulte Control del acceso a las credenciales temporales administradas por
AWS (p. 572).
Causa: la aplicación automática de las últimas actualizaciones del sistema podría hacer que el código
o la instancia de Amazon EC2 se comporten de forma imprevista, sin su conocimiento previo o sin su
aprobación.
Soluciones recomendadas:
Aplique actualizaciones del sistema a la instancia de Amazon EC2 de forma periódica siguiendo las
instrucciones de Actualización del software de instancia en la Guía del usuario de Amazon EC2 para
instancias de Linux.
Para ejecutar comandos en la instancia, puede utilizar una sesión del terminal en el IDE de AWS Cloud9
desde el entorno que está conectado a la instancia.
También puede usar una utilidad de acceso remoto SSH como ssh o PuTTY para conectarse a la
instancia. Para ello, desde el equipo local, sírvase de una utilidad de creación de pares de claves SSH,
como ssh-keygen o PuTTYgen. Utilice el IDE de AWS Cloud9 desde el entorno que está conectado a la
instancia para almacenar la clave pública generada en la instancia. A continuación, sírvase de la utilidad
de acceso remoto SSH junto con la clave privada generada para obtener acceso a la instancia. Consulte la
documentación de su utilidad para obtener más información.
590
AWS Cloud9 Guía del usuario
Advertencia del IDE: “Este entorno se está quedando sin
memoria” o “Este entorno tiene una elevada carga de CPU”
SAM Local. AWS Cloud9 necesita SAM Local para ejecutar las versiones locales de las funciones de AWS
Lambda en el IDE. Hasta que no se instala SAM Local, no se pueden ejecutar las versiones locales de las
funciones de Lambda en el IDE.
Causa: AWS Cloud9 no encuentra SAM Local en la ruta prevista en el entorno, que es ~/.c9/bin/sam.
Esto se debe a que SAM Local no está instalado aún o, si lo está, AWS Cloud9 no lo encuentra en dicha
ubicación.
Soluciones recomendadas: Puede esperar a que AWS Cloud9 intente finalizar la instalación de SAM Local
o puede instalarlo usted mismo.
Para ver el progreso de AWS Cloud9 mientras intenta instalar SAM Local, seleccione Window, Installer
(Ventana, Instalador) en la barra de menús.
Para instalar SAM Local usted mismo, siga las instrucciones que se proporcionan en Instalación de AWS
SAM CLI en Linux en la Guía para desarrolladores de AWS Serverless Application Model.
Causa: es posible que el IDE no disponga de los recursos informáticos suficientes para seguir funcionando
sin retrasos o bloqueos.
Soluciones recomendadas:
• Detenga uno o más procesos en ejecución para liberar la memoria disponible. Para ello, en la barra de
menús del IDE correspondiente al entorno, elija Tools, Process List (Herramientas, Lista de procesos).
Por cada proceso que desee detener, selecciónelo y, a continuación, elija Force Kill (Forzar terminación).
• Cree un archivo de intercambio en el entorno. Un archivo de intercambio es un archivo en el entorno que
el sistema operativo puede utilizar como memoria virtual.
Para confirmar si el entorno está utilizando la memoria de intercambio, ejecute el comando top en
una sesión del terminal en el entorno. Si se está utilizando memoria de intercambio, la salida muestra
estadísticas de memoria Swap distintas de cero (por ejemplo, Swap: 499996k total, 1280k
used, 498716 free, 110672k cached). Para dejar de mostrar la información de la memoria en
tiempo real, pulse Ctrl + C.
Para crear un archivo de intercambio, puede ejecutar un comando como el siguiente en el entorno.
sudo fallocate --length 512MB /var/swapfile && sudo chmod 600 /var/swapfile && sudo
mkswap /var/swapfile && echo '/var/swapfile swap swap defaults 0 0' | sudo tee -a /etc/
fstab > /dev/null
591
AWS Cloud9 Guía del usuario
La vista previa de un archivo devuelve un error 499
Después de ejecutar el comando anterior, para que este archivo de intercambio esté disponible
inmediatamente en lugar de esperar a un reinicio, ejecute el comando siguiente.
• Mueva o cambie el tamaño del entorno a una instancia o un servidor con más recursos informáticos.
Para mover o cambiar el tamaño de instancias de Amazon EC2, consulte Mover un entorno y cambiar
el tamaño de volúmenes de Amazon EBS o cifrarlos (p. 104). Para otros tipos de instancia o servidor,
consulte la documentación correspondiente.
Causa: las solicitudes para obtener una vista previa de archivos en el IDE de AWS Cloud9 requieren que
el navegador web envíe cookies para autenticarse. De forma predeterminada, los navegadores web envían
las cookies para las solicitudes de script habituales, pero no para las solicitudes de script del módulo, a
menos que añada el atributo crossorigin.
Causa posible: AWS CloudFormation puede tener un problema al eliminar uno o más entornos (AWS
Cloud9 depende de AWS CloudFormation para crear y eliminar entornos).
Solución recomendada: pruebe a usar AWS CloudFormation para eliminar cada uno de los entornos no
eliminadas, tal y como se indica a continuación.
592
AWS Cloud9 Guía del usuario
Advertencia de la consola: “Cambio al
motor de finalización de código mínimo...”
Para eliminar manualmente estos recursos, en la consola de AWS CloudFormation, elija la pila en la que
se ha producido el error y, a continuación, seleccione la sección Resources (Recursos). Vaya a la consola
en AWS para cada recurso en esta lista y, a continuación, utilice dicha consola para eliminar manualmente
el recurso.
Causa: la ejecución del motor de finalización de código requiere memoria y ciclos de CPU del entorno.
Además, se requiere un motor de finalización de código independiente para cada colaborador y cada
sesión adicional. Para evitar utilizar demasiados recursos, especialmente en tamaños de instancias
pequeñas como t2.nano y t2.micro, AWS Cloud9 cambia al motor de finalización de código mínimo.
Solución recomendada: si va a colaborar con frecuencia y durante largos períodos de tiempo, elija una
instancia de Amazon EC2 más grande al crear su entorno de EC2 (o conecte su entorno de SSH a una
instancia con más capacidad).
Note
Elegir una instancia de Amazon EC2 más grande podría generar cargos adicionales para su
cuenta de AWS. Para obtener más información, consulte Precios de Amazon EC2.
593
AWS Cloud9 Guía del usuario
Error de VPC para cuentas de EC2-
Classic: “No se puede acceder a su entorno”
1”. Si elige Cancelar, verá el siguiente mensaje: “Error de instalación”. Este error se produce cuando no se
pueden instalar los paquetes de AWS Cloud9 en el host SSH del cliente.
Causa: un host SSH requiere que tenga instalado Node.js. Actualmente admitimos versiones desde
Node.js 0.6.16 hasta Node.js 12.x. Puede producirse un error de instalación si tiene una versión de Node.js
en su host que AWS Cloud9 no admita.
Solución recomendada: instale una versión de Node.js que AWS Cloud9 admita en el host SSH.
Si acepta la configuración predeterminada de VPC, la instancia de Amazon EC2 se lanza en la red EC2-
Classic y no en una subred de la VPC predeterminada. Cuando se produce un error en la creación del
entorno, aparece el siguiente mensaje:
Error de entorno
Error al crear el entorno: Error al crear los siguientes recursos: [Instance]. . Restauración solicitada por el
usuario..
Puede confirmar que el error se debe a que la instancia de EC2 no se encuentra en la VPC
predeterminada. Utilice AWS CloudFormation para consultar el historial de eventos de pila para el entorno
de desarrollo.
1. Abra la consola de AWS CloudFormation. Para obtener más información, consulte Registro en la
consola de AWS CloudFormation.
2. En la consola de AWS CloudFormation, elija Pilas.
3. En la página Pilas, elija el nombre del entorno de desarrollo que no se pudo crear.
4. En la página Stack details (Detalles de la pila), elija la pestaña Events (Eventos) y verifique la siguiente
entrada:
Estado: CREATE_FAILED
Motivo del estado: el parámetro AssociatePublicIpAddress solo es compatible con los lanzamientos de
la VPC. [...]
Causa: un entorno de desarrollo de AWS Cloud9 debe asociarse a una instancia de Amazon VPC que
cumpla con los requisitos de VPC específicos. Para cuentas con EC2-Classic habilitado, aceptar la
configuración de red predeterminada al crear un entorno de EC2 (p. 53) significa que la instancia de EC2
requerida no se ha lanzado en la VPC. En su lugar, la instancia se ha lanzado en la red EC2-Classic.
Solución recomendada: con una cuenta de EC2-Classic, debe seleccionar una VPC y una subred al crear
un entorno de EC2 (p. 53). En la página Configurar ajustes, en la sección Configuración de red (avanzada),
seleccione la VPC y la subred en la que puede lanzar la instancia de EC2.
594
AWS Cloud9 Guía del usuario
No se puede abrir el entorno de AWS Cloud9: “Los
colaboradores no pueden acceder a este entorno.
Espere hasta que se complete la eliminación
(Volver arriba (p. 579)) de las credenciales temporales administradas
o contacte con el propietario de este entorno”.
Causa: impedir el acceso al entorno durante la eliminación de las credenciales temporales administradas
de AWS es una medida de seguridad. Permite a los propietarios del entorno confirmar que solo los
colaboradores de confianza tienen acceso a credenciales administradas. Si están convencidos de que
la lista de colaboradores es válida, los propietarios del entorno pueden volver a habilitar las credenciales
administradas para que puedan compartirse. Para obtener más información, consulte Control del acceso a
las credenciales temporales administradas por AWS (p. 572).
Soluciones recomendadas: puede esperar a que se complete la eliminación del archivo ~/.aws/
credentials antes de volver a intentar abrir el entorno AWS Cloud9. El tiempo máximo de espera para
la caducidad de las credenciales es de 15 minutos. También puede solicitar al propietario del entorno que
vuelva a habilitar o desactive las credenciales temporales administradas. Después de volver a habilitar o
desactivar las credenciales, los colaboradores pueden acceder inmediatamente al entorno. (Al alternar el
estado de las credenciales administradas a ENABLED [HABILITADAS] o DISABLED [DESACTIVADAS],
el propietario del entorno garantiza que las credenciales no permanezcan en un estado intermedio que
impida que los colaboradores accedan al entorno).
Note
595
AWS Cloud9 Guía del usuario
Mensaje de error que indica que no tiene autorización
para ejecutar: ssm:StartSession en el recurso al crear
un entorno de EC2 mediante AWS CloudFormation
Causa: al crear un entorno de EC2 sin entrada, debe crear la función de servicio
AWSCloud9SSMAccessRole y el perfil de instancias AWSCloud9SSMInstanceProfile. Estos
recursos de IAM permiten a Systems Manager administrar la instancia de EC2 que respalda su entorno de
desarrollo.
Solución recomendada: para obtener información sobre cómo editar la plantilla de AWS CloudFormation
y actualizar los permisos de IAM, consulte Uso de AWS CloudFormation para crear entornos de EC2 sin
entrada (p. 73).
Causa: el usuario carece del permiso para llamar a la API de StartSession que se requiere como
parte de la configuración para los entornos de EC2 que utilizan Systems Manager para las instancias sin
entrada.
Solución recomendada: para obtener información sobre cómo editar la plantilla de AWS CloudFormation
y actualizar los permisos de IAM, consulte Uso de AWS CloudFormation para crear entornos de EC2 sin
entrada (p. 73).
Causa: AWS Cloud9 carece del permiso para llamar a la API de StartSession que se requiere como
parte de la configuración para los entornos de EC2 que utilizan Systems Manager para las instancias sin
entrada.
596
AWS Cloud9 Guía del usuario
No se puede conectar al entorno de EC2
porque Docker utiliza las direcciones IP de VPC
Solución recomendada: para obtener información sobre cómo agregar el rol de servicio
AWSCloud9SSMAccessRole requerido y AWSCloud9SSMInstanceProfile a su entorno AWS Cloud9,
consulte Administrar perfiles de instancias para Systems Manager con AWS CLI (p. 71).
Causa: Docker utiliza un dispositivo de capa de enlace denominado red de puente que permite que los
contenedores conectados a la misma red de puente se comuniquen. AWS Cloud9 crea contenedores que
utilizan un puente predeterminado para la comunicación de contenedores. El puente predeterminado suele
utilizar la subred 172.17.0.0/16 para las redes de contenedores.
Si la subred de VPC para la instancia de su entorno utiliza el mismo rango de direcciones que Docker,
puede producirse un conflicto de dirección IP. Por tanto, si AWS Cloud9 intenta conectarse a su instancia,
la tabla de enrutamiento de gateway enruta esa conexión al puente de Docker en lugar de a la instancia de
EC2. Esto evita que AWS Cloud9 se conecte a la instancia de EC2 que respalda el entorno de desarrollo.
Solución recomendada: para resolver un conflicto de dirección IP que se produce porque Amazon VPC y
Docker utilizan el mismo bloque de CIDR de direcciones IPv4, configure una nueva VPC para la instancia
que respalda el entorno de EC2. Para esta nueva VPC, configure un bloque de CIDR que sea diferente de
172.17.0.0/16. No puede cambiar el rango de direcciones IP de una VPC o subred existente.
Para obtener información sobre la configuración, consulte Tamaño de VPC y subred en la Guía del usuario
de Amazon VPC.
Causa: AWS Toolkit utiliza una utilidad de monitor de archivos que monitorea los cambios en archivos y
directorios. Aparece un mensaje de advertencia cuando la utilidad está casi en el límite actual de archivos
que puede ver.
Solución recomendada: para aumentar el número máximo de archivos que puede administrar el monitor de
archivos, haga lo siguiente:
1. Inicie una sesión de terminal con las opciones Window (Ventana), New Terminal (Nuevo terminal) en
la barra de menús.
2. En la línea de comandos, ingrese el comando siguiente:
597
AWS Cloud9 Guía del usuario
Aviso: error al instalar dependencias
para el soporte de colaboración
Please try to resolve this problem and refresh the page to enable collaboration support. A
common cause is a lack of available disk space. Error was:
Causas posibles: si su entorno AWS Cloud9 utiliza un proxy para acceder a internet, AWS Cloud9 necesita
los detalles del proxy para instalar las dependencias. Este error aparecerá si no ha proporcionado los datos
del proxy a AWS Cloud9.
Soluciones recomendadas: para proporcionar los detalles del proxy a AWS Cloud9, agregue lo siguiente al
archivo ~/.bashrc del entorno.
Por ejemplo, si la URL del proxy HTTP es http://172.31.26.80:3128 y la URL del proxy HTTPS es
https://172.31.26.80:3129, agregue las siguientes líneas al archivo ~/.bashrc.
export http_proxy=http://172.31.26.80:3128
export https_proxy=https://172.31.26.80:3129
Note
598
AWS Cloud9 Guía del usuario
Error al ejecutar aplicaciones SAM localmente
en AWS Toolkit porque el entorno de AWS
Cloud9 no tiene suficiente espacio en disco
Causas posibles: si su entorno de AWS Cloud9 utiliza ciertos tipos de instancias de EC2 (como t3.small
o m5.large, por ejemplo), puede producirse un error de depuración al intentar ejecutar y depurar un
proyecto de C++ utilizando el ejecutor integrado del IDE. Este error puede ocurrir porque la versión de gdb
(depurador de proyectos GNU) preinstalado para su entorno no funciona en determinadas plataformas de
procesador. Podría ver el código de error siguiente:
1. Para eliminar la versión existente del depurador, ejecute el siguiente comando en el terminal de AWS
Cloud9:
2. Recupere el archivo para gdb, descomprímalo y vaya al directorio que contiene los archivos extraídos.
Para ello, ejecute los siguientes comandos:
wget "http://ftp.gnu.org/gnu/gdb/gdb-8.3.tar.gz"
tar xzf gdb-8.3.tar.gz
cd gdb-8.3
3. Ahora compile el depurador mediante la ejecución del siguiente comando (pegue el texto siguiente
como un solo bloque y pulse Intro para ejecutar make):
./configure --prefix=/usr \
--with-system-readline \
--with-python=/usr/bin/python3 &&
make
gdb --version
Causas posibles: al ejecutar y depurar aplicaciones sin servidor localmente con AWS Toolkit, AWS SAM
utiliza imágenes de Docker que proporcionan un entorno en tiempo de ejecución y herramientas de
compilación que emulan el entorno de Lambda en el que está planeando implementar.
599
AWS Cloud9 Guía del usuario
No se puede cargar el IDE con versiones
anteriores del navegador Microsoft Edge
No obstante, si su entorno carece de suficiente espacio en disco, la imagen de Docker que proporciona
estas características no puede compilarse y su aplicación SAM local no se puede ejecutar. Si esto ocurre,
puede aparecer un error en la pestaña Output (Salida) similar a la siguiente:
Este error se relaciona con una aplicación SAM creada con el tiempo de ejecución de Python. Puede
recibir un mensaje ligeramente diferente, dependiendo del tiempo de ejecución que eligió para su
aplicación.
Soluciones recomendadas: libere espacio en disco en su entorno para que la imagen de Docker pueda
compilarse. Elimine las imágenes de Docker no utilizadas ejecutando el siguiente comando en el terminal
del IDE:
Si tiene problemas repetidamente con los comandos de la CLI de SAM debido a restricciones de espacio
en disco, considere cambiar a un entorno de desarrollo que utilice un tipo de instancias (p. 55) diferente.
Causas posibles: el IDE de AWS Cloud9 no admite ciertas versiones anteriores de Microsoft Edge.
Soluciones recomendadas: para actualizar el navegador, elija el botón de puntos suspensivos (...) en la
barra de herramientas de Microsoft Edge. En el menú, elija Configuración y, a continuación, Acerca de
Microsoft Edge. Si se requiere una actualización, esta se descarga e instala automáticamente.
Causas posibles: si el IDE de AWS Cloud9 utiliza volúmenes de Amazon EBS cifrados de forma
predeterminada, el rol vinculado al servicio AWS Identity and Access Management para AWS Cloud9
requiere acceso a las AWS KMS keys para estos volúmenes de EBS. Si no se proporciona acceso, el IDE
de AWS Cloud9 podría no lanzarse y la depuración podría ser difícil.
Soluciones recomendadas: para proporcionar acceso, agregue el rol vinculado al servicio para AWS
Cloud9, AWSServiceRoleForAWSCloud9, a la clave administrada por el cliente que utilizan sus
volúmenes de Amazon EBS.
600
AWS Cloud9 Guía del usuario
No se puede obtener una vista previa del contenido
web en el IDE porque la conexión al sitio no es segura
Para obtener más información sobre esta tarea, consulte Create an AWS Cloud9 that uses Amazon EBS
volumes with default encryption en AWS Prescriptive Guidance Patterns.
Causas posibles: de forma predeterminada, todas las páginas web a las que accede en la pestaña de vista
previa de la aplicación del IDE de AWS Cloud9 utilizan automáticamente el protocolo HTTPS. Si el URI
de una página presenta el protocolo no seguro http, se reemplaza automáticamente por https. Para
acceder al contenido no seguro, tampoco puede restablecer https a http manualmente.
Soluciones recomendadas: quite los scripts HTTP no seguros o el contenido del sitio web del que intenta
obtener una vista previa en el IDE. Siga las instrucciones de su servidor web o sistema de administración
de contenido para obtener instrucciones sobre cómo implementar HTTPS.
Causas posibles: AWS License Manager agiliza la administración de licencias de proveedores de software
en toda la nube de AWS. Al configurar License Manager, puede crear configuraciones de licencias, que
son conjuntos de reglas de asignación de licencias que se basan en los términos de los contratos de su
empresa. Estas configuraciones de licencias se pueden conectar a un mecanismo, como una imagen de
máquina de Amazon (AMI) o AWS CloudFormation, que utiliza para lanzar instancias de EC2.
Soluciones recomendadas: si no puede acceder a un entorno de AWS Cloud9 existente y usa License
Manager, reemplace el rol vinculado a servicios AWSCloud9ServiceRolePolicy por la versión del
SLR (p. 524) que permita explícitamente acciones de EC2 cuando se aplique license-configuration
a la instancia. Para reemplazar el rol antiguo, elimínelo. A continuación, se crea el rol actualizado de forma
automática.
601
AWS Cloud9 Guía del usuario
No se puede interactuar con la ventana de terminal
en AWS Cloud9 debido a errores de sesión de tmux
Causas posibles: Una terminal que no responde puede ser causada por un error de tmux. AWS Cloud9
utiliza la utilidad tmux para que la información que se muestra en la terminal persista incluso cuando la
página se recarga o se reconecta a su entorno de desarrollo.
En una sesión tmux, lo que se muestra en la ventana del terminal lo administra un cliente, que se comunica
con un servidor que puede administrar varias sesiones. El servidor y el cliente se comunican a través de
un socket ubicado en la carpeta tmp. Si la carpeta tmp falta en su entorno de desarrollo o se le aplican
permisos demasiado restrictivos, las sesiones tmux no pueden ejecutarse. Si esto ocurre, la ventana de
terminal del IDE deja de responder.
Soluciones recomendadas: Si los errores de tmux le impiden interactuar con la ventana de la terminal,
necesita utilizar una forma alternativa para crear una carpeta tmp con los permisos adecuados para que
las sesiones de tmux puedan ejecutarse. El enfoque más sencillo es utilizar AWS Systems Manager
para establecer una configuración de administración de host, que permite el acceso a la instancia
correspondiente a través de la consola de Amazon EC2:
1. En primer lugar, en la consola AWS Cloud9, busque el nombre de la instancia de su entorno eligiendo
el panel correspondiente en la página Your environments (Sus entornos) y seleccionando View details
(Ver detalles). En la página de Environment details (Detalles del Entorno), elija Go to Instance (Ir a
la Instancia). En la consola de Amazon EC2, confirme el nombre de la instancia a la que necesita
acceder.
2. Ahora vaya a la consola AWS Systems Manager, y en el panel de navegación, elija Quick Setup
(Configuración Rápida).
3. En la página de Quick Setup (Configuración Rápida), elija Create (Crear).
4. Para los tipos de configuración, vaya a Host Management (Administración de hosts) y elija Create
(Crear).
5. Para personalizar las opciones de configuración de Host Management, en la sección Targets
(Objetivos), elija Manual.
6. Seleccione la instancia de EC2 a la que desea acceder y, a continuación, elija Create (Crear).
Si Connect (Conectar) no está activado, es posible que tenga que iniciar la instancia en primer lugar.
3. En el panel Connect to your instance (Conectar con su instancia), en Connection method (Método de
conexión), elija Session Manager (Administrador de sesiones) y luego Connect (Conectar).
4. En la ventana de sesión de terminal que se muestra, ingrese los siguientes comandos para crear la
carpeta tmp con los permisos correctos para que el socket tmux esté disponible:
602
AWS Cloud9 Guía del usuario
No se puede interactuar con la ventana de terminal
en AWS Cloud9 debido a errores de sesión de tmux
603
AWS Cloud9 Guía del usuario
Navegador Versiones
604
AWS Cloud9 Guía del usuario
Límites de AWS Cloud9
1. Inicie sesión en AWS y abra la página Create case (Crear caso) en el sitio web del Centro de AWS
Support.
2. Seleccione Service Limit increase (Aumento del límite del servicio).
3. En Case classification (Clasificación del caso), elija cloud9 en la lista Limit type (Tipo de límite).
4. Rellene el resto de los campos según corresponda. Si la solicitud es urgente, elija Phone (Teléfono)
como método de contacto en lugar de Web.
5. Elija Submit (Enviar).
Estos aumentos no se conceden de inmediato, de modo que podrían tardar unos días en hacerse
efectivos.
605
AWS Cloud9 Guía del usuario
AWS Service Limits relacionados
1
Puede mover un entorno (p. 105) para intentar aumentar el número máximo predeterminado de
miembros. Sin embargo, el número máximo absoluto de miembros para un entorno sigue siendo 25.
606
AWS Cloud9 Guía del usuario
Actualizaciones recientes
En la siguiente tabla se describen los cambios importantes en la Guía del usuario de AWS Cloud9 a partir
de marzo de 2019.
607
AWS Cloud9 Guía del usuario
AWS Cloud9 también disponible AWS Cloud9Ahora también está 1 de septiembre de 2021
en las regiones de África (Ciudad disponible en las siguientes
del Cabo) y Asia-Pacífico regiones: África (Ciudad del
(Osaka (p. 607) Cabo) y Asia-Pacífico (Osaka).
Para obtener más información
acerca de los puntos de enlace
de servicio y las cuotas de
servicio asociados a estas
y a otras regiones de AWS,
consulte AWS Cloud9 en la
Referencia general de Amazon
Web Services.
Control visual del código fuente Como desarrollador, puede 1 de febrero de 2021
disponible a través del panel de utilizar el panel de Git para
Git (p. 315) ejecutar comandos de Git en una
interfaz de usuario.
Integración para AWS AWS Toolkit ahora permite a los 11 de diciembre de 2020
Toolkit (p. 338) desarrolladores navegar por los
servicios de AWS e interactuar
con estos a través de la ventana
AWS Explorer.
608
AWS Cloud9 Guía del usuario
Cifrado de Amazon EBS (p. 108) Nueva sección que explica cómo 3 de julio de 2020
cifrar volúmenes de Amazon EBS
para instancias de EC2 utilizadas
por los entornos de desarrollo de
AWS Cloud9.
Compatibilidad con regiones AWS Cloud9 ya está disponible 7 de mayo de 2020
adicionales para AWS en las siguientes regiones: EE.
Cloud9 (p. 607) UU. Oeste (Norte de California),
Asia-Pacífico (Hong Kong),
Europa (París), Medio Oriente
(Baréin) y América del Sur
(São Paulo). Para obtener más
información acerca de los puntos
de enlace de servicio y las cuotas
de servicio asociados a estas
y a otras regiones de AWS,
consulte AWS Cloud9 en la
Referencia general de Amazon
Web Services.
609
AWS Cloud9 Guía del usuario
610
AWS Cloud9 Guía del usuario
AWS Cloud9 también disponible AWS Cloud9Ahora también está 4 de abril de 2019
en la región de Asia-Pacífico disponible en la región de Asia-
(Tokio (p. 607) Pacífico (Tokio). Para obtener
más información acerca de los
puntos de enlace de servicio y
las cuotas de servicio asociados
a esta y a otras regiones de
AWS, consulte AWS Cloud9 en
la Referencia general de Amazon
Web Services.
Actualizaciones anteriores
En la siguiente tabla, se describen cambios importantes realizados en la Guía del usuario de AWS Cloud9
antes de abril de 2019.
611
AWS Cloud9 Guía del usuario
612
AWS Cloud9 Guía del usuario
613
AWS Cloud9 Guía del usuario
614
AWS Cloud9 Guía del usuario
Disponibilidad del formato Kindle Esta guía ya está disponible en 2 de enero de 2018
el formato de Amazon Kindle.
Para obtener más información,
haga clic en el icono Open
Kindle (Abrir Kindle) en la barra
de navegación de la guía o
consulte AWS Cloud9: User
Guide Kindle Edition en el sitio
web de Amazon.
615
AWS Cloud9 Guía del usuario
616