摘 要 1. GSLB: 全 局 负 载 均 衡 2. SLB: 服 务 器 负 载 均 衡 四 层 交 换 LVS 七 层 交 换 Nginx 3. Heartbeat 实 现 HA 4. MySQL 数 据 库 集 群 5. 集 群 环 境 下 的 存 储 备 份 6. 集 群 的 监 控 及



Similar documents
A API Application Programming Interface 见 应 用 程 序 编 程 接 口 ARP Address Resolution Protocol 地 址 解 析 协 议 为 IP 地 址 到 对 应 的 硬 件 地 址 之 间 提 供 动 态 映 射 阿 里 云 内

温州市政府分散采购

最 佳 做 法 : 在 需 要 时 或 需 要 前 从 CDN 下 载 内 容, 并 使 它 们 与 Flash 代 码 和 文 件 分 离 存 盘 率 vs 响 应 速 度 当 用 户 玩 游 戏 时, 客 户 端 可 以 把 每 一 个 变 化 实 时 写 到 后 端 Web 服 务 器, 也

2005 3

云 计 算 集 群 架 构 师 高 居 服 务 器 / 系 统 / 运 维 / 架 构 职 业 方 向 的 塔 尖 在 最 活 跃 的 移 动 互 联 网 时 代, 云 端 架 构 师 年 薪 普 遍 超 过 25 万 九 年 三 万 多 名 高 端 学 员, 全 国 唯 一 的 自 主 高 端 成

目 录 第 一 章 概 述 总 体 框 架 临 床 信 息 系 统 建 设 医 院 管 理 信 息 系 统 信 息 平 台 建 设 需 求... 5 第 二 章 基 于 电 子 病 历 的 临 床 信 息 系 统 建 设 需 求...

CA Nimsoft Monitor Snap 快速入门指南

天津天狮学院关于修订2014级本科培养方案的指导意见

collateral 1.doc

turbomail方案

目 录 简 介... 3 MYSQL 企 业 版... 3 MYSQL 数 据 库... 3 MYSQL 企 业 备 份 工 具... 4 MYSQL 企 业 版 监 控 器 和 顾 问 工 具... 4 MYSQL 查 询 分 析 器... 7 MYSQL WORKBENCH... 8 MYSQL

HP StorageWorks Automated Storage Manager 用户指南

电信行业网上营业厅

untitled

untitled

营 销 策 划 岗 部 门 招 聘 职 位 招 聘 人 数 岗 位 职 责 基 本 要 求 岗 位 任 职 要 求 6 参 与 项 目 产 品 研 究 客 户 需 求 研 究 竞 争 环 境 研 究 价 格 研 究 等 项 目 市 场 研 究 ; 7 公 司 经 纪 业 务 的 品 牌 管 理, 对

附件9 电梯运行安全监测管理信息平台技术规范 第11部分:系统信息安全技术规范(征求意见稿)

Basic System Administration

标题

一、

C10_ppt.PDF

快 速 入 门 (Linux) 概 述 文 档 目 的 本 文 档 介 绍 了 如 何 快 速 创 建 Linux 系 统 实 例 远 程 连 接 实 例 部 署 环 境 等 旨 在 引 导 您 一 站 式 完 成 实 例 的 创 建 登 录 和 快 速 环 境 部 署 云 服 务 器 ECS 实

Hitachi Vantara Hitachi Vantara Hitachi, Ltd. Hitachi Vantara IT OT Go Go

BYOD Http Redirect convergence Client (1) 2008R2 NLB( ) (2) NLB Unicast mode switch flooding (arp ) NLB DNS Redirect 1. Round-Robin DNS DNS IP/DNS Cli

XXXXXXXX

1 情 况 综 述 2016 年 3 月, 全 省 公 共 互 联 网 网 络 安 全 状 况 整 体 评 价 为 良 本 月, 我 省 互 联 网 基 础 设 施 运 行 平 稳, 全 省 范 围 内 未 发 生 造 成 重 大 影 响 的 基 础 设 施 运 行 安 全 事 件, 未 发 生 网


