sysctl.conf参数调优

sysctl.conf 工作原理sysctl 命令被用于在内核运行时动态地修改内核的运行参数,可用的内核参数在目录 /proc/sys 中。它包含一些 TCP/IP 堆栈和虚拟内存系统的高级选项, 这可以让有经验的管理员提高引人注目的系统性能。用 sysctl 可以读取设置超过五百个系统变量。vi /etc/sysctl.conf # 禁用包过滤功能 net.ipv4.ip_forward = 0 # 启用源路由核查功能 net.ipv4.conf.default.rp_filter = 1 # 禁用所有 IP 源路由 net.ipv4.conf.default.a ......

CentOS修改默认启动模式(文本/图像)

CentOS7修改方法为:1.首先删除已经存在的符号链接rm /etc/systemd/system/default.target2.默认级别转换为3(文本模式)ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target3、或者默认级别转换为5(图形模式)ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target4.重启rebootCentOS5/6版本修改默认启动模式:vim /et ......

ab压力测试工具

几个压力性能相关的名字:吞吐率(Requests per second) 概念:服务器并发处理能力的量化描述,单位是reqs/s,指的是某个并发用户数下单位时间内处理的请求数。某个并发用户数下单位时间内能处理的最大请求数,称之为最大吞吐率。 计算公式:总请求数 / 处理完成这些请求数所花费的时间,即 Request per second = Complete requests / Time taken for tests QPS(每秒查询数)、TPS(每秒事务数)是吞吐量的常用量化指标,另外还有HPS(每秒HTTP请求数)。 跟吞吐量有关的几个重要是:并发数、响应时间。 QPS( ......

Linux下svn命令整理

1、将文件checkout到本地目录svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.35/pro/domain 如果开启了https浏览模式也可以写成: svn checkout https://192.168.1.35/pro/domain 简写:svn co svn co https://192.168.1.35/pro/domain2、往版本库中添加新的文件svn add file 例如:svn add test.php(添加test.php) svn add *.php(添加当前目录下 ......

Linux下使用iptables端口转发

需要将外网访问本地IP(192.168.255.244)的8443端口转换为访问192.168.255.97的8443端口,这就需要用到iptables的端口映射实现:需要先开启linux的数据转发功能# vi /etc/sysctl.conf,将net.ipv4.ip_forward=0更改为net.ipv4.ip_forward=1 # sysctl -p //使数据转发功能生效在255.244机器上进行相同端口转发iptables -t nat -I PREROUTING -p tcp --dport 8443 -j DNAT --to 192.168.255.97 ip ......

RHEL 6 或者 Oracle Linux 6, 不重启识别新添加的scsi硬盘VM虚拟机同样适用

下面看一下在系统不重启的情况,如何让系统认识新的磁盘,并能对其分区与格式化1、在开机状态下新增磁盘2、执行下面的命令echo "- - -" > /sys/class/scsi_host/host0/scan注意:"- – -" 这三个-之间是有空格的假如 fdisk -l 还是未发现新硬盘,则将上面命令中的host0,替换为host1,host2,....看看查看系统日志tail -f /var/log/messages发现对SCSI设备进行了一次重新扫描,然后用fdisk -l也看到了新增加的磁盘了,然后用fdisk分区并挂载即可;VIA: http ......

CentOS下TIME_WAIT过多-问题处理方法

TIME_WAIT状态原理当客户端主动关闭连接时,会发送最后一个ack,然后会进入TIME_WAIT状态,再停留2个MSL时间(约1-4分钟),进入CLOSED状态。CentOS6/7.x默认没有对系统参数进行设置,当大量TIME_WAIT产生的时候会影响系统性能,统计TIME_WAIT状态数量netstat -ano | grep TIME_WAIT | wc -l查看系统当前连接状态:netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' TIME_WAIT 352 ESTABLISHED 90 ......

zabbix 客户端执行netstat -p 报错

zabbix_get执行的脚本中含有netstat -lantup命令报错,原因是-p参数需要root用户才能使用zabbix_get执行脚本时报错:(Not all processes could be identified, non-owned process info will not be shown, you would have to be root to see it all.解决该问题的办法有两种:通过配置vi /etc/sudoersCmnd_Alias MONITORING = /bin/netstat,/sbin/sudo %monitor ......

Nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in nginx.conf解决之热更新

Nginx如果未开启SSL模块,配置Https时提示错误nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf是因为nginx缺少http_ssl_module模块,编译安装的时候带上--with-http_ssl_module参数Nginx开启SSL模块步骤:安装openssl支持yum install openssl openssl-devel -y查看nginx原有的模块/usr/local/nginx/sbin ......

Kvm虚拟机静态迁移

什么是静态迁移?静态迁移:也叫做常规迁移、离线迁移(Offline Migration)。就是在虚拟机关机或暂停的情况下从一台物理机迁移到另一台物理机。因为虚拟机的文件系统建立在虚拟机镜像上面,所以在虚拟机关机的 情况下,只需要简单的迁移虚拟机镜像和相应的配置文件到另外一台物理主机上;如果需要保存虚拟机迁移之前的状态,在迁移之前将虚拟机暂停,然后拷贝状态至目的主机,最后在目的主机重建虚拟机状态,恢复执行。这种方式的迁移过程需要显式的停止虚拟机的运行。从用户角度看,有明确的一段停机时间,虚拟机上的服务不可用。这种迁移方式简单易行,适用于对服务可用性要求不严格的场合。说明(1)虚拟主 ......

Keepalived构建高可用MySQL互为主从自动切换

关于MySQL-HA,目前有多种解决方案,比如heartbeat、drbd、mmm、共享存储,但是它们各有优缺点。heartbeat、drbd配置较为复杂,需要自己写脚本才能实现MySQL自动切换,对于不会脚本语言的人来说,这无疑是一种脑裂问题;对于mmm,生产环境中很少有人用,且mmm管理端需要单独运行一台服务器上,要是想实现高可用,就得对mmm管理端做HA,这样增加了硬件开支;对于共享存储,数据还是放在本地较为安全,存储设备毕竟存在单点隐患。Keepalived是一个免费开源的,用C编写的类似于layer3, 4 & 7交换机制软件,具备我们平时说的第3层、第4层和第7层交换 ......

Nginx中虚拟目录alias和root目录说明

Nginx的配置中,alias目录和root目录是有区别的:1、alias指定的目录是准确的,即location匹配访问的path目录下的文件直接是在alias目录下查找的;2、root指定的目录是location匹配访问的path目录的上一级目录,这个path目录一定要是真实存在root指定目录下的;3、使用alias标签的目录块中不能使用rewrite的break(具体原因不明);另外,alias指定的目录后面必须要加上"/"符号!!4、alias虚拟目录配置中,location匹配的path目录如果后面不带"/",那么访问的url地址中这个path目录后面加不加"/"不影响 ......

CentOS上部署rsync同步文件

rsync特点:快速:第一次同步时 rsync 会复制全部内容,但在下一次只传输修改过的文件。rsync在传输数据过程中可以实行压缩及解压缩操作,以使用更少的带宽。   安全:可以使用rcp、ssh等方式来传输文件,也可以用直接的socket连接。安装rsync:yum install rsync -y安装xinetd启停rsyncyum install xinetd -y安装完后要修改以下配置文件:vi /etc/xinetd.d/rsync # default: off # description: The rsync server is a good addition to ......

BASH脚本:/bin/sh^M:bad interpreter: No such file or directory解决

在Linux中执行.sh脚本,异常/bin/sh^M: bad interpreter: No such file or directory。 分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息。 解决:1)在windows下转换: 利用一些编辑器如UltraEdit或EditPlus等工具先将脚本编码转换,再放到Linux中执行。转换方式如下(UltraEdit):File-->Conversions-->DOS->UNIX即可。 2)也可在Linux中转换: 首先要确保文件有可 ......

FastDFS 一个tracker配置多个Storage Group

一个tracker配置多个Storage Group步骤如下:1、修改相应storage的storage_group2.conf配置文件,以下三个参数需注意:group_name=group2 port=23001 base_path=/data/fastdfs_group2 store_path0=/data/fastdfs_group22、修改storage的mod_fastdfs.confgroup_count = 2 #storage的个数 [group2] group_name=group2 storage_server_port=23001 store_path_ ......

提取jks证书配置Nginx使其支持https

证书配置在nginx上,对外提供https服务,内部和tomcat做反向代理走http,提取jks证书步骤如下:提取jks证书(keytool命令安装jdk以后就默认安装了)查看jks文件中的entrykeytool -list -keystore server.jks查看是否有entries,如果有下个命令需要加 -srcalias 参数指定entry转换jks文件为p12keytool -importkeystore -srckeystore server.jks -destkeystore server.p12 -deststoretype PKCS12查看新格式(pkcs ......

Tomcat查看占用CPU过高的原因

应用服务器服务起来以后占用CPU一直很高,排查方法如下:1、使用top命令查看使用CPU过高的进程的pid,按“shift+P”键按照cpu从高到低排列,按“shift+M”键按照内存用高到低排列。2、根据pid定位占用cpu的线程,并按照占用从高到低排列#此处的pid为15217 $ ps -mp 15254 -o THREAD,tid,time|sort -rn|head -10 USER %CPU PRI SCNT WCHAN USER SYSTEM TID TIME tomcat 99.9 - - - - - ......

Nginx目录浏览功能autoindex设置

Nginx默认是不允许列出整个目录的。如需此功能,打开nginx.conf文件或你要启用目录浏览虚拟主机的配置文件,在server或location 段里添加上autoindex on;来启用目录流量,下面会分情况进行说明。另外Nginx的目录流量有两个比较有用的参数,可以根据自己的需求添加:autoindex_exact_size off;默认为on,显示出文件的确切大小,单位是bytes。改为off后,显示出文件的大概大小,单位是kB或者MB或者GBautoindex_localtime on;默认为off,显示的文件时间为GMT时间。改为on后,显示的文件时间为文件的服务器 ......

dd创建测试文件

使用dd这个linux命令可以创建一定大小文件。linux创建文件命令:dd命令把指定的输入文件拷贝到指定的输出文件中,并且在拷贝的过程中可以进行格式转换。语法:CODE:[Copy to clipboard]dd 〔选项〕QUOTE:if =输入文件(或设备名称)。 of =输出文件(或设备名称)。 ibs = bytes 一次读取bytes字节,即读入缓冲区的字节数。 skip = blocks 跳过读入缓冲区开头的ibs*blocks块。 obs = bytes 一次写入bytes字节,即写 入缓冲区的字节数。 bs = bytes 同时设置读/写缓冲区的字节数(等于设置o ......