日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

bbsmax mysql_Problems with MMM for mysql(译文)

發布時間:2024/9/19 数据库 44 豆豆
生活随笔 收集整理的這篇文章主要介紹了 bbsmax mysql_Problems with MMM for mysql(译文) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Problems with mmm for mysql

posted in?MySQL?by shlomi

出于興趣和研究目的翻譯了此文,最近也看了大眾點評關于后臺使用MMM來做高可用的一些信息(貌似2014年開始轉用MHA來做HA),想評估下下MMM在實際生產環境當中的可用性。

正文:

我最近在部署MMM for MySQL的時候遭遇到了一些問題,這使我決定不把它應用到生產環境上。

就在我開始寫下這篇文章的同一天,Baron 發表了What's wrong with MMM?.而我也發現MMM存在缺陷所以希望把我遭遇到的問題都呈現出來,在過去的兩周中,

我做了兩次不同的部署,在3個不同應用場景下遇到了4次故障。

在下面的所有場景中,都部署了一個活動/被動的MySQL雙主同步,一個寫入VIP,一個讀VIP

問題1:(unjustified failover)非常規的failover操作會破壞MySQL復制

(unjustified failover)非常規的failover是很正常的操作,我可以忍受在數月中有幾秒鐘的宕機情況

但是在這兩個不同的應用部署中,才間隔幾天,就發生了兩次讓人鬧心的unjustified failover非常規failover:MySQL復制故障

故障是怎么發生的?之前的活動Master,現在變成非活動的,并且日志position回到大概10天之前,我沒有把日志保留10天那么多,所以這就是個突然的復制失敗

到現在我還不能在MMM中定位原因,但是

1、沒有電源故障

2、MySQL實例沒有停掉

3、在發生Failover時復制還都是正常的

4、沒有人工干預(我自己或別人使用過)

我明白在上面的情況發生時我沒有把所有的都監控到,所以我不能責怪說“當電源關閉時Replication沒有把主庫信息發送到磁盤”。

我認為這非常可疑;但是,發生了兩次,在兩個不同的環境部署中。。。

這么多疑點,足以證明了!

說實話,這段我看的不是很明白,這個場景很奇怪

問題2:Master Hanging,沒有failover

活動的Master宕機,可能是任何一個硬件或者軟件原因引起的,它不執行任何任務工作,TCP/IP鏈接不上

但不僅僅只是鏈接不上:是停住不動了。如果嘗試用ssh來連,鏈接會hang住:沒有被拒絕鏈接。SSH客戶端沒有在合理的時間內終止鏈接。

嗯哼,是時候做故障轉移了吧?

顯然還是沒有。告警的電話響了,郵件也發過來了。然后開始人工介入,這時候MMM 監控怎么說的呢?什么也沒說!It's frozen。現在我沒有去

讀源碼,我不會PERL!但是在我看來這個監控守護進程只是運行了一個單一的線程,它用這一個線程去連所有的主機,在鏈接活動Master時hang住了,

所以整個monitor都停了,沒辦法,我只好kill掉,我可以選擇重現配置去忽略掉原活動Master,但是我還是決定讓它重新工作,讓它繼續回復原裝我

必須操作兩次,我意識到該做Failover了。

為什么失敗了?假設我的分析正確,這是一個重要的設計缺陷,絕不應該用一個單一進程去監控多路主機環境

這個問題倒是比較大,但我也不會PERL,不好下結論

問題3:no servers

系統掛了,不能操作數據庫,這時候MMM監控會告訴我們什么呢?

兩臺機器都是HARD_OFFLINE。

嗯哼,兩臺機器都出于運行狀態時,它們互相同步復制。并且都可以連接操作,MySQL是這樣的。

但是沒有一臺機器是通過VIP來關聯的

假如兩臺Agent 都未能意識到到它們的MYSQL服務器處于運行狀態或者Monitor線程都沒有接收到信息,這兩種情況有問題嗎?沒有

MMM不會移走所有的VIP。那行,假如MMM確信兩臺都掛掉了,會怎樣?MMM要把所有的VIP丟到其中的一臺機器上,所以問題來了,

沒有機器了,哪里出錯了?

需要有機器來安置這些VIPs.

作者模擬出兩臺server都掛掉,這種情況出現的幾率......

上面列出來的這些不意味這我對MMM的作者反感,我很尊敬他,這些不是容易解決的問題,顯然也沒有100%的解決方案,只是我不會再用MMM了。

MMM實現Mysql高可用

MySQL主主同步方案 l? MySQL主主+Keepalived l? MySQL+DRBD+Heartbeat 在企業中,數據庫高可用一直是企業的重中之重,中小企業很多都是使用mysql主主方案, ...

MySQL高可用性大殺器之MHA

MySQL高可用性大殺器之MHA ? 提到MySQL高可用性,很多人會想到MySQL Cluster,亦或者Heartbeat+DRBD,不過這些方案的復雜性常常讓人望而卻步,與之相對,利用MySQL ...

【mysql】高可用集群之MMM

一.復制的常用拓撲結構 復制的體系結構有以下一些基本原則: (1)?? ?每個slave只能有一個master: (2)?? ?每個slave只能有一個唯一的服務器ID: (3)?? ?每個maste ...

CentOS系統MySQL雙機熱備配置

1??概述 在集成項目中需要應對不同環境下的安裝配置,主流操作系統大致可以分為三種:Linux.Windows以及UNIX.其中Linux備受青睞的主要原因有兩個: 首先,Linux作為自由軟件有兩個 ...

常見的高可用MySQL解決方案

MySQL數據庫作為最基礎的數據存儲服務之一,在整個系統中有著非常重要的地位,因此要求其具備高可用性是無可厚非的.有很多解決方案能實現不同的SLA(服務水平協定),這些方案可以保證數據庫服務器在硬件或 ...

linux 安裝mysql兩種方式

yum -y install gcc gcc-c++ ncurses-devel cmake ?bison ? zlib ? ?zlib-devel libxml ?openssl ? dtrace ...

mysql安裝方法

Window版本 1.下載 MySQL Community Server 5.7.16 http://dev.mysql.com/downloads/mysql/ 2.解壓 如果想要讓MySQL安裝在 ...

centos 7.0 編譯安裝mysql 5.6.22 再次總結 成功編譯安裝~ 越來越熟練了~

查找php.ini文件所在位置 [root@localhost /]# find -name php.ini ./usr/etc/php/etc/php.ini mysql官網的安裝說明http:// ...

隨機推薦

rails enum用于存儲數據

http://api.rubyonrails.org/classes/ActiveRecord/Enum.html 新的項目中有一個字段是展示類型,可以用下拉框去做,用string存儲具體的類型字段. ...

JavaScript網站設計實踐(七)編寫最后一個頁面 改進表單

一.最后一個頁面 contact.html.改進表單 在該頁面實現的功能: 幾乎所有的網站都會有表單填寫,對于用戶輸入和填寫的數據,首先我們一般現在前臺驗證,然后再去后臺驗證. 在前臺最簡單的驗證:檢 ...

【記錄】haphost免費vps初始配置

1.配置德國epel源 yum install yum-priorities rpm -Uvh http://ftp-stud.hs-esslingen.de/pub/epel/6/i386/epel ...

Jmeter之app性能測試(ios,android)

測試小菜鳥alter今天一大早又學習了一點東西關于jmeter-app性能測試,現在記錄一下.提到性能測試,那我就簡單總結一下.(想跳過的,直接將頁面下移到下一個紅色字體處) 性能測試的相關知識介紹 ...

帶BOM頭文件解析

在java中apache提供了一個工具類BOMStream,在獲取文件流時,將獲取到的文件流轉化成為BOM流: InputStreamReader is = new InputStreamReader ...

LINUX 配置定時任務,每天凌晨1點定時備份數據庫

一.安裝定時任務如果本地沒有安裝包,在能夠連網的情況下可以在線安裝 yum install vixie-cronyum install crontabs 查看crond服務是否運行: pgrep cr ...

Nagios 配置自動發郵件功能

安裝sendmailyum install -y sendmail* mailx 修改防火墻設置,添加25端口到防火墻vi /etc/sysconfig/iptables 重啟 iptables.se ...

SpringCloud Netflix Eureka(服務注冊/發現)

⒈Eureka是什么? Eureka是Netflix的一個子模塊,也是核心模塊之一,Eureka是一個基于REST的服務,用于定位服務以實現云端中間層服務發現和故障轉移,服務注冊與發現對于微服務架構來 ...

Linux查看操作系統版本

Linux版本太多,不同版本的命令又有所區別,所以在解決Linux的一些問題時候無從下手 或者 走一些彎路,這里提供解決此類問題的思路: 查看linux版本號 有了版本號,不同版本 統一問題解決方案不 ...

freemarker插值

http://blog.csdn.net/chang_li/article/details/51913105 在復雜頁面上(包含大量判斷.日期金額格式化)的頁面上,freemarker的性能比使用ta ...

總結

以上是生活随笔為你收集整理的bbsmax mysql_Problems with MMM for mysql(译文)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。