계층별 운영 체제 패키지 설치 - AWS OpsWorks

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

계층별 운영 체제 패키지 설치

중요

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

Chef 12부터는 서로 다른 운영 체제에서 실행되는 계층에 패키지를 설치하려면 사용자 지정 레시피를 사용해야 합니다. 이 방법은 가장 유연하게 패키지를 설치하고 제어할 수 있는 방법입니다.

예를 들어 실행 중인 레이어 RedHat, Ubuntu 및 Amazon 버전의 Linux 운영 체제에 Apache를 설치하려고 한다고 가정해 보겠습니다. Amazon Linux용 RedHat 아파치 패키지가 httpd 호출되지만 우분투에서는 호출됩니다. apache2

패키지 이름의 차이를 해결하기 위해 다음 예제 레시피와 비슷한 구문을 사용할 수 있습니다. 이 레시피는 각 운영 체제에 적절한 Apache 패키지를 설치합니다. 이 예제는 Chef 설명서에 기반합니다.

package "Install Apache" do case node[:platform] when "redhat", "amazon" package_name "httpd" when "ubuntu" package_name "apache2" end end

package 리소스를 사용하여 패키지를 관리하는 방법에 대한 자세한 내용은 Chef 설명서의 패키지 페이지를 참조하세요.

또는 Chef 레시피 DSL(Domain-Specific Language)의 value_for_platform 도우미 메서드를 사용하면 더 간단하게 같은 결과를 얻을 수 있습니다.

package "Install Apache" do package_name value_for_platform( ["redhat", "amazon"] => { "default" => "httpd" }, ["ubuntu"] => { "default" => "apache2" } ) end

value_for_platform 도우미 메서드 사용에 대한 내용은 레시피 DSL에 대하여를 참조하세요.