分类目录归档:运维小结

Redis-集群一主一从宕掉问题解决


项目使用redis作为缓存存储。基于容灾的考虑,采用三台主机上部署三主三从的集群搭建方式,部署情况如下:
主机1:10.0.0.1:40001 、10.0.0.1:40002
主机2:10.0.0.2:40003 、10.0.0.2:40004
主机3:10.0.0.3:40005 、10.0.0.3:40006
集群一直运行的正常的。直到有一天....

出~问~题~了~
10.0.0.3因为资源不足的原因,计划扩容资源。很有信心的直接重启的主机,没有单独处理redis节点。结果出事了,redis集群报错,不可用。
通过 redis-trib.rb check 10.0.0.1:400

Read more

一次乱用update语句引发的事故


一、前言
最近经常碰到执行数据库操作导致主从数据库延迟严重。这不,他们又给我找了个麻烦,我们来看下整个过程。

二、过程
开发需要执行数据更新,此表中记录数为33W+

UPDATE ru_live_report_flag t, om_trade_goods g  
SET t.GOODS_TYPE_ID  = g.`GOODS_TYPE_ID`  
WHERE t.`TRADE_ID` = g.`TRADE_ID`;  

由于担心这个语句操作后导致锁表的问题,于是做以下操作,从而引起此次事故的发生。
首先,复制一张表出来;

CREATE TABLE ru_live_report_

Read more

rz、sz--基于ZMODEM/YMODEM/XMODEM的文件传输


运维中针对普通的用户使用lshell限制权限,包括限制可登录的主机、可访问的目录和可执行的命令。但是管控之后,普通用户无法对登录的主机进行文件的传输,包括上传和下载文件。因为限制了无法使用ftp或者sftp进行登录。我们可以使用rz和sz工具来替代ftp。

rz和sz是使用ZMODEM/YMODEM/XMODEM协议的工具。SecureCRT客户端和Xshell客户端都支持这些协议。
rz,Receive files 是指服务器端接收来自客户端的文件(上传文件到服务器);
sz,Send file(s) 是指服务器端发送文件到客户端(下载文件到本地);

首先,可以通过yum或者apt安

Read more

磁盘空间满引起的故障


记录本次由于磁盘空间满导致的故障:
本台主机共有如下五块磁盘:

/dev/vda1        40G  3.4G   34G  10% /
/dev/vdb         99G  3.0G   91G   4% /thirdparty
/dev/vdc        493G  232G  236G  50% /data
/dev/vdd        2.0T  2.0T  0  100% /dsp
/dev/vde        2.0T  999G  870G  54% /dsp_video

其中应用部署在/thirdparty,比如ActiveMQ和Redis集群,数据存在

Read more

nginx正向代理的配置


接到需求:
需要固定IP访问对方的网站,公司办公网都是宽带上网随机IP。公司只有一个固定IP,需要在这个IP对应的主机上配置正向代理完成访问网站。

http代理

nginx默认只支持http的正向代理,通过模块ngx_http_proxy_module支持

    server {
        resolver 114.114.114.114;
        listen 2345;

        access_log  logs/proxy.access.log main;
        error_log   logs/proxy.error.log;

       

Read more

Dubbo的cache引起的一次OutOfMemory问题解决


所有的Web应用全部报错“java.lang.OutOfMemoryError: Java heap space”,并且由于在启动脚本中添加了“-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/webapp/dumpfile/****.hprof” ,于是直接生产了大量的dump文件。
根据错误“Java heap space”,判断是堆的内存溢出了。但是奇怪的是所有的应用仍然运行正常,没有任何问题。难道是部分线程死了部分仍然在处理业务?
通过jvisualvm对相应的hprof文件进行分析,锁定问题在“DubboSaveRegistryCac

Read more

nginx根据截取URL动态配置跳转不同路径


业务部门需求:
需要根据截取URL动态配置跳转不同路径。
比如:
https://ksp.adsl.cn/m/?local=1&channel=961 会跳到 https://961yetong.17737777777.cn/m/?local=1&channel=961
https://ksp.adsl.cn/m/?local=1&channel=962 会跳到 https://962yetong.17737777777.cn/m/?local=1&channel=962

解决方案:

      server {
          l

Read more

扩展分区和文件系统_Linux系统盘


1、根据操作系统安装growpart或者xfsprogs扩容格式化工具
yum install cloud-utils-growpart xfsprogs -y

2、运行以下命令扩容分区
growpart
growpart /dev/vda 1

3、运行以下命令查看云盘分区大小和文件系统类型
df -Th

4、扩展文件系统
ext*文件系统(例如ext3和ext4):运行以下命令扩展文件系统
resize2fs
resize2fs /dev/vda1
xfs文件系统:运行以下命令扩展文件系统
xfs_growfs
xfs_growfs /

Read more

dubbo服务绑定和注册的地址


dubbo服务一次编译多节点部署,存在编译打包的地址绑定问题。 如果暂时不考虑docker进行地址和端口映射的情况下,可以考虑如下配置,避免绑定特定ip之后无法发布到其他主机节点的问题。

dubbo.protocol.host=0.0.0.0

Read more