Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[SPARK-28534][K8S][TEST] Update node affinity for DockerForDesktop backend in PVTestsSuite #25269

Closed
wants to merge 1 commit into from

Conversation

dongjoon-hyun
Copy link
Member

@dongjoon-hyun dongjoon-hyun commented Jul 26, 2019

What changes were proposed in this pull request?

This PR aims to recover our K8s integration test suite by extending node affinity in order to pass PVTestsSuite in DockerForDesktop environment, too. Previously, PVTestsSuite fails at --deploy-mode docker-for-desktop option because the node affinity requires minibase node.

For Docker Desktop, there are two node names like the following. Note that Spark testing needs K8s v1.13 and above. So, this PR should be verified with Docker Desktop (Edge) version. This PR adds both because next stable Docker Desktop will have K8s v1.14.3.

Docker Desktop (Stable, K8s v1.10.11)

$ kubectl get node
NAME                 STATUS   ROLES    AGE   VERSION
docker-for-desktop   Ready    master   52s   v1.10.11

Docker Desktop 2.1.0.0 (Edge, K8s v1.14.3, Released 2019-07-26)

$ kubectl get node
NAME             STATUS   ROLES    AGE   VERSION
docker-desktop   Ready    master   16h   v1.14.3

How was this patch tested?

Pass the Jenkins K8s integration test (minibase) and install Docker Desktop 2.1.0.0 (Edge) and run the integration test in DockerForDesktop. Note that this fixes only PVTestsSuite.

$ dev/make-distribution.sh --pip --tgz -Phadoop-2.7 -Pkubernetes
$ resource-managers/kubernetes/integration-tests/dev/dev-run-integration-tests.sh --deploy-mode docker-for-desktop --spark-tgz $PWD/spark-*.tgz
...
KubernetesSuite:
...
- PVs with local storage
...

@SparkQA
Copy link

SparkQA commented Jul 26, 2019

@SparkQA
Copy link

SparkQA commented Jul 26, 2019

Test build #108240 has finished for PR 25269 at commit 722965f.

  • This patch passes all tests.
  • This patch merges cleanly.
  • This patch adds no public classes.

@SparkQA
Copy link

SparkQA commented Jul 26, 2019

@dongjoon-hyun
Copy link
Member Author

cc @dbtsai

@dongjoon-hyun
Copy link
Member Author

Hi, @HyukjinKwon and @maropu .
Could you review this PR (which is recovering K8s integration failures), please?

@maropu
Copy link
Member

maropu commented Jul 28, 2019

I run the test, but I couldn't see it passed.
Since I'm not familiar with this test, I might miss some setups for running it, probably...
I used the Docker Desktop(stable) Version 2.0.0.3 (31259);

(base) maropu@: (pr25269 *$%)$kubectl get node
NAME                 STATUS    ROLES     AGE       VERSION
docker-for-desktop   Ready     master    1h        v1.10.11

$ dev/make-distribution.sh --pip --tgz -Phadoop-2.7 -Pkubernetes
$ resource-managers/kubernetes/integration-tests/dev/dev-run-integration-tests.sh --deploy-mode docker-for-desktop --spark-tgz $PWD/spark-*.tgz
...
- PVs with local storage *** FAILED ***
  The code passed to eventually never returned normally. Attempted 69 times over 2.0167555011666667 minutes. Last failure message: pod spark-test-app-853de4ad66e041ae941c441c08ae4822 does not have a host assigned. (PVTestsSuite.scala:117)

It seems the pod was created successfully;

(base) maropu@~/Desktop/spark: (master %=)$kubectl get po --all-namespaces
NAMESPACE                          NAME                                              READY     STATUS    RESTARTS   AGE
98d0b44c7a2f49828bf9a2a97c07a786   spark-test-app-853de4ad66e041ae941c441c08ae4822   0/1       Pending   0          2m

@dongjoon-hyun
Copy link
Member Author

Hi, @maropu . Thank you for testing.
It's a K8s version issue for PVC feature. We need K8s 1.13.x and above. So, you should use Docker Desktop 2.1.0.0 (Edge) as described in the How was this patch tested? section. The next Stable version will be replaced by this Edge version.

@maropu
Copy link
Member

maropu commented Jul 28, 2019

@dongjoon-hyun oh, yeah. Thanks for the explanation! I'll try later.

@dongjoon-hyun
Copy link
Member Author

Thank you. Sorry for wasting your time due to the ambiguity. I'll update the PR.

@dongjoon-hyun
Copy link
Member Author

I updated the PR description~

@HyukjinKwon
Copy link
Member

Tested as guided:

KubernetesSuite:
...
- PVs with local storage

Merged to master.

@dongjoon-hyun
Copy link
Member Author

Thank you so much, @HyukjinKwon and @maropu !

@dongjoon-hyun dongjoon-hyun deleted the SPARK-28534 branch July 29, 2019 14:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants