要實現高可用,只需要在kolla的mulihost文件中control組,增加host即可。
mariadb的ha支持多種模式,kolla部署場景下選擇galera模式。
其他mysql高可用模式參考: http://www.jb51.net/article/83400.htm
mysql的配置文件如下:
[client]
default-character-set = utf8
[mysql] # 客戶端配置
default-character-set = utf8 # 客戶端的默認字符編碼
[mysqld] #服務端配置
bind-address = 192.168.102.15 #綁定的遠程連接ip
port = 3306 #監聽端口
log-error = /var/log/kolla/mariadb/mariadb.log # 錯誤日志地址
log-bin = mysql-bin #bin log 的相對路徑,這個路徑相對于datadir
基本定義:二進制日志,也成為二進制日志,記錄對數據發生或潛在發生更改的SQL語句,并以二進制的形式保存在磁盤中;
作用:可以用來查看數據庫的變更歷史(具體的時間點所有的SQL操作)、數據庫增量備份和恢復(增量備份和基于時間點的恢復)、MySQL的復制(主主數據庫的復制、主從數據庫的復制)
文件位置:默認存放位置為數據庫文件所在目錄下
文件的命名方式: 名稱為hostname-bin.xxxxx (重啟mysql一次將會自動生成一個新的binlog)
狀態的查看:mysql> show variables like '%log_bin%';
binlog_format = ROW # binlog的格式,不記錄sql語句上下文相關信息,僅保存哪條記錄被修改 , 參考http://blog.csdn.net/vhomes/article/details/8082734
default-storage-engine = innodb #數據庫引擎
innodb_autoinc_lock_mode = 2 # 鎖配置
collation-server = utf8_general_ci #以下三項解決中文編碼亂碼問題
init-connect = SET NAMES utf8
character-set-server = utf8
datadir = /var/lib/mysql/ #數據文件路徑
max_connections = 10000 # 最大連接數
key_buffer_size = 64M #索引緩沖區大小,他決定索引處理速度,只對MyISAM表起作用,innodb的可以忽略
max_heap_table_size = 64M #用戶可以創建的內存表的大小
tmp_table_size = 64M #內部臨時表的最大值,超過這個最大值(這個最大值也受max_heap_table_size影響)后,數據會寫入磁盤的MyISAM表
innodb_buffer_pool_size = 8192M #緩存用戶表及索引數據的最主要緩存空間,一般建議設置為系統內存的50%~80% 。參考http://blog.csdn.net/yang1982_0907/article/details/20123055
#基本的galera驅動配置
wsrep_provider = /usr/lib64/galera/libgalera_smm.so
#galera集群配置
wsrep_cluster_address = gcomm:// # 定義back-end的ip和端口,其他選項
wsrep_provider_options = gmcast.listen_addr=tcp://192.168.102.15:4567;ist.recv_addr=192.168.102.15:4568
wsrep_sst_receive_address = 192.168.102.15:4444
wsrep_cluster_name = openstack
#galera節點配置
wsrep_node_name = controller01
wsrep_node_address = 192.168.102.15:4567
#galera數據同步配置
wsrep_sst_method = xtrabackup-v2
wsrep_sst_auth = root:zQ3SNAvxq2hHX9m84ZFpRwGrF7Sv2OfytpEPggRb
wsrep_slave_threads = 4
#集群關系改變或者節點狀態改變的時候,執行的確認腳本
wsrep_notify_cmd = /usr/local/bin/wsrep-notify.sh
[server]
pid-file = /var/lib/mysql/mariadb.pid # pid文件路徑配置