Skip to content

Commit 7a11f79

Browse files
committed
k8s_gossip deployment
1 parent 403c7ca commit 7a11f79

6 files changed

Lines changed: 177 additions & 0 deletions

File tree

k8s_gossip/app-a-deployment.yaml

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
apiVersion: apps/v1
2+
kind: Deployment
3+
metadata:
4+
name: app-a-deployment
5+
spec:
6+
replicas: 3
7+
selector:
8+
matchLabels:
9+
component: app-a
10+
template:
11+
metadata:
12+
labels:
13+
component: app-a
14+
cluster: beam
15+
spec:
16+
containers:
17+
- name: app-a
18+
image: app-a
19+
imagePullPolicy: Never
20+
ports:
21+
- containerPort: 4001
22+
- containerPort: 9000
23+
env:
24+
- name: LIBCLUSTER_STRATEGY
25+
value: "gossip"
26+
- name: PORT
27+
value: "4001"
28+
- name: START_SERVER
29+
value: "true"
30+
- name: ERLANG_COOKIE
31+
value: "secret"
32+
- name: POD_IP
33+
valueFrom:
34+
fieldRef:
35+
fieldPath: status.podIP
36+
- name: MY_POD_NAME
37+
valueFrom:
38+
fieldRef:
39+
fieldPath: metadata.name
40+
command: [ "elixir" ]
41+
args: [
42+
"--name",
43+
"app-a@$(POD_IP)",
44+
"--cookie","$(ERLANG_COOKIE)",
45+
"--erl",
46+
"-kernel inet_dist_listen_min 9000 inet_dist_listen_max 9000",
47+
"--no-halt",
48+
"-S","mix",
49+
"run"
50+
]

k8s_gossip/app-b-deployment.yaml

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
apiVersion: apps/v1
2+
kind: Deployment
3+
metadata:
4+
name: app-b-deployment
5+
spec:
6+
replicas: 3
7+
selector:
8+
matchLabels:
9+
component: app-b
10+
template:
11+
metadata:
12+
labels:
13+
component: app-b
14+
cluster: beam
15+
spec:
16+
containers:
17+
- name: app-b
18+
image: app-b
19+
imagePullPolicy: Never
20+
ports:
21+
- containerPort: 4002
22+
- containerPort: 9000
23+
env:
24+
- name: LIBCLUSTER_STRATEGY
25+
value: "gossip"
26+
- name: PORT
27+
value: "4002"
28+
- name: START_SERVER
29+
value: "true"
30+
- name: ERLANG_COOKIE
31+
value: "secret"
32+
- name: POD_IP
33+
valueFrom:
34+
fieldRef:
35+
fieldPath: status.podIP
36+
- name: MY_POD_NAME
37+
valueFrom:
38+
fieldRef:
39+
fieldPath: metadata.name
40+
command: [ "elixir" ]
41+
args: [
42+
"--name",
43+
"app-b@$(POD_IP)",
44+
"--cookie","$(ERLANG_COOKIE)",
45+
"--erl",
46+
"-kernel inet_dist_listen_min 9000 inet_dist_listen_max 9000",
47+
"--no-halt",
48+
"-S","mix",
49+
"run"
50+
]
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
apiVersion: apps/v1
2+
kind: Deployment
3+
metadata:
4+
name: livebook-deployment
5+
spec:
6+
replicas: 1
7+
selector:
8+
matchLabels:
9+
component: livebook
10+
template:
11+
metadata:
12+
labels:
13+
component: livebook
14+
cluster: beam
15+
spec:
16+
containers:
17+
- name: livebook
18+
image: antonmi/livebook
19+
ports:
20+
- containerPort: 8080
21+
- containerPort: 8081
22+
env:
23+
- name: LIBCLUSTER_STRATEGY
24+
value: "kubernetes.dns"
25+
- name: LIVEBOOK_PASSWORD
26+
value: "securesecret"
27+
- name: LIVEBOOK_COOKIE
28+
value: "secret"
29+
- name: ERLANG_COOKIE
30+
value: "secret"
31+
- name: LIVEBOOK_DISTRIBUTION
32+
value: "name"
33+
- name: POD_IP
34+
valueFrom:
35+
fieldRef:
36+
fieldPath: status.podIP
37+
- name: LIVEBOOK_NODE
38+
value: "livebook@$(POD_IP)"
39+
- name: LIVEBOOK_DEFAULT_RUNTIME
40+
value: "attached:$(LIVEBOOK_NODE):$(LIVEBOOK_COOKIE)"

k8s_gossip/livebook-service.yaml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
apiVersion: v1
2+
kind: Service
3+
metadata:
4+
name: livebook-service
5+
spec:
6+
type: LoadBalancer
7+
ports:
8+
- name: http
9+
port: 8080
10+
targetPort: 8080
11+
# - name: web-socket
12+
# port: 8081
13+
# targetPort: 8081
14+
selector:
15+
component: livebook

k8s_gossip/service-a.yaml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
apiVersion: v1
2+
kind: Service
3+
metadata:
4+
name: service-a
5+
spec:
6+
type: LoadBalancer
7+
ports:
8+
- port: 4001
9+
targetPort: 4001
10+
selector:
11+
component: app-a

k8s_gossip/service-b.yaml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
apiVersion: v1
2+
kind: Service
3+
metadata:
4+
name: service-b
5+
spec:
6+
type: LoadBalancer
7+
ports:
8+
- port: 4002
9+
targetPort: 4002
10+
selector:
11+
component: app-b

0 commit comments

Comments
 (0)