

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Node.js 앱 서버 계층 참조
<a name="layers-server-nodejs"></a>

**중요**  
이 AWS OpsWorks Stacks 서비스는 2024년 5월 26일에 수명이 종료되었으며 신규 및 기존 고객 모두에서 비활성화되었습니다. 가능한 한 빨리 워크로드를 다른 솔루션으로 마이그레이션하는 것이 좋습니다. 마이그레이션에 대한 질문이 있는 경우 [AWS re:Post](https://repost.aws/) 또는 [AWS Premium Support](https://aws.amazon.com/support)를 통해 AWS Support 팀에 문의하세요.

**참고**  
이 계층은 Linux 기반 스택에서만 사용할 수 있습니다.

Node.js 앱 서버 계층은 고가용성 네트워크 애플리케이션 서버를 구현하기 위한 플랫폼인 [Node.js](http://nodejs.org/) 애플리케이션 서버를 지원합니다. 프로그램은 JavaScript로 작성되며, 이벤트 중심 비동기식 I/O를 사용하여 오버헤드를 최소화하고 확장성을 최대화합니다.

**짧은 이름:** nodejs-app

**호환성:** Node.js 앱 서버 계층은 다음 계층과 호환됩니다. 사용자 지정, db-master, memcached, monitoring-master.

**개방 포트:** Node.js 앱 서버 계층은 포트 22(SSH), 80(HTTP), 443(HTTPS), 그리고 로드 밸런서의 모든 포트에 대한 퍼블릭 액세스를 허용합니다.

**탄력적 IP 주소 자동 할당:** 기본적으로 Off

**기본 EBS 볼륨:** 없음

**기본 보안 그룹:** AWS-OpsWorks-nodejs-App-Server

**설정 레시피:**
+  opsworks\$1initial\$1설정
+ ssh\$1host\$1keys
+ ssh\$1users
+ mysql::client
+ dependencies
+ ebs
+ opsworks\$1ganglia::client
+ opsworks\$1nodejs
+ opsworks\$1nodejs::npm 

**Configure 레시피:**
+  opsworks\$1ganglia::configure-client
+ ssh\$1users
+ agent\$1version
+ opsworks\$1nodejs::configure 

**Deploy 레시피:**
+ deploy::default
+ opsworks\$1nodejs
+ opsworks\$1nodejs::npm
+ deploy::nodejs 

**Undeploy 레시피:**
+ deploy::nodejs-undeploy

**Shutdown 레시피:**
+ opsworks\$1shutdown::default
+ deploy::nodejs-stop

**설치:**
+ Node.js가 `/usr/local/bin/node`에 설치됩니다.
+ 로그 파일을 생성하는 방법에 대한 자세한 정보는 Nodejitsu 웹사이트의 [node.js에 로그인하는 방법](https://docs.nodejitsu.com/articles/intermediate/how-to-log/)을 참조하세요.

**Node.js 애플리케이션 구성:**
+ Node.js가 실행하는 메인 파일은 이름이 `server.js`여야 하며, 배포된 애플리케이션의 루트 디렉터리에 상주해야 합니다.
+ Node.js 애플리케이션은 포트 80(또는 포트 443, 해당되는 경우)에서 수신 대기하도록 설정해야 합니다.

**참고**  
Express를 실행하는 Node.js 앱은 공통적으로 다음 코드를 사용하여 수신 포트를 설정합니다. 여기서 `process.env.PORT`는 기본 포트를 나타내며 80으로 확인됩니다.  

```
app.set('port', process.env.PORT || 3000);
```
 OpsWorks Stacks에서는 다음과 같이 포트 80을 명시적으로 지정해야 합니다.  

```
app.set('port', 80);
```