当前位置: 首页 > news >正文

北京网站推广价格企业网站页面

北京网站推广价格,企业网站页面,免费 通用企业 wordpress主题,wordpress模版 区块链目录 1. Linux 系统管理工具 supervisor 详解1.1. supervisor 进程管理服务组成1.2. 进程管理服务部署1.3. 进程管理服务配置信息1.4. 进程管理服务命令使用1.5. 进程管理服务启动应用1.6. 进程管理服务进程1.6.1. 进程管理应用实战-Nginx 1. Linux 系统管理工具 supervisor 详… 目录 1. Linux 系统管理工具 supervisor 详解1.1. supervisor 进程管理服务组成1.2. 进程管理服务部署1.3. 进程管理服务配置信息1.4. 进程管理服务命令使用1.5. 进程管理服务启动应用1.6. 进程管理服务进程1.6.1. 进程管理应用实战-Nginx 1. Linux 系统管理工具 supervisor 详解 supervisor 是一个进程管理工具, 当进程中断的时候 supervisor 能自动重新启动它, 同时, 它也是一个客户端/服务器系统, 允许用户在类 unix 操作系统上控制多个进程。 supervisor 是用 Python 开发的一套通用的进程管理程序, 能将一个普通的命令行进程变为后台 daemon, 并监控进程状态, 异常退出时能自动重启。 supervisor 是通过 fork/exec 的方式把这些被管理的进程当作 supervisor 的子进程来启动, 这样只要在 supervisor 的配置文件中, 把要管理的进程的可执行文件的路径写进去即可。 可实现当子进程挂掉的时候, 父进程可以准确获取子进程挂掉的信息的, 可以选择是否自己启动和报警。 supervisor 还提供了一个功能, 可以为 supervisord 或者每个子进程, 设置一个非 root 的 user, 这个 user 就可以管理它对应的进程。 1.1. supervisor 进程管理服务组成 supervisor 主要包括以下四个核心部分组成: supervisord 这是 supervisor 服务的主要管理器, 运行 Supervisor 时会启动一个进程 supervisord, 它负责启动所管理的进程; 并将所管理的进程作为自己的子进程来启动, 而且可以在所管理的进程出现崩溃时自动重启。 supervisorctl 这是 supervisor 服务的客户端命令行工具, 可以用来执行 stop、start、restart 等命令, 来对这些子进程进行管理。 web Server 这是 supervisor 服务的网页可视化界面, 可以通过 web 界面查看和控制进程状态, 简化了对操作命令的学习; xml-rpc interface 服务与 web ui 的同一个 http 服务器, 提供一个 xml-rpc 接口, 可以用来询问和控制管理程序及其他运行的程序; supervisor 服务运行环境说明 supervisor 可以运行在大多数类 unix 系统, 但是不能运行在任何 windows 系统, supervisor 运行在 python 环境中; 可以在 python2(2.7) 版本上工作、python3(3.4) 版本上工作、以及更高 python 版本上。 1.2. 进程管理服务部署 进程管理服务安装过程 安装过程第一步: 安装 python 工具 [rootLinux ~]# yum install -y python-pip 安装过程第二步: 安装 supervisor 程序 [rootLinux ~]# pip install supervisor 安装过程第三步: 核心确认 supervisor 是否安装成功 [rootLinux~]# echo_supervisord_conf-- 通过执行以上命令, 通过输出信息可以确认 supervisor 服务是否安装成功 1.3. 进程管理服务配置信息 supervisor 进程管理服务程序安装完毕后, 会在系统中生成两个主要的配置文件: 主进程配置文件: /etc/supervisord.conf 子进程配置文件: /etc/supervisord.d/ 主进程配置文件信息解析: 子进程配置文件信息解析: 给需要管理的子进程(程序)编写一个配置文件, 放在/etc/supervisor.d/目录下, 以。ini 作为扩展名; 每个进程的配置文件都可以单独分拆也可以把相关的脚本放一起; 任意定义一个和脚本相关的项目名称的选项组, 例如: /etc/supervisord.d/test.conf #项目名 [program:tomcat] #脚本目录 directory/opt/bin#脚本执行命令 command/usr/bin/python /opt/bin/test.py#supervisor 启动的时候是否随着同时启动, 默认 Trueautostarttrue#当程序 exit 的时候, 这个 program 不会自动重启, 默认 unexpected, 设置子进程挂掉后自动重启的情况, 有三个选项, false,unexpected 和 true。如果为 false 的时候, 无论什么情况下, 都不会被重新启动, 如果为 unexpected, 只有当进程的退出码不在下面的 exitcodes 里面定义的 autorestartfalse#这个选项是子进程启动多少秒之后, 此时状态如果是 running, 则我们认为启动成功了。默认值为 1startsecs1#脚本运行的用户身份 user test#日志输出 stderr_logfile/tmp/blog_stderr.log stdout_logfile/tmp/blog_stdout.log #把 stderr 重定向到 stdout, 默认 falseredirect_stderr true#stdout 日志文件大小, 默认 50MBstdout_logfile_maxbytes 20MB#stdout 日志文件备份数 stdout_logfile_backups 20子进程配置示例: [program:test] directory/opt/bin command/opt/bin/testautostarttrue autorestartfalse stderr_logfile/tmp/test_stderr.log stdout_logfile/tmp/test_stdout.log #user test1.4. 进程管理服务命令使用 在使用 supervisor 进程管理工具时, 也会经常用到一些命令对工具进行管理控制: 把 es 换成 all 可以管理配置中的所有进程。 直接输入 supervisorctl 进入 supervisorctl 的 shell 交互界面, 此时上面的命令不带 supervisorctl 可直接使用。 1.5. 进程管理服务启动应用 使用 supervisor 进程管理命令之前需要先启动 supervisord, 启动方法如下: # 利用命令启动服务程序 supervisord -c /etc/supervisord.conf# 利用 systemd 管理启动服务 systemctl start supervisord.service -- 启动 supervisor 并加载默认配置文件 systemctl enable supervisord.service -- 将 supervisor 加入开机启动项# 确认服务是否启动 ps -ef|grep supervisorroot 12931 1 0 18:16 ? 00:00:00 /usr/bin/python /usr/bin/supervisord -c /etc/supervisord.confsupervisorctl status-- 执行以上命令信息, 输出信息为空, 表示没有配置项目信息, 但服务部署过程基本完成1.6. 进程管理服务进程 1.6.1. 进程管理应用实战-Nginx supervisor 服务项目创建 为了演示实现 supervisor 服务的功能, 可以临时部署一个 nginx 服务程序, 对 nginx 服务的进程进行监控; 下载安装 nginx 程序包: yum install -y nginx supervisor 服务项目配置 修改上面说明的 supervisord.conf 文件, 文件最后两行配置信息的注释取消掉, 也就是去掉分号信息: [include]files supervisord.d/*.ini-- 指定需要加载的程序项目配置文件信息 创建一个测试使用的服务配置文件: nginx.ini [rootLinux supervisord.d]# cat nginx.ini [program:nginx]directory/usr/sbin/command/usr/sbin/nginx -g daemon off;autostarttrueautorestarttruestartsecs3userrootstderr_logfile/tmp/nginx_stderr.log stdout_logfile/tmp/nginx_stdout.log supervisor 服务重新启动 编写完 supervisor 管理的进程服务配置文件后, 可以使 supervisor 服务重新启动, 加载编写的服务配置文件; # 重启 supervisor 服务程序 systemctl restart supervisord.service # 检查对应管理的服务程序是否启动 [rootdocker-server supervisord.d]# ps -ef|grep nginxroot 13338 13317 0 22:12 ? 00:00:00 nginx: master process /usr/sbin/nginx -g daemon off;nginx 13339 13338 0 22:12 ? 00:00:00 nginx: worker processnginx 13340 13338 0 22:12 ? 00:00:00 nginx: worker processnginx 13341 13338 0 22:12 ? 00:00:00 nginx: worker processnginx 13342 13338 0 22:12 ? 00:00:00 nginx: worker process通过 web 界面查看服务进程运行情况: supervisor 服务修复测试 尝试杀掉 nginx 服务程序, 模拟企业服务异常情况崩溃, 查看 supervisor 服务是否能够自动重启 nginx 程序: # 尝试模拟杀死进程 [rootdocker-server supervisord.d]# kill 13338-bash: kill: (13338) - No such process# 查询 nginx 服务进程是否可以自动重启 [rootdocker-server supervisord.d]# ps -ef|grep nginxroot 13346 13317 0 22:16 ? 00:00:00 nginx: master process /usr/sbin/nginx -g daemon off;nginx 13347 13346 0 22:16 ? 00:00:00 nginx: worker processnginx 13348 13346 0 22:16 ? 00:00:00 nginx: worker processnginx 13349 13346 0 22:16 ? 00:00:00 nginx: worker processnginx 13350 13346 0 22:16 ? 00:00:00 nginx: worker process-- 可以根据重启服务进程号信息可知, nginx 服务已经实现了重启进程管理应用实战-tomcat supervisor 服务项目创建 为了演示实现 supervisor 服务的功能, 可以临时部署一个 tomcat 服务程序, 对 tomcat 服务的进程进行监控; 下载安装 jdk8 程序包: yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel 设置配置 jdk8 环境变量: # 编写环境变量配置文件 vim /etc/profile.d/java8.shexport JAVA_HOME$(dirname $(dirname $(readlink $(readlink $(which javac)))))export PATH$PATH:$JAVA_HOME/binexport CLASSPATH.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar# 加载环境变量配置信息 source /etc/profile.d/java8.sh# 检查环境变量是否生效 echo $JAVA_HOME/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.352.b08-2.el7_9.x86_64 或者 printenv JAVA_HOME/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.352.b08-2.el7_9.x86_64检查 jdk8 程序包是否安装成功: [rootLinux ~]# java -versionopenjdk version 1.8.0_352OpenJDK Runtime Environment (build 1.8.0_352-b08)OpenJDK 64-Bit Server VM (build 25.352-b08, mixed mode)[rootLinux ~]# javac -versionjavac 1.8.0_352 下载安装 tomcat 程序: [rootLinux ~]# cd /usr/local/[rootLinux ~]# rz -y-- 将从官方下载的 tomcat 程序包上传此目录中# 解压 tomcat 程序压缩包 [rootLinux local]# tar xf apache-tomcat-8.5.83.tar.gz supervisor 服务项目配置 修改上面说明的 supervisord.conf 文件, 文件最后两行配置信息的注释取消掉, 也就是去掉分号信息: [include]files supervisord.d/*.ini-- 指定需要加载的程序项目配置文件信息 创建一个测试使用的服务配置文件: nginx.ini [rootLinux supervisord.d]# cat tomcat.ini [program:tomcat]stopasgrouptrueuserrootenvironmentJAVA_HOME/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.352.b08-2.el7_9.x86_64,JAVA_BIN/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.352.b08-2.el7_9.x86_64/bin-- 指定 linux 环境 Java 的安装位置, 如果忘记了, 在命令行输入 echo $JAVA_HOME 来得到 directory/usr/local/apache-tomcat-8.5.83-- 指定 tomcat 程序存放路径信息 command/usr/local/apache-tomcat-8.5.83/bin/catalina.sh run-- 指定 tomcat 启动脚本路径信息 autostarttrueautorestarttruestartsecs60userrootstderr_logfile/usr/local/apache-tomcat-8.5.83/logs/catalina.errstdout_logfile/usr/local/apache-tomcat-8.5.83/logs/catalina.outsupervisor 服务重新加载 编写完 supervisor 管理的进程服务配置文件后, 可以使 supervisor 服务加载新的服务进程, 识别新编写的服务配置文件; [rootLinux apache-tomcat-8.5.83]# supervisorctl update tomcat: added process group 通过 web 界面查看服务进程运行情况:
http://www.zqtcl.cn/news/530319/

