[devstack] Allow cephfs daemon port access

If the cephfs protocol is enabled, clients
need to access the ceph daemons.

We also don't need to enable access to NFS
ports when not using NFS.

Change-Id: I077d12785f94c940716f0e479d43dbb29ddc3c3c
Signed-off-by: Goutham Pacha Ravi <gouthampravi@gmail.com>
(cherry picked from commit 341b5777b2)
(cherry picked from commit 5d1c30676e)
(cherry picked from commit 51b918a86a)
(cherry picked from commit b983eda903)
This commit is contained in:
Goutham Pacha Ravi 2020-05-27 10:25:21 -07:00
parent 892f1d60ae
commit 58f1f21073
1 changed files with 22 additions and 13 deletions

View File

@ -961,20 +961,29 @@ function install_libraries {
function allow_host_ports_for_share_mounting {
TCP_PORTS=(2049 111 32803 892 875 662)
UDP_PORTS=(111 32769 892 875 662)
for ipcmd in iptables ip6tables; do
# (aovchinnikov): extra rules are needed to allow instances talk to
# host.
sudo $ipcmd -N manila-nfs
sudo $ipcmd -I INPUT 1 -j manila-nfs
for port in ${TCP_PORTS[*]}; do
sudo $ipcmd -A manila-nfs -m tcp -p tcp --dport $port -j ACCEPT
if [[ $MANILA_ENABLED_SHARE_PROTOCOLS =~ NFS ]]; then
# 111 and 2049 are for rpcbind and NFS
# Other ports are for NFSv3 statd, mountd and lockd daemons
MANILA_TCP_PORTS=(2049 111 32803 892 875 662)
MANILA_UDP_PORTS=(111 32769 892 875 662)
fi
if [[ $MANILA_ENABLED_SHARE_PROTOCOLS =~ CEPHFS ]]; then
# clients need access to the ceph daemons
MANILA_TCP_PORTS=(${MANILA_TCP_PORTS[*]} 6789 6800:7300)
fi
if [[ -v MANILA_TCP_PORTS || -v MANILA_UDP_PORTS ]]; then
for ipcmd in iptables ip6tables; do
sudo $ipcmd -N manila-storage
sudo $ipcmd -I INPUT 1 -j manila-storage
for port in ${MANILA_TCP_PORTS[*]}; do
sudo $ipcmd -A manila-storage -m tcp -p tcp --dport $port -j ACCEPT
done
for port in ${MANILA_UDP_PORTS[*]}; do
sudo $ipcmd -A manila-storage -m udp -p udp --dport $port -j ACCEPT
done
done
for port in ${UDP_PORTS[*]}; do
sudo $ipcmd -A manila-nfs -m udp -p udp --dport $port -j ACCEPT
done
done
fi
}
function setup_ipv6 {