기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Windows 인스턴스에 패키지 설치
중요
이 AWS OpsWorks Stacks 서비스는 2024년 5월 26일에 만료되었으며 신규 및 기존 고객 모두에 대해 비활성화되었습니다. 가능한 한 빨리 워크로드를 다른 솔루션으로 마이그레이션하는 것이 좋습니다. 마이그레이션에 대한 질문이 있는 경우 AWS re:Post
참고
이 예제에서는 사용자가 이미 Windows 인스턴스에서 레시피 실행 예제를 완료한 것으로 가정합니다. 그렇지 않은 경우 먼저 그 예제를 수행해야 합니다. 특히, 그 예제는 인스턴스에 대한 RDP 액세스를 활성화하는 방법을 설명합니다.
소프트웨어가 MSI와 같은 설치 프로그램 관리자로 제공될 경우 파일을 인스턴스로 다운로드하여 실행해야 합니다. 이 예제는 연결된 환경 변수를 정의하는 방법을 포함하여 MSI 패키지 형태의 Python 런타임을 설치하는 쿡북을 구현하는 방법을 보여줍니다. IIS와 같은 Windows 기능을 설치하는 방법에 대한 자세한 정보는 Windows 기능 설치: IIS 단원을 참조하세요.
쿡북을 설정하려면
-
installpython
하위 디렉터리를 만들고 그 디렉터리로 이동합니다. -
installpython
에 다음 콘텐츠가 포함된metadata.rb
파일을 추가합니다.name "installpython" version "0.1.0"
-
installpython
에recipes
및files
디렉터리를 추가하고 파일에default
디렉터리를 추가합니다. -
Windows용 Python 버전
에서 쿡북의 files\default
디렉터리로 Python 패키지를 다운로드합니다. 이 예제에서는python-3.4.3.amd64.msi
라는 MSI 설치 관리자를 사용하는 Python 3.5.0a3의 Windows x86-64 버전을 설치합니다. -
다음 레시피 코드가 포함된
default.rb
파일을recipes
디렉터리에 추가합니다.directory 'C:\tmp' do rights :full_control, 'Everyone' recursive true action :create end cookbook_file 'C:\tmp\python-3.4.3.amd64.msi' do source "python-3.4.3.amd64.msi" rights :full_control, 'Everyone' action :create end windows_package 'python' do source 'C:\tmp\python-3.4.3.amd64.msi' action :install end env "PATH" do value 'c:\python34' delim ";" action :modify end
이 레시피는 다음 작업을 수행합니다.
-
디렉터리
리소스를 사용하여 C:\tmp
디렉터리를 만듭니다.이 리소스에 대한 자세한 정보는 예제 3: 디렉터리 생성 단원을 참조하세요.
-
cookbook_file
리소스를 사용하여 쿡북의 files\default
디렉터리에서C:\tmp
로 설치 관리자를 복사합니다.이 리소스에 대한 자세한 정보는 쿡북에서 파일 설치 단원을 참조하세요.
-
windows_package
리소스를 사용하여 c:\python34
에 Python을 설치하는 MSI 설치 관리자를 실행합니다.이 설치 관리자는 필수 디렉터리를 만들고 파일을 설치하지만 시스템의
PATH
환경 변수를 수정하지는 않습니다. -
env
리소스를 사용하여 시스템 경로에 c:\python34
를 추가합니다.env 리소스를 사용하여 환경 변수를 정의합니다. 이 경우, 레시피를 사용하면 경로에
c:\python34
를 추가하여 명령줄에서 Python 스크립트를 쉽게 실행할 수 있습니다.-
리소스 이름은 이 예제에 필요한 환경 변수의 이름인
PATH
를 지정합니다. -
value
특성은 이 예제에 필요한 변수 값c:\\python34
를 지정합니다(\
문자를 이스케이프해야 함). -
:modify
작업은 변수의 현재 값 앞에 지정된 값을 추가합니다. -
delim
속성은 새 값을 기존 값과 구분하는 구분 기호를 지정합니다. 이 예제에서는;
입니다.
-
-
-
installpython
의.zip
아카이브를 만들고 그 아카이브를 S3 버킷에 업로드하고 퍼블릭으로 지정합니다. 나중에 사용하기 위해 아카이브의 URL를 적어 둡니다. 자세한 내용은 쿡북 리포지토리 섹션을 참조하세요.Amazon S3 버킷에 전달한 콘텐츠에는 고객 콘텐츠가 포함될 수 있습니다. 중요 데이터 제거에 관한 자세한 내용은 S3 버킷을 비우려면 어떻게 해야 합니까? 단원 또는 S3 버킷을 삭제하려면 어떻게 해야 합니까? 단원을 참조하세요.
다음과 같이 이 예제를 위한 스택을 생성합니다. 기존의 Windows 스택을 사용할 수도 있습니다. 나중에 설명하듯이 쿡북을 업데이트하면 됩니다.
스택을 만듭니다
-
AWS OpsWorks Stacks 콘솔
을 열고 스택 추가를 선택합니다. 다음 설정을 지정하고, 그 외 설정에 대해서는 기본값을 수락한 다음 [스택 추가]를 선택합니다. -
이름 – InstallPython
-
리전 – 미국 서부(오레곤)
이 예제는 모든 리전에서 작동하지만 자습서의 경우 미국 서부(오레곤)를 사용하는 것이 좋습니다.
-
기본 운영 체제 - Microsoft Windows Server 2012 R2
-
-
[계층 추가]를 선택하여 스택에 다음 설정으로 사용자 지정 계층을 추가합니다.
-
이름 – Python
-
짧은 이름 - python
-
-
기본 설정을 사용하여 Python 계층에 24/7 인스턴스를 추가하고 해당 인스턴스를 시작합니다.
인스턴스가 온라인 상태로 전환되면 쿡북을 설치하고 레시피를 실행할 수 있습니다.
쿡북을 설치하고 레시피를 실행하려면
-
스택을 편집해 사용자 지정 쿡북을 활성화하고 다음 설정을 지정합니다.
-
리포지토리 유형 – S3 아카이브
-
리포지토리 URL - 앞에서 기록해 둔 쿡북 아카이브 URL
기타 설정에 대해 기본값을 수락하고 [저장]을 선택하여 스택 구성을 업데이트합니다.
-
-
[사용자 지정 쿡북 업데이트] 스택 명령을 실행하여 스택의 온라인 인스턴스에 사용자 지정 쿡북의 최신 버전을 설치합니다. 쿡북의 이전 버전이 있으면 이 명령이 이전 버전을 덮어 씁니다.
-
실행할 레시피가
installpython::default
으로 설정된 상태에서 레시피 실행 스택 명령을 실행하여 레시피를 실행합니다. 이 명령은installpython::default
로 구성된 실행 목록을 사용하여 Chef 실행을 시작합니다.참고
이 예제에서는 편의상 레시피 실행을 사용하지만 일반적으로 AWS OpsWorks Stacks가 레시피를 적절한 수명 주기 이벤트에 할당하여 레시피를 자동으로 실행하도록 합니다. 수동으로 이벤트를 트리거하여 그러한 레시피를 실행할 수 있습니다. 스택 명령을 사용하여 설정 및 Configure 이벤트를 트리거할 수 있고, 배포 명령을 사용하여 Deploy 및 Undeploy 이벤트를 트리거할 수 있습니다.
-
설치를 확인하려면 RDP를 사용하여 인스턴스에 연결한 다음 Windows 탐색기를 엽니다.
-
이제 파일 시스템에
C:\Python34
디렉터리가 있을 것입니다. -
명령줄에서
path
를 실행하면 그 결과는PATH=c:\python34;C:\Windows\system32;...
와 유사해야 합니다. -
명령줄에서
python --version
을 실행하면Python 3.4.3
을 반환해야 합니다.
-