Skip to content

Commit 0fbedef

Browse files
authored
Merge pull request #100 from SaravanaStorageNetwork/check_size_service
A simple service to check whether disk full in /var/lib/glusterd
2 parents 89b3637 + 65b315c commit 0fbedef

File tree

3 files changed

+33
-1
lines changed

3 files changed

+33
-1
lines changed

CentOS/Dockerfile

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,18 +59,23 @@ ADD gluster-block-setup.service /etc/systemd/system/gluster-block-setup.service
5959
ADD gluster-block-setup.sh /usr/sbin/gluster-block-setup.sh
6060
ADD update-params.sh /usr/local/bin/update-params.sh
6161
ADD tcmu-runner-params /etc/sysconfig/tcmu-runner-params
62+
ADD gluster-check-diskspace.service /etc/systemd/system/gluster-check-diskspace.service
63+
ADD check_diskspace.sh /usr/local/bin/check_diskspace.sh
6264

6365
RUN chmod 644 /etc/systemd/system/gluster-setup.service && \
66+
chmod 644 /etc/systemd/system/gluster-check-diskspace.service && \
6467
chmod 500 /usr/sbin/gluster-setup.sh && \
6568
chmod 644 /etc/systemd/system/gluster-block-setup.service && \
6669
chmod 500 /usr/sbin/gluster-block-setup.sh && \
6770
chmod +x /usr/local/bin/update-params.sh && \
71+
chmod +x /usr/local/bin/check_diskspace.sh && \
6872
systemctl disable nfs-server.service && \
6973
systemctl mask getty.target && \
7074
systemctl enable gluster-setup.service && \
7175
systemctl enable gluster-block-setup.service && \
7276
systemctl enable gluster-blockd.service && \
73-
systemctl enable glusterd.service
77+
systemctl enable glusterd.service && \
78+
systemctl enable gluster-check-diskspace.service
7479

7580
EXPOSE 2222 111 245 443 24007 2049 8080 6010 6011 6012 38465 38466 38468 38469 49152 49153 49154 49156 49157 49158 49159 49160 49161 49162
7681

CentOS/check_diskspace.sh

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
#!/bin/bash
2+
3+
# Disk full
4+
while true
5+
do
6+
# sleep early to get glusterd settled
7+
sleep 120
8+
current_usage=$( df --output=pcent '/var/lib/glusterd' | tail -n1 | awk {'print $1'} )
9+
max_usage=99%
10+
if [ "${current_usage%?}" -ge "${max_usage%?}" ]; then
11+
echo "$(date) - $(basename $0): Running out of space in /var/lib/glusterd"
12+
echo "$(date) - $(basename $0): Stopping glusterd"
13+
systemctl stop glusterd.service
14+
echo "$(date) -$(basename $0): Stopped glusterd"
15+
break
16+
fi
17+
done
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
[Unit]
2+
Description=Check glusterd config directory full
3+
After=glusterd.service
4+
5+
[Service]
6+
Type=simple
7+
ExecStart=/usr/local/bin/check_diskspace.sh
8+
9+
[Install]
10+
WantedBy=multi-user.target

0 commit comments

Comments
 (0)