Browse Source

moved thirdparty services to a separate file

pull/2753/head
Volodymyr Babak 6 years ago
parent
commit
4fd263d3ea
  1. 1
      k8s/k8s-delete-resources.sh
  2. 292
      k8s/thingsboard.yml
  3. 21
      k8s/thirdparty.yml

1
k8s/k8s-delete-resources.sh

@ -19,3 +19,4 @@ set -e
kubectl config set-context $(kubectl config current-context) --namespace=thingsboard
kubectl delete -f thingsboard.yml
kubectl delete -f thirdparty.yml

292
k8s/thingsboard.yml

@ -13,298 +13,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: zookeeper
namespace: thingsboard
spec:
serviceName: "zookeeper"
replicas: 3
podManagementPolicy: Parallel
selector:
matchLabels:
app: zookeeper
template:
metadata:
labels:
app: zookeeper
spec:
containers:
- name: zookeeper
imagePullPolicy: Always
image: zookeeper:3.5
ports:
- containerPort: 2181
name: client
- containerPort: 2888
name: server
- containerPort: 3888
name: election
readinessProbe:
periodSeconds: 60
tcpSocket:
port: 2181
livenessProbe:
periodSeconds: 60
tcpSocket:
port: 2181
env:
- name: ZOO_SERVERS
value: "server.0=zookeeper-0.zookeeper:2888:3888;2181 server.1=zookeeper-1.zookeeper:2888:3888;2181 server.2=zookeeper-2.zookeeper:2888:3888;2181"
- name: JVMFLAGS
value: "-Dzookeeper.electionPortBindRetry=0"
volumeMounts:
- name: data
mountPath: /data
readOnly: false
initContainers:
- command:
- /bin/bash
- -c
- |-
set -ex;
mkdir -p "$ZOO_DATA_LOG_DIR" "$ZOO_DATA_DIR" "$ZOO_CONF_DIR";
chown "$ZOO_USER:$ZOO_USER" "$ZOO_DATA_LOG_DIR" "$ZOO_DATA_DIR" "$ZOO_CONF_DIR"
if [[ ! -f "$ZOO_DATA_DIR/myid" ]]; then
echo $HOSTNAME| rev | cut -d "-" -f1 | rev > "$ZOO_DATA_DIR/myid"
fi
env:
- name: HOSTNAME
valueFrom:
fieldRef:
fieldPath: metadata.name
image: zookeeper:3.5
imagePullPolicy: IfNotPresent
name: zookeeper-init
securityContext:
runAsUser: 0
volumeMounts:
- name: data
mountPath: /data
readOnly: false
volumeClaimTemplates:
- metadata:
name: data
spec:
accessModes: [ "ReadWriteOnce" ]
resources:
requests:
storage: 1Gi
---
apiVersion: v1
kind: Service
metadata:
name: zookeeper
namespace: thingsboard
spec:
type: ClusterIP
ports:
- port: 2181
targetPort: 2181
name: client
- port: 2888
targetPort: 2888
name: server
- port: 3888
targetPort: 3888
name: election
selector:
app: zookeeper
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: tb-kafka
namespace: thingsboard
spec:
serviceName: "tb-kafka"
replicas: 3
podManagementPolicy: OrderedReady
selector:
matchLabels:
app: tb-kafka
template:
metadata:
labels:
app: tb-kafka
spec:
containers:
- name: tb-kafka
imagePullPolicy: Always
image: wurstmeister/kafka:2.12-2.2.1
ports:
- containerPort: 9092
name: kafka-int
- containerPort: 9093
name: kafka-ext
readinessProbe:
periodSeconds: 5
timeoutSeconds: 5
tcpSocket:
port: 9092
initialDelaySeconds: 60
livenessProbe:
timeoutSeconds: 5
periodSeconds: 5
tcpSocket:
port: 9092
initialDelaySeconds: 80
env:
- name: BROKER_ID_COMMAND
value: "hostname | cut -d'-' -f3"
- name: KAFKA_ZOOKEEPER_CONNECT
value: "zookeeper:2181"
- name: KAFKA_ZOOKEEPER_CONNECTION_TIMEOUT_MS
value: "60000"
- name: KAFKA_UNCLEAN_LEADER_ELECTION_ENABLE
value: "true"
- name: KAFKA_LISTENERS
value: "INSIDE://:9092,OUTSIDE://:9093"
- name: KAFKA_ADVERTISED_LISTENERS
value: "INSIDE://:9092,OUTSIDE://:9093"
- name: KAFKA_LISTENER_SECURITY_PROTOCOL_MAP
value: "INSIDE:PLAINTEXT,OUTSIDE:PLAINTEXT"
- name: KAFKA_INTER_BROKER_LISTENER_NAME
value: "INSIDE"
- name: KAFKA_CONTROLLER_SHUTDOWN_ENABLE
value: "true"
- name: KAFKA_CREATE_TOPICS
value: "js.eval.requests:100:1:delete --config=retention.ms=60000 --config=segment.bytes=26214400 --config=retention.bytes=104857600,tb.transport.api.requests:30:1:delete --config=retention.ms=60000 --config=segment.bytes=26214400 --config=retention.bytes=104857600,tb.rule-engine:30:1:delete --config=retention.ms=60000 --config=segment.bytes=26214400 --config=retention.bytes=104857600"
- name: KAFKA_AUTO_CREATE_TOPICS_ENABLE
value: "false"
- name: KAFKA_LOG_RETENTION_BYTES
value: "1073741824"
- name: KAFKA_LOG_SEGMENT_BYTES
value: "268435456"
- name: KAFKA_LOG_RETENTION_MS
value: "300000"
- name: KAFKA_LOG_CLEANUP_POLICY
value: "delete"
- name: KAFKA_PORT
value: "9092"
- name: KAFKA_LOG_DIRS
value: "/kafka-logs"
volumeMounts:
- name: logs
mountPath: /kafka-logs
subPath: logs
volumeClaimTemplates:
- metadata:
name: logs
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
---
apiVersion: v1
kind: Service
metadata:
name: tb-kafka
namespace: thingsboard
spec:
type: ClusterIP
ports:
- port: 9092
targetPort: 9092
name: kafka-int
- port: 9093
targetPort: 9093
name: kafka-ext
selector:
app: tb-kafka
---
apiVersion: v1
kind: ConfigMap
metadata:
name: tb-redis
namespace: thingsboard
data:
update-node.sh: |
#!/bin/sh
REDIS_NODES="/data/nodes.conf"
sed -i -e "/myself/ s/[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/${POD_IP}/" ${REDIS_NODES}
exec "$@"
redis.conf: |+
cluster-enabled yes
cluster-require-full-coverage no
cluster-node-timeout 15000
cluster-config-file /data/nodes.conf
cluster-migration-barrier 1
appendonly yes
protected-mode no
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: tb-redis
namespace: thingsboard
spec:
serviceName: server
replicas: 6
selector:
matchLabels:
app: tb-redis
template:
metadata:
labels:
app: tb-redis
spec:
containers:
- name: redis
image: redis:5.0.1-alpine
ports:
- containerPort: 6379
name: client
- containerPort: 16379
name: gossip
command: ["/conf/update-node.sh", "redis-server", "/conf/redis.conf"]
env:
- name: POD_IP
valueFrom:
fieldRef:
fieldPath: status.podIP
volumeMounts:
- name: conf
mountPath: /conf
readOnly: false
- name: data
mountPath: /data
readOnly: false
volumes:
- name: conf
configMap:
name: tb-redis
defaultMode: 0755
volumeClaimTemplates:
- metadata:
name: data
spec:
accessModes: [ "ReadWriteOnce" ]
resources:
requests:
storage: 1Gi
---
apiVersion: v1
kind: Service
metadata:
name: tb-redis
namespace: thingsboard
spec:
type: ClusterIP
ports:
- port: 6379
targetPort: 6379
name: client
- port: 16379
targetPort: 16379
name: gossip
selector:
app: tb-redis
---
apiVersion: apps/v1
kind: Deployment
metadata:

