AWS Cloud9 FAQ

일반

AWS Cloud9은 브라우저만으로 코드를 작성, 실행 및 디버깅할 수 있게 해주는 클라우드 기반 통합 개발 환경(IDE)입니다. 코드 완성, 힌트 제공, 스텝 스루 디버깅 같은 IDE의 다양한 코드 편집 기능을 정식 Linux 서버 액세스와 결합해 코드를 실행하고 저장합니다. 자세한 내용은 AWS Cloud9 사용 설명서를 참조하십시오.

코드를 작성하는 사람이라면 누구나 AWS Cloud9을 사용할 수 있습니다. Node.js(JavaScript), Python, PHP, Ruby, Go, C++로 애플리케이션을 개발 중인 개발자는 Cloud9을 사용할 수 있으며 런타임, 패키지 관리자 및 디버깅 도구가 사전 설치된 브라우저에서 완벽하게 구성된 개발 환경에 바로 액세스할 수 있습니다. Cloud9을 이용하면, 하나의 개발 기기에 얽매일 필요 없이 인터넷에 연결된 컴퓨터라면 어디서든 개발 환경에 액세스할 수 있습니다. AWS 개발자와 새로운 AWS 서비스를 평가하는 사람은 AWS Cloud9을 사용해 AWS 서비스에 대해 명령을 실행할 수 있는, 사전 구성된 AWS Command Line Interface(AWS CLI)를 통해 AWS 리소스에 쉽게 액세스할 수 있습니다. Node.js 또는 Python으로 AWS Lambda에서 서버리스 애플리케이션을 개발 중인 개발자는 Cloud9의 기본 제공 도구를 사용해 IDE 내에서 Lambda 함수를 생성, 편집, 실행, 디버깅 및 배포할 수 있습니다.

AWS Cloud9은 Node.js(JavaScript), Python, PHP, Ruby, Go 및 C++를 비롯한 40여 개의 프로그래밍 언어를 지원합니다. 널리 사용되는 수많은 프로그래밍 언어의 구문 강조, 개요 보기, 코드 힌트 제공, 코드 완성, 애플리케이션 실행기, 단계별 디버깅 같은 기능을 사용할 수 있습니다. Cloud9에서 지원되는 언어 기능에 대한 자세한 내용은 사용 설명서의 언어 지원 주제를 참조하십시오.

AWS Cloud9은 최신 버전 Google Chrome, Safari, Firefox 및 Microsoft Edge를 완벽하게 지원합니다.

AWS Cloud9에는 추가 비용이 없습니다. AWS Cloud9 개발 환경에 Amazon EC2 인스턴스를 사용하는 경우, 코드 실행 및 저장에 사용되는 컴퓨팅 및 스토리지 리소스(즉 EC2 인스턴스, EBS 볼륨)에 대해서만 요금을 지불하면 됩니다. 또한 추가 요금 없이 SSH를 통해 Cloud9 개발 환경을 기존 Linux 서버(예: 온프레미스 서버)에 연결할 수 있습니다. 자세한 내용은 AWS Cloud9 요금 페이지를 참조하세요.

AWS는 AWS용 애플리케이션 개발을 촉진하고자 다양한 IDE를 지원합니다. AWS에서 지원하는 IDE 도구 키트에 대한 자세한 내용은 AWS 도구 페이지의 IDE 도구 키트 섹션을 참조하세요.

사용 설명서의 문제 해결 주제에서 발생 가능한 몇 가지 오류와 솔루션을 확인할 수 있습니다.

AWS Cloud9 사용

AWS Management Console에 로그인하고 AWS Cloud9을 선택하여 시작할 수 있습니다. 콘솔에 Cloud9을 연결할 Linux 서버를 선택하는 옵션이 표시됩니다. 간단한 단계를 통해 새 Amazon EC2 인스턴스(AWS Cloud9 EC2 환경)를 시작하거나 기존 Linux 서버(AWS Cloud9 SSH 환경)를 연결할 수 있습니다. Cloud9 환경을 생성하면, IDE에 액세스해 완벽하게 구성된 개발 환경에서 코드를 작성할 수 있습니다. 자세한 내용은 AWS Cloud9 설정 설명서를 참조한 후 기본 자습서를 완료하십시오.

AWS Cloud9 개발 환경은 프로젝트 코드 파일을 저장하고 애플리케이션 개발에 사용하는 도구를 실행하는 곳입니다. 환경마다 고유한 IDE 설정이 저장되어 있습니다. 이 개발 환경을 이용하면 특정 프로젝트에 필요한 도구, 런타임, 파일, IDE 설정이 구성된 다양한 개발 환경 모음을 쉽게 생성하고 전환할 수 있습니다.

