initial checkin

This commit is contained in:
Radar231 2021-07-23 15:58:33 -04:00
commit 34a521c925
6 changed files with 216 additions and 0 deletions

View File

@ -0,0 +1,5 @@
persistence true
persistence_location /mosquitto/data/
log_dest file /mosquitto/log/mosquitto.log
password_file /mosquitto/config/passwdfile
listener 1883 0.0.0.0

60
mosquitto_deployment.yml Normal file
View File

@ -0,0 +1,60 @@
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: mosquitto
labels:
app: mosquitto
spec:
replicas: 1
selector:
matchLabels:
app: mosquitto
strategy:
type: Recreate
template:
metadata:
labels:
app: mosquitto
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: beta.kubernetes.io/arch
operator: In
values:
- arm64
containers:
- name: mosquitto
image: eclipse-mosquitto:latest
env:
- name: TZ
value: "EST5EDT"
- name: PUID
value: "65534"
- name: PgID
value: "65534"
ports:
- containerPort: 1883
- containerPort: 9001
volumeMounts:
- name : mqtt-data
mountPath: /mosquitto/data
- name : mqtt-log
mountPath: /mosquitto/log
- name: mqtt-config
mountPath: /mosquitto/config
volumes:
- name: mqtt-data
persistentVolumeClaim:
claimName: mqtt-data-pvc
- name: mqtt-log
persistentVolumeClaim:
claimName: mqtt-log-pvc
- name: mqtt-config
persistentVolumeClaim:
claimName: mqtt-config-pvc
# EOF

21
mosquitto_metallb.yml Normal file
View File

@ -0,0 +1,21 @@
---
apiVersion: v1
kind: Service
metadata:
name: mosquitto
annotations:
metallb.universe.tf/allow-shared-ip: share222
spec:
selector:
app: mosquitto
type: LoadBalancer
# loadBalancerIP is optional. MetalLB will automatically allocate an IP
# from its pool if not specified. You can also specify one manually.
# loadBalancerIP: x.y.z.a
loadBalancerIP: 192.168.7.222
ports:
- name: port1883
protocol: TCP
port: 1883
# EOF

61
mosquitto_pv.yml Normal file
View File

@ -0,0 +1,61 @@
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: mqtt-data-pv
labels:
name: mqtt-data-pv
spec:
storageClassName: manual
capacity:
storage: 5Gi
accessModes:
- ReadWriteOnce
mountOptions:
- hard
- nfsvers=4.0
nfs:
server: 192.168.7.11
path: "/volume1/k8s-storage/mqtt-data"
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: mqtt-log-pv
labels:
name: mqtt-log-pv
spec:
storageClassName: manual
capacity:
storage: 5Gi
accessModes:
- ReadWriteOnce
mountOptions:
- hard
- nfsvers=4.0
nfs:
server: 192.168.7.11
path: "/volume1/k8s-storage/mqtt-log"
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: mqtt-config-pv
labels:
name: mqtt-config-pv
spec:
storageClassName: manual
capacity:
storage: 5Gi
accessModes:
- ReadWriteOnce
mountOptions:
- hard
- nfsvers=4.0
nfs:
server: 192.168.7.11
path: "/volume1/k8s-storage/mqtt-config"
# EOF

54
mosquitto_pvc.yml Normal file
View File

@ -0,0 +1,54 @@
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: mqtt-data-pvc
labels:
app: mosquitto
spec:
accessModes:
- ReadWriteOnce
storageClassName: "manual"
resources:
requests:
storage: 5Gi
selector:
matchLabels:
name: mqtt-data-pv
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: mqtt-log-pvc
labels:
app: mosquitto
spec:
accessModes:
- ReadWriteOnce
storageClassName: "manual"
resources:
requests:
storage: 5Gi
selector:
matchLabels:
name: mqtt-log-pv
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: mqtt-config-pvc
labels:
app: mosquitto
spec:
accessModes:
- ReadWriteOnce
storageClassName: "manual"
resources:
requests:
storage: 5Gi
selector:
matchLabels:
name: mqtt-config-pv
# EOF

15
mosquitto_svclb.yml Normal file
View File

@ -0,0 +1,15 @@
---
apiVersion: v1
kind: Service
metadata:
name: mosquitto
spec:
selector:
app: mosquitto
ports:
- protocol: TCP
port: 1883
targetPort: 1883
type: LoadBalancer
# EOF