21
k8s/thirdparty.yml

@ -90,7 +90,7 @@ spec:
accessModes: [ "ReadWriteOnce" ]
resources:
requests:
storage: 1Gi
storage: 100Mi
---
apiVersion: v1
kind: Service
@ -120,7 +120,7 @@ metadata:
spec:
serviceName: "tb-kafka"
replicas: 3
podManagementPolicy: OrderedReady
podManagementPolicy: Parallel
selector:
matchLabels:
app: tb-kafka
@ -136,8 +136,6 @@ spec:
ports:
- containerPort: 9092
name: kafka-int
- containerPort: 9093
name: kafka-ext
readinessProbe:
periodSeconds: 5
timeoutSeconds: 5
@ -160,17 +158,17 @@ spec:
- name: KAFKA_UNCLEAN_LEADER_ELECTION_ENABLE
value: "true"
- name: KAFKA_LISTENERS
value: "INSIDE://:9092,OUTSIDE://:9093"
value: "INSIDE://:9092"
- name: KAFKA_ADVERTISED_LISTENERS
value: "INSIDE://:9092,OUTSIDE://:9093"
value: "INSIDE://:9092"
- name: KAFKA_LISTENER_SECURITY_PROTOCOL_MAP
value: "INSIDE:PLAINTEXT,OUTSIDE:PLAINTEXT"
value: "INSIDE:PLAINTEXT"
- name: KAFKA_INTER_BROKER_LISTENER_NAME
value: "INSIDE"
- name: KAFKA_CONTROLLER_SHUTDOWN_ENABLE
value: "true"
- name: KAFKA_CREATE_TOPICS
value: "js.eval.requests:100:1:delete --config=retention.ms=60000 --config=segment.bytes=26214400 --config=retention.bytes=104857600,tb.transport.api.requests:30:1:delete --config=retention.ms=60000 --config=segment.bytes=26214400 --config=retention.bytes=104857600,tb.rule-engine:30:1:delete --config=retention.ms=60000 --config=segment.bytes=26214400 --config=retention.bytes=104857600"
value: "js_eval.requests:100:1:delete --config=retention.ms=60000 --config=segment.bytes=26214400 --config=retention.bytes=104857600,tb_transport.api.requests:30:1:delete --config=retention.ms=60000 --config=segment.bytes=26214400 --config=retention.bytes=104857600"
- name: KAFKA_AUTO_CREATE_TOPICS_ENABLE
value: "false"
- name: KAFKA_LOG_RETENTION_BYTES
@ -197,7 +195,7 @@ spec:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
storage: 1Gi
---
apiVersion: v1
kind: Service
@ -210,9 +208,6 @@ spec:
- port: 9092
targetPort: 9092
name: kafka-int
- port: 9093
targetPort: 9093
name: kafka-ext
selector:
app: tb-kafka
---
@ -285,7 +280,7 @@ spec:
accessModes: [ "ReadWriteOnce" ]
resources:
requests:
storage: 1Gi
storage: 100Mi
---
apiVersion: v1
kind: Service

Loading…
Cancel
Save