Dataproc Spark 클러스터를 만들 때 명령에 --properties spark:spark.jars.packages=mysql:mysql-connector-java:6.0.6
을 전달합니다. 우리 PySpark 스크립트가 분명히 창조에이 아무것도하지 않는 CloudSQLGCP Dataproc spark.jar.packages 관련 문제 다운로드
을 저장,하지만 첫 번째 spark-submit
에이 의존성을 해결하기 위해 노력할 것입니다에 대한
이입니다.
기술적으로는 해결하고 필요한 jar 파일을 다운로드 보이지만 클러스터의 첫 번째 작업으로 인해 spark-submit
Exception in thread "main" java.lang.RuntimeException: [download failed: mysql#mysql-connector-java;6.0.6!mysql-connector-java.jar]
at org.apache.spark.deploy.SparkSubmitUtils$.resolveMavenCoordinates(SparkSubmit.scala:1177)
at org.apache.spark.deploy.SparkSubmit$.prepareSubmitEnvironment(SparkSubmit.scala:298)
at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:153)
at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:119)
at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
전체에서 방출 경고의 실패 것은 그러나
Ivy Default Cache set to: /root/.ivy2/cache
The jars for the packages stored in: /root/.ivy2/jars
:: loading settings :: url = jar:file:/usr/lib/spark/jars/ivy-2.4.0.jar!/org/apache/ivy/core/settings/ivysettings.xml
mysql#mysql-connector-java added as a dependency
:: resolving dependencies :: org.apache.spark#spark-submit-parent;1.0
confs: [default]
found mysql#mysql-connector-java;6.0.6 in central
downloading https://repo1.maven.org/maven2/mysql/mysql-connector-java/6.0.6/mysql-connector-java-6.0.6.jar ...
:: resolution report :: resolve 527ms :: artifacts dl 214ms
:: modules in use:
mysql#mysql-connector-java;6.0.6 from central in [default]
---------------------------------------------------------------------
| | modules || artifacts |
| conf | number| search|dwnlded|evicted|| number|dwnlded|
---------------------------------------------------------------------
| default | 1 | 1 | 1 | 0 || 1 | 0 |
---------------------------------------------------------------------
:: problems summary ::
:::: WARNINGS
[FAILED ] mysql#mysql-connector-java;6.0.6!mysql-connector-java.jar: Downloaded file size doesn't match expected Content Length for https://repo1.maven.org/maven2/mysql/mysql-connector-java/6.0.6/mysql-connector-java-6.0.6.jar. Please retry. (212ms)
[FAILED ] mysql#mysql-connector-java;6.0.6!mysql-connector-java.jar: Downloaded file size doesn't match expected Content Length for https://repo1.maven.org/maven2/mysql/mysql-connector-java/6.0.6/mysql-connector-java-6.0.6.jar. Please retry. (212ms)
==== central: tried
https://repo1.maven.org/maven2/mysql/mysql-connector-java/6.0.6/mysql-connector-java-6.0.6.jar
::::::::::::::::::::::::::::::::::::::::::::::
:: FAILED DOWNLOADS ::
::^see resolution messages for details^::
::::::::::::::::::::::::::::::::::::::::::::::
:: mysql#mysql-connector-java;6.0.6!mysql-connector-java.jar
::::::::::::::::::::::::::::::::::::::::::::::
클러스터의 후속 작업에서이 출력을 표시합니다.
Ivy Default Cache set to: /root/.ivy2/cache
The jars for the packages stored in: /root/.ivy2/jars
:: loading settings :: url = jar:file:/usr/lib/spark/jars/ivy-2.4.0.jar!/org/apache/ivy/core/settings/ivysettings.xml
mysql#mysql-connector-java added as a dependency
:: resolving dependencies :: org.apache.spark#spark-submit-parent;1.0
confs: [default]
found mysql#mysql-connector-java;6.0.6 in central
:: resolution report :: resolve 224ms :: artifacts dl 5ms
:: modules in use:
mysql#mysql-connector-java;6.0.6 from central in [default]
---------------------------------------------------------------------
| | modules || artifacts |
| conf | number| search|dwnlded|evicted|| number|dwnlded|
---------------------------------------------------------------------
| default | 1 | 0 | 0 | 0 || 1 | 0 |
---------------------------------------------------------------------
:: retrieving :: org.apache.spark#spark-submit-parent
confs: [default]
0 artifacts copied, 1 already retrieved (0kB/7ms)
그래서 제 질문은 : 원인 &이가 GCP에서 좋은 사람들에 의해 고정 할 수 있습니다 무엇
- ?
- 클러스터의 시작시 실패 할 수있는 더미 작업을 실행하는 것 외에 임시 해결 방법이 있습니까?
우리는 모든이 있습니다
2) 다른 담쟁이 설정 (이 축소/5XX 오류의 가능성을 제거한다)
것은이 문서를 참조하십시오 구글 메이븐 중앙 미러를 가리키는
spark.jars.ivySettings
속성을 통해 파일 제공 클러스터가 만들어지기 때문에 꽤 재현 할 수 있습니다 :-) 내용이 프로토콜 (또는 그 이상)에 의해 gzip 처리 되었기 때문에 content-length에 대해 불평합니다. 우리는 당신의 접근 방식을 시도하고 어떤 것이 효과가 있는지보고 할 것입니다. (가장) –어떤 구역에서 이런 현상이 발생합니까? 또한'--no-address' 플래그를 사용하고 있습니까, 아니면 외부 액세스를 막는 방화벽 규칙을 가지고 있습니까? – tix
현재 'europe-west1-d'이지만 플래그는 아니며 방화벽 규칙이 아닙니다. 다운로드가 실제로 성공했다고 말했지만, 파일 크기가 일치하지 않는다는 경고 때문에 오류가 발생합니다. 불행하게도 이것은 첫 번째 작업에는 실패하지만 Airflow 덕분에 재 시도 할 것이지만 꽤 좋지 않고 어떤 종류의 GCP 버그처럼 보입니다. –