12. Containerized Gluster
Pull Gluster container image :
# docker pull gluster/gluster-centos:gluster3u7_centos7
Example of how to start Gluster Container:
# docker run --name gluster -d -v /etc/glusterfs:/etc/glusterfs:z -v
/var/lib/glusterd:/var/lib/glusterd:z -v /var/log/glusterfs:/var/log/glusterfs:z -v
/sys/fs/cgroup:/sys/fs/cgroup:ro --net=host --privileged=true -v /dev:/dev
gluster/gluster-centos:gluster3u7_centos7
13. Caveats for Containerized Gluster
● Persistent storage on the host to save Gluster metadata
-v /etc/glusterfs:/etc/glusterfs:z -v /var/lib/glusterd:/var/lib/glusterd:z -v
/var/log/glusterfs:/var/log/glusterfs:z
● Host Networking (--net=host) of Docker for better performance on storage
network.
○ For Reference:
Docker Network “none”, adds a container to a container-specific network stack.
Docker Network ”bridge”, represents the bridge network (default docker0).
Docker Network ”host”, adds a container on the hosts network stack.
● Privileged container execution
14. Gluster Pods in Kubernetes
Gluster
Pod
Node A
Gluster
Pod
Node B
Gluster
Pod
Node C
Trusted
Pool
Disks on
Host
22. Heketi
● Gluster storage and volume
manager
○ Containerized, virtualized, or bare metal
● Multi Gluster cluster aware
● Intelligent brick allocator
● REST service with authentication
28. Heketi Device Management
Raw Block Device
Physical Volume (PV)
Volume Group (VG)
LV Thin Pool
Logical Volume
(LV)
Gluster Brick
(XFS)
. . .
Created during device
initialization
Brick created when a
volume is requested