From 21c98d072ad59656b27d8342faa76a5809001ea3 Mon Sep 17 00:00:00 2001 From: lm140765 Date: Mon, 20 Apr 2020 16:07:41 +0800 Subject: [PATCH 1/7] add nscd for name service hosts cache --- .../kubernetes/docker/src/main/dockerfiles/spark/Dockerfile | 2 +- .../kubernetes/docker/src/main/dockerfiles/spark/entrypoint.sh | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/Dockerfile b/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/Dockerfile index 488eefd72f242..f1d51a3245a43 100644 --- a/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/Dockerfile +++ b/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/Dockerfile @@ -38,7 +38,7 @@ ARG k8s_tests=kubernetes/tests RUN set -ex && \ apt-get update && \ ln -s /lib /lib64 && \ - apt install -y bash tini libc6 libpam-modules libnss3 && \ + apt install -y bash tini libc6 libpam-modules libnss3 nscd && \ mkdir -p /opt/spark && \ mkdir -p /opt/spark/work-dir && \ touch /opt/spark/RELEASE && \ diff --git a/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/entrypoint.sh b/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/entrypoint.sh index ba5d17b6b1c74..49ed15c0f24f6 100755 --- a/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/entrypoint.sh +++ b/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/entrypoint.sh @@ -16,6 +16,9 @@ # limitations under the License. # +# nscd start +service nscd start & + # echo commands to the terminal output set -ex From a37a3dcebc8a663078d3384d8a090f2d3e765855 Mon Sep 17 00:00:00 2001 From: ringtail Date: Tue, 21 Apr 2020 10:43:31 +0800 Subject: [PATCH 2/7] fix spark conf registered --- .../src/main/scala/org/apache/spark/deploy/k8s/Config.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resource-managers/kubernetes/core/src/main/scala/org/apache/spark/deploy/k8s/Config.scala b/resource-managers/kubernetes/core/src/main/scala/org/apache/spark/deploy/k8s/Config.scala index 64234721bec89..61958eafc277c 100644 --- a/resource-managers/kubernetes/core/src/main/scala/org/apache/spark/deploy/k8s/Config.scala +++ b/resource-managers/kubernetes/core/src/main/scala/org/apache/spark/deploy/k8s/Config.scala @@ -239,7 +239,7 @@ private[spark] object Config extends Logging { .createOptional val KUBERNETES_EXECUTOR_NODE_NAME = - ConfigBuilder("spark.kubernetes.driver.node.name") + ConfigBuilder("spark.kubernetes.executor.node.name") .doc("Name of the node of executor pod running on.") .stringConf .createOptional From e649ad51aa57a26b6e961d27bc0844db8abd8938 Mon Sep 17 00:00:00 2001 From: lm140765 Date: Tue, 21 Apr 2020 10:48:49 +0800 Subject: [PATCH 3/7] add nscd for name service hosts cache --- .../kubernetes/docker/src/main/dockerfiles/spark/entrypoint.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/entrypoint.sh b/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/entrypoint.sh index 49ed15c0f24f6..2a9bff2f2457d 100755 --- a/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/entrypoint.sh +++ b/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/entrypoint.sh @@ -17,7 +17,7 @@ # # nscd start -service nscd start & +service nscd start # echo commands to the terminal output set -ex From ae1ca6b7a2b2eaf36b8590f060ab54413ed01065 Mon Sep 17 00:00:00 2001 From: ringtail Date: Tue, 21 Apr 2020 17:34:25 +0800 Subject: [PATCH 4/7] add default node name --- .../spark/deploy/k8s/features/BasicDriverFeatureStep.scala | 2 +- .../spark/deploy/k8s/features/BasicExecutorFeatureStep.scala | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/resource-managers/kubernetes/core/src/main/scala/org/apache/spark/deploy/k8s/features/BasicDriverFeatureStep.scala b/resource-managers/kubernetes/core/src/main/scala/org/apache/spark/deploy/k8s/features/BasicDriverFeatureStep.scala index 024ca6248953a..d878e9bc0f607 100644 --- a/resource-managers/kubernetes/core/src/main/scala/org/apache/spark/deploy/k8s/features/BasicDriverFeatureStep.scala +++ b/resource-managers/kubernetes/core/src/main/scala/org/apache/spark/deploy/k8s/features/BasicDriverFeatureStep.scala @@ -46,7 +46,7 @@ private[spark] class BasicDriverFeatureStep( private val driverLimitCores = conf.get(KUBERNETES_DRIVER_LIMIT_CORES) // node name of driver - private val driverNodeName = conf.get(KUBERNETES_DRIVER_NODE_NAME) + private val driverNodeName = conf.get(KUBERNETES_DRIVER_NODE_NAME).getOrElse("") // Memory settings private val driverMemoryMiB = conf.get(DRIVER_MEMORY) diff --git a/resource-managers/kubernetes/core/src/main/scala/org/apache/spark/deploy/k8s/features/BasicExecutorFeatureStep.scala b/resource-managers/kubernetes/core/src/main/scala/org/apache/spark/deploy/k8s/features/BasicExecutorFeatureStep.scala index 2eb5b385cc2f6..622183582bfe6 100644 --- a/resource-managers/kubernetes/core/src/main/scala/org/apache/spark/deploy/k8s/features/BasicExecutorFeatureStep.scala +++ b/resource-managers/kubernetes/core/src/main/scala/org/apache/spark/deploy/k8s/features/BasicExecutorFeatureStep.scala @@ -88,7 +88,7 @@ private[spark] class BasicExecutorFeatureStep( private val executorLimitCores = kubernetesConf.get(KUBERNETES_EXECUTOR_LIMIT_CORES) - private val executorNodeName = kubernetesConf.get(KUBERNETES_EXECUTOR_NODE_NAME) + private val executorNodeName = kubernetesConf.get(KUBERNETES_EXECUTOR_NODE_NAME).getOrElse("") override def configurePod(pod: SparkPod): SparkPod = { val name = From 38e9dd47efc55a581c200376affed661a51d276b Mon Sep 17 00:00:00 2001 From: ringtail Date: Fri, 8 May 2020 21:47:16 +0800 Subject: [PATCH 5/7] add permission to entrypoint --- .../docker/src/main/dockerfiles/spark/historyserver/Dockerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/historyserver/Dockerfile b/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/historyserver/Dockerfile index a0af1271129cf..bc2dcba4ef6c9 100644 --- a/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/historyserver/Dockerfile +++ b/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/historyserver/Dockerfile @@ -6,5 +6,6 @@ ADD https://repo1.maven.org/maven2/com/aliyun/oss/aliyun-sdk-oss/3.8.1/aliyun-sd # change default entrypoint ADD resource-managers/kubernetes/docker/src/main/dockerfiles/spark/historyserver/entrypoint.sh /opt/entrypoint.sh +RUN chmod +x /opt/entrypoint.sh ENTRYPOINT [ "/opt/entrypoint.sh" ] From 9764b8db783af2d6df813674980e66c1c7c9436f Mon Sep 17 00:00:00 2001 From: ringtail Date: Sat, 9 May 2020 10:19:10 +0800 Subject: [PATCH 6/7] change tini path --- .../src/main/dockerfiles/spark/historyserver/entrypoint.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/historyserver/entrypoint.sh b/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/historyserver/entrypoint.sh index 972c55284e4f0..f8c418f4eae80 100644 --- a/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/historyserver/entrypoint.sh +++ b/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/historyserver/entrypoint.sh @@ -93,4 +93,4 @@ else -Dspark.history.fs.logDirectory=$eventsDir"; fi; -exec /sbin/tini -s -- /opt/spark/bin/spark-class org.apache.spark.deploy.history.HistoryServer +exec /usr/bin/tini -s -- /opt/spark/bin/spark-class org.apache.spark.deploy.history.HistoryServer From ba75c4253002da4f1c6814f30bd1aed37f8cacc6 Mon Sep 17 00:00:00 2001 From: ringtail Date: Sat, 9 May 2020 11:06:22 +0800 Subject: [PATCH 7/7] remove script vars in entrypoint --- .../spark/historyserver/entrypoint.sh | 76 ------------------- 1 file changed, 76 deletions(-) diff --git a/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/historyserver/entrypoint.sh b/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/historyserver/entrypoint.sh index f8c418f4eae80..c932edd6882cf 100644 --- a/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/historyserver/entrypoint.sh +++ b/resource-managers/kubernetes/docker/src/main/dockerfiles/spark/historyserver/entrypoint.sh @@ -3,82 +3,6 @@ # echo commands to the terminal output set -ex -enablePVC= - -enableOSS= -alibabaCloudOSSEndpoint= -alibabaCloudAccessKeyId= -alibabaCloudAccessKeySecret= - -eventsDir= - -function usage { - cat<< EOF - Usage: entrypoint.sh [OPTIONS] - Options: - --pvc Enable PVC - --oss accessKeyId accessKeySecret ossEndpoint Enable Alibaba Cloud OSS - --events-dir events-dir Set events dir - -h | --help Prints this message. -EOF -} - -function parse_args { - while [[ $# -gt 0 ]] - do - case "$1" in - --pvc) - enablePVC=true - shift - continue - ;; - --oss) - if [[ -n "$4" ]]; then - enableOSS=true - alibabaCloudAccessKeyId=$2 - alibabaCloudAccessKeySecret=$3 - alibabaCloudOSSEndpoint=$4 - shift 4 - continue - else - printf '"--alibaba" require four non-empty option arguments.\n' - usage - exit 1 - fi - ;; - --events-dir) - if [[ -n "$2" ]]; then - eventsDir=$2 - shift 2 - continue - else - printf '"--events-dir" requires a non-empty option argument.\n' - usage - exit 1 - fi - ;; - -h|--help) - usage - exit 0 - ;; - --) - shift - break - ;; - '') - break - ;; - *) - printf "Unrecognized option: $1\n" - exit 1 - ;; - esac - shift - done -} - -parse_args "$@" - if [[ "$enablePVC" == "true" ]]; then export SPARK_HISTORY_OPTS="$SPARK_HISTORY_OPTS -Dspark.history.fs.logDirectory=file:/mnt/$eventsDir"; elif [[ "$enableOSS" == "true" ]];then