怎样用Netdata监控Linux
netdata是一套实时监控Linux性能的开源软件,各种直观数据通过图形直观地实时显示。
Netdata是每秒收集数据和虚拟化计算,可使用top vmstat iostat等,Netdata每秒计算数据后将结果推给任何应用,可从Web进行访问。
Netdate的图表查询是能够3毫秒以内显示出来,计算图表的时间少于3毫秒,包括产生JSON文本 压缩发送到你的Web浏览器,计时日志在netdata的accesslog以便用于检查。
Netdata是使用普通C编写,包括关键系统插件也是C,它的速度可以和原生系统管理工具相比。
一般现代服务器硬件可以支持每秒支持300个图表刷新,raspberry pi 2在使用其全部4核的情况下能支持每秒300个以上图表刷新。
Netdata没有磁盘I/O访问瓶颈,因为并不使用磁盘I/O,分离了日志记录甚至可以失效。Netdata会使用一些内存和CPU(单核大概2%以下,插件可能会损耗更多),正常服务器完全有富余资源支持。
不需要root权限运行netdata,如果被root启动,会切换到netdata用户。有一些插件可能会因为手机一些数据需要root访问权限,可使用setuid到root。
netdata有嵌套web服务器,可以通过防火墙 代理服务器有限访问,大部分系统,在DMZ就足够能运行。
netdata配置较少,虽然支持很多丰富的配置,大部分是自动探测的,但是插件需要一些配置操作。
netdata会自动显示tc Qos类,如果你也是使用FireQOS,也会手机接口和类名称。
linux系统怎么看正在运行的网卡有哪些?
ifconfig可以看,第三行内容有up和running就说明在物理上是好的。要看流量就看发送和就收的数据包。
linux有什么命令能够查看本机器的网络流量?
nethogs:按进程查看流量占用iptraf:按连接/端口查看流量ifstat:按设备查看流量ethtool:诊断工具tcpdump:抓包工具希赛里有很多这方面资料的。
如何使得Linux服务器下多网卡负载均衡?
◆应用服务器的负载均衡技术如果将客户端的负载均衡层移植到某一个中间平台,形成三层结构,则客户端应用可以不需要做特殊的修改,透明的通过中间层应用服务器将请求均衡到相应的服务结点。比较常见的实现手段就是反向代理技术。使用反向代理服务器,可以将请求均匀转发给多台服务器,或者直接将缓存的数据返回客户端,这样的加速模式在一定程度上可以提升静态网页的访问速度,从而达到负载均衡的目的。使用反向代理的好处是,可以将负载均衡和代理服务器的高速缓存技术结合在一起,提供有益的性能。然而它本身也存在一些问题,首先就是必须为每一种服务都专门开发一个反向代理服务器,这就不是一个轻松的任务。反向代理服务器本身虽然可以达到很高效率,但是针对每一次代理,代理服务器就必须维护两个连接,一个对外的连接,一个对内的连接,因此对于特别高的连接请求,代理服务器的负载也就非常之大。反向代理能够执行针对应用协议而优化的负载均衡策略,每次仅访问最空闲的内部服务器来提供服务。但是随着并发连接数量的增加,代理服务器本身的负载也变得非常大,最后反向代理服务器本身会成为服务的瓶颈。◆基于域名系统的负载均衡NCSA的可扩展Web是最早使用动态DNS轮询技术的web系统。在DNS中为多个地址配置同一个名字,因而查询这个名字的客户机将得到其中一个地址,从而使得不同的客户访问不同的服务器,达到负载均衡的目的。在很多知名的web站点都使用了这个技术:包括早期的yahoo站点、163等。动态DNS轮询实现起来简单,无需复杂的配置和管理,一般支持bind82以上的类unix系统都能够运行,因此广为使用。DNS负载均衡是一种简单而有效的方法,但是存在不少问题。首先域名服务器无法知道服务结点是否有效,如果服务结点失效,余名系统依然会将域名解析到该节点上,造成用户访问失效。其次,由于DNS的数据刷新时间TTL(TimetoLIVE)标志,一旦超过这个TTL,其他DNS服务器就需要和这个服务器交互,以重新获得地址数据,就有可能获得不同IP地址。因此为了使地址能随机分配,就应使TTL尽量短,不同地方的DNS服务器能更新对应的地址,达到随机获得地址。然而将TTL设置得过短,将使DNS流量大增,而造成额外的网络问题。最后,它不能区分服务器的差异,也不能反映服务器的当前运行状态。当使用DNS负载均衡的时候,必须尽量保证不同的客户计算机能均匀获得不同的地址。例如,用户A可能只是浏览几个网页,而用户B可能进行着大量的下载,由于域名系统没有合适的负载策略,仅仅是简单的轮流均衡,很容易将用户A的请求发往负载轻的站点,而将B的请求发往负载已经很重的站点。因此,在动态平衡特性上,动态DNS轮询的效果并不理想。◆高层协议内容交换技术除了上述的几种负载均衡方式之外,还有在协议内部支持负载均衡能力的技术,即URL交换或七层交换,提供了一种对访问流量的高层控制方式。Web内容交换技术检查所有的HTTP报头,根据报头内的信息来执行负载均衡的决策。例如可以根据这些信息来确定如何为个人主页和图像数据等内容提供服务,常见的有HTTP协议中的重定向能力等。HTTP运行于TCP连接的最高层。客户端通过恒定的端口号80的TCP服务直接连接到服务器,然后通过TCP连接向服务器端发送一个HTTP请求。协议交换根据内容策略来控制负载,而不是根据TCP端口号,所以不会造成访问流量的滞留。由于负载平衡设备要把进入的请求分配给多个服务器,因此,它只能在TCP连接时建立,且HTTP请求通过后才能确定如何进行负载的平衡。当一个网站的点击率达到每秒上百甚至上千次时,TCP连接、HTTP报头信息的分析以及进程的时延已经变得很重要了,要尽一切可能提高这几各部份的性能。在HTTP请求和报头中有很多对负载平衡有用的信息。我们可以从这些信息中获知客户端所请求的URL和网页,利用这个信息,负载平衡设备就可以将所有的图像请求引导到一个图像服务器,或者根据URL的数据库查询内容调用CGI程序,将请求引导到一个专用的高性能数据库服务器。如果网络管理员熟悉内容交换技术,他可以根据HTTP报头的cookie字段来使用Web内容交换技术改善对特定客户的服务,如果能从HTTP请求中找到一些规律,还可以充分利用它作出各种决策。除了TCP连接表的问题外,如何查找合适的HTTP报头信息以及作出负载平衡决策的过程,是影响Web内容交换技术性能的重要问题。如果Web服务器已经为图像服务、SSL对话、数据库事务服务之类的特殊功能进行了优化,那么,采用这个层次的流量控制将可以提高网络的性能。◆网络接入协议交换大型的网络一般都是由大量专用技术设备组成的,如包括防火墙、路由器、第3、4层交换机、负载均衡设备、缓冲服务器和Web服务器等。如何将这些技术设备有机地组合在一起,是一个直接影响到网络性能的关键性问题。现在许多交换机提供第四层交换功能,对外提供一个一致的IP地址,并映射为多个内部IP地址,对每次TCP和UDP连接请求,根据其端口号,按照即定的策略动态选择一个内部地址,将数据包转发到该地址上,达到负载均衡的目的
一般监控服务器,你可以
首先:你可以用iostat命令,显示存储子系统的详细信息,可以用来监控磁盘I/O的情况,如果%iowait的值过大,那么就是就说明很多IO在等待了,性能当然就有影响了,当然,用free也可以查看大概的情况,如下:
其次;就是windows下面都有的工具,wireshark,前身是ethereal,是一个网络协议检测程序,可以抓去网站运行的相关咨询,包括每一封包流向及其内容,监控TCP
session动态等等。
当然有些服务商是有自己的服务器监控系统,监控软件的,我用的是小鸟云的!他们有专门的与"云监控”云管家等监控软件!我是觉得很好!这样就免得麻烦!
公司使用的服务器是linux的操作系统,之前很长一段时间监控系统参数都是使用top等linux命令来监控
这样做的好处
1可以非常容易的监控的系统的状态
2实时性非常强
不足之处
1不能和loadrunner其他的图表进行合并,造成了很难在事后分析出系统的问题
2监控系统的数据无法直接保存,供下次参考使用
最近终于说服了公司的sa,让我能在性能测试环境做必要的设置,因为之前sa一直认为我要做的事情会对系统的安全性造成影响。
现在我来介绍一下如何在linux设置来完成loadrunner对服务器性能的监控
A验证服务器上是否配置了rstatd守护程序
1 rup 127001
2find / -name rpcrstatd
3/usr/sbin/rpcinfo -p
B下载rpcrstatd
http://sourceforgenet/projects/rstatd
C打开端口映射
1执行 setup命令
这时会弹出一个类似图形化的界面,光标移动到System services,回车。在新界面中找到portmap项,空格选中。然后选择OK,再选择quit。
2/etc/rcd/initd/portmap start //启动portmap
D编译安装rstatd
/configure
make all-am
make install-am
E起rstatd服务
/usr/local/sbin/rpcrstatd
F安装xinetd服务
yum install xinetdi386
/sbin/service xinetd restart
好了,liunx中的设置基本上都已经设置完了,接下来只要到loadrunner中加上对相应服务的监控就可以了
0条评论