使用Supervisor启动、守护ZooKeeper

运维有笔谈 2024-03-06 06:13:39

Supervisor 是一个进程管理工具,可以帮助我们启动、停止、重启和监控进程。它可以自动重启进程,确保进程在异常情况下能够自动恢复,从而提高系统的稳定性。

使用 Supervisor 可以方便地管理各种进程,包括 Web 服务器、数据库、消息队列等等。它可以监控进程的运行状态,如果进程异常退出,Supervisor 会自动重启进程,确保进程一直处于运行状态。

要使用 Supervisor 启动 ZooKeeper,可以按照以下步骤进行:

1. 安装 Supervisor:如果你的系统中没有安装 Supervisor,Ubuntu可以使用以下命令安装:

sudo apt-get updatesudo apt-get install supervisor

CentOS需要安装好epel,然后再安装supervisor。

# 安装epelsudo yum -y install epel-release#安装supervisorsudo yum -y install supervisor

2. 以下以CentOS的配置为例参考,创建配置文件:在 `/etc/supervisord.d` 目录下创建一个新的配置文件,用于启动 ZooKeeper。例如,我们可以创建一个名为 `zookeeper.ini` 的文件,并将以下内容写入文件中:

[program:zookeeper]command=/path/to/zookeeper/bin/zkServer.sh start-foregroundautostart=trueautorestart=trueuser=zookeeper

在上述配置文件中,`command` 指定了启动 ZooKeeper 的命令,`autostart` 和 `autorestart` 分别指定了是否自动启动和自动重启进程,`user` 指定了运行进程的用户。

其中 ZooKeeper的启动参数 `start-foreground` 表示以前台模式启动 ZooKeeper 进程。在前台模式下,ZooKeeper 进程会将日志信息输出到控制台,方便我们查看和调试。在使用 Supervisor 启动进程时,通常需要将进程以前台模式启动,这样 Supervisor 才能够监控进程的状态,并在进程异常退出时自动重启进程。如果将进程以后台模式启动,Supervisor 将无法监控进程的状态,进程退出后也无法自动重启。因此,在使用 Supervisor 启动 ZooKeeper 进程时,需要使用 `start-foreground` 参数将进程以前台模式启动,以便 Supervisor 能够正常管理进程。

Supervisor还可以开启web页面,在浏览器上查看管理的进程状态,重启进程以及查看启动日志等。在supervisor的主配置文件`/etc/supervisord.conf`下去掉[inet_http_server]的注释

[inet_http_server] ; inet (TCP) server disabled by defaultport=0.0.0.0:8001 ; (ip_address:port specifier, *:port for all iface)username=admin ; (default is no username (open server))password=123 ; (default is no password (open server))

我们就可以在http://IP:8001,输入账号admin,密码123之后就可以打开supervisor的web控制台了

3. 启动进程:使用以下命令启动 Supervisor 进程,并加载新创建的配置文件:

sudo systemctl start supervisord sudo systemctl enable supervisord sudo supervisorctl reread sudo supervisorctl update

在上述命令中,`systemctl start supervisord` 启动 Supervisor 进程,`systemctl enable supervisord`设置开机自启,`supervisorctl reread` 重新读取配置文件,`supervisorctl update` 更新配置文件并启动进程。

4. 检查进程状态:使用以下命令检查 ZooKeeper 进程的状态:

sudo supervisorctl status

如果一切正常,你应该可以看到 `zookeeper` 进程的状态为 `RUNNING`。

0 阅读:0

运维有笔谈

简介:感谢大家的关注