You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kyuubi.apache.org by ya...@apache.org on 2021/07/22 10:18:04 UTC
[incubator-kyuubi] branch master updated: [KYUUBI #844] Exposing
Kyuubi as a NodePort service
This is an automated email from the ASF dual-hosted git repository.
yao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-kyuubi.git
The following commit(s) were added to refs/heads/master by this push:
new ab18262 [KYUUBI #844] Exposing Kyuubi as a NodePort service
ab18262 is described below
commit ab18262d190f357115f47ffa95bf7d74baac987c
Author: hongdongdong <ho...@cmss.chinamobile.com>
AuthorDate: Thu Jul 22 18:17:43 2021 +0800
[KYUUBI #844] Exposing Kyuubi as a NodePort service
<!--
Thanks for sending a pull request!
Here are some tips for you:
1. If this is your first time, please read our contributor guidelines: https://kyuubi.readthedocs.io/en/latest/community/contributions.html
2. If the PR is related to an issue in https://github.com/apache/incubator-kyuubi/issues, add '[KYUUBI #XXXX]' in your PR title, e.g., '[KYUUBI #XXXX] Your PR title ...'.
3. If the PR is unfinished, add '[WIP]' in your PR title, e.g., '[WIP][KYUUBI #XXXX] Your PR title ...'.
-->
### _Why are the changes needed?_
<!--
Please clarify why the changes are needed. For instance,
1. If you add a feature, you can talk about the use case of it.
2. If you fix a bug, you can clarify why it is a bug.
-->
`kubectl port-forward` usually use to test, use `NodePort` to visit kyuubi service in pod.
### _How was this patch tested?_
- [ ] Add some test cases that check the changes thoroughly including negative and positive cases if possible
- [ ] Add screenshots for manual tests if appropriate
- [X] [Run test](https://kyuubi.readthedocs.io/en/latest/tools/testing.html#running-tests) locally before make a pull request
Closes #858 from hddong/kyuubi-844.
Closes #844
d1492262 [hongdongdong] modify comments
72d51d61 [hongdongdong] fix comments
91727986 [hongdongdong] fix
a169332e [hongdongdong] fix comments
74cec930 [hongdongdong] [KYUUBI#844]Use NodePort to expose kyuubi port on k8s
Authored-by: hongdongdong <ho...@cmss.chinamobile.com>
Signed-off-by: Kent Yao <ya...@apache.org>
---
docker/{example.yaml => kyuubi-pod.yaml} | 15 +++++++----
docker/{example.yaml => kyuubi-service.yaml} | 39 ++++++++++++----------------
2 files changed, 27 insertions(+), 27 deletions(-)
diff --git a/docker/example.yaml b/docker/kyuubi-pod.yaml
similarity index 79%
copy from docker/example.yaml
copy to docker/kyuubi-pod.yaml
index c070b97..bf533eb 100644
--- a/docker/example.yaml
+++ b/docker/kyuubi-pod.yaml
@@ -17,13 +17,16 @@
# Usage:
# Start:
-# kubectl apply -f https://raw.githubusercontent.com/apache/incubator-kyuubi/master/docker/example.yaml
-# Connect:
+# kubectl apply -f https://raw.githubusercontent.com/apache/incubator-kyuubi/master/docker/kyuubi-pod.yaml
+# Expose port:
+# 1. Expose the Pod by port-forward, for temporary test
# kubectl port-forward kyuubi-example --address localhost 10009:10009
-# Or
-# kubectl exec -it kyuubi-example -- /bin/bash
+# Connect:
+# kubectl exec -it kyuubi-example -- /bin/bash
#
-# ${SPARK_HOME}/bin/beeline -u 'jdbc:hive2://localhost:10009'
+# ${SPARK_HOME}/bin/beeline -u 'jdbc:hive2://localhost:10009'
+# 2. Expose the Pod as a service with NodePort
+# see usage of kyuubi-service.yaml
# Logging
# kubectl logs -f kyuubi-example
@@ -31,6 +34,8 @@ apiVersion: v1
kind: Pod
metadata:
name: kyuubi-example
+ labels:
+ app: kyuubi-server
spec:
containers:
- name: kyuubi-server
diff --git a/docker/example.yaml b/docker/kyuubi-service.yaml
similarity index 57%
rename from docker/example.yaml
rename to docker/kyuubi-service.yaml
index c070b97..f716238 100644
--- a/docker/example.yaml
+++ b/docker/kyuubi-service.yaml
@@ -17,30 +17,25 @@
# Usage:
# Start:
-# kubectl apply -f https://raw.githubusercontent.com/apache/incubator-kyuubi/master/docker/example.yaml
+# kubectl apply -f https://raw.githubusercontent.com/apache/incubator-kyuubi/master/docker/kyuubi-service.yaml
# Connect:
-# kubectl port-forward kyuubi-example --address localhost 10009:10009
-# Or
-# kubectl exec -it kyuubi-example -- /bin/bash
-#
-# ${SPARK_HOME}/bin/beeline -u 'jdbc:hive2://localhost:10009'
-# Logging
-# kubectl logs -f kyuubi-example
+# ${SPARK_HOME}/bin/beeline -u 'jdbc:hive2://${any_hostname_of_k8s_nodes}:30009'
apiVersion: v1
-kind: Pod
+kind: Service
metadata:
- name: kyuubi-example
+ name: kyuubi-example-service
spec:
- containers:
- - name: kyuubi-server
- # TODO: replace this with the official repo
- image: yaooqinn/kyuubi:1.3.0
- imagePullPolicy: IfNotPresent
- env:
- - name: KYUUBI_JAVA_OPTS
- value: -Dkyuubi.frontend.bind.host=0.0.0.0
- ports:
- - name: frontend-port
- containerPort: 10009
- protocol: TCP
+ ports:
+ # The default port limit is 30000-32767
+ # to change:
+ # vim kube-apiserver.yaml (usually under path: /etc/kubernetes/manifests/)
+ # add or change line 'service-node-port-range=1-32767' under kube-apiserver
+ - nodePort: 30009
+ # same of containerPort in pod yaml
+ port: 10009
+ protocol: TCP
+ type: NodePort
+ selector:
+ # same of pod label
+ app: kyuubi-server
\ No newline at end of file