可视化集中管理服务器节点进程

简介: 在之前的文章《自动化测试之进程管理》中讲到了用Supervisor做进程管理的好处,可以很方便的用来启动、重启、关闭进程,类似于 Linux 的 systemd 守护进程一样,通过统一的命令来管理系统的各个服务,当管理的服务挂掉时会自动重新拉起,如果只有一台服务器的情况下,问题倒不大,但是如果你有一个自动化集群,部署着数十个进程服务,那么管理和维护成本就会陡增。今天就来给大家分享一个解决方案 - CeSi,该工具是 Supervisor 的 WebUI,可以通过这个统一的 WebUI 集中化管理各个服务器节点的进程。

CeSi的安装和部署


CeSi 是 Supervisor 官方推荐的集中化管理 Supervisor 实例的 Web UI,该工具是用 Python 编写的,基于 Flask Web 框架 。


Superviosr 自带的 Web UI 不支持跨机器管理,Supervisor 进程功能比较简单,通过 CeSi 可以集中管理各个服务器节点的进程,在 Web 界面就可以轻松管理各个服务的启动、关闭、重启等,使用很方便。


安装


以Ubuntu为例,具体的安装步骤如下:

$ sudo apt install -y git python3 python3-pip python3-venv
$ # If you want to change CESI_SETUP_PATH, you must change the configurations in the cesi.service file.$ export CESI_SETUP_PATH=/opt/cesi$ mkdir ${CESI_SETUP_PATH}$ cd ${CESI_SETUP_PATH}
$ # Download the project to CESI_SETUP_PATH directory$ wget https://github.com/gamegos/cesi/releases/download/v2.7.1/cesi-extended.tar.gz -O cesi.tar.gz$ tar -xvf cesi.tar.gz
$ # Create virtual environment and install requirement packages$ python3 -m venv venv$ source venv/bin/activate(venv) $ pip3 install -r requirements.txt(venv) $ deactivate   # Deactivate virtual environment
$ # Build ui (First you must install dependencies for ui -> yarn) - Optional$ cd ${CESI_SETUP_PATH}/cesi/ui$ yarn install$ yarn build
$ # Create cesi.conf.toml file and update cesi.conf.toml for your environment.$ # Config file documentation can be found inside default file.$ # (You must create cesi.conf in the etc directory for cesi.service)$ sudo cp ${CESI_SETUP_PATH}/defaults/cesi.conf.toml /etc/cesi.conf.toml
$ # Run as a service$ sudo cp ${CESI_SETUP_PATH}/defaults/cesi.service /etc/systemd/system/cesi.service$ sudo systemctl daemon-reload$ sudo systemctl start cesi

配置


CeSi 的配置非常简单,和 Supervisor 的配置文件类似,配置文件路径:

/etc/cesi.conf.toml

只需要把nodes部分填充为自己的各个服务器节点信息就可以了,含义可以看注释部分。


# This is the main CeSI toml configuration file. It contains CeSI web application and# supervisord information to connect
# This is the CeSI's own configuration.[cesi]# Database Uridatabase = "sqlite:///users.db"                         # Relative path# Etc#database = "sqlite:////opt/cesi/< version >/users.db"  # Absolute path#database = "postgres://<user>:<password>@localhost:5432/<database_name>"#database = "mysql+pymysql://<user>:<password>@localhost:3306/<database_name>"activity_log = "activity.log"   # File path for CeSI logsadmin_username = "admin"        # Username of admin useradmin_password = "admin"        # Password of admin user
# This is the definition section for new supervisord node.# [[nodes]]# name = "api"          # (String) Unique name for supervisord node.# environment = ""      # (String) The environment name provides logical grouping of supervisord nodes. It can be used as filtering option in the UI.# username = ""         # (String) Username of the XML-RPC interface of supervisord Set nothing if no username is configured# password = ""         # (String) Password of the XML-RPC interface of supervisord. Set nothing if no username is configured# host = "127.0.0.1"    # (String) Host of the XML-RPC interface of supervisord# port = "9001"         # (String) Port of the XML-RPC interface of supervisord
# Default supervisord nodes[[nodes]]name = "专项服务器"environment = ""username = "test"password = "test"host = ""port = "9001"
[[nodes]]name = "主服务器"environment = ""username = "test"password = "test"host = ""port = "9001"

最终的效果图如下:

image.png