スライド 1

政府无线局域网解决方案指南

中国科学院文件

IT Data-intensive application,iscsi Middl

杭 州 顺 网 科 技 股 份 有 限 公 司 拟 实 施 股 权 收 购 涉 及 江 苏 国 瑞 信 安 科 技 有 限 公 司 股 权 评 估 项 目 资 产 评 估 报 告 目 录 杭 州 顺 网 科 技 股 份 有 限 公 司 拟 实 施 股 权 收 购 涉 及 的 江 苏 国 瑞 信 安

<B1B1BEA9B9E2BBB7D0C2CDF8BFC6BCBCB9C9B7DDD3D0CFDEB9ABCBBEB4B43F3F12FB6CB293>

Azure_s

スライド 1

声 明 本 公 司 及 全 体 董 事 监 事 高 级 管 理 人 员 承 诺 不 存 在 虚 假 记 载 误 导 性 陈 述 或 重 大 遗 漏, 并 对 其 真 实 性 准 确 性 完 整 性 承 担 个 别 和 连 带 的 法 律 责 任 本 公 司 负 责 人 和 主 管 会 计 工 作 的

附件:技术测评需求

untitled

Polycom RealPresence Capture Server - 设备版本入门指南

LTM Management Console

目 录 第 一 章 综 述... 3 第 二 章 公 司 简 介... 3 第 三 章 系 统 概 述... 4 第 四 章 软 件 环 境 部 署... 4 第 五 章 系 统 安 全... 5 第 六 章 用 户 类 别 及 功 能 列 表... 5 第 七 章 系 统 功 能 描 述... 7

软件概述

1 IT IT IT IT Virtual Machine, VM VM VM VM Operating Systems, OS IT

<4D F736F F D20D6C7BBDBB5D8C7F22D2DB6AFCCACBCDCB9B9D6AED2B5CEF1B5AFD0D4B7BDB0B8BDA8D2E9CAE92E646F63>

目 录 目 录 平 台 概 述 技 术 架 构 技 术 特 点 基 于 统 一 平 台 的 多 产 品 线 支 撑 先 进 性 安 全 性 开 放 性 高 性 能 和

ext-web-auth-wlc.pdf

<4D F736F F D20312D3120B9ABBFAAD7AAC8C3CBB5C3F7CAE9A3A8C9EAB1A8B8E5A3A92E646F63>

目 錄 第 一 章 weberp 簡 介... 6 第 一 節 概 述... 6 第 二 節 安 全 性... 7 第 三 節 功 能... 7 一 銷 售 及 訂 單... 7 二 稅... 8 三 應 收 帳 款... 8 四 存 貨... 8 五 購 買... 9 六 應 付 帳 款... 9

支付宝2011年 IT资产与费用预算

<4D F736F F D CAD3C6B5BCE0BFD8BDE2BEF6B7BDB0B8A3A8B4E6B4A2B2BFCAF0A3A9BCBCCAF5B0D7C6A4CAE92E646F63>

.. 3 N

Marketing_WhitePaper.PDF

1 产 品 简 介 特 性 包 装 产 品 外 观 电 脑 系 统 要 求 硬 件 安 装 软 件 安 装 软 件 操 作 IP

untitled

双机模板方案0404.doc

SEC-220

EMC® VNX® Series VNX8000™ Block 安装指南

Microsoft PowerPoint - 03.IPv6_Linux.ppt [相容模式]

软 件 工 程 专 业 习 指 南 目 录 一 软 件 工 程 专 业 设 置 背 景 与 发 展 前 景... 3 二 软 件 工 程 专 业 实 践 教 条 件... 4 三 软 件 工 程 专 业 课 程 类 型 及 核 方 式 软 件 工 程 专 业 课 程 类 型...7

飞鱼星多WAN防火墙路由器用户手册

目 录 第 五 部 分 第 六 部 分 第 七 部 分 第 八 部 分 投 标 邀 请 投 标 人 须 知 附 表 评 标 方 法 和 评 分 细 则 项 目 需 求 和 技 术 方 案 要 求 1

吉林省科技发展计划项目申报书23005

A9RF716.tmp


数字地理空间框架及一村一镇一地图建设

常 见 问 题 SLB 产 品 和 业 务 限 制 SLB 产 品 限 制 SLB 产 品 和 业 务 限 制 限 制 项 普 通 用 户 限 制 描 述 例 外 申 请 方 式 ( 例 外 上 限 ) 创 建 SLB 实 例 的 财 务 限 制 账 户 余 额 大 于 等 于 100 元 现 金

1

<4D F736F F F696E74202D20C8EDBCFEB2E2CAD4D1A7CFB0D7CAC1CF2E BBCE6C8DDC4A3CABD5D>

自由軟體社群發展經驗與 Linux認證介紹

与 改 革 委 员 会 术 产 业 司 调 整, 推 进 相 关 调 控 目 标 制 定 和 政 策 手 段 运 用 机 制 化 ; 统 筹 推 进 战 略 性 新 兴 产 业 发 展, 拟 订 和 实 施 国 家 战 略 性 新 兴 产 业 发 展 规 划, 协 调 相 关 产 业 和 区 域 规

NSC-282

XXXXXXXXXXX专业人才培养方案

(UTM???U_935_938_955_958_959 V )

Secoway SVN3000技术建议书V1

第一章

目 录 1. 业 务 流 程 系 统 开 发 面 临 的 挑 战 与 机 遇 业 务 流 程 管 理 新 一 代 开 源 业 务 流 程 开 发 平 台 BPMX BPMX3 是 什 么 为 什 么 要 优 先 采 用 BPMX

LinuxÓû§»ù´¡

PowerPoint Presentation

ebook10-5

湖北省政府采购中心

项目采购需求编写模板

NSC-161

国家信息中心2012年部门预算

桐乡市皮肤病防治院新大楼数通和数据库审计

<5C5C D2D CB1BEB5D8B4C5C5CC CBACDCAA25CBBD45CBDF8D0D0D6D05CD5FEB2C95CCAFDD7D65CC2DBD6A4BBE15C E31322E3234C2DBD6A4B8E529C3B7D6DDCAD0CAFDD7D6BBAFB3C7CAD0D7DBBACF2E2E2E2E646F63>

经华名家讲堂

Cloudy computing forEducation

RG-NBS5816XS交换机RGOS 10.4(3)版本WEB管理手册

迅闪2009帮助手册(xshelp)

C3_ppt.PDF

untitled

Microsoft Word - 第3章.doc

<4D F736F F D B9E3B6ABCAA1CBAEC0FBB9A4B3CCCAD3C6B5BCE0BFD8CFB5CDB3BCBCCAF5B9E6B7B6A3A8CAD4D0D0A3A9C7A9B7A22E646F63>

HP 3PAR StoreServ 7000 Storage SmartStart 1.3 软件发行说明

WebSphere Studio Application Developer IBM Portal Toolkit... 2/21 1. WebSphere Portal Portal WebSphere Application Server stopserver.bat -configfile..

06 C H A P T E R 6-1 WWW 6-2 WWW WWW WWW

Microsoft Word 中的文档

AppAssure 5

84

考 試 日 期 :2016/04/24 教 室 名 稱 :602 電 腦 教 室 考 試 時 間 :09: 二 技 企 管 一 胡 宗 兒 中 文 輸 入 四 技 企 四 甲 林 姿 瑄 中 文 輸 入 二 技 企 管 一

Transcription:

网 站 集 群 架 构 利 用 开 源 软 件 构 建 高 可 用 高 性 能 可 扩 展 的 集 群 系 统 兰 锋 bluedata@gmail.com

摘 要 1. GSLB: 全 局 负 载 均 衡 2. SLB: 服 务 器 负 载 均 衡 四 层 交 换 LVS 七 层 交 换 Nginx 3. Heartbeat 实 现 HA 4. MySQL 数 据 库 集 群 5. 集 群 环 境 下 的 存 储 备 份 6. 集 群 的 监 控 及 管 理

GSLB - Global Server Load Balance GSLB 是 Global Server Load Balance 的 缩 写, 意 思 是 全 局 负 载 均 衡 实 现 在 广 域 网 ( 包 括 互 联 网 ) 上 不 同 地 域 的 服 务 器 间 的 流 量 调 配 使 用 最 佳 的 服 务 器 ( 组 ) 为 最 近 的 访 问 者 提 供 服 务, 从 而 确 保 访 问 质 量

GSLB 架 构 图

多 IDC 与 单 IDC 的 对 比 好 处 可 用 : 不 会 因 某 一 IDC 机 房 由 于 不 可 抗 力 造 成 的 网 络 中 断 而 影 响 访 问, 可 用 性 高 容 灾 : 可 避 免 灾 难 性 事 件 ( 比 如 地 震 ) 造 成 无 可 挽 回 的 数 据 丢 失 速 度 : 机 房 离 访 问 者 更 近, 访 问 质 量 更 高 坏 处 实 现 复 杂 : 流 量 分 配 问 题, 数 据 同 步 问 题 管 理 复 杂 : 跨 地 区 距 离 远, 维 护 麻 烦 成 本 较 高 : 要 在 多 个 IDC 租 用 机 柜 或 机 位

利 用 Bind9 的 视 图 功 能 实 现 GSLB 1 cat named.conf... include "acl_chinanet.conf"; view "chinanet" { match-clients { "chinanet"; };... include "acl_cnc.conf"; view "cnc" { match-clients { "cnc"; };... view "other" { match-clients { "any"; };...

利 用 Bind9 的 视 图 功 能 实 现 GSLB 2 cat acl_chinanet.conf acl "chinanet" { 58.32.0.0/13; 58.40.0.0/15;... 222.222.0.0/15; 222.240.0.0/13; }; acl_cnc.conf 则 为 网 通 的 IP 段 然 后 分 别 定 义 各 视 图 zone 文 件 中 域 名 所 对 应 的 IP 地 址 详 细 原 理 可 参 考 GSLB using xbaydns: http://you.video.sina.com.cn/b/9144571-1435882772.html

SLB - Server Load Balancing SLB 是 Server Load Balancing 的 缩 写, 意 思 是 服 务 器 负 载 均 衡 可 实 现 多 个 服 务 器 之 间 的 负 载 均 衡 当 客 户 端 向 虚 拟 服 务 器 ( 虚 拟 服 务 器 是 多 个 真 实 服 务 器 的 群 集 ) 发 起 连 接 时, 通 过 均 衡 算 法 转 发 到 真 实 服 务 器

LVS - Linux Virtual Server LVS 是 在 Linux 内 核 中 做 四 层 交 换 LVS 只 用 128 个 字 节 记 录 一 个 连 接 信 息,512M 可 用 内 存 即 可 支 持 四 百 万 条 连 接 数, 性 能 很 高 Linux 2.6 内 核 已 经 包 含 了 ipvs 模 块, 只 需 安 装 ipvsadm 真 实 服 务 器 需 要 解 决 ARP 问 题 ( ARP 缓 存 造 成 的 ARP 欺 骗 ) arp_ignore = 1 ## 只 要 这 台 机 器 上 面 任 何 一 个 设 备 有 这 个 IP, 就 响 应 ARP 请 求, 并 发 送 MAC 地 址 应 答 arp_announce = 2 ## 发 送 ARP 请 求 时 只 使 用 本 设 备 的 IP 地 址 和 MAC 地 址, 避 免 造 成 ARP 欺 骗 LVS 的 有 关 中 文 文 档 : http://www.linuxvirtualserver.org/zh/index.html

LVS 架 构 图

Nginx Nginx ("engine x") 是 一 个 高 性 能 的 HTTP 和 反 向 代 理 服 务 器 七 层 交 换, 大 约 能 支 持 五 万 个 并 发 连 接 可 以 通 过 定 义 upstream 实 现 后 端 应 用 服 务 器 ( 如 运 行 php-cgi 的 机 器 ) 的 负 载 均 衡 upstream php-fcgi { server 192.168.0.101:9000 weight=5; server 192.168.0.102:9000 weight=4; server 192.168.0.103:9000 weight=3; } location ~.*\.php?$ { fastcgi_pass php-fcgi; include fastcgi_params; }

ngx_http_upstream_hash_module url hash 是 用 于 提 高 squid 群 集 命 中 率 的 一 种 算 法 通 过 DNS 或 LVS 可 以 把 流 量 分 配 到 多 个 squid 节 点, 但 每 台 squid 的 缓 存 数 据 是 重 复 的 对 $request_uri 进 行 hash, 并 把 所 有 访 问 都 转 发 到 后 端 的 squid: upstream squid { server squid1:3128; server squid2:3128; hash $request_uri; } location / { proxy_pass http://squid; include proxy.conf; }

Nginx url hash 的 高 可 用 性 当 有 squid 主 机 失 效 时, 访 问 相 应 的 页 面 会 出 现 502 错 误 可 以 定 义 hash_again 及 proxy_next_upstream, 在 有 缓 存 节 点 失 效 时, 可 以 重 新 hash 但 这 会 对 整 个 缓 存 池 造 成 冲 击 利 用 error_page 来 实 现 故 障 的 转 移 : error_page 502 = @fetch; location @fetch { proxy_pass http://backup; include proxy.conf; } upstream backup { server squid_backup_1:3128; server squid_backup_2:3128; } Nginx 的 中 文 维 基 : http://wiki.nginx.org/nginxchs

Heartbeat Heartbeat 最 核 心 的 两 个 部 分 : 心 跳 监 测 部 分 和 资 源 接 管 部 分 心 跳 监 测 可 以 通 过 网 络 或 串 口 进 行, 而 且 支 持 冗 余 链 路, 节 点 之 间 相 互 发 送 报 文 来 告 诉 对 方 自 己 当 前 的 状 态 如 果 一 个 节 点 在 指 定 的 时 间 内 未 收 到 对 方 发 送 的 报 文, 那 么 就 认 为 对 方 失 效 这 时 需 要 启 动 资 源 接 管 模 块 来 接 管 运 行 在 对 方 主 机 上 的 资 源 或 服 务 直 接 安 装 heartbeat 包 即 可, 还 可 安 装 ldirectord (for Debian) 监 测 和 管 理 LVS 集 群 中 的 真 实 服 务 器 ( CentOS 下 是 heartbeatldirectord ) 使 用 网 络 监 测 要 注 意 同 一 网 络 中 存 在 多 个 HA 应 用 时 的 广 播 (bcast) 造 成 的 干 扰, 这 种 情 况 下 应 该 使 用 单 播 (ucast) 危 险 的 脑 裂 (split-brain) Heartbeat 应 用 在 操 作 存 储 设 备 的 情 况 下 是 有 一 定 的 风 险 的

Heartbeat + LVS + Nginx + Squid + PHP

MySQL 数 据 库 集 群 1. MySQL Cluster 2. MySQL 复 制 之 一 主 多 从 模 式 3. MySQL 复 制 之 多 主 模 式 4. MySQL 复 制 之 级 联 复 制

MySQL Cluster 架 构 图 不 用 考 虑 读 写 分 离 问 题 SQL 节 点 需 要 使 用 LVS 做 流 量 的 分 配 NDB 的 性 能 较 低 ( 新 发 布 的 MySQL Cluster 7.0 有 所 改 善 ) 稳 定 性 尚 有 待 提 高 生 产 环 境 下 的 应 用 实 例 太 少

MySQL 一 主 多 从 模 式 架 构 图

MySQL 一 主 多 从 模 式 的 要 点 读 写 分 离 会 使 应 用 层 变 的 更 复 杂 可 以 用 MySQL-Proxy 实 现 读 写 分 离, 而 多 个 slave 可 以 由 LVS 调 度 MySQL-Proxy 同 样 存 在 稳 定 性 问 题, 多 了 一 层 结 构 当 然 也 就 多 了 一 个 故 障 点 修 改 应 用 程 序 的 数 据 库 连 接 类 实 现 读 写 分 离 是 较 为 常 见 的 做 法 不 能 在 slave 上 做 实 时 查 询, 需 要 实 时 查 询 的 应 用 只 能 走 master, 这 需 要 在 应 用 层 做 区 分

MySQL 一 主 多 从 模 式 的 集 群 方 案 Heartbeat + DRBD + LVS

MySQL + Heartbeat + DRBD + LVS MySQL + DRBD 是 MySQL 官 方 网 站 上 推 荐 的 一 个 方 案 解 决 了 master 的 单 点 问 题 用 ldirectord 管 理 slave 可 以 有 效 的 将 失 效 节 点 移 出 集 群 由 于 MySQL 文 件 系 统 和 磁 盘 均 有 缓 存 功 能, 在 master 掉 电 的 情 况 下, binlog 文 件 最 后 的 Position 要 落 后 slave 已 经 复 制 的 Position 很 多 这 样 就 算 备 份 节 点 接 管 了 资 源, 仍 然 会 造 成 复 制 的 中 断 需 要 手 动 恢 复 复 制 进 程 因 split-brain 造 成 资 源 争 抢 进 而 因 错 误 写 入 造 成 存 储 的 失 效 恢 复 时 间 较 长

MySQL 多 主 模 式 架 构 图

MySQL 多 主 模 式 的 要 点 不 存 在 读 写 分 离 问 题 可 扩 展 性 较 差, 扩 展 较 为 麻 烦 自 增 ID 的 重 复 问 题 可 以 通 过 设 定 auto_increment_increment 和 auto_increment_offset 来 解 决 例 如 把 auto_increment_increment 设 置 为 3, 而 把 master1, master2, master3 的 auto_increment_offset 分 别 设 置 为 1, 2, 3, 自 增 ID 就 分 别 为 : 1 4 7 10 13... 2 5 8 11 14... 3 6 9 12 15...

MySQL 级 联 复 制 解 决 多 IDC 的 数 据 库 同 步 问 题 多 个 IDC 之 间 由 master-slave 模 式 同 步 数 据 可 以 用 多 线 机 房 的 MySQL Server 做 master, 而 用 电 信 / 网 通 机 房 的 MySQL Server 做 slave 在 同 一 IDC, 直 接 从 顶 级 master 同 步 的 slave 就 成 为 了 其 它 MySQL Server 的 master 确 保 次 级 master 的 binlog 一 致, 需 要 用 到 google-mysql-tools 中 的 MirroredBinlogs MirroredBinlogs 可 以 在 slave 保 存 一 份 和 master 完 全 相 同 的 binlog 当 一 个 master 对 应 的 slave 过 多, 出 现 性 能 问 题 时, 也 可 以 用 级 联 的 方 式 进 一 步 扩 展

集 群 环 境 下 的 存 储 备 份 NAS - Network Attached Storage ( 网 络 附 属 存 储 ) NAS 通 过 NFS/Samba/WebDAV/FTP 等 方 式 实 现 共 享 存 储, 基 本 上 可 以 直 接 叫 做 Storage Server NFS 是 Linux 集 群 中 最 常 见 的 共 享 存 储 方 式, 特 点 是 简 单 易 用, 但 性 能 有 限 SAN - Storage Area Network ( 存 储 区 域 网 络 ) 价 格 昂 贵, 在 中 小 型 网 站 中 应 用 较 少 大 型 网 站 使 用 Oracle 数 据 库 做 RAC 的 话 就 需 要 使 用 SAN 了 iscsi 价 格 相 对 较 低 作 为 iscsi Initiator, Debian 下 需 要 安 装 openiscsi, 而 CentOS 下 需 要 安 装 iscsi-initiator-utils Linux 下 SAN 的 共 享 存 储, 较 为 常 见 的 方 案 是 RHCS + GFS + CLVM 分 布 式 文 件 系 统

网 站 应 用 存 储 文 件 的 分 类 及 特 点 1. 程 序 文 件 : 更 新 少, 数 量 少, 频 繁 读 2. 数 据 库 文 件 : 文 件 大, 读 写 操 作 极 为 频 繁, 连 续 写 3. 用 户 文 件 : 数 量 巨 大, 读 写 较 多, 读 取 分 散 4. 零 时 文 件 : 小 文 件, 数 量 多, 不 需 要 永 久 存 储 如 session 文 件

程 序 文 件 存 储 的 解 决 方 案 NFS 是 一 个 还 算 不 错 的 选 择, 但 有 如 下 弱 点 : 1. 严 重 的 单 点 故 障 隐 患 2. 扩 展 性 较 差, 支 持 的 节 点 数 量 有 限 3. 大 量 不 必 要 的 网 络 传 输 根 据 程 序 文 件 读 写 的 特 点, 可 以 考 虑 把 文 件 放 在 本 机 在 文 件 更 改 时 同 步 到 各 个 节 点 rsync: 多 节 点 的 同 步 不 方 便 ; 扫 描 目 录 树 的 改 变 比 较 慢 可 用 以 下 两 个 工 具 解 决 上 述 两 个 问 题 : csync2(http://oss.linbit.com/csync2/): 集 群 同 步 工 具 inotify-tools(http://inotify-tools.sourceforge.net/): 是 为 Linux 下 inotify 文 件 监 控 工 具 提 供 的 一 套 C 的 开 发 接 口 库 函 数, 同 时 还 提 供 了 一 系 列 的 命 令 行 工 具, 这 些 工 具 可 以 用 来 监 控 文 件 系 统 的 事 件

csync2 + inotify 实 现 集 群 文 件 即 时 同 步 1 Debian 下 csync2 的 安 装 : apt-get install openbsd-inetd csync2 cat /etc/csync2.cfg nossl * *; group cluster1 { host web1 web2 web3 web4; key /etc/csync2_ssl_cert.key; include /home; exclude /home/tmp; exclude *~.*; auto younger; } 如 果 进 行 远 程 同 步, 为 了 安 全, 应 该 使 用 ssl 连 接, 这 需 要 安 装 openssl

csync2 + inotify 实 现 集 群 文 件 即 时 同 步 2 Debian 下 inotify-tools 的 安 装 : apt-get install inotify-tools 可 以 在 需 要 同 步 的 节 点 上 运 行 下 面 这 个 脚 本 进 行 同 步 了 : cat /usr/local/sbin/csync2.sh #!/bin/sh src=/home inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f' \ --exclude "\.swp$" \ -e modify,attrib,create,delete,move \ ${src} \ while read file do csync2 -x > /dev/null 2>&1 done 用 作 即 时 备 份 也 是 个 不 错 的 选 择

数 据 库 的 存 储 备 份 对 于 数 据 库 应 用 存 储 的 特 点, 一 般 使 用 RAID5 或 RAID1+0 而 在 线 扩 容 一 般 是 通 过 LVM 实 现 DRBD 是 基 于 网 络 的 RAID1, 可 实 现 MySQL 单 master 方 案 的 热 备 其 实 每 个 slave 也 都 是 一 个 备 份 利 用 LVM 的 快 照 功 能 实 现 对 MySQL 数 据 库 文 件 的 全 备 份, 再 通 过 binlog 实 现 增 量 备 份 是 一 个 很 好 的 备 份 方 案 LVM 在 存 储 管 理 中 是 非 常 重 要 的 可 参 考 逻 辑 卷 管 理 : http://www.ibm.com/developerworks/cn/linux/l-lvm2/

用 户 文 件 的 存 储 分 布 在 多 个 节 点, 避 免 单 点 故 障 容 量 可 动 态 扩 充 可 方 便 的 通 过 HTTP 访 问 对 于 大 量 小 文 件 的 存 储, NAS 和 SAN 都 不 合 适 分 布 式 存 储 是 这 种 应 用 较 好 的 解 决 方 案 MogileFS 由 存 储 节 点 跟 踪 器 跟 踪 用 的 数 据 库 三 个 组 件 构 成 FastDFS 有 两 个 角 色 : 跟 踪 器 (Tracker) 和 存 储 节 点 (Storage) MogileFS 和 FastDFS 都 需 要 通 过 API 访 问 文 件, 增 加 了 应 用 层 的 复 杂 程 度, 但 就 存 储 而 言 是 简 单 高 效 且 易 于 维 护 的

FastDFS 架 构 图

FastDFS 的 要 点 1. 每 个 组 中 存 储 节 点 的 数 据 都 是 相 同 的, 这 可 以 实 现 备 份 和 负 载 均 衡 2. 通 过 增 加 新 的 存 储 组, 可 以 方 便 的 实 现 在 线 扩 容 3. 可 以 把 存 储 节 点 的 存 储 目 录 通 过 Nginx 发 布 出 来 直 接 对 外 提 供 访 问 4. 对 于 相 同 的 文 件, 可 以 只 创 建 链 接, 从 而 节 约 存 储 空 间, 但 这 需 要 创 建 索 引 文 件 5. 可 定 义 多 个 Tracker, 避 免 单 点 故 障, 分 散 压 力

Moose File System (MFS) MFS 的 特 点 : 1. 通 过 FUSE 实 现 的 通 用 文 件 系 统, 简 化 了 对 文 件 的 操 作, 应 用 层 基 本 不 用 改 动 2. 添 加 新 的 服 务 器 或 者 硬 盘 就 可 以 动 态 的 扩 展 容 量 3. 可 以 在 不 同 的 服 务 器 上 保 存 多 份 拷 贝 提 高 可 用 性 4. 可 以 指 定 被 删 除 文 件 的 保 留 时 间 实 现 回 收 站 的 功 能 MFS 的 结 构 : Managing server (master) Data servers (chunkservers) Clients (mfsmount)

MFS 架 构 图

缓 存 系 统 Memcached Memcached 是 非 常 热 门 的 一 个 缓 存 工 具 利 用 Memcached 缓 存 数 据 库 查 询 结 果 是 网 站 提 升 性 能 的 重 要 手 段 在 集 群 环 境 中, 可 以 用 其 保 存 session, 实 现 session 的 共 享 Memcachedb 实 现 永 久 存 储 可 以 减 轻 数 据 库 的 压 力, 比 如 把 需 要 反 复 读 写 的 点 击 量 存 入 Memcachedb

集 群 的 监 控 及 管 理 监 控 : Nagios 用 来 即 时 监 控 集 群 中 主 机 及 服 务 的 状 态, 并 给 管 理 者 发 送 报 警 信 息 Cacti 记 录 集 群 运 作 中 的 各 种 数 据, 并 绘 制 出 图 形, 为 管 理 者 提 供 有 效 的 数 据 支 持 管 理 : 如 果 节 点 较 少, 可 以 基 于 ssh + key 编 写 脚 本 进 行 管 理 csync2 也 可 实 现 配 置 文 件 更 改 时 触 发 指 定 脚 本 的 执 行 较 多 的 节 点 可 以 考 虑 使 用 pssh (parallel ssh) 进 行 管 理 FUNC (Fedora Unified Network Controller) 实 现 对 大 量 节 点 的 复 杂 管 理