사용자 지정 Tomcat 서버 계층 생성 - AWS OpsWorks

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

사용자 지정 Tomcat 서버 계층 생성

중요

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

참고

이 항목에서는 Linux 스택용 사용자 지정 계층을 구성하는 방법을 설명합니다. 하지만 기본 원칙 및 일부 코드(특히 앱 배포 섹션)를 수정하면 Windows 스택용 사용자 지정 계층도 구현할 수 있습니다.

AWS OpsWorks Stacks 인스턴스에서 비표준 패키지를 사용하는 가장 간단한 방법은 기존 레이어를 확장하는 것입니다. 하지만 이 접근 방식은 계층이 인스턴스에 표준 및 비표준 패키지를 모두 설치하고 실행하므로 항상 바람직한 것은 아닙니다. 약간 까다롭지만 더 강력한 접근 방식은 사용자 지정 계층을 구현하는 것입니다. 이는 다음을 비롯해 계층의 인스턴스에 대해 거의 완벽한 제어를 제공합니다.

  • 설치될 패키지

  • 패키지가 구성되는 방법

  • 리포지토리에서 인스턴스로 앱을 배포하는 방법

콘솔 또는 API를 사용하여 사용자 지정 계층 섹션에 설명된 대로 다른 계층과 거의 똑같이 사용자 지정 계층을 생성하고 관리합니다. 하지만 사용자 지정 계층의 내장 레시피는 Ganglia 클라이언트를 설치하여 Ganglia 마스터로 측정치를 보고하는 것과 같은 매우 기본적인 일부 작업만 수행합니다. 사용자 지정 계층의 인스턴스가 최소 기능 이상을 발휘하게 하려면 패키지 설치와 구성, 앱 배포 등의 작업을 처리하도록 Chef 레시피 및 관련 파일을 포함하는 하나 이상의 사용자 지정 쿡북을 구현해야 합니다. 하지만 모든 것을 처음부터 구현해야 하는 것은 아닙니다. 예를 들어 애플리케이션을 표준 리포지토리 중 하나에 저장하는 경우 내장 deploy 레시피를 사용하여 계층의 인스턴스에 애플리케이션을 설치하는 작업을 대부분 처리할 수 있습니다.

참고

Chef를 처음 사용하는 경우 먼저 다양한 일반적인 작업을 수행하기 위한 쿡북을 구현하는 기본적인 방법을 소개하는 쿡북 101 섹션을 읽어야 합니다.

다음 안내서에서는 Tomcat 애플리케이션 서버를 지원하는 사용자 지정 계층을 구현하는 방법을 설명합니다. 이 계층은 Tomcat이라는 사용자 지정 쿡북을 기반으로 하며, 패키지 설치, 배포 등을 처리하는 레시피를 포함합니다. 이 안내서는 Tomcat 쿡북에서 발췌된 코드를 포함하고 있습니다. 해당 리포지토리에서 전체 쿡북을 다운로드할 수 있습니다. GitHub Opscode Chef에 대해 잘 알지 못하는 경우 먼저 쿡북과 레시피 섹션을 읽어야 합니다.

참고

AWS OpsWorks 스택에는 프로덕션 용도로 사용할 수 있는 모든 기능을 갖춘 Java App Server 레이어가 포함되어 있습니다. Tomcat 쿡북은 사용자 지정 계층을 구현하는 방법을 예시하는 것이 목적이므로 SSL과 같은 기능을 포함하지 않는 제한적 버전의 Tomcat만 지원합니다. 전체 기능을 제공하는 구현의 예는 내장 opsworks_java 쿡북 단원을 참조하세요.

Tomcat 쿡북은 인스턴스가 다음과 같은 특성을 갖는 사용자 지정 계층을 지원합니다.

  • Apache 프런트 엔드를 포함하는 Tomcat Java 애플리케이션 서버를 지원함

  • 애플리케이션이 JDBC DataSource 객체를 사용하여 백 엔드 데이터 스토어로 사용되는 별도의 MySQL 인스턴스에 연결하는 것을 허용하도록 Tomcat이 구성됨

이 프로젝트의 쿡북에는 다수의 주요 구성 요소가 포함됩니다.

  • 속성 파일은 다양한 레시피가 사용하는 구성 파일을 포함하고 있습니다.

  • 설정 레시피는 계층의 설정 수명 주기 이벤트에 할당됩니다. 이 레시피는 인스턴스 부팅 후 실행되며 패키지 설치, 구성 파일 생성과 같은 작업을 수행합니다.

  • Configure 레시피는 계층의 Configure 수명 주기 이벤트에 할당됩니다. 스택의 구성이 변경된 후(주로 인스턴스가 온라인 상태가 되거나 오프라인 상태가 될 때) 실행되며 필요한 구성 변경을 모두 처리합니다.

  • Deploy 레시피는 계층의 Deploy 수명 주기 이벤트에 할당됩니다. 이 레시피는 설정 레시피 이후 또한 사용자가 수동으로 앱을 배포하여 코드 및 관련 파일을 계층의 인스턴스에 설치할 때 실행되며, 서비스 재시작과 같은 관련 작업을 처리합니다.

마지막 섹션 스택 생성 및 애플리케이션 실행에서는 Tomcat 쿡북을 기반으로 한 사용자 지정 계층을 포함하는 스택을 생성하는 방법과 별도의 MySQL 계층에 속하는 인스턴스에서 실행되는 MySQL 데이터베이스로부터 데이터를 표시하는 간단한 JSP 애플리케이션을 배포하고 실행하는 방법을 설명합니다.

참고

Tomcat 쿡북 레시피는 일부 Stacks에 내장된 레시피에 따라 달라집니다. AWS OpsWorks 각 레시피의 출처를 명확히 하기 위해 이 항목에서는 Chef cookbookname::recipename 규칙을 사용하여 레시피를 식별합니다.