No known key found for this signature in database
GPG Key ID: D1D6CE184437796D
4 changed files with 443 additions and 0 deletions
Split View
Diff Options
-
144contrib/network-storage/heketi/roles/provision/templates/glusterfs-daemonset.json.j2
-
133contrib/network-storage/heketi/roles/provision/templates/heketi-bootstrap.json.j2
-
159contrib/network-storage/heketi/roles/provision/templates/heketi-deployment.json.j2
-
7contrib/network-storage/heketi/roles/provision/templates/heketi-service-account.json.j2
@ -0,0 +1,144 @@ |
|||
{ |
|||
"kind": "DaemonSet", |
|||
"apiVersion": "extensions/v1beta1", |
|||
"metadata": { |
|||
"name": "glusterfs", |
|||
"labels": { |
|||
"glusterfs": "deployment" |
|||
}, |
|||
"annotations": { |
|||
"description": "GlusterFS Daemon Set", |
|||
"tags": "glusterfs" |
|||
} |
|||
}, |
|||
"spec": { |
|||
"template": { |
|||
"metadata": { |
|||
"name": "glusterfs", |
|||
"labels": { |
|||
"glusterfs-node": "daemonset" |
|||
} |
|||
}, |
|||
"spec": { |
|||
"nodeSelector": { |
|||
"storagenode" : "glusterfs" |
|||
}, |
|||
"hostNetwork": true, |
|||
"containers": [ |
|||
{ |
|||
"image": "gluster/gluster-centos:gluster4u0_centos7", |
|||
"imagePullPolicy": "Always", |
|||
"name": "glusterfs", |
|||
"volumeMounts": [ |
|||
{ |
|||
"name": "glusterfs-heketi", |
|||
"mountPath": "/var/lib/heketi" |
|||
}, |
|||
{ |
|||
"name": "glusterfs-run", |
|||
"mountPath": "/run" |
|||
}, |
|||
{ |
|||
"name": "glusterfs-lvm", |
|||
"mountPath": "/run/lvm" |
|||
}, |
|||
{ |
|||
"name": "glusterfs-etc", |
|||
"mountPath": "/etc/glusterfs" |
|||
}, |
|||
{ |
|||
"name": "glusterfs-logs", |
|||
"mountPath": "/var/log/glusterfs" |
|||
}, |
|||
{ |
|||
"name": "glusterfs-config", |
|||
"mountPath": "/var/lib/glusterd" |
|||
}, |
|||
{ |
|||
"name": "glusterfs-dev", |
|||
"mountPath": "/dev" |
|||
}, |
|||
{ |
|||
"name": "glusterfs-cgroup", |
|||
"mountPath": "/sys/fs/cgroup" |
|||
} |
|||
], |
|||
"securityContext": { |
|||
"capabilities": {}, |
|||
"privileged": true |
|||
}, |
|||
"readinessProbe": { |
|||
"timeoutSeconds": 3, |
|||
"initialDelaySeconds": 60, |
|||
"exec": { |
|||
"command": [ |
|||
"/bin/bash", |
|||
"-c", |
|||
"systemctl status glusterd.service" |
|||
] |
|||
} |
|||
}, |
|||
"livenessProbe": { |
|||
"timeoutSeconds": 3, |
|||
"initialDelaySeconds": 60, |
|||
"exec": { |
|||
"command": [ |
|||
"/bin/bash", |
|||
"-c", |
|||
"systemctl status glusterd.service" |
|||
] |
|||
} |
|||
} |
|||
} |
|||
], |
|||
"volumes": [ |
|||
{ |
|||
"name": "glusterfs-heketi", |
|||
"hostPath": { |
|||
"path": "/var/lib/heketi" |
|||
} |
|||
}, |
|||
{ |
|||
"name": "glusterfs-run" |
|||
}, |
|||
{ |
|||
"name": "glusterfs-lvm", |
|||
"hostPath": { |
|||
"path": "/run/lvm" |
|||
} |
|||
}, |
|||
{ |
|||
"name": "glusterfs-etc", |
|||
"hostPath": { |
|||
"path": "/etc/glusterfs" |
|||
} |
|||
}, |
|||
{ |
|||
"name": "glusterfs-logs", |
|||
"hostPath": { |
|||
"path": "/var/log/glusterfs" |
|||
} |
|||
}, |
|||
{ |
|||
"name": "glusterfs-config", |
|||
"hostPath": { |
|||
"path": "/var/lib/glusterd" |
|||
} |
|||
}, |
|||
{ |
|||
"name": "glusterfs-dev", |
|||
"hostPath": { |
|||
"path": "/dev" |
|||
} |
|||
}, |
|||
{ |
|||
"name": "glusterfs-cgroup", |
|||
"hostPath": { |
|||
"path": "/sys/fs/cgroup" |
|||
} |
|||
} |
|||
] |
|||
} |
|||
} |
|||
} |
|||
} |
@ -0,0 +1,133 @@ |
|||
{ |
|||
"kind": "List", |
|||
"apiVersion": "v1", |
|||
"items": [ |
|||
{ |
|||
"kind": "Service", |
|||
"apiVersion": "v1", |
|||
"metadata": { |
|||
"name": "deploy-heketi", |
|||
"labels": { |
|||
"glusterfs": "heketi-service", |
|||
"deploy-heketi": "support" |
|||
}, |
|||
"annotations": { |
|||
"description": "Exposes Heketi Service" |
|||
} |
|||
}, |
|||
"spec": { |
|||
"selector": { |
|||
"name": "deploy-heketi" |
|||
}, |
|||
"ports": [ |
|||
{ |
|||
"name": "deploy-heketi", |
|||
"port": 8080, |
|||
"targetPort": 8080 |
|||
} |
|||
] |
|||
} |
|||
}, |
|||
{ |
|||
"kind": "Deployment", |
|||
"apiVersion": "extensions/v1beta1", |
|||
"metadata": { |
|||
"name": "deploy-heketi", |
|||
"labels": { |
|||
"glusterfs": "heketi-deployment", |
|||
"deploy-heketi": "deployment" |
|||
}, |
|||
"annotations": { |
|||
"description": "Defines how to deploy Heketi" |
|||
} |
|||
}, |
|||
"spec": { |
|||
"replicas": 1, |
|||
"template": { |
|||
"metadata": { |
|||
"name": "deploy-heketi", |
|||
"labels": { |
|||
"name": "deploy-heketi", |
|||
"glusterfs": "heketi-pod", |
|||
"deploy-heketi": "pod" |
|||
} |
|||
}, |
|||
"spec": { |
|||
"serviceAccountName": "heketi-service-account", |
|||
"containers": [ |
|||
{ |
|||
"image": "heketi/heketi:7", |
|||
"imagePullPolicy": "Always", |
|||
"name": "deploy-heketi", |
|||
"env": [ |
|||
{ |
|||
"name": "HEKETI_EXECUTOR", |
|||
"value": "kubernetes" |
|||
}, |
|||
{ |
|||
"name": "HEKETI_DB_PATH", |
|||
"value": "/var/lib/heketi/heketi.db" |
|||
}, |
|||
{ |
|||
"name": "HEKETI_FSTAB", |
|||
"value": "/var/lib/heketi/fstab" |
|||
}, |
|||
{ |
|||
"name": "HEKETI_SNAPSHOT_LIMIT", |
|||
"value": "14" |
|||
}, |
|||
{ |
|||
"name": "HEKETI_KUBE_GLUSTER_DAEMONSET", |
|||
"value": "y" |
|||
} |
|||
], |
|||
"ports": [ |
|||
{ |
|||
"containerPort": 8080 |
|||
} |
|||
], |
|||
"volumeMounts": [ |
|||
{ |
|||
"name": "db", |
|||
"mountPath": "/var/lib/heketi" |
|||
}, |
|||
{ |
|||
"name": "config", |
|||
"mountPath": "/etc/heketi" |
|||
} |
|||
], |
|||
"readinessProbe": { |
|||
"timeoutSeconds": 3, |
|||
"initialDelaySeconds": 3, |
|||
"httpGet": { |
|||
"path": "/hello", |
|||
"port": 8080 |
|||
} |
|||
}, |
|||
"livenessProbe": { |
|||
"timeoutSeconds": 3, |
|||
"initialDelaySeconds": 30, |
|||
"httpGet": { |
|||
"path": "/hello", |
|||
"port": 8080 |
|||
} |
|||
} |
|||
} |
|||
], |
|||
"volumes": [ |
|||
{ |
|||
"name": "db" |
|||
}, |
|||
{ |
|||
"name": "config", |
|||
"secret": { |
|||
"secretName": "heketi-config-secret" |
|||
} |
|||
} |
|||
] |
|||
} |
|||
} |
|||
} |
|||
} |
|||
] |
|||
} |
@ -0,0 +1,159 @@ |
|||
{ |
|||
"kind": "List", |
|||
"apiVersion": "v1", |
|||
"items": [ |
|||
{ |
|||
"kind": "Secret", |
|||
"apiVersion": "v1", |
|||
"metadata": { |
|||
"name": "heketi-db-backup", |
|||
"labels": { |
|||
"glusterfs": "heketi-db", |
|||
"heketi": "db" |
|||
} |
|||
}, |
|||
"data": { |
|||
}, |
|||
"type": "Opaque" |
|||
}, |
|||
{ |
|||
"kind": "Service", |
|||
"apiVersion": "v1", |
|||
"metadata": { |
|||
"name": "heketi", |
|||
"labels": { |
|||
"glusterfs": "heketi-service", |
|||
"deploy-heketi": "support" |
|||
}, |
|||
"annotations": { |
|||
"description": "Exposes Heketi Service" |
|||
} |
|||
}, |
|||
"spec": { |
|||
"selector": { |
|||
"name": "heketi" |
|||
}, |
|||
"ports": [ |
|||
{ |
|||
"name": "heketi", |
|||
"port": 8080, |
|||
"targetPort": 8080 |
|||
} |
|||
] |
|||
} |
|||
}, |
|||
{ |
|||
"kind": "Deployment", |
|||
"apiVersion": "extensions/v1beta1", |
|||
"metadata": { |
|||
"name": "heketi", |
|||
"labels": { |
|||
"glusterfs": "heketi-deployment" |
|||
}, |
|||
"annotations": { |
|||
"description": "Defines how to deploy Heketi" |
|||
} |
|||
}, |
|||
"spec": { |
|||
"replicas": 1, |
|||
"template": { |
|||
"metadata": { |
|||
"name": "heketi", |
|||
"labels": { |
|||
"name": "heketi", |
|||
"glusterfs": "heketi-pod" |
|||
} |
|||
}, |
|||
"spec": { |
|||
"serviceAccountName": "heketi-service-account", |
|||
"containers": [ |
|||
{ |
|||
"image": "heketi/heketi:7", |
|||
"imagePullPolicy": "Always", |
|||
"name": "heketi", |
|||
"env": [ |
|||
{ |
|||
"name": "HEKETI_EXECUTOR", |
|||
"value": "kubernetes" |
|||
}, |
|||
{ |
|||
"name": "HEKETI_DB_PATH", |
|||
"value": "/var/lib/heketi/heketi.db" |
|||
}, |
|||
{ |
|||
"name": "HEKETI_FSTAB", |
|||
"value": "/var/lib/heketi/fstab" |
|||
}, |
|||
{ |
|||
"name": "HEKETI_SNAPSHOT_LIMIT", |
|||
"value": "14" |
|||
}, |
|||
{ |
|||
"name": "HEKETI_KUBE_GLUSTER_DAEMONSET", |
|||
"value": "y" |
|||
} |
|||
], |
|||
"ports": [ |
|||
{ |
|||
"containerPort": 8080 |
|||
} |
|||
], |
|||
"volumeMounts": [ |
|||
{ |
|||
"mountPath": "/backupdb", |
|||
"name": "heketi-db-secret" |
|||
}, |
|||
{ |
|||
"name": "db", |
|||
"mountPath": "/var/lib/heketi" |
|||
}, |
|||
{ |
|||
"name": "config", |
|||
"mountPath": "/etc/heketi" |
|||
} |
|||
], |
|||
"readinessProbe": { |
|||
"timeoutSeconds": 3, |
|||
"initialDelaySeconds": 3, |
|||
"httpGet": { |
|||
"path": "/hello", |
|||
"port": 8080 |
|||
} |
|||
}, |
|||
"livenessProbe": { |
|||
"timeoutSeconds": 3, |
|||
"initialDelaySeconds": 30, |
|||
"httpGet": { |
|||
"path": "/hello", |
|||
"port": 8080 |
|||
} |
|||
} |
|||
} |
|||
], |
|||
"volumes": [ |
|||
{ |
|||
"name": "db", |
|||
"glusterfs": { |
|||
"endpoints": "heketi-storage-endpoints", |
|||
"path": "heketidbstorage" |
|||
} |
|||
}, |
|||
{ |
|||
"name": "heketi-db-secret", |
|||
"secret": { |
|||
"secretName": "heketi-db-backup" |
|||
} |
|||
}, |
|||
{ |
|||
"name": "config", |
|||
"secret": { |
|||
"secretName": "heketi-config-secret" |
|||
} |
|||
} |
|||
] |
|||
} |
|||
} |
|||
} |
|||
} |
|||
] |
|||
} |
@ -0,0 +1,7 @@ |
|||
{ |
|||
"apiVersion": "v1", |
|||
"kind": "ServiceAccount", |
|||
"metadata": { |
|||
"name": "heketi-service-account" |
|||
} |
|||
} |
Write
Preview
Loading…
Cancel
Save