网上查了查资料,这里记录一下。
前言

    最近分析服务器性能,考虑到nginx在前面做反向代理,这里查一下nginx日志来反应服务器处理时间的问题。

    注:本文提到的所有变量,如果需要区分,则均为ngx_http_upstream_module中的变量,不再做释义。如需要使用其他module中的参数,请参考nginx官方文档

继续阅读

官方镜像下载地址:http://cloud.centos.org/centos/

OpenStack环境中,使用官方镜像CentOS-7-x86_64-GenericCloud.qcow2,我们不知道镜像的默认密码,可以在创建实例时候配置脚本写入root密码。
操作方法

在创建实例——定制化脚本的输入框中输入以下内容

#!/bin/bash
passwd root<<EOF
1234qwer
1234qwer
EOF
sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config
systemctl restart sshd
sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config
setenforce 0
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

继续阅读

一、LVS-DR工作原理

1、DR模式概述

DR(Direct Routing)

  • 通过在调度器LB上修改数据包的目的MAC地址实现转发。注意,源IP地址仍然是CIP, 目的IP地址仍然是VIP。
  • 请求的报文经过调度器,而RS响应处理后的报文无需经过调度器LB, 因此,并发访问量大时使用效率很高(和NAT模式比)
  • 因DR模式是通过MAC地址的改写机制实现的转发,因此,所有RS节点和调度器LB只能在一个局域网LAN中(小缺点)。
  • 需要注意RS节点的VIP的绑定(lo:vip/32,lo1:vip/32) 和ARP抑制问题。
  • 强调下: RS节点的默认网关不需要是调度器LB的DIP, 而直接是DC机房分配的上级路由器的IP (这是RS带有外网P地址的情况),理论讲:只要RS可以出网即可,不是必须要配置外网IP。
  • 由于DR模式的调度器仅进行了目的MAC地址的改写,因此,调度器LB无法改变请求的报文的目的端口(和NAT要区别)
  • 当前,调度器LB支持几乎所有的UNIX,LINUX系统,但目前不支持WINDOWS系统。真实服务器RS节点可以是WINDOWS系统。
  • 总的来说DR模式效率很高,但是配置也较麻烦,因此,访问量不是特别大的公司可以用haproxy/nginx取代之。这符合运维的原则:简单、易用、高效。日1000-2000W PV或并发请求1万-以下都可以考虑用haproxy/nginx (LVS NAT模式) 直接对外的访问业务,例如:web服务做RS节点,RS最好用公网IP地址。如果不直接对外的业务,例如: MySQL,存储系统RS节点,最好只用内部IP地址。 DR模式的核心特点就是更改目标MAC地址进行转发

继续阅读

所谓丢包,是指在网络数据的收发过程中,由于种种原因,数据包还没传输到应用程序中,就被丢弃了。这些被丢弃包的数量,除以总的传输包数,也就是我们常说的丢包率。丢包率是网络性能中最核心的指标之一。丢包通常会带来严重的性能下降,特别是对 TCP 来说,丢包通常意味着网络拥塞和重传,进而还会导致网络延迟增大、吞吐降低。

继续阅读

什么是双主复制

在传统的主从复制架构中,从库仅仅是作为主库数据的备份,当主库发生故障时,数据库将停止对外提供服务,并且主库故障后手动进行主从切换的过程也较为繁琐。为了解决这个问题,可以采用 MySQL 双主模式,其中一台主库提供服务,另一台作为热备。结合 keepalived 使用虚拟 IP 对外提供服务,一旦主库发生故障,备库可以在很短的时间内接管服务。

图片

继续阅读

Zabbix 是一个企业级分布式开源监控解决方案,能够监控各种网络设备、服务器、中间件和应用程序等等。Zabbix 支持主动轮询(polling)和被动捕获(trapping)两种方式获取数据。Zabbix 所有的报表、统计数据和配置参数都可以通过基于 Web 的前端页面进行访问,并且提供了完善的 API 接口便于二次开发。

Zabbix 有以下几个主要组件:

  • Zabbix Server:是 Zabbix 软件的核心组件,Zabbix Agent 向其报告可用性、系统完整性信息和统计信息。
  • Zabbix Web:通过 Apache HTTP 运行,提供前端的访问页面。
  • Zabbix Proxy(可选):Zabbix Proxy 可以代替 Zabbix Server 收集客户端的数据,然后把数据汇报给 Zabbix Server,以减轻 Zabbix Server 的负担,本文中没有安装 Zabbix Proxy。
  • Zabbix Agent:部署在需要监控的服务器上,主动监控本地资源和应用程序,并将收集到的数据上报给 Zabbix Server(或 Zabbix Proxy)。
  • 数据库存储:存储所有的配置信息以及 Zabbix 收集到的数据。数据库使用外部已经部署好的 MySQL 高可用集群。

目前 Zabbix 最新的稳定版本是 5.4,然而官方 yum 源只支持在 Centos8 上安装 Zabbix 5.4 版本,想要在 Centos7 上安装 Zabbix 5.4 版本上只能通过源码编译的方式安装。本文将会介绍在 Centos7 上通过源码编译安装的方式部署一套 Zabbix 高可用集群。

继续阅读

1.关于let’s encrypt和acme.sh的简介

1.1 let’s encrypt

图片.png | center | 349x86

Let’s Encrypt是一个于2015年三季度推出的数字证书认证机构,旨在以自动化流程消除手动创建和安装证书的复杂流程,并推广使万维网服务器的加密连接无所不在,为安全网站提供免费的SSL/TLS证书。
Let’s Encrypt由互联网安全研究小组(缩写ISRG)提供服务。主要赞助商包括电子前哨基金会、Mozilla基金会、Akamai以及思科。2015年4月9日,ISRG与Linux基金会宣布合作。
用以实现新的数字证书认证机构的协议被称为自动证书管理环境(ACME)。GitHub上有这一规范的草案,且提案的一个版本已作为一个Internet草案发布。
Let’s Encrypt宣称这一过程将十分简单、自动化并且免费

继续阅读