溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

MySQL高可用復(fù)制管理工具Orchestrator怎么用

發(fā)布時(shí)間:2021-11-29 16:17:11 來源:億速云 閱讀:265 作者:柒染 欄目:數(shù)據(jù)庫

本篇文章給大家分享的是有關(guān)MySQL高可用復(fù)制管理工具Orchestrator怎么用,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

背景

在MySQL高可用架構(gòu)中,目前使用比較多的是Percona的PXC,Galera以及MySQL 5.7之后的MGR等,其他的還有的MHA,今天介紹另一個(gè)比較好用的MySQL高可用復(fù)制管理工具:Orchestrator(orch)。

Orchestrator

這是一款go編寫的MySQL高可用性和復(fù)制拓?fù)涔芾砉ぞ?,支持?fù)制拓?fù)浣Y(jié)構(gòu)的調(diào)整,自動(dòng)故障轉(zhuǎn)移和手動(dòng)主從切換等。后端數(shù)據(jù)庫用MySQL或SQLite存儲(chǔ)元數(shù)據(jù),并提供Web界面展示MySQL復(fù)制的拓?fù)潢P(guān)系及狀態(tài),通過Web可更改MySQL實(shí)例的復(fù)制關(guān)系和部分配置信息,同時(shí)也提供命令行和api接口,方便運(yùn)維管理。

相對(duì)比MHA來看最重要的是解決了管理節(jié)點(diǎn)的單點(diǎn)問題,其通過raft協(xié)議保證本身的高可用。GitHub的一部分管理也在用該工具進(jìn)行管理。

Orchestrator大致的特點(diǎn)有:

① 自動(dòng)發(fā)現(xiàn)MySQL的復(fù)制拓?fù)?,并且在web上展示。

② 重構(gòu)復(fù)制關(guān)系,可以在web進(jìn)行拖圖來進(jìn)行復(fù)制關(guān)系變更。

③ 檢測(cè)主異常,并可以自動(dòng)或手動(dòng)恢復(fù),通過Hooks進(jìn)行自定義腳本。

④ 支持命令行和web界面管理復(fù)制。

安裝

根據(jù)需要下載合適的包進(jìn)行安裝,下載好deb包后,需要安裝jq的依賴包(apt-get install jq)。安裝完成之后,相應(yīng)的目錄為:

/usr/local/orchestrator -rwxr-xr-x 1 root root 20M 1月 16 21:49 orchestrator -rw-r--r-- 1 root root 5.1K 1月 16 21:49 orchestrator-sample.conf.json -rw-r--r-- 1 root root 4.4K 1月 16 21:49 orchestrator-sample-sqlite.conf.json drwxr-xr-x 7 root root 4.0K 2月 15 19:03 resources
  • orchestrator:應(yīng)用程序

  • *.json:默認(rèn)的配置模板

  • resources:orchestrator相關(guān)的文件:client、web、偽GTID等相關(guān)文件。

配置

這里列出說明幾個(gè)比較重要的參數(shù):

  • ListenAddress:web界面的http端口

  • MySQLOrchestratorHost:orch后端數(shù)據(jù)庫地址

  • MySQLOrchestratorPort:orch后端數(shù)據(jù)庫端口

  • MySQLOrchestratorDatabase:orch后端數(shù)據(jù)庫名

  • MySQLOrchestratorUser:orch后端數(shù)據(jù)庫用戶名(明文)

  • MySQLOrchestratorPassword:orch后端數(shù)據(jù)庫密碼(明文)

  • MySQLOrchestratorCredentialsConfigFile:后端數(shù)據(jù)庫用戶名密碼的配置文件「  "MySQLOrchestratorCredentialsConfigFile":  "/etc/mysql/orchestrator-backend.cnf" 」,格式:

[client] user=orchestrator_srv password=${ORCHESTRATOR_PASSWORD}
  • 后端MySQL數(shù)據(jù)庫的用戶權(quán)限需要是:

CREATE USER 'orchestrator_srv'@'orc_host' IDENTIFIED BY 'orc_server_password'; GRANT ALL ON orchestrator.* TO 'orchestrator_srv'@'orc_host';
  • MySQLTopologyUser:被管理的MySQL的用戶(明文)

  • MySQLTopologyPassword:被管理的MySQL的密碼(密文)

  • MySQLTopologyCredentialsConfigFile:被管理的MySQL的用戶密碼配置文件「"/etc/mysql/orchestrator-topology.cnf"」,格式:

[client] user=orchestrator_srv password=${ORCHESTRATOR_PASSWORD}
  • 被管理MySQL數(shù)據(jù)庫的用戶權(quán)限需要是:

CREATE USER 'orchestrator'@'orc_host' IDENTIFIED BY 'orc_topology_password'; GRANT SUPER, PROCESS, REPLICATION SLAVE, REPLICATION CLIENT, RELOAD ON *.* TO 'orchestrator'@'orc_host'; GRANT SELECT ON meta.* TO 'orchestrator'@'orc_host'; GRANT SELECT ON ndbinfo.processes TO 'orchestrator'@'orc_host'; -- Only for NDB Cluster

運(yùn)行部署

1. 開啟orchestrator

./orchestrator --debug --config=/etc/orchestrator.conf.json http

2. 把配置好的復(fù)制實(shí)例加入到orchestrator,因?yàn)閛rch可以自動(dòng)發(fā)現(xiàn)整個(gè)拓?fù)涞乃袑?shí)例,所以只需要添加任意一臺(tái)實(shí)例即可,如果沒有發(fā)現(xiàn)的話可以再添加。

在web上添加(導(dǎo)航里的Clusters -> Discover)

添加完成

以上就是MySQL高可用復(fù)制管理工具Orchestrator怎么用,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI