환경 변수 사용 - AWS OpsWorks

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

환경 변수 사용

중요

이 AWS OpsWorks Stacks 서비스는 2024년 5월 26일에 수명이 종료되었으며 신규 및 기존 고객 모두 사용할 수 없습니다. 고객은 가능한 한 빨리 워크로드를 다른 솔루션으로 마이그레이션할 것을 강력히 권장합니다. 마이그레이션에 대해 궁금한 점이 있으면 AWS re:Post 또는 Premium AWS Support를 통해 AWS Support 팀에 문의하세요.

참고

이 주제의 권장 사항은 Chef 11.10 및 이전 버전에 적용됩니다. Chef 12 이상 릴리스에서 환경 변수를 가져오려면 앱 데이터 백을 사용해야 합니다. 자세한 내용은 AWS OpsWorks 데이터 백 참조 및 앱 데이터 백 (aws_opsworks_app) 을 참조하십시오.

앱의 환경 변수를 지정하면 AWS OpsWorks Stacks는 변수 정의를 앱 속성에 추가합니다. deploy

사용자 지정 계층은 레시피를 사용하여 표준 노드 구문으로 변수의 값을 검색하고 계층의 앱이 액세스할 수 있는 형식으로 저장할 수 있습니다.

인스턴스의 deploy 속성에서 환경 변수 값을 가져오는 사용자 지정 레시피를 구현해야 합니다. 그러면 레시피가 데이터를 애플리케이션이 액세스할 수 있는 형식(예: YAML 파일)으로 인스턴스에 저장할 수 있습니다. 앱의 환경 변수 정의는 앱의 deploy에서 environment_variables 속성에 저장됩니다. 다음 예제는 JSON을 사용하여 속성 구조를 표시함으로써 simplephpapp 앱의 이러한 속성의 위치를 보여줍니다.

{ ... "ssh_users": { }, "deploy": { "simplephpapp": { "application": "simplephpapp", "application_type": "php", "environment_variables": { "USER_ID": "168424", "USER_KEY": "somepassword" }, ... } }

레시피는 표준 노드 구문을 사용하여 변수 값을 가져올 수 있습니다. 다음 예제는 이전 JSON에서 USER_ID 값을 가져와 Chef 로그에 기록하는 방법을 보여줍니다.

Chef::Log.info("USER_ID: #{node[:deploy]['simplephpapp'][:environment_variables][:USER_ID]}")

스택 구성 및 배포 JSON에서 정보를 검색하여 인스턴스에 저장하는 방법에 대한 상세한 설명은 애플리케이션으로 데이터 전달 단원을 참조하세요.