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

SUBMARINE-292. Merge workbench server into submarine server #93

Closed
wants to merge 2 commits into from

Conversation

xunliu
Copy link
Member

@xunliu xunliu commented Nov 18, 2019

What is this PR for?

Now submarine has 2 services, submarine server and workbench server. These two services have no conflicts.
Originally divided into two services, it is for the development of sub-modules, easy to develop.
But this way

  1. Users need to maintain two service processes, which increases the cost of use and maintenance of users and administrators.
  2. Because we need to be able to run the service on multiple resource scheduling systems(YARN/K8s/Docker), the two services create the complexity of the launcher module.
    So, now the service in the workbench server is migrated to the submarine server. But the code for the workbench server remains the same.

What type of PR is it?

Refactoring

Todos

What is the Jira issue?

How should this be tested?

Screenshots (if appropriate)

|____bin
| |____common.sh
| |____submarine-daemon.sh
| |____submarine-env.sh
|____commons-runtime-0.3.0-SNAPSHOT.jar
|____conf
| |____log4j.properties
| |____log4j.properties.template
| |____submarine-env.sh.template
| |____submarine-site.xml
| |____submarine-site.xml.template
|____lib
| |____bcpg-jdk15on-1.61.jar
| |____bcpkix-jdk15on-1.61.jar
| |____hk2-utils-2.5.0-b42.jar
| |____interpreter
| | |____python
| | | |____python-interpreter-0.3.0-SNAPSHOT-shade.jar
| | |____spark
| | | |____scala-2.11
| | | | |____spark-scala-2.11-0.9.0-SNAPSHOT.jar
| | | |____spark-interpreter-0.3.0-SNAPSHOT-shade.jar
| |____j2objc-annotations-1.1.jar
| |____jackson-annotations-2.9.10.jar
| |____websocket-server-9.4.18.v20190429.jar
| |____workbench
| | |____workbench-web.war
|____LICENSE
|____licenses
| |____LICENSE-asm.txt
| |____LICENSE-hamcrest.txt
| |____LICENSE-slf4j.txt
| |____LICENSE-tony.txt
|____logs
| |____submarine.log
|____NOTICE
|____server
|____submarine-all-0.3.0-SNAPSHOT-hadoop-2.9.jar
|____submarine-client-0.3.0-SNAPSHOT.jar
|____submitter-yarn-0.3.0-SNAPSHOT.jar
|____tony-core-0.3.21.jar

Questions:

  • Does the licenses files need update? Yes/No
  • Is there breaking changes for older versions? Yes/No
  • Does this needs documentation? Yes/No

@xunliu xunliu requested a review from yuanzac November 18, 2019 02:02
return 1;
fi
}

function stop() {
local pid
pid=`found_workbench_server_pid`
pid=`found_submarine_server_server_pid`
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it better to use found_submarine_server_pid?

@@ -94,7 +94,7 @@ public static SubmarineConfiguration getInstance() {
return conf;
}

public static SubmarineConfiguration newInstance() {
private static SubmarineConfiguration newInstance() {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As every session can have its own configuration for user, so newInstance should be public


public class JobApiTest { //extends JerseyTest {
/*
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do we need to comment on this test class? The test cases are not running after this modification

Copy link
Member Author

@xunliu xunliu Nov 18, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The test cases have no practical meaning.
I created new JIRA SUBMARINE-293. Add submarine server rest test case

@@ -30,7 +30,7 @@

<artifactId>submitter-k8s</artifactId>
<version>0.3.0-SNAPSHOT</version>
<name>Submarine: Kubernetes Submitter</name>
<name>Submarine: Submitter Kubernetes</name>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it better to use Kubernetes Submitter?

@@ -26,7 +26,7 @@

<artifactId>submitter-yarn</artifactId>
<version>0.3.0-SNAPSHOT</version>
<name>Submarine: Server Submitter for YARN</name>
<name>Submarine: Submitter YARN</name>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it better to use Yarn Submitter?

@@ -30,7 +30,7 @@

<artifactId>submitter-yarnservice</artifactId>
<version>0.3.0-SNAPSHOT</version>
<name>Submarine: Server Submitter for YARN Service</name>
<name>Submarine: Submitter YARN Service</name>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it better to use Yarn Service Submitter?

@xunliu
Copy link
Member Author

xunliu commented Nov 18, 2019

@yuanzac , Thank you help me review, I fixed there issue on your suggestion.

@yuanzac
Copy link
Contributor

yuanzac commented Nov 19, 2019

Thanks, @liuxunorg for your contribution.

@asfgit asfgit closed this in 51192a8 Nov 19, 2019
kevin85421 pushed a commit to kevin85421/hadoop-submarine that referenced this pull request Nov 26, 2019
### What is this PR for?
Now submarine has 2 services, submarine server and workbench server. These two services have no conflicts.
Originally divided into two services, it is for the development of sub-modules, easy to develop.
But this way
1. Users need to maintain two service processes, which increases the cost of use and maintenance of users and administrators.
2. Because we need to be able to run the service on multiple resource scheduling systems(YARN/K8s/Docker), the two services create the complexity of the launcher module.
So, now the service in the workbench server is migrated to the submarine server. But the code for the workbench server remains the same.

### What type of PR is it?
Refactoring

### Todos
* [ ] [SUBMARINE-293](https://issues.apache.org/jira/browse/SUBMARINE-293) - Add submarine server rest test case

### What is the Jira issue?
* https://issues.apache.org/jira/browse/SUBMARINE-292

### How should this be tested?
* [CI Pass](https://travis-ci.org/liuxunorg/submarine/builds/613280558)

### Screenshots (if appropriate)
```
|____bin
| |____common.sh
| |____submarine-daemon.sh
| |____submarine-env.sh
|____commons-runtime-0.3.0-SNAPSHOT.jar
|____conf
| |____log4j.properties
| |____log4j.properties.template
| |____submarine-env.sh.template
| |____submarine-site.xml
| |____submarine-site.xml.template
|____lib
| |____bcpg-jdk15on-1.61.jar
| |____bcpkix-jdk15on-1.61.jar
| |____hk2-utils-2.5.0-b42.jar
| |____interpreter
| | |____python
| | | |____python-interpreter-0.3.0-SNAPSHOT-shade.jar
| | |____spark
| | | |____scala-2.11
| | | | |____spark-scala-2.11-0.9.0-SNAPSHOT.jar
| | | |____spark-interpreter-0.3.0-SNAPSHOT-shade.jar
| |____j2objc-annotations-1.1.jar
| |____jackson-annotations-2.9.10.jar
| |____websocket-server-9.4.18.v20190429.jar
| |____workbench
| | |____workbench-web.war
|____LICENSE
|____licenses
| |____LICENSE-asm.txt
| |____LICENSE-hamcrest.txt
| |____LICENSE-slf4j.txt
| |____LICENSE-tony.txt
|____logs
| |____submarine.log
|____NOTICE
|____server
|____submarine-all-0.3.0-SNAPSHOT-hadoop-2.9.jar
|____submarine-client-0.3.0-SNAPSHOT.jar
|____submitter-yarn-0.3.0-SNAPSHOT.jar
|____tony-core-0.3.21.jar
```

### Questions:
* Does the licenses files need update? Yes/No
* Is there breaking changes for older versions? Yes/No
* Does this needs documentation? Yes/No

Author: Xun Liu <liuxun@apache.org>

Closes apache#93 from liuxunorg/SUBMARINE-292 and squashes the following commits:

aa5508b [Xun Liu] Fixed some issue.
47f30da [Xun Liu] SUBMARINE-292. Merge workbench server into submarine server
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants