기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Node.js 앱 서버 AWS OpsWorks 스택 레이어
중요
The AWS OpsWorks Stacks 서비스 수명이 2024년 5월 26일에 종료되었으며 신규 및 기존 고객 모두 사용할 수 없습니다. 고객은 가능한 한 빨리 워크로드를 다른 솔루션으로 마이그레이션할 것을 강력히 권장합니다. 마이그레이션에 대해 궁금한 점이 있으면 다음 연락처로 문의하십시오. AWS Support 팀 구성: AWS re:포스트 포스트
참고
이 계층은 Linux 기반 스택에서만 사용할 수 있습니다.
Node.js 앱 서버 레이어는 AWS OpsWorks Node.js
설치: Node.js가 /usr/local/bin/node
에 설치됩니다.
[계층 추가] 페이지는 다음 구성 옵션을 제공합니다.
- Node.js 버전
-
현재 지원되는 버전의 목록은 AWS OpsWorks 스택 운영 체제 단원을 참조하세요.
- 사용자 지정 보안 그룹
-
이 설정은 빌트를 자동으로 연결하지 않도록 선택한 경우에 나타납니다. AWS OpsWorks 보안 그룹을 레이어와 함께 스택합니다. 계층에 어떤 보안 그룹을 연결할지 지정해야 합니다. 자세한 내용은 새 스택 생성 섹션을 참조하세요.
- Elastic Load Balancer
-
Elastic Load Balancing 로드 밸런서를 어떤 계층의 인스턴스에도 연결할 수 있습니다.
중요
Node.js 애플리케이션이 사용하는 경우 SSL -2015-8027에 설명된 취약성을 해결하기 위해 SSLv3 가능하면 사용하지 않도록 설정하는 것이 좋습니다. CVE0.12.9
로 설정해야 합니다.
Node.js 앱 배포
다음과 같은 간단한 Node.js 응용 프로그램을 구현하는 방법에 대한 자세한 설명은 AWS OpsWorks 스택 및 스택에 배포는 를 참조하십시오. 첫 번째 Node.js 스택 생성 일반적으로 Node.js 애플리케이션은 AWS OpsWorks 스택은 다음 조건을 충족해야 합니다.
-
메인 파일의 이름은
server.js
여야 하며, 배포된 애플리케이션이 루트 디렉터리에 상주해야 합니다. -
Express
앱은 애플리케이션의 루트 디렉터리에 package.json
파일을 포함해야 합니다. -
기본적으로 애플리케이션은 포트 80 (HTTP) 또는 포트 443 (HTTPS) 에서 수신해야 합니다.
다른 포트에서도 수신 대기할 수 있지만 Node.js 앱 서버 계층의 기본 제공 보안 그룹인 AWS- OpsWorks -NodeJS-App-Server는 포트 80, 443, 22 () 로의 인바운드 사용자 트래픽만 허용합니다. SSH 다른 포트로의 인바운드 사용자 트래픽을 허용하려면 적절한 인바운드 규칙을 사용하여 보안 그룹을 생성하고 Node.js 앱 서버 계층에 할당합니다. 내장 보안 그룹을 편집하여 인바운드 규칙을 수정하지 마십시오. 스택을 생성할 때마다 AWS OpsWorks 스택은 기본 제공 보안 그룹을 표준 설정으로 덮어쓰므로 변경한 내용은 모두 손실됩니다.
참고
AWS OpsWorks Stacks는 PORT 환경 변수를 80 (기본값) 또는 443 (활성화한 경우SSL) 으로 설정하므로 다음 코드를 사용하여 요청을 수신할 수 있습니다.
app.listen(process.env.PORT);
SSL지원하도록 Node.js 앱을 구성하는 경우 키와 인증서를 지정해야 합니다. AWS OpsWorks Stacks는 다음과 같이 각각의 애플리케이션 서버 인스턴스에 대한 데이터를 별도의 파일로 /srv/www/
디렉터리에 저장합니다.app_shortname
/shared/config
-
ssl.crt
— SSL 인증서. -
ssl.key
— SSL 키. -
ssl.ca
– 체인 인증서(지정한 경우).
애플리케이션은 해당 파일에서 SSL 키와 인증서를 얻을 수 있습니다.