blob: 0e58dc62f5849a047f1839eceeb43671787253c4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: supervisor
labels:
app: supervisor
spec:
serviceName: supervisor-svc
replicas: 3
selector:
matchLabels:
app: supervisor
template:
metadata:
labels:
app: supervisor
spec:
hostAliases:
- ip: "192.168.40.127"
hostnames:
- "bigdata-127"
- ip: "192.168.40.151"
hostnames:
- "bigdata-151"
- ip: "192.168.40.152"
hostnames:
- "bigdata-152"
- ip: "192.168.40.203"
hostnames:
- "slave1"
#限制一台服务器上启动太多的服务,因端口占用或者资源问题导致出错
affinity:
podAntiAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: "app"
operator: In
values:
- supervisor
topologyKey: "kubernetes.io/hostname"
podAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- weight: 1
podAffinityTerm:
labelSelector:
matchExpressions:
- key: "app"
operator: In
values:
- supervisor
topologyKey: "kubernetes.io/hostname"
terminationGracePeriodSeconds: 300
#容器的配置
containers:
- name: k8s-supervisor
#0表示以root权限运行容器
securityContext:
runAsUser: 0
imagePullPolicy: Always
image: 192.168.40.153:9080/tsg/storm:1.0.2
resources:
requests:
memory: "10Gi"
cpu: 500m
#标注映射的端口
ports:
- containerPort: 9097
name: server
#创建容器后执行的命令
command:
- sh
- -c
- "/opt/apache-storm-1.0.2/start_storm.sh storm supervisor"
#环境变量
env:
- name: ZK_PORTS
value: "2182"
- name: NIMBUS_IP
value: "nimbus-0.nimbus-svc.default.svc.cluster.local"
# - name: NIMBUS_IP
# valueFrom:
# fieldRef:
# fieldPath: spec.nodeName
- name: ZK_IPARR
value: "zk-0.zk-hs.default.svc.cluster.local"
- name: SPORTS
value: "30"
- name: WORKER_MEM
value: "2048"
#挂载目录
volumeMounts:
- name: datadir
mountPath: /opt/apache-storm-1.0.2/logs
securityContext:
runAsUser: 1000
fsGroup: 1000
#声明pvc
volumeClaimTemplates:
- metadata:
name: datadir
spec:
accessModes: [ "ReadWriteMany" ]
storageClassName: nfs
resources:
requests:
storage: 5Gi
|