기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
스택 설정을 속성에서 데이터 백으로 이전
중요
이 AWS OpsWorks Stacks 서비스는 2024년 5월 26일에 수명이 종료되었으며 신규 고객과 기존 고객 모두 사용할 수 없게 되었습니다. 고객은 가능한 한 빨리 워크로드를 다른 솔루션으로 마이그레이션할 것을 강력히 권장합니다. 마이그레이션에 대해 궁금한 점이 있으면 AWS re:Post 또는 Premium AWS
AWS OpsWorks 스택은 Chef 레시피에 다양한 스택 설정을 제공합니다. 이러한 스택 설정에는 다음과 같은 값이 포함됩니다.
-
스택 쿡북 소스 URL
-
계층 볼륨 구성
-
인스턴스 호스트 이름
-
Elastic Load Balancing DNS 이름
-
앱 소스 URL
-
사용자 이름
레시피로부터 스택 설정 단원을 참조하면 레시피 코드가 레시피에서 직접 설정을 하드코딩하는 것에 비해 더 강력해지고 오류 발생이 낮아집니다. 이 주제에서는 이러한 스택 설정에 액세스하는 방법과 Linux용 Chef 11.10 및 이전 버전의 속성에서 Chef 12 Linux의 데이터 백으로 스택 설정을 이전하는 방법을 설명합니다.
Linux용 Chef 11.10 및 이전 버전에서는 스택 설정이 Chef 속성node
객체 또는 Chef 검색을 통해 액세스됩니다. 이러한 속성은 디렉터리의 JSON 파일 세트에 있는 AWS OpsWorks Stacks 인스턴스에 저장됩니다. /var/lib/aws/opsworks/chef
자세한 정보는 스택 구성 및 배포 속성: Linux을 참조하세요.
Chef 12 Linux에서는 스택 설정이 Chef 데이터 백/var/chef/runs/
디렉토리의 JSON 파일 세트에 있는 AWS OpsWorks Stacks 인스턴스에 저장됩니다. 여기서 run-ID
/data_bagsRun-ID는
AWS OpsWorks Stacks가 인스턴스에서 실행하는 각 Chef에 할당하는 고유 ID입니다. 스택 설정은 더 이상 Chef 속성으로 제공되지 않으며, 따라서 더 이상 Chef node
객체를 통해 스택 설정에 액세스할 수 없습니다. 자세한 내용은 AWS OpsWorks 스택 데이터 백 레퍼런스을 참조하세요.
예를 들어 Linux용 Chef 11.10 및 이전 버전에서 다음 레시피 코드는 Chef node
객체를 사용하여 앱의 짧은 이름과 소스 URL을 표시하는 속성을 가져옵니다. 그런 다음 Chef 로그를 사용하여 두 속성 값을 기록합니다.
Chef::Log.info ("********** The app's short name is '#{node['opsworks']['applications'].first['slug_name']}' **********") Chef::Log.info("********** The app's URL is '#{node['deploy']['simplephpapp']['scm']['repository']}' **********")
Chef 12 Linux에서는 다음 코드가 aws_opsworks_app
검색 인덱스를 사용하여 aws_opsworks_app
데이터 백에서 첫 번째 데이터 백 항목의 콘텐츠를 가져옵니다. 그런 다음 코드는 Chef 로그에 메시지 2개를 기록합니다. 한 메시지는 앱의 짧은 이름 데이터 백 콘텐츠를 포함하고 다른 메시지는 앱의 소스 URL 데이터 백 콘텐츠를 포함합니다.
app = search("aws_opsworks_app").first Chef::Log.info("********** The app's short name is '#{app['shortname']}' **********") Chef::Log.info("********** The app's URL is '#{app['app_source']['url']}' **********")
Linux용 Chef 11.10 및 이전 버전의 스택 설정에 액세스하는 레시피 코드를 Chef 12 Linux로 마이그레이션하려면 코드를 다음과 같이 수정해야 합니다.
-
Chef 속성이 아니라 Chef 데이터 백에 액세스
-
Chef
node
객체 대신 Chef 검색을 사용 -
및 와 같은 AWS OpsWorks
aws_opsworks_app
Stacks 속성 이름을 사용하는 대신 Stacks 데이터 백 이름 (예:) 을 AWS OpsWorks 사용하십시오.opsworks
deploy
자세한 내용은 AWS OpsWorks 스택 데이터 백 레퍼런스 섹션을 참조하세요.