두 가지 AWS Cloud9 환경을 사용할 수 있습니다.

  • AWS Cloud9 EC2 환경 - Cloud9을 연결하는 새 Amazon EC2 인스턴스를 실행할 수 있습니다. 기본적으로, 이 인스턴스는 IDE를 종료하면 30분 동안 중단되며 IDE를 열면 자동으로 시작됩니다.
  • AWS Cloud9 SSH 환경 - Cloud9으로 기존 Linux 서버를 연결할 수 있습니다. Cloud9 SSH 환경에서 사용할 Linux 서버는 특정 종속성을 요구합니다. 자세한 내용은 설명서를 참조하십시오.

예. SSH 환경을 이용해 기존 Linux 기반 EC2나 Lightsail 인스턴스를 AWS Cloud9에 연결할 수 있습니다.

AWS Cloud9 IDE는 자동 완성, 코드 접기, 힌트 제공, 구문 강조, 줄 조작과 같은 기능을 제공하는 고급 코드 편집기를 제공합니다. 코드 편집기에서 구문 강조와 UI를 제어하는 30가지 이상의 색상 체계를 선택할 수 있습니다. 또한 스타일시트를 편집하여 Cloud9 UI를 완전히 사용자 지정할 수도 있습니다.

AWS Cloud9 EC2 환경에는 Git 및 Docker 같은 자주 사용하는 개발 도구가 사전 설치되어 있습니다. 또한 Node.js 및 Python 같은 널리 사용되는 수많은 프로그래밍 언어의 언어 런타임 및 패키지 관리자도 사용할 수 있습니다. Cloud9 EC2 환경에 사전 설치된 도구와 패키지 전체 목록을 확인하려면 설명서를 참조하십시오.

AWS Cloud9 IDE의 도구 모음과 내장 실행기에는 10개 이상의 언어에 대한 실행 버튼이 있어, 최신 코드 변경 내용을 바탕으로 애플리케이션을 자동으로 시작합니다. 소프트웨어 실행 방법을 제어하고 싶다면 기존 실행기를 편집하거나, 나만의 실행기를 만들거나, 터미널에서 코드를 실행하면 됩니다.

AWS Cloud9 IDE에는 CLI 명령을 대화식으로 실행할 수 있는 내장 터미널 창이 있습니다. 또한 인스턴스에 대한 완전한 관리자 권한(sudo 권한)이 제공되기 때문에, 애플리케이션 개발이나 호스트에 필요한 추가 도구를 모두 설치할 수 있습니다.

IDE에서 터미널 창을 열고 로컬 시스템에서 사용하는 것과 같은 명령줄 도구를 사용해 소스 제어 시스템에 액세스할 수 있습니다. AWS Cloud9 EC2 환경에는 Git가 사전 설치돼 있어 소스 코드에 쉽게 액세스할 수 있습니다.

자세한 내용은 리전별 제품 및 서비스를 참조하세요.

코드 파일, 패키지, 종속성 같은 AWS Cloud9 환경에 저장한 모든 데이터는 언제나 사용자의 리소스에 저장됩니다. EC2 환경을 사용한다면, 데이터는 사용자 AWS 계정에 존재하는 관련 Amazon Elastic Block Store(EBS) 볼륨에 저장됩니다. SSH 환경을 이용한다면, 데이터는 Linux 서버의 로컬 스토리지에 저장됩니다.

AWS Cloud9 관련 리소스

Amazon EC2 환경을 생성하면, AWS Cloud9은 사용자의 AWS 계정에서 필요한 컴퓨팅 및 스토리지 리소스를 생성합니다. 이러한 리소스에는 Amazon EC2 인스턴스, 8-GB Amazon EBS(Elastic Block Store) 볼륨, Amazon EC2 보안 그룹과 AWS CloudFormation 스택 등이 있습니다. 이러한 리소스는 개별 AWS 서비스 콘솔을 통해 액세스할 수 있습니다. 환경을 삭제하면, Cloud9은 사용자를 위한 이러한 리소스를 자동으로 삭제합니다.

Cloud9은 사용자를 대신해 AWS Cloud9 EC2 환경 리소스를 생성 및 삭제할 뿐만 아니라, EC2 인스턴스를 자동으로 시작하고 중단해 비용을 절감합니다. 사용자는 EC2 인스턴스에 소프트웨어 패치를 설치하거나 EBS 볼륨 백업을 실행하는 등의, 리소스에 대한 다른 관리 업무를 책임집니다.

