기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
자세히 알아보기: 이 안내서에서 사용한 쿡북 살펴보기
중요
The AWS OpsWorks Stacks 서비스 수명이 2024년 5월 26일에 종료되었으며 신규 및 기존 고객 모두 사용할 수 없습니다. 고객은 가능한 한 빨리 워크로드를 다른 솔루션으로 마이그레이션할 것을 강력히 권장합니다. 마이그레이션에 대해 궁금한 점이 있으면 다음 연락처로 문의하십시오. AWS Support 팀 구성: AWS re:포스트 포스트
이 항목에서는 다음과 같은 쿡북에 대해 설명합니다. AWS OpsWorks 둘러보는 데 사용되는 스택입니다.
쿡북은 Chef 개념의 하나입니다. 쿡북은 레시피, 속성 값, 파일, 템플릿, 라이브러리, 정의, 사용자 지정 리소스 같은 구성 정보가 포함되어 있는 아카이브 파일입니다. 레시피 역시 Chef 개념입니다. 레시피는 Ruby 언어 구문으로 작성된 지침으로서 사용할 리소스와 이러한 리소스가 적용되는 순서를 지정합니다. 자세한 내용은 Learn Chef
이 안내서에 사용된 쿡북의 내용을 보려면 opsworks-linux-demo-cookbooks-nodejs.tar.gz/var/chef/cookbooks
디렉터리의 내용을 살펴볼 수도 있습니다.
cookbooks/nodejs_demo/recipes
디렉터리의 default.rb
파일은 쿡북이 코드를 실행하는 곳입니다.
app = search(:aws_opsworks_app).first app_path = "/srv/#{app['shortname']}" package "git" do options "--force-yes" if node["platform"] == "ubuntu" && node["platform_version"] == "18.04" end application app_path do javascript "4" environment.update("PORT" => "80") git app_path do repository app["app_source"]["url"] revision app["app_source"]["revision"] end link "#{app_path}/server.js" do to "#{app_path}/index.js" end npm_install npm_start end
이 파일이 하는 일은 다음과 같습니다.
-
search(:aws_opsworks_app).first
는 Chef 검색을 사용하여 최종적으로 인스턴스에 배포될 앱에 대한 정보를 찾습니다. 이 정보에는 앱의 짧은 이름과 소스 리포지토리 세부 정보 같은 설정이 포함됩니다. 이 안내서에서는 앱 하나만 배포했으므로 Chef 검색은 인스턴스에서aws_opsworks_app
검색 인덱스 내 정보의 첫 번째 항목에서 이러한 설정을 가져옵니다. 인스턴스가 시작될 때마다 AWS OpsWorks Stacks는 이 정보와 기타 관련 정보를 인스턴스 자체에 데이터 백 세트로 저장하며 Chef 검색을 통해 데이터 백 콘텐츠를 가져옵니다. 이 설정들을 이 레시피에 하드코딩할 수 있지만 데이터 백과 Chef 검색을 사용하는 것이 더 확실한 방법입니다. 데이터 백에 대한 자세한 정보는 AWS OpsWorks 스택 데이터 백 레퍼런스 단원을 참조하세요. Learn Chef웹 사이트의 데이터 백에 대한 정보 도 참조하세요. Chef 검색에 대한 자세한 내용은 Learn Chef 웹 사이트의 검색 정보 를 참조하세요. -
package
리소스는 인스턴스에 Git를 설치합니다. -
application
리소스는 웹 애플리케이션을 설명하고 배포합니다.-
javascript
설치할 JavaScript 런타임 버전입니다. -
environment
는 환경 변수를 설정합니다. -
git
는 지정된 리포지토리와 브랜치에서 소스 코드를 가져옵니다. -
app_path
는 리포지토리를 복제할 경로입니다. 인스턴스에 경로가 없는 경우 AWS OpsWorks 스택이 경로를 생성합니다. -
link
는 심볼 링크를 생성합니다. -
npm_install
는 Node.js의 기본 패키지 관리자인 Node Package Manager를 설치합니다. -
npm_start
는 Node.js를 실행합니다.
-
하지만 AWS OpsWorks 이 안내를 위해 사용된 쿡북은 Stacks에서 만들었으므로 직접 쿡북을 만들 수도 있습니다. 자세한 방법은 시작하기 - 쿡북(을)를 참조하세요. 또한 Learn Chef