mirror of
https://github.com/apache/zeppelin
synced 2026-05-24 09:38:26 +00:00
interpreter pod cascade delete on zeppelin-server delete
This commit is contained in:
parent
86e8764357
commit
7fe9823b1f
4 changed files with 43 additions and 1 deletions
|
|
@ -7,6 +7,15 @@ metadata:
|
|||
app: {{POD_NAME}}
|
||||
interpreterGroupId: {{INTP_ID}}
|
||||
interpreterSettingName: {{INTP_SETTING}}
|
||||
{% if OWNER_UID is defined and OWNER_UID %}
|
||||
ownerReferences:
|
||||
- apiVersion: v1
|
||||
controller: false
|
||||
blockOwnerDeletion: false
|
||||
kind: Pod
|
||||
name: {{OWNER_NAME}}
|
||||
uid: {{OWNER_UID}}
|
||||
{% endif %}
|
||||
spec:
|
||||
automountServiceAccountToken: false
|
||||
restartPolicy: Never
|
||||
|
|
@ -24,6 +33,15 @@ apiVersion: v1
|
|||
metadata:
|
||||
namespace: {{NAMESPACE}}
|
||||
name: {{POD_NAME}} # keep Service name the same to Pod name.
|
||||
{% if OWNER_UID is defined and OWNER_UID %}
|
||||
ownerReferences:
|
||||
- apiVersion: v1
|
||||
controller: false
|
||||
blockOwnerDeletion: false
|
||||
kind: Pod
|
||||
name: {{OWNER_NAME}}
|
||||
uid: {{OWNER_UID}}
|
||||
{% endif %}
|
||||
spec:
|
||||
ports:
|
||||
- name: intp
|
||||
|
|
|
|||
|
|
@ -16,6 +16,16 @@ spec:
|
|||
value: /zeppelin
|
||||
- name: ZEPPELIN_SERVER_RPC_PORTRANGE
|
||||
value: 12320:12320
|
||||
- name: POD_UID
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
apiVersion: v1
|
||||
fieldPath: metadata.uid
|
||||
- name: POD_NAME
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
apiVersion: v1
|
||||
fieldPath: metadata.name
|
||||
---
|
||||
kind: Service
|
||||
apiVersion: v1
|
||||
|
|
|
|||
|
|
@ -44,7 +44,7 @@
|
|||
<dependency>
|
||||
<groupId>com.hubspot.jinjava</groupId>
|
||||
<artifactId>jinjava</artifactId>
|
||||
<version>2.0.11-java7</version>
|
||||
<version>2.4.12</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
|
|
|
|||
|
|
@ -248,10 +248,24 @@ public class K8sRemoteInterpreterProcess extends RemoteInterpreterProcess {
|
|||
var.put("CALLBACK_PORT", zeppelinServiceRpcPort); // interpreter.sh -p
|
||||
var.put("INTP_SETTING", interpreterSettingName); // interpreter.sh -g
|
||||
var.put("INTP_REPO", "/tmp/local-repo"); // interpreter.sh -l
|
||||
var.put("OWNER_UID", ownerUID());
|
||||
var.put("OWNER_NAME", ownerName());
|
||||
var.putAll(Maps.fromProperties(properties)); // interpreter properties override template variables
|
||||
return var;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get UID of owner (zeppelin-server pod) for garbage collection
|
||||
* https://kubernetes.io/docs/concepts/workloads/controllers/garbage-collection/
|
||||
*/
|
||||
private String ownerUID() {
|
||||
return System.getenv("POD_UID");
|
||||
}
|
||||
|
||||
private String ownerName() {
|
||||
return System.getenv("POD_NAME");
|
||||
}
|
||||
|
||||
private String getRandomString(int length) {
|
||||
char[] chars = "abcdefghijklmnopqrstuvwxyz".toCharArray();
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue