다양한 파일 사용
중요하다
AKS의 Azure HDInsight는 2025년 1월 31일에 사용 중지되었습니다. 그 발표 를 통해 자세히 알아보세요.
워크로드가 갑자기 종료되는 것을 방지하기 위해 워크로드를 Microsoft Fabric 또는 동등한 Azure 제품으로 워크로드를 마이그레이션해야 합니다.
중요하다
이 기능은 현재 미리 보기로 제공됩니다. Microsoft Azure Preview에 대한 추가 사용 약관에는 베타, 프리뷰 또는 아직 일반 공급으로 출시되지 않은 Azure 기능에 적용되는 더 많은 법률 조건이 포함되어 있습니다. 이 특정 미리 보기에 대한 정보는 Azure HDInsight 의 AKS 미리 보기 정보을 참조하세요. 질문이나 기능 제안이 있으면, 세부 사항과 함께 AskHDInsight에 요청을 제출해 주세요. 더 많은 업데이트를 받으시려면 Azure HDInsight Community를 팔로우하세요.
이 문서에서는 기타 파일 구성을 지정하고 사용하는 방법에 대해 자세히 설명합니다.
ARM 템플릿을 사용하여 클러스터에서 기타 파일을 사용하기 위한 구성을 추가할 수 있습니다. 더 광범위한 예제는 서비스 구성참조하세요.
필수 구성 요소
- AKS에서 HDInsight를 사용하는 운영 Trino 클러스터입니다.
- 클러스터에 대한 ARM 템플릿 만듭니다.
- 클러스터 의 ARM 템플릿 샘플을 모두 검토합니다.
- ARM 템플릿 작성 및 배포대한 숙지
기타 파일 추가
ARM 템플릿의 clusterProfile.serviceConfigsProfiles
miscfiles
구성 요소의 각 파일 사양에는 다음이 필요합니다.
fileName
: 다른 구성에서 참조로 사용할 파일의 기호화된 이름입니다. 이 이름은 실제 파일 이름이 아닙니다. 다른 구성에서 지정된 기타 파일을 사용하려면 AKS에서${MISC:\<fileName\>}
지정하고 HDInsight는 이 태그를 런타임에 실제 파일 경로로 대체합니다. 제공된 값은 다음 조건을 충족해야 합니다.- 253자 이하 포함
- 소문자 영숫자와
-
또는.
만 포함하며 - 영숫자 문자로 시작 및 종료
path
: 해당하는 경우 파일 이름 및 확장명을 포함한 상대 파일 경로입니다. AKS에서 HDInsight를 사용하는 Trino는 기본 디렉터리가 변경되는 경우에도 각 기타 파일의 위치를 다른 기타 파일과 상대적으로만 보장합니다. "path" 속성에 지정된 값으로 끝난다는 점을 제외하고는 기타 파일의 절대 경로에 대해 아무 것도 가정할 수 없습니다.content
: 파일 콘텐츠가 포함된 JSON 이스케이프 문자열입니다. 콘텐츠 형식은 특정 Trino 기능과 관련이 있으며, 예를 들어 리소스 그룹json과 같이 다를 수 있습니다.
메모
구성이 잘못되면 Trino 클러스터가 시작되지 않을 수 있습니다. 구성을 추가하는 데 주의해야 합니다.
다음 예제에서는
- 샘플 리소스 그룹 json을 추가하고 이를 사용하도록 코디네이터를 구성합니다.
"serviceConfigsProfiles": [
{
"serviceName": "trino",
"configs": [
{
"component": "common",
"files": [
{
"fileName": "resource-groups.properties",
"values": {
"resource-groups.configuration-manager": "file",
"resource-groups.config-file": "${MISC:resource-groups}"
}
}
]
},
{
"component": "miscfiles",
"files": [
{
"fileName": "resource-groups",
"path": "/customDir/resource-groups.json",
"content": "{\"rootGroups\":[{\"name\":\"global\",\"softMemoryLimit\":\"80%\",\"hardConcurrencyLimit\":100,\"maxQueued\":1000,\"schedulingPolicy\":\"weighted\",\"jmxExport\":true,\"subGroups\":[{\"name\":\"data_definition\",\"softMemoryLimit\":\"10%\",\"hardConcurrencyLimit\":5,\"maxQueued\":100,\"schedulingWeight\":1},{\"name\":\"adhoc\",\"softMemoryLimit\":\"10%\",\"hardConcurrencyLimit\":50,\"maxQueued\":1,\"schedulingWeight\":10,\"subGroups\":[{\"name\":\"other\",\"softMemoryLimit\":\"10%\",\"hardConcurrencyLimit\":2,\"maxQueued\":1,\"schedulingWeight\":10,\"schedulingPolicy\":\"weighted_fair\",\"subGroups\":[{\"name\":\"${USER}\",\"softMemoryLimit\":\"10%\",\"hardConcurrencyLimit\":1,\"maxQueued\":100}]}]}]},{\"name\":\"admin\",\"softMemoryLimit\":\"100%\",\"hardConcurrencyLimit\":50,\"maxQueued\":100,\"schedulingPolicy\":\"query_priority\",\"jmxExport\":true}],\"selectors\":[{\"group\":\"global.adhoc.other.${USER}\"}],\"cpuQuotaPeriod\":\"1h\"}"
}
]
}
]
}
클러스터의 변경 내용을 반영하도록 업데이트된 ARM 템플릿을 배포합니다. ARM 템플릿을 배포하는 방법을 배우세요.