사용자 지정 구성 추가
Spark 작업과 커널을 제출할 때, Spark 런타임에 적용할 사용자 지정 구성을 지정할 수 있습니다.
인스턴스 수준에서 사용자 지정 구성 지정하기
curl -k --request PATCH <INSTANCE_ENDPOINT>/default_configs -H "Authorization: Bearer <ACCESS_TOKEN>" --data-raw '{ "spark.ui.requestheadersize": "14k", "spark.eventLog.enabled": "true"}'
}
커널 수준에서 사용자 정의 구성 지정:
curl -k -X POST <KERNEL_ENDPOINT> -H "Authorization: Bearer <ACCESS_TOKEN>" -d '{"name":"python310", "engine": {"conf": {"spark.ui.requestheadersize":"16k", "spark.eventLog.enabled": "true"}}}'
curl -k -X POST <V4_JOBS_API_ENDPOINT> -H "Authorization: Bearer <ACCESS_TOKEN>" -d @input.json
An example payload:
{
"application_details": {
"application": "/opt/ibm/spark/examples/src/main/python/wordcount.py",
"arguments": ["/opt/ibm/spark/examples/src/main/resources/people.txt"],
"conf": {
"spark.app.name": "MyJob",
"spark.eventLog.enabled": "true",
"spark.ui.requestheadersize":"16k"
}
}
}
인스턴스 수준 및 커널 수준 구성 외에도,, nodeselector tolerations및 을 사용하여 Kubernetes 클러스터 내의 노드를 topologySpreadConstraints 선택하여(Spark 런타임을 배포하기 위해) 설정할 수 있습니다.
Base64 인코딩 형식으로 속성을 지정하십시오.
예:
다음 예제는.을 topologySpreadConstraints사용하여 정의된 속성을 보여줍니다.
[
{
"maxSkew": 1,
"topologyKey": "mynode",
"whenUnsatisfiable": "DoNotSchedule"
}
]
"ae.kubernetes.spec.topologySpreadConstraints": "WwogIHsKICAgICJtYXhTa2V3IjogMSwKICAgICJ0b3BvbG9neUtleSI6ICJteW5vZGUiLAogICAgIndoZW5VbnNhdGlzZmlhYmxlIjogIkRvTm90U2NoZWR1bGUiCiAgfQpdCg=="
다음 예제는, nodeselector 및 tolerations 라는 세 가지 구성을 모두 topologySpreadConstraints정의하는 포괄적인 방법을 보여줍니다. 모든 값은 Base64 형식으로 인코딩됩니다.
"ae.kubernetes.spec.tolerations": "W3sKCiAgImtleSI6ICJrZXkxIiwKCiAgIm9wZXJhdG9yIjogIkVxdWFsIiwKCiAgInZhbHVlIjogInZhbHVlMSIsCgogICJlZmZlY3QiOiAiTm9FeGVjdXRlIiwKCiAgInRvbGVyYXRpb25TZWNvbmRzIjogOTAwCgp9LCB7CgogICJrZXkiOiAia2V5MTIiLAoKICAib3BlcmF0b3IiOiAiRXF1YWwiLAoKICAidmFsdWUiOiAidmFsdWUyIiwKCiAgImVmZmVjdCI6ICJOb0V4ZWN1dGUiLAoKICAidG9sZXJhdGlvblNlY29uZHMiOiA5MDAKCn1dCg==",
"ae.kubernetes.spec.nodeSelector": "bXlub2RlOiBzcGFyawo=",
"ae.kubernetes.spec.topologySpreadConstraints": "WwogIHsKICAgICJtYXhTa2V3IjogMSwKICAgICJ0b3BvbG9neUtleSI6ICJteW5vZGUiLAogICAgIndoZW5VbnNhdGlzZmlhYmxlIjogIkRvTm90U2NoZWR1bGUiCiAgfQpdCg=="
관리자가 서비스 수준에서 설정한 구성은 변경할 수 없습니다. 인스턴스 수준에서 또는 커널 요청이나 작업 요청을 제출할 때 구성을 수정할 수 없습니다. 설정을 전달하더라도 무시됩니다.