相关文章:

  • 建设银行内部网站6建筑学院官网
  • 大学生做微商网站金华seo扣费
  • 以前老网站邯郸推广网络宣传哪家好
  • 网站建设技术网站建设奉节网站建设公司
  • 动漫视频网站模板动漫制作专业什么电脑最适合
  • 合网站建设注册一个500万的公司需要多少钱
  • 《网站推广策划》wordpress 写博客
  • 网站开发工程师面试问哪些问题免费下载软件商店安装
  • 建网站公司要钱吗公司制作网站跟企业文化的关系
  • 网站改版对用户的影响网站评论怎么做的
  • 许昌市做网站公司汉狮价格装修案例图片 效果图
  • 设计主题网站化肥厂的网站摸板
  • 做羊水亲子鉴定网站网络推广是啥
  • 怎样解析网站域名用哪个网站做首页比较好
  • 设计网站页面设计wordpress样式错乱
  • 静态网页模板免费网站wordpress悬浮按钮
  • 怎么制作学校网站大淘客网站代码
  • 如何做好一个网站wordpress 修改邮箱设置
  • 网站项目方案生态建设研究所网站
  • 用织梦做视频网站wordpress文章不能分段
  • 彩票网站开发. 极云邮箱类网站模板
  • 网站代运营协议网站 文件服务器
  • 专业网站设计公司有哪些绿色营销案例100例
  • 网站建设买了域名山东省作风建设网站
  • 留学中介网站建设方案设计企业品牌商标
  • 会展相关网站建设情况seo的基本步骤是什么
  • 太原网站建设鸣蝉公司免费网页制作网站建设
  • 中山专业网站建设网站开发基础知识简述
  • 包头索易网站建设中国建设银行网站余额查询
  • 哪家公司做网站开发做得比较好佛山商城网站制作