아니요. AWS Cloud9은 Cloud9을 통해 생성된 Amazon EC2 인스턴스에 기본 30분 자동 최대 절전 설정을 제공합니다. 이 설정을 사용하면, 사용자의 EC2 인스턴스는 IDE 종료 시 자동으로 30분 동안 중단되며 IDE를 다시 실행해야 다시 시작됩니다. 따라서 일반적으로 사용자가 실제로 작업 중일 때만 EC2 인스턴스 요금이 발생합니다. 인스턴스 재시작이 필요한 경우, IDE의 모든 활성 터미널 세션이 사라지며 IDE를 실행하는 동안 대기 시간이 발생할 수 있습니다. 사용 사례에 따라, 자동 최대 절전 설정을 직접 구성하거나 EC2 인스턴스를 '항상 켜기'로 설정할 수도 있습니다.

예. AWS Cloud9 환경에서 최초 선택한 Amazon EC2 인스턴스 유형은 변경할 수 있습니다. 변경하려면, EC2 콘솔에서 인스턴스로 이동해 인스턴스를 찾은 다음 Amazon EC2 설명서에 있는 지침을 따르십시오.

환경 공유

IDE 오른쪽 위에 있는 공유 버튼을 클릭하면 AWS Cloud9 환경을 공유할 수 있습니다. AWS Identity and Access Management(IAM) 사용자 이름과 협업할 사용자에게 부여할 액세스 수준을 입력하는 창이 나타납니다. 정보를 입력하면, 두 참가자 모두 환경을 이용해 IDE 기능과 명령줄 세션을 실시간으로 협력할 수 있습니다.

아니요. 현재 AWS Cloud9 환경은 같은 AWS 계정을 사용하는 IAM 사용자만 공유할 수 있습니다. IAM 사용자 접근 권한이 없는 신규 사용자를 초대하고 싶다면, 공유(Share) 대화 상자에 있는 링크를 클릭해 신규 IAM 사용자를 생성해야 합니다.

AWS Cloud9을 AWS Services와 함께 사용

AWS Cloud9 EC2 환경에는 로그인한 AWS 사용자의 권한을 사용하여 자동으로 인증되는 AWS CLI가 사전 설치되어 있습니다. 따라서 사용자는 추가 구성없이 Cloud9의 내장 터미널 창에서 상호적인 CLI 명령을 AWS 서비스에 대해 실행할 수 있습니다.

IDE의 AWS 리소스 패널에서 AWS Lambda용 내장 도구에 액세스할 수 있습니다. 이러한 도구를 사용하면 Node.js와 Python으로 작성된 기존 Lambda 함수를 가져오거나 새로운 함수를 생성할 수 있습니다. 사용자는 IDE에서 바로 이러한 함수를 쉽게 실행하고, 미리 보고, 디버깅 및 배포할 수 있습니다. 또한 AWS Cloud9은 AWS Serverless Application Model(AWS SAM) 프레임워크도 지원합니다. 따라서 사용자는 애플리케이션에서 다양한 Lambda 함수와 서버리스 리소스를 쉽게 관리할 수 있습니다. AWS CodeStar로 프로젝트를 제공했다면, 애플리케이션에 커밋된 모든 변경사항은 git push를 통해 Lambda에 직접 구축되고 적용됩니다.

예. AWS Cloud9은 Node.js 및 Python에 적합한 AWS Lambda 실행 환경을 시뮬레이션할 수 있으므로 IDE에서 함수를 로컬로 실행할 수 있습니다. 따라서 사용자는 애플리케이션 변경 사항을 Lambda에 업로드하지 않고도 단계별 디버깅을 통해 서버리스 애플리케이션을 테스트할 수 있습니다. 테스트가 끝나면, IDE에서 애플리케이션 변경 사항을 Lambda에 바로 적용할 수도 있습니다.

AWS CodeStar에서 직접 AWS Cloud9 환경을 실행한 다음 Cloud9 IDE에서 CodeStar 프로젝트 코드 편집과 커밋을 바로 시작할 수 있습니다. Cloud9에서 프로젝트 소스 리포지토리에 커밋한 모든 코드 변경 사항은 CodeStar가 프로비저닝한 도구를 사용해 자동으로 구축 및 배포됩니다. 통합에 관한 자세한 내용은 AWS CodeStar 설명서를 참조하십시오.