ZhangShun Blog

但行好事,莫问前程。

ssl证书

证书制作和申请流程 DER是二进制编码的证书,PEM是ASCII编码证书,CRT是证书,可能是二进制也可能是ASCII keystore可以看成一个放key的库,key就是公钥,私钥,数字签名等组成的一个信息。 truststore里存放的是只包含公钥的数字证书,代表了可以信任的证书,而keystore是包含私钥的 1 2 3 4 5 6 a. 自颁发证书签发过程 生成私钥---&...

Linux:Keepalived实现服务高可用

1、keepalived是什么? Keepalived软件起初是专为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后来又加入了可以实现高可用的VRRP功能。因此,Keepalived除了能够管理LVS软件外,还可以作为其他服务(例如:Nginx、Haproxy、MySQL等)的高可用解决方案软件。 Keepalived软件主要是通过VRRP协议实现高可用功能的...

MySql避免重复插入记录方法(ignore,Replace,ON DUPLICATE KEY UPDATE)

使用ignore关键字 Several statements in MySQL support an optional IGNORE keyword. This keyword causes the server to downgrade certain types of errors and generate warnings instead. For a multiple-row st...

Linux服务器出现大量CLOSE_WAIT

背景 之前接手了前同事维护的一个网站服务,下午收到通知说是网站无法访问,测试访问现象:长时间无响应之后报错502,502报错是后端处理不了请求,架构是nginx+tomcat,登陆排查 catalina.out无明显报错 系统日志message没有报错 jstack命令不存在所以看不到jvm里线程的状态 内存、cpu、io、磁盘空间都是正常 ping服务器也是正常,...

zabbix 告警/恢复 消息优化

前言 之前一篇博客中介绍了zabbix的阶段告警,zabbix 告警、恢复消息次数,但是存在一个问题,当触发器设置为多重的话,那么触发器每触发一次,会产生一条告警消息跟一条恢复消息,当告警恢复后,恢复信息也跟着发送多次了,经常导致企业微信流量不够用。如果触发器的生成模式设置为单个,发送的告警消息不能即时刷新,只能显示触发时的状态。 阶段一:多重告警,多重恢复 阶段二:多重告警,...

k8s 更新与回滚

更新 kubectlapply -f demo.yaml --record 回滚 kubectl apply每次更新应用时,Kubernetes都会记录下当前的配置,保存为一个revision(版次),这样就可以回滚到某个特定revision。 kubectl apply -f demo.yaml --record –record的作用是将当前命令记录到revision记录中,这样...

k8s Service

Service Service从逻辑上代表了一组Pod,具体是哪些Pod则是由label来挑选的。Service有自己的IP,而且这个IP是不变的。客户端只需要访问Service的IP,Kubernetes则负责建立和维护Service与Pod的映射关系 Service的Cluster-IP由Kubernetes节点上的iptables规则管理的,也可以说是Service逻辑上的抽象层 ...

k8s 控制器

Deployment DaemonSet Job or CronJob Deployment 运行Deployment 1 2 3 4 5 6 7 kubectl run nginx-deployment --image=nginx:1.7.9 --replicas=2 通过kubectl get deployment命令查看nginx-deployment的...

k8s yaml文件

Pod资源 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67...

kubeadm部署kubernetes1.13.2

1、配置解析 1 2 3 4 5 6 [root@master ~]# cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6....