相关文章
|
22天前
|
运维 算法 调度
深入理解操作系统:进程调度与优先级自动化运维:使用Ansible实现服务器集群管理
【8月更文挑战第27天】在操作系统的众多奥秘中,进程调度无疑是一个既简单又复杂的主题。它就像是交响乐团中的指挥,协调着每一个音符,确保乐曲和谐而有序地进行。本文将带领读者走进进程调度的世界,探索其背后的原理和实现,同时通过代码示例揭示其精妙之处。让我们一起揭开进程调度的神秘面纱,理解它在操作系统中的重要性。
|
30天前
|
C语言
【C语言】多进程服务器
【C语言】多进程服务器
16 4
|
3月前
|
存储 算法 搜索推荐
Cloudstack多个管理服务器节点
Cloudstack多个管理服务器节点
|
3月前
|
数据可视化 API 开发工具
详细解读cesi+supervisor可视化集中管理服务器节点进程
详细解读cesi+supervisor可视化集中管理服务器节点进程
78 0
|
3月前
|
数据可视化 API 开发工具
详细解读cesi+supervisor可视化集中管理服务器节点进程
详细解读cesi+supervisor可视化集中管理服务器节点进程
37 0
|
1月前
|
机器学习/深度学习 编解码 人工智能
阿里云gpu云服务器租用价格:最新收费标准与活动价格及热门实例解析
随着人工智能、大数据和深度学习等领域的快速发展,GPU服务器的需求日益增长。阿里云的GPU服务器凭借强大的计算能力和灵活的资源配置,成为众多用户的首选。很多用户比较关心gpu云服务器的收费标准与活动价格情况,目前计算型gn6v实例云服务器一周价格为2138.27元/1周起,月付价格为3830.00元/1个月起;计算型gn7i实例云服务器一周价格为1793.30元/1周起,月付价格为3213.99元/1个月起;计算型 gn6i实例云服务器一周价格为942.11元/1周起,月付价格为1694.00元/1个月起。本文为大家整理汇总了gpu云服务器的最新收费标准与活动价格情况,以供参考。
阿里云gpu云服务器租用价格:最新收费标准与活动价格及热门实例解析
|
8天前
|
Cloud Native Java 编译器
将基于x86架构平台的应用迁移到阿里云倚天实例云服务器参考
随着云计算技术的不断发展,云服务商们不断推出高性能、高可用的云服务器实例,以满足企业日益增长的计算需求。阿里云推出的倚天实例,凭借其基于ARM架构的倚天710处理器,提供了卓越的计算能力和能效比,特别适用于云原生、高性能计算等场景。然而,有的用户需要将传统基于x86平台的应用迁移到倚天实例上,本文将介绍如何将基于x86架构平台的应用迁移到阿里云倚天实例的服务器上,帮助开发者和企业用户顺利完成迁移工作,享受更高效、更经济的云服务。
将基于x86架构平台的应用迁移到阿里云倚天实例云服务器参考
|
6天前
|
编解码 前端开发 安全
通过阿里云的活动购买云服务器时如何选择实例、带宽、云盘
在我们选购阿里云服务器的过程中,不管是新用户还是老用户通常都是通过阿里云的活动去买了,一是价格更加实惠,二是活动中的云服务器配置比较丰富,足可以满足大部分用户的需求,但是面对琳琅满目的云服务器实例、带宽和云盘选项,如何选择更适合自己,成为许多用户比较关注的问题。本文将介绍如何在阿里云的活动中选择合适的云服务器实例、带宽和云盘,以供参考和选择。
通过阿里云的活动购买云服务器时如何选择实例、带宽、云盘
|
4天前
|
弹性计算 运维 安全
阿里云轻量应用服务器和经济型e实例区别及选择参考
目前在阿里云的活动中,轻量应用服务器2核2G3M带宽价格为82元1年,2核2G3M带宽的经济型e实例云服务器价格99元1年,对于云服务器配置和性能要求不是很高的阿里云用户来说,这两款服务器配置和价格都差不多,阿里云轻量应用服务器和ECS云服务器让用户二选一,很多用户不清楚如何选择,本文来说说轻量应用服务器和经济型e实例的区别及选择参考。
阿里云轻量应用服务器和经济型e实例区别及选择参考
|
5天前
|
机器学习/深度学习 存储 人工智能
阿里云GPU云服务器实例规格gn6v、gn7i、gn6i实例性能及区别和选择参考
阿里云的GPU云服务器产品线在深度学习、科学计算、图形渲染等多个领域展现出强大的计算能力和广泛的应用价值。本文将详细介绍阿里云GPU云服务器中的gn6v、gn7i、gn6i三个实例规格族的性能特点、区别及选择参考,帮助用户根据自身需求选择合适的GPU云服务器实例。
阿里云GPU云服务器实例规格gn6v、gn7i、gn6i实例性能及区别和选择参考