Common Cookbooks 참조

Azure CycleCloud 클러스터는 기본 머신 이미지, CycleCloud 클러스터 Init 및 Chef 인프라 자동화 프레임워크의 조합을 사용하여 빌드 및 구성됩니다.

고급 CycleCloud 사용자만 Chef 쿡북을 빌드하는 방법을 이해해야 합니다. 그러나 많은 사용자가 CycleCloud에서 Chef를 사용하는 방법에 대한 기본 지식을 활용할 수 있습니다. 특히 사용자는 Chefrecipeattributesrun_list개념을 이해해야 합니다.

기본 Chef 개념

CycleCloud 클러스터의 각 node 클러스터는 Chef run_list를 따라 초기화됩니다. 순서 run_list 가 지정된 기능 집합이거나 recipes 노드를 초기화하기 위해 적용됩니다. 자체 recipes 적으로 기능을 적용하는 데 필요한 하위 수준 시스템 작업을 구현합니다. Cookbooks 는 기능을 구성하는 컬렉션 recipes 입니다. Cookbooksrecipes 기능의 추가 사용자 지정 및 구성을 허용하도록 Chef attributes 에 의해 매개 변수화됩니다.

CycleCloud는 많은 사용자에게 충분한 클러스터 유형 집합을 프로비전하는 데 사용할 수 있는 미리 정의된 클러스터 템플릿 집합과 함께 제공됩니다. 또한 Cluster-Init를 사용하여 추가 사용자 지정을 쉽게 수행할 수 있습니다. 따라서 대부분의 사용자는 직접 recipescookbooks수정 run_lists 하거나 빌드할 필요가 없습니다.

그러나 CycleCloud 클러스터는 모든 CycleCloud 클러스터에서 사용할 수 있는 Common Cookbook 집합을 사용하여 프로비전되며 cookbooks 사용자가 사용자 지정할 수 있는 집합 attributes 이 있습니다. 가장 일반적으로 사용되는 attributes 일부 항목은 아래에 설명되어 있습니다.

참고

Chef 특성을 직접 수정하려면 클러스터 템플릿 기능을 사용하는 것이 좋습니다.

일반적인 Cookbook 특성은 변경될 수 있습니다. 특성 설정은 일반적으로 제어하는 기능이 CycleCloud 자체의 보다 일반적이고 강력한 기능으로 제공되므로 대체됩니다. 클러스터 템플릿과 Chef 특성을 통해 사용자 지정을 모두 사용할 수 있는 경우 더 일반적인 솔루션이므로 항상 클러스터 템플릿 메서드를 선호합니다.

Opscode Chef 프레임워크 자체에 대한 자세한 내용은 Opscode 웹 사이트를 참조하세요.

Chef 특성 사용

Chef attributes 는 개별 노드 또는 노드 배열에 run_list 대한 작업을 구성합니다. 노드의 [[[configuration]]] 하위 섹션에서 설정해야 합니다. 예를 들어 CycleServer를 실행하도록 구성된 노드에 대해 CycleServer 관리자 암호를 설정하려면 다음을 수행합니다.

[[node cycle_server]]

[[[configuration]]]

run_list = role[monitor], recipe[cyclecloud::searchable], recipe[cfirst], \
recipe[cuser::admins], recipe[cshared::client], recipe[cycle_server::4-2-x], \
recipe[cluster_init], recipe[ccallback::start], recipe[ccallback::stop]

cycle_server.admin.pass=P\@ssw0rd

썬더볼

Cycle Computing은 클라우드 서비스에서 노드로 개체의 다운로드를 간소화하기 위해 호출 thunderball 되는 Chef 리소스를 제공합니다. thunderball은 실패한 다운로드 재시도를 자동으로 처리하고 여러 구성을 지원합니다. 기본적으로 thunderball은 CycleCloud 패키지 리포지토리에서 파일을 다운로드하여 씁니다 $JETPACK_HOME/system/chef/cache/thunderballs. 기본 구성을 사용하는 예제:

thunderball "condor" do
    url "cycle/condor-8.2.9.tgz"
end

아래 표에는 썬더볼 리소스의 모든 특성이 나와 있습니다.

attribute 설명
체크섬(checksum) 다운로드할 아티팩트에 대한 SHA256 체크섬입니다.
클라이언트 사용할 명령줄 클라이언트입니다. 기본값은 :pogo입니다.
config 사용할 사용자 지정 thunderball 구성입니다.
dest_file 다운로드할 파일 경로입니다. storedir 는 사용 중일 때 dest_file 무시됩니다.
storedir 위치 파일이 다운로드됩니다. 기본값은 thunderball.storedir입니다.
url 다운로드할 파일의 위치(전체 또는 부분)입니다.

사용자 지정 구성 섹션을 사용하여 다른 리포지토리에서 개체를 다운로드할 수 있습니다.

attribute Description
base 기본 URL입니다.
클라이언트 공급자와 상호 작용하는 명령줄 도구입니다.
엔드포인트(endpoint) 사용할 URL 엔드포인트입니다.
파일 이름 사용할 구성 파일입니다.
password Azure의 암호입니다.
proxy_host 프록시로 사용할 호스트입니다.
proxy_port 프록시에 사용할 포트입니다.
사용자 이 구성을 사용할 로컬 시스템 사용자입니다. 구성 파일은 이 사용자의 홈 디렉터리에 배치됩니다(filename 이 파일을 사용하는 경우 무시됨).
사용자 이름 Azure에 대한 Access_key/사용자 이름입니다.