Lvs+Keepalived+MySQL Cluster架設高可用負載均衡Mysql叢集
一、前言
MySQL Cluster 是MySQL適合於分散式計算環境的高實用、高冗餘版本。它採用了NDB Cluster儲存引擎,允許在1個Cluster中執行多個MySQL伺服器。在MyQL5.0 及以上的二進位制版本中、以及與最新的Linux版本相容的RPM中提供了該儲存引擎。MySQL Cluster 是一種技術,該技術允許在無共享的系統中部署“記憶體中”資料庫的 Cluster。通過無共享體系結構,系統能夠使用廉價的硬體,而且對軟硬體無特殊要求。此外,由於每個元件有自己的記憶體和磁碟,不存在單點故障。MySQL Cluster由一組計算機構成,每臺計算機上均執行著多種程序,包括MySQL伺服器,NDB Cluster的資料節點,管理伺服器,以及(可能)專門的資料訪問程式。
二、MySQL Cluster基本概念
NDB是一種“記憶體中”的儲存引擎,它具有可用性高和資料一致性好的特點。MySQL Cluster能夠使用多種故障切換和負載平衡選項配置NDB儲存引擎,但在Cluster 級別上的儲存引擎上做這個最簡單。MySQL Cluster的NDB儲存引擎包含完整的資料集,僅取決於Cluster本身內的其他資料。
目前,MySQL Cluster的Cluster部分可獨立於MySQL伺服器進行配置。在MySQL Cluster中,Cluster
的每個部分被視為1個節點。
管理(MGM)節點:這類節點的作用是管理MySQL Cluster內的其他節點,如提供配置資料、啟動並停止節點、執行備份等。由於這類節點負責管理其他節點的配置,應在啟動其他節點之前首先啟動這類節點。MGM節點是用命令“ndb_mgmd”啟動的。
資料(NDB)節點:這類節點用於儲存Cluster的資料。資料節點的數目與副本的數目相關,是片段的倍數。例如,對於兩個副本,每個副本有兩個片段,那麼就有4個數據節點。不過沒有必要設定多個副本。資料節點是用命令“ndbd”啟動的。
客戶(SQL)節點:這是用來訪問Cluster資料的節點。對於MySQL Cluster,客戶端節點是使用NDB Cluster 儲存引擎的傳統MySQL伺服器。通常,SQL節點是使用命令“mysqld -ndbcluster”啟動的,或將“ndbcluster”新增到“my.cnf”後使用“mysqld”啟動。
註釋:在很多情況下,術語“節點”用於指計算機,但在討論MySQL Cluster時,它表示的是程序。在單臺計算機上可以有任意數目的節點,為此,我們採用術語“Cluster主機”。
管理伺服器(MGM節點)負責管理Cluster配置檔案和Cluster日誌。Cluster中的每個節點從管理伺服器檢索配置資料,並請求確定管理伺服器所在位置的方式。當資料節點內出現新的事件時,節點將關於這類事件的資訊傳輸到管理伺服器,然後將這類資訊寫入Cluster日誌。
三、環境
系統:CentOS6.4 32位 9臺
軟體包(可以去mysql官網下載http://dev.mysql.com/downloads/cluster/):
MGM:
MySQL-Cluster-gpl-management-7.1.31-1.el6.i686.rpm
MySQL-Cluster-gpl-tools-7.1.31-1.el6.i686.rpm
SQL節點:
MySQL-Cluster-gpl-client-7.1.31-1.el6.i686.rpm
MySQL-Cluster-gpl-server-7.1.31-1.el6.i686.rpm
NDB節點:
MySQL-Cluster-gpl-storage-7.1.31-1.el6.i686.rpm
拓撲圖:
IP規劃:
四、配置(請先解除安裝掉與mysql有關的所有RPM包)
1.LB-Master及LB-Backup配置
(1)LB-Master及LB-Backup安裝keepalived和ipvsadm
- # yum groupinstall "Additional Development" //安裝開發工具
- # yum groupinstall "Development tools"
- # tar -zxvf keepalived-1.2.1.tar.gz -C /usr/local/src/
- # cd /usr/local/src/keepalived-1.2.1
- # ./cnfigure
- Keepalived configuration
- ------------------------
- Keepalived version : 1.2.1
- Compiler : gcc
- Compiler flags : -g -O2
- Extra Lib : -lpopt -lssl -lcrypto
- Use IPVS Framework : No //配置出現錯誤
- IPVS sync daemon support : No
- Use VRRP Framework : Yes
- Use Debug flags : No
- 解決方法:
- # yum install kernel-devel ipvsadm
- # ln -s /usr/src/kernels/2.6.32-358.el6.i686/ /usr/src/linux
- # ./cnfigure //再次配置環境
- # make //編譯
- # make install //安裝
- # cd /usr/local/etc //keepalived預設安裝路徑
- # ll
- drwxr-xr-x. 3 root root 4096 May 2400:37 keepalived
- drwxr-xr-x. 3 root root 4096 May 2400:29 rc.d
- drwxr-xr-x. 2 root root 4096 May 2400:29 sysconfig
- 配置以系統方式service啟動
- # cp /usr/local/etc/rc.d/init.d/keepalived /etc/rc.d/init.d/
- # cp /usr/local/etc/sysconfig/keepalived /etc/sysconfig/
- # mkdir /etc/keepalived
- # cp /usr/local/etc/keepalived/keepalived.conf /etc/keepalived/
- # cp /usr/local/sbin/keepalived /usr/sbin/
(2)LB-Master及LB-Backup的keepalived主配置文件
- # cat /etc/keepalived/keepalived.conf
- #guration File for keepalived
- #global define
- global_defs {
- router_id HaMySQL_1
- }
- vrrp_sync_group VGM {
- group {
- VI_MYSQL
- }
- }
- vrrp_instance VI_MYSQL {
- state MASTER //LB-Backup設定為BACKUP
- interface eth0
- lvs_sync_daemon_inteface eth0
- virtual_router_id 55
- priority 100 //LB-Backup設定為90
- advert_int 5
- authentication {
- auth_type PASS
- auth_pass 123456
- }
- virtual_ipaddress {
- 192.168.2.200/24 dev eth0
- }
- }
- ########## LVS MySQL Start ###########
- virtual_server 192.168.2.2003306 {
- delay_loop 6
- lb_algo rr
- lb_kind DR
- persistence_timeout 6
- protocol TCP
- real_server 192.168.2.503306 {
- weight 100
- TCP_CHECK {
- connect_timeout 3
- nb_get_retry 3
- delay_before_retry 3
- connect_port 3306
- }
- }
- real_server 192.168.2.603306 {
- weight 100
- TCP_CHECK {
- connect_timeout 3
- nb_get_retry 3
- delay_before_retry 3
- connect_port 3306
- }
- }
- }
- ########## LVS MySQL END #############
2.MGM配置
(1)安裝管理節點
- # rpm -ivh MySQL-Cluster-gpl-management-7.1.31-1.el6.i686.rpm
- # rpm -ivh MySQL-Cluster-gpl-tools-7.1.31-1.el6.i686.rpm
- # mkdir /etc/mysql-cluster
(2)配置管理節點
- # vim /etc/mysql-cluster/config.ini //新增以下內容
- [ndbd default]
- NoOfReplicas=2
- DataMemory=80M
- IndexMemory=18M
- # TCP/IP options:
- [tcp default]
- portnumber=2202
- # Management process options:
- [ndb_mgmd]
- id=1
- hostname=192.168.2.10
- datadir=/var/lib/mysql-cluster
- # Options for data node
- [ndbd]
- id=2
- hostname=192.168.2.30
- datadir=/var/lib/mysql
- [ndbd]
- id=3
- hostname=192.168.2.40
- datadir=/var/lib/mysql
- [mysqld]
- id=4
- hostname=192.168.2.50
- [mysqld]
- id=5
- hostname=192.168.2.60
(3)啟動管理節點
- # mkdir /var/lib/mysql-cluster
- # ndb_mgmd -f /etc/mysql-cluster/config.ini
- MySQL Cluster Management Server mysql-5.1.73 ndb-7.1.31
- # netstat -tupln
- tcp 000.0.0.0:11860.0.0.0:* LISTEN 17629/ndb_mgmd
3.資料節點(NDB1和NDB2)配置
(1)安裝資料節點
相關推薦
Lvs+Keepalived+MySQL Cluster架設高可用負載均衡Mysql叢集
一、前言 MySQL Cluster 是MySQL適合於分散式計算環境的高實用、高冗餘版本。它採用了NDB Cluster儲存引擎,允許在1個Cluster中執行多個MySQL伺服器。在MyQL5.0 及以上的二進位制版本中、以及與最新的Linux版本相容的RPM中提供了該儲存引擎。MySQ
公司nginx keepalived tomcat cxf 搭建高可用負載均衡實戰系列1- keepalived安裝配置
技術分享 cnblogs start ges idt def auth div .cn 1,ip說明 vip 10.50.13.67 server1 10.50.13.68 server2 10.50.13.140 2
keepalived+httpd+tomcat實現高可用負載均衡
一、環境 centos 6.5 keepalived keepalived-1.2.19.tar.gz httpd httpd-2.4.12.tar.gz tomcat apache-tomcat-7.0.63.tar.gz 二、部署 安裝 http
Kubernetes高可用負載均衡與叢集外服務訪問實踐_Kubernetes中文社群
Kubernetes在設計之初就充分考慮了針對容器的服務發現與負載均衡機制,提供了Service資源,並通過kube-proxy配合cloud provider來適應不同的應用場景。隨著kubernetes使用者的激增,使用者場景的不斷豐富,產生了一些新的負載均衡機制。 一、Kubernete
LVS-DR+keepalived 搭建web高可用負載均衡
lvs-dr+keepalived配置實驗環境 redhat6.5 2.6.32-431.el6.x86_64 keepalived-1.2.16版本ipvsadm-1.26-2.el6.x86_64所有的虛擬機 都 關閉防火墻和selinux 配置好了本地yum源搭建要求是對LVS-DR模式的原理熟
LVS+Keepalived實現高可用負載均衡
lvs+keepalived 高可用 負載均衡 用LVS+Keepalived實現高可用負載均衡,簡單來說就是由LVS提供負載均衡,keepalived通過對rs進行健康檢查、對主備機(director)進行故障自動切換,實現高可用。1. LVS NAT模式配置準備三臺服務器,一臺director, 兩
LVS+keepalived高可用負載均衡集群部署(二)---LAMP網站服務器與LVS服務器
虛擬機l 系統環境: RHEL7 l 硬件環境:虛擬機l 項目描述:為解決網站訪問壓力大的問題,需要搭建高可用、負載均衡的 web集群。 l 架構說明:整個服務架構采用功能分離的方式部署。後端采用2臺mysql 數據庫,實現主從結構以及讀寫分離。中間LAMP網站服務器共有2臺, 前端 2臺LVS服務
(2)LVS+Keepalived高可用負載均衡架構原理及配置
LVS Keepalived1、keepalived 介紹2、keepalived 優缺點3、keepalived 應用場景4、keepalived 安裝配置5、keepalived+lvs 高可用6、keepalived+nginx 高可用7、keepalived 切換原理8、性能優化9、常見故障 一、k
lvs+keepalived 高可用負載均衡模式分析
lvs 高可用 keepalived nginx 1. 前言 在《keepalived 雙機熱備》這篇文章中,我寫了利用keepalived 這個開源軟件實現高可用的功能,以及keepalived 高可用所使用的協議——利用vrrp 協議,在高可用網絡組內廣播自己的優先級,優先級最高的就能搶占
keepalived lvs 高可用負載均衡
keepalived lvs 高可用 負載均衡 主分發器設置 安裝keepalived和nginxyum install -y keepalivedyum install -y nginx關閉防火墻和SELinuxsystemctl stop firewalldsetenforce 0配置網卡
keepalived+lvs實現高可用負載均衡集群
keepalived+lvs實現高可用LVS實戰篇第1章 環境準備1.1 系統環境1.1.1 系統版本[root@lb01 ~]# cat /etc/redhat-release CentOS release 6.9 (Final) [root@lb01 ~]# uname -r 2.6.32-696.el6
LVS+Keepalived 實現高可用負載均衡叢集
LVS+Keepalived 實現高可用負載均衡叢集 隨著網站業務量的增長,網站的伺服器壓力越來越大?需要負載均衡方案!商業的硬體如 F5 ,Array又太貴,你們又是創業型互聯公司如何有效節約成本,節省不必要的浪費?同時還需要實現商業硬體一樣的高效能高可
Keepalived + LVS + LAMP 高可用負載均衡叢集實現
一、Keepalived 簡介 Keepalived 是一個用 C 語言編寫的路由軟體。它最初是專門為 LVS 負載均衡軟體設計的,用來管理並監控 LVS 集群系統中各個服務節點的狀態,後來又加
MySQL-Cluster三機叢集+HA高可用+負載均衡配置手冊
本文中的配置已經在實驗室進行過效能測試、可靠性測試驗證。 一、介紹 這篇文件旨在介紹如何安裝配置基於3臺伺服器的MySQL叢集。並且實現任意一臺伺服器出現問題或宕機時MySQL叢集依然能夠繼續執行。 1. MySQL-Cluster簡介 MySQL-Cluster主要有三種
LVS+Keepalived搭建MyCAT高可用負載均衡叢集
LVS+Keepalived 介紹 LVS LVS是Linux Virtual Server的簡寫,意即Linux虛擬伺服器,是一個虛擬的伺服器集群系統。本專案在1998年5月由章文嵩博士成立,是中國國內最早出現的自由軟體專案之一。目前有三種IP負載均衡技術(VS/NAT、VS/TUN和VS/DR),十種
LVS+Keepalived+Squid+Nginx高可用負載均衡快取配置
隨著網際網路IT行業的發展,越來越多的企業開始使用開源軟體搭建自己的web架構,主流的LVS也得到了廣泛的應用,在保證高可用的同時,使用者對網站的體驗速度也有了很高的要求,這時候需要我們在我們的架構既要滿足高併發同時還要求高速度。 今天我們來搭建主流架構Lvs+Keepalived+Sq
搭建LVS-DR負載均衡叢集、Keepalived-LVS高可用負載均衡叢集
LVS DR模式搭建準備工作三臺機器, 三臺機器均有公網IP。排程器(director)IP:192.168.8.133real server1(real1)IP:192.168.8.134real server2(real2)IP:192.168.8.135VIP:192.
centos部署lvs+keepalived+apache/tomcat實現高效能高可用負載均衡
前言: 常用的負載均衡軟體有lvs、haproxy、nginx,一般lvs和keeplavied一起使用 lvs是實現負載均衡作用的,即將客戶端的需求採用特定的負載均衡演算法分發到後端的web應用伺服器上,keepalived是用來實現高可用的,即保證主lvs宕機後,從lv
利用keepalived和haproxy配置mysql的高可用負載均衡
轉載http://www.cnblogs.com/tae44/p/4717334.html 實驗系統:CentOS 6.6_x86_64(2.6.32-504.30.3.el6.x86_64) 實驗前提:防火牆和selinux都關閉 實驗說明:本實驗共有4臺主機,I
Keepalived+LVS高可用負載均衡配置
說明 LVS是Linux Virtual Server的簡寫,意即Linux虛擬伺服器,是一個虛擬的伺服器集群系統。本專案在1998年5月由章文嵩博士成立,是中國國內最早出現的自由軟體專案之一。 目前有三種IP負載均衡技術(VS/NAT、VS/TUN和VS/DR);十