一.Supervisor简单介绍supervisor是一个 Client/Server模式的系统,允许用户在类unix操作系统上监视和控制多个进程,或者可以说是多个程序.supervisor与launchd,daemontools,runit等程序有着相同的功能,与其中某些程序不同的是,它并不作为“id 为 1的进程”而替代init.相反,它用于控制应用程序,像启动其它程序一样,通俗理解就是,把Supervisor服务管理的进程程序,它们作为supervisor的子进程来运行,而supervis…
Linux系统运维笔记(四),CentOS 6.4安装 MongoDB 1,下载 https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz 2,解压后,用SecureFXPortable.exe  工具,上传到服务器目录     /usr/local/mongodb3 3,在目录 /usr/local/mongodb3/bin 目录下创建 data目录,用于数据存储. 4,起动 /usr/local/mongodb3/bin/…
Linux系统运维笔记(四),CentOS 6.4安装Nginx 1,安装编译工具及库文件 yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel 2,安装 PCRE  ,PCRE 作用是让 Nginx 支持 Rewrite 功能. # yum install -y pcre pcre-devel 3,从官方地址(http://nginx.org/)下载 解压 #tar -zxvf nginx-1.10.…
运维笔记--postgresql占用CPU问题定位 场景描述: 业务系统访问变慢,登陆服务器查看系统负载并不高,然后查看占用CPU较高的进程,发现是连接数据库的几个进程占用系统资源较多. 处理方式: 查找出占用系统内存&CPU排名前10的进程:[或者用top命令查看]  ---这里需要注意,如果用了容器,需要进入容器内部查看相应的进程. ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head 切换到postgres用户,执行psql,进入数据库…
Supervisor进程管理 在后台应用中,有时候程序进程会异常中止退出,如果没有一个守护进程去守护这个应用进程我们就需要及时发现并重启进程.如果每一个应用进程都写一个自己的守护进程难免会比较麻烦,而Supervisor可以解决这种情况.Supervisor是一个python开发的类unix系统的进程管理系统. 简介 supervisor管理进程,是通过fork/exec的方式将这些被管理的进程当作supervisor的子进程来启动,所以我们只需要将要管理进程的可执行文件的路径添加到superv…
SUPERVISOR进程管理器配置指南1. supervisor简介1.1. 官网http://supervisord.org/ 1.2. 介绍Supervisor是一个进程控制系统. 它是一个C/S系统(注意: 其提供WEB接口给用户查询和控制), 它允许用户去监控和控制在类UNIX系统的进程. 它的目标与launchd, daemontools和runit有些相似, 但是与它们不一样的是, 它不是作为init(进程号pid是1)运行. 它是被用来控制进程, 并且它在启动的时候和一般程序并无二…
Linux系统运维笔记(五),CentOS 6.4安装java程序 用eclipse编译通的java程序,现需要实施到服务器.实施步骤: 一,导出程序成jar包. 1,在主类编辑界面点右健,选  run Configurations . 2,填项目名.选主类名,后提交 运行. 3,在项目上点右健,导出,导出时选runnable jar file. 4,Launch configuration 选刚刚运行的配置.Export destination,选导入文件位置.其它默认,导出文件. 二,将ja…
Linux系统运维笔记(三),设置IP和DNS 手工配置静态的IP地址 也就是手工配置IP地址.子网掩码.网关和DNS. vi /etc/sysconfig/network-scripts/ifcfg-eth0 编辑本地网卡的配置文件 主要查看下面这几项是否和下面给出的一致即可. ONBOOT=yes BOOTPROTO=none IPADDR=192.168.1.66 NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=192.168.1.1 第二项,…
Linux系统运维笔记 Linux文件编辑命令 首先我们使用命令 vi filename 打开一个文件,这个时候进入到的是命令模式 接下来我们按i,然后键盘随便输入写内容. 然后按ESC重新进入到命令模式. 在命令模式的情况下,我们按:,进入到了末行模式. 输入wq!,然后回车,强行保存退出. q! [强制退出不保存]q[退出不保存]wq[退出并保存后面也可以加个!] vi /etc/centos-release 查看centos系统版本…
Linux系统运维笔记 查看系统版本和设置系统时间 查看系统版本 lsb_release -a (适用于所有的linux,包括Redhat.SuSE.Debian等发行版,但是在debian下要安装lsb) 一步到位,设置系统时间: date -s "20091112 18:30:50" &&hwclock --systohc 查看时区和时间 date //CST:中国标准时间(China Standard Time) //UTC:协调世界时,又称世界标准时间,简称UT…
简介: Supervisor 进程管理工具 一.安装 shell > yum -y install python-pip shell > pip install supervisor # 这样就安装好了,注意:这货不支持 Python .用 yum 安装也有问题 二.配置 shell > echo_supervisord_conf > /etc/supervisord.conf # 生成配置文件到指定位置,报错的时候卸载原来的包装这个 meld3==0.6.7 [ pkg_reso…
Linux系统运维笔记(6),CentOS 7.6双网卡路由配置. 一,先确认系统版本: [root@localhost ~]# cat /etc/redhat-releaseCentOS Linux release 7.6.1810 (Core) 二,网卡1配置外网,配IP地址.子网掩码.和网卡. 网卡2配置内网,配IP地址,子网掩码,不要配网关. 三,写路由表route-网卡名,在via后指定内网的网关. [root@localhost ~]# vi /etc/sysconfig/netwo…
在接触supervisor进程管理工具之前,使用springboot打包部署到linux服务器的流程是这样子的,如下图所示: 上图展示的就是最一般的流程,如果项目是小项目或者demo可以这样子去部署,但是实际生产中会有各种各样的问题存在,比如: 项目发布之后,由于各种可能的原因,服务器宕机或者服务进程挂掉,不能自动重启; 如果项目是频繁更新,频繁发布,这样子简直会把人累死; ... ok,今天先来解决第一个问题,服务重启的问题. --- supervisor介绍 Supervisor,是一个进程…
最近不少小伙伴后台联系,希望能弄一些大厂的学习资料,我这边费了很大劲,联系到老朋友,原美团点评架构师张sir,问他要了些美团点评架构的内部资料. 这份资料含金量非常高,包含整个美团点评架构架构图,Linux应用场景,优化方案,学习笔记等等,是不可多得的Linux学习资料,PPT一共60多页,顺手截了2张都是干货! 自动化运维笔记资料 另外,还要到了非常详细的运维自动化全套笔记,从自动化场景分析到相关运维自动化工具,再到ansible全套笔记.和运维性能优化,几乎覆盖了 Linux 云计算学习的方…
一.  Ansible 介绍Ansible是一个配置管理系统configuration management system, python 语言是运维人员必须会的语言, ansible 是一个基于python 开发的自动化运维工具, 其功能实现基于ssh远程连接服务, ansible 可以实现批量系统配置,批量软件部署,批量文件拷贝,批量运行命令等功能, 除了ansible之外,还有saltstack 等批量管理软件. Ansible能做什么? ansible可以帮助运维人员完成一些批量任务,或…
根据以往运维工作中操作经验来说,当管理上百台上千台服务器时,选择一款批量操作工具是及其有必要的.早期习惯于在ssh信任关系的前提下做for;do;done循环语句的批量操作,后来逐渐趋于使用批量工具操作:1)pssh工具,它需要提前做好key关联的ssh信任关系,比起for循环语句,我之前还是比较喜欢用pssh.    具体用法见于:http://www.cnblogs.com/kevingrace/p/6378719.html2)expect 最大的有点就是交互,但是要成高性能的话,需要自己写…
之前详细介绍了Ansible的安装, 配置, 以及Ansible常用模块的使用. 下面对Ansible的playbook用法做一小结. 为什么引入playbook?一般运维人员完成一个任务, 比如安装部署一个httpd服务会需要多个模块(一个模块也可以称之为task)提供功能来完成.而playbook就是组织多个task的容器,它的实质就是一个文件,有着特定的组织格式,它采用的语法格式是YAML(Yet Another Markup Language).YAML语法能够简单的表示散列表,字典等数…
一.系统基础信息模块 1.1 系统性能信息模块psutil psutil是一个跨平台库(http://code.google.com/p/psutil/),能够轻松实现获取系统运行的进程和系统利用率(包括CPU.内存.磁盘.网络等)信息.它主要应用于系统监控,分析和限制系统资源及进程的管理.它实现了同等命令行工具提供的功能,如ps.top.lsof.netstat.ifconfig.who.df.kill.free.nice.ionice.iostat.iotop.uptime.pidof.tt…
supervisor是python写的一个管理进程运行的工具,可以很方便的监听.启动.停止.重启一个或多个进程:有了supervisor后,就不用字节写启动和监听的shell脚本了,非常方便. supervisor只支持linux系统,并基于python2环境运行,目前python3还没有官方的版本,但没有关系,如果项目是python3环境的,可以同时安装py2和py3两个版本. 安装环境 一般linux自带的python2环境是纯洁的,没有setuptools和pip等工具,先安装. pyth…
第2部-重要目录结构详解 1.回顾Linux目录结构知识 /dev/            设备目录 /etc/             系统配置及服务配置文件,启动命令的目录 /proc            显示内核及进程信息的虚拟文件系统 /tmp             临时文件目录,公共厕所,客厅 /home          普通用户家目录,大臣的家 /root             超级管理员的家目录,皇宫 /var               变化的目录,一般是日志文件,cac…
在日常的运维工作中,经常会用到nginx服务,也时常会碰到nginx因高并发导致的性能瓶颈问题.今天这里简单梳理下nginx性能优化的配置(仅仅依据本人的实战经验而述,如有不妥,敬请指出~) 一.这里的优化主要是指对nginx的配置优化,一般来说nginx配置文件中对优化比较有作用的主要有以下几项:1)nginx进程数,建议按照cpu数目来指定,一般跟cpu核数相同或为它的倍数. worker_processes 8;2)为每个进程分配cpu,上例中将8个进程分配到8个cpu,当然可以写多个,或…
supervisor是一款进程管理工具,当想让应用随着开机启动,或者在应用崩溃之后自启动的时候,supervisor就派上了用场. 广泛应用于服务器中,用于引导控制程序的启动 安装好supervisor之后,可以新建一个/etc/supervisord.conf文件,该文件的内容通过通echo_supervisord_conf指令可以看到. 通过以下指令可以启动supervisor(若不指定配置文件,会到特定的几个目录中去寻找): supervisord -c /etc/supervisord.…
这几天在用supervisor管理爬虫和Flask, 每次都记不住命令,花点时间记录下. supervisor是一个进程管理工具,用来启动.停止.重启和监测进程.我用这个东西主要用来监测爬虫和Flask运行状况,当程序挂掉后,supervisor能够帮我重新拉起进程. 安装 安装就比较简单了,直接用Python的包管理器pip: sudo pip install supervisor 配置 先通过echo_supervisord_conf 命令生成配置文件,路径随你指定. echo_superv…
作为一名资深的linux运维工程师,为方便了解和追求服务器的高性能,如cpu.内存.io.网络等等使用情况,要求运维工程师必须要熟练运用一些必要的系统性能调试工具,liunx下提供了众多命令方便查看各种资源的使用情况.经常用的有ps.top.free.mpstat.iostat.vmstat.netstat..下面简单介绍下这几个工具的使用: 一.toptop是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.top显示系统当前的进程和其…
之前在公司机房部署了一套jenkins环境,现需要迁移至IDC机房服务器上,迁移过程中记录了一些细节:1)jenkins默认的主目录放在当前用户家目录路径下的.jenkins目录中.如jenkins使用root用户启动,则主目录为/root/.jenkins [root@code-server ~]# ll -d /root/.jenkins/ drwxr-x--- 14 root root 4096 Dec 18 15:22 /root/.jenkins/ 2)可以在系统环境变量里手动设置je…
回想起来,从事linux运维工作已近5年之久了,日常工作中会用到很多常规命令,之前简单罗列了一些命令:http://www.cnblogs.com/kevingrace/p/5985486.html今天在这里,详细总结下运维工作中常常用到的一些操作命令(依据本人使用经验而言): 文件系统结构和基本操作命令                                                                  chmod命令:改变权限 常用用法:chmod -R xxxx…
在linux日常运维中,我们平时会用到很多常规的操作命令. 查看服务器的外网ip [root@redis-new01 ~]# curl ifconfig.me [root@redis-new01 ~]# curl ifconfig.me/all  添加主机名 centos6修改主机名 [root@localhost ~]# hostname kevin-web01 [root@localhost ~]# vim /etc/sysconfig/network HOSTNAME= kevin-web…
一.ELK日志分析工具介绍1) Elasticsearch1.1)  Elasticsearch介绍ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是第二流行的企业搜索引擎.设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便. 1.2)  Elasticsearch几个重要术语-  NRT elasti…
Supervisor 一个python写的进程管理工具,用来启动.关闭.重启进程,可以同时控制多个进程. 安装: pip install supervisor 配置: 通过配置文件来满足自己的需求 配置文件分为两部分: supervisord(server端,对应supervisorctl为client端) 应用程序(即我们管理要应用程序) 1.supervisord配置: 安装好后,可以运行echo_supervisord_conf命令来输出默认的配置项(里面有配置项和对应的注释) 但是通常的…
第三部 3. Linux系统文件重要知识初步讲解 # ls  -lhi   (i: inode,每个文件前的数字代表文件身份ID:h: human 人类可读) 显示:25091 -rw-r--r-- 1 root root 81 4月 15 00:33 oldboy.txt 第1列:inode=>index node  索引节点编号. 第2列:文件类型及权限(共10个字符,第一个字符为类型,后9个字符为文件权限). 第3列:硬链接个数( 详细参看ln命令的讲解).硬链接是文件的又一个入口. 第4…