背景

有数bi服务在部署过程中,需要关闭firewalld,并且限制开机自启动,但某些客户场景需要开启。

但是如果需要开启应该怎么写规则呢? 因为开启firewalld后bi前端会访问不了。

操作步骤

1.停服

开启firewalld会影响docker,需要先停服

登录主节点

docker stack rm ydswarm

2.开启firewalld

systemctl start firewalld

systemctl status firewalld #验证是否开启,状态是否为active

3.添加firewalld规则

在作为Swarm管理器的节点上,使用以下命令打开必要的端口:

firewall-cmd --add-port=22/tcp --permanent

firewall-cmd --add-port=2376/tcp --permanent

firewall-cmd --add-port=2377/tcp --permanent

firewall-cmd --add-port=7946/tcp --permanent

firewall-cmd --add-port=7946/udp --permanent

firewall-cmd --add-port=4789/udp --permanent

firewall-cmd --add-port=3306/tcp --permanent

firewall-cmd --add-port=4306/tcp --permanent

firewall-cmd --add-port=18080/tcp --permanent

firewall-cmd --add-port=12379/tcp --permanent

firewall-cmd --add-port=12380/tcp --permanent

firewall-cmd --add-port=16782/tcp --permanent

firewall-cmd --add-port=15678/tcp --permanent

之后,重新加载防火墙:

firewall-cmd --reload

然后重新启动Docker。

systemctl restart docker

有数节点一般都是管理节点,所以双机环境的话两台机器都需要按顺序执行上述命令

4.启动有数服务

登录进入master机器

cd /youdata/installer

dsd docker-stack.ydswarm825.yaml ydswarm

然后等待服务启动

dv ls #查看服务启动成功没有

服务都启动完成后,前端访问看下有无问题

以上就是开启firewalld后有数需要做的操作。