hhdb資料庫介紹(8-3)

恒辉信达發表於2024-11-23

部署

自動部署

實現免密登入說明

免密登入需要在兩臺伺服器之間建立免密通道,具體操作如下:

以192.168.190.186與192.168.190.187實現免密連線為例

1.在192.168.190.186的伺服器上執行ssh-keygen,連續按3次回車,完成生成公鑰和私鑰,其中id_rsa為私鑰,id_rsa_pub為公鑰,到/root/.ssh目錄下可看到剛剛命令生成的私鑰和公鑰檔案。

2.輸入ssh-copy-id目標伺服器的IP,再輸入目標伺服器的密碼,就可以將公鑰傳到目標伺服器

3.在192.168.190.187伺服器上檢視從192.168.190.186伺服器上傳送過來的公鑰檔案“authorized_key”。

4.測試不需要輸入密碼直接從192.168.190.186伺服器ssh 到192.168.190.187伺服器是否能夠成功登入。

部署指令碼說明

脫離管理平臺您也可以直接使用安裝指令碼進行安裝,在hhdbinstall.sh指令碼後新增--xxx=xxx的方式使用

指令碼引數說明

引數名稱 引數說明
dry-run 只做檢查,不做任何修改,可選範圍yes no,預設no
hotdb-version 指定HHDB Server大版本號
install-hotdb-server 是否安裝計算節點,可選範圍yes no,預設no
install-hotdb-listener 是否安裝監聽程式,可選範圍yes no,預設no
--listener-heap-mem-size-gb 如果指定,會幫助將監聽程式啟動指令碼中堆記憶體大小由4G修改為指定值,預設不修改
--listener-max-direct-mem-size-gb 如果指定,會幫助將監聽程式啟動指令碼中直接記憶體大小由24G修改為指定值,預設不修改
hotdb-use-g1 如果指定,會幫助將計算節點啟動指令碼修改為使用G1垃圾回收器,預設不修改
hotdb-heap-mem-size-gb 如果指定,會幫助將計算節點啟動指令碼中堆記憶體大小由4G修改為指定值,預設不修改
hotdb-max-direct-mem-size-gb 如果指定,會幫助將計算節點啟動指令碼中直接記憶體大小由24G修改為指定值,預設不修改
install-hotdb-server-management 是否安裝管理平臺,可選範圍yes no,預設no
install-hotdb-backup 是否安裝備份程式,可選範圍yes no,預設no
mysql-version 指定儲存節點大版本號,可選範圍5.7、8.0,預設8.0
mysql-port-list 指定要安裝的儲存節點資料來源埠列表,逗號分隔,要求遞增順序排列,示例:3306,3307,3308,3309,預設為空
hotdb-config-port 指定要安裝的配置庫埠列表,不可以和儲存節點資料來源埠衝突,預設為空
hotdb-config-init 是否要在hotdb-config-port指定的例項初始化配置庫,可選範圍yes no,預設安裝計算節點時為yes,不安裝計算節點時為no。
mysql-data-diskname 指定用於儲存節點資料目錄的磁碟裝置名稱,如果該裝置沒有掛載,且沒有被格式化過,將自動格式化此裝置並掛載到資料目錄,預設為空
mysql-data-rootdir 指定要使用的儲存節點資料目錄根目錄,預設/data,必須是絕對路徑
rename-datadir-before-initdb 指定在初始化資料庫前,是否重新命名可能存在的舊資料目錄,預設為"yes"
server-id-perfix 指定server-id使用的字首,要求為小於429496的數字,預設自動計算,但不保證絕對無衝突
character-set-server 指定字符集,可選範圍latin1 gbk utf8 utf8mb4,預設utf8mb4
collation-server 指定校對集,可選範圍latin1_swedish_ci latin1_bin gbk_chinese_ci gbk_bin utf8_general_ci utf8_bin utf8mb4_general_ci utf8mb4_bin,預設值為配置的字符集的預設校對集
innodb-buffer-pool-size-mb 單位為MB的innodb-buffer-pool-size大小,預設自動計算
innodb-log-file-size-mb 單位為MB的innodb-log-file-size大小,預設自動計算
innodb-data-file-size-mb 單位為MB的ibdata檔案大小,預設4096
innodb-io-capacity 指定innodb-io-capacity的大小,預設自動計算
innodb-flush-log-at-trx-commit 指定innodb-flush-log-at-trx-commit設定,預設2
sync-binlog 指定sync-binlog的設定,預設10
binlog-format 指定binlog-format的設定,可選範圍MIXED ROW,預設MIXED
gtid-mode 是否啟用gtid,可選範圍on off,預設on
rpl-semi-sync-enabled 是否啟動半同步複製,可選範圍on off,預設on
mgr-group-name-list 儲存節點埠號:MGR組UUID:MGR本地埠號列表,逗號分隔,如果提供該引數,將為對應埠開啟MGR,例如3306:540c2b46-5d73-11e8-ad9b-00a0c9000000:33060,3308:5f5c1e2d-5d73-11e8-ad9b-00a0c9000000:33080,預設為空。(注意,仍然需要在mysql-port-list、hotdb-config-port中指定欲建立的儲存節點例項)
mgr-group-local-ip MGR本地埠繫結的本地IP地址,預設自動計算。
mgr-group-seeds-list 儲存節點埠號:MGR組成員IP:埠逗號分隔列表,斜槓分隔,如果提供該引數,將在my.cnf檔案中對應埠新增該值,預設為空,例如3306:192.168.200.101:33060,192.168.200.102:33060,192.168.200.103:33060/3308:192.168.200.101:33080,192.168.200.102:33080,192.168.200.103:33080
creat-hotdbroot-in-mysql 是否在MySQL中建立hotdb_root使用者,使用者擁有所有許可權,並且可以從任意位置連線,預設密碼HOTDB_root@123 ,可選範圍yes no,預設no
install-keepalived 是否安裝keepalive,可選範圍master backup no,預設no
keepalived-vip-with-perfix 如果指定,會幫助將keepalive配置中的vip由192.168.200.140/24替換為該值,預設不修改
keepalived-virtual-router-id 如果指定,會幫助將keepalive配置中的virtual-router-id由151替換為該值,預設不修改
keepalived-net-interface-name 如果指定,會幫助將keepalive配置中的vip裝置名稱由eth0:1替換為該值,預設不修改
install-lvs 是否安裝lvs服務端,可選範圍master backup no,預設no
lvs-vip-with-perfix 如果指定,會幫助將lvs配置中的vip由192.168.56.203/24替換為該值,預設不修改
lvs-port 如果指定,會幫助將lvs配置中的監聽埠由3306替換為該值,預設不修改,埠需要和計算節點叢集的資料服務埠相同
lvs-virtual-router-id 如果指定,會幫助將lvs配置中的virtual-router-id由51替換為該值,預設不修改
lvs-net-interface-name 如果指定,會幫助將lvs配置中的vip裝置名稱由eth1:2替換為該值,預設不修改
lvs-real-server-list lvs後端計算節點伺服器IP:資料服務埠:管理埠列表,逗號分隔,例如192.168.0.1:3323:3325,192.168.0.2:4323:4325,預設為空
lvs-real-server-user lvs健康檢查指令碼連線後端計算節點伺服器管理埠使用的使用者名稱,預設root
lvs-real-server-password lvs健康檢查指令碼連線後端計算節點伺服器管理埠使用的用密碼,預設HOTDB_server@123
lvs-real-server-startup-type 作為lvs的realserver時,伺服器相關調整的配置方式,可選範圍no config service 預設no
install-ntpd 是否安裝ntpd,可選範圍yes no,如果安裝計算節點,則預設安裝ntpd,否則預設不安裝。注意,一個計算節點叢集裡面,應當只有一個ntpd;計算節點備機應當向計算節點主機同步時間。如果內網有ntp源,則不必安裝ntpd。
ntpdate-server-ip 配置時間同步的ip地址,該引數與ntpdate-server-host必須指定其中一個且只能指定其中一個。如果本機安裝ntpd,則應當指定為計算節點叢集外的時間源;如果本機不安裝ntpd,則應當指定為計算節點叢集內部的ntpd服務所在的伺服器地址(如果主計算節點安裝了ntpd服務的話),或內網中的ntpd伺服器地址,不應該選擇外網地址。
ntpdate-server-host 配置時間同步的主機地址,允許為域名或ip,指令碼不會對該引數做任何處理與檢查,需要依賴呼叫者保證正確性,該引數與ntpdate-server-ip必須指定其中一個且只能指定其中一個。如果本機安裝ntpd,則應當指定為計算節點叢集外的時間源;如果本機不安裝ntpd,則應當指定為計算節點叢集內部的ntpd服務所在的伺服器地址(如果主計算節點安裝了ntpd服務的話),或內網中的ntpd伺服器地址,不應該選擇外網地址。

引數使用說明

引數的組合使用:引數名=值+空格+引數名=值 ,例如:

--hotdb-heap-mem-size-gb=1 --hotdb-max-direct-mem-size-gb=1 --ntpdate-server-ip=192.168.200.140 --rpl-semi-sync-enabled=on --mysql-version=5.7 --hotdb-config-port=3316 --install-ntpd=yes --install-hotdb-server=yes --hotdb-version=2.5 --install-hotdb-backup=yes --mysql-port-list=3307,3308 --install-hotdb-server-management=yes

指令碼安裝儲存節點監聽程式:

--hotdb-heap-mem-size-gb=1 --hotdb-max-direct-mem-size-gb=1 --ntpdate-server-ip=192.168.200.140 --rpl-semi-sync-enabled=on --mysql-version=5.7 --hotdb-config-port=3316 --install-ntpd=yes --install-hotdb-server=yes --install-hotdb-listener=yes --hotdb-version=2.5 --install-hotdb-backup=yes --mysql-port-list=3307,3308 --install-hotdb-server-management=yes

執行指令碼使用方法:

sh -x 指令碼名稱.sh+空格+引數串

sh -x hhdbinstall_v*.sh --hotdb-heap-mem-size-gb=1 --hotdb-max-direct-mem-size-gb=1
--ntpdate-server-ip=192.168.200.140 --rpl-semi-sync-enabled=on --mysql-version=5.7 --hotdb-config-port=3316 --install-ntpd=yes --install-hotdb-server=yes --hotdb-version=2.4 --install-hotdb-backup=yes --mysql-port-list=3307,3308 --install-hotdb-server-management=yes

指令碼其他說明

1.因當前一鍵部署安裝指令碼需要執行tune指令碼,tune指令碼中會修改網路卡相關硬體引數,可能導致網路卡短暫失去響應或網路卡內部重啟。已知在配置了Bond的環境下,可能因為作業系統響應不夠快或交換機響應不夠快,導致短時間內的網路連線中斷,進而導致SSH終端斷連或計算節點連線中斷,部分情況可透過縮短Bond 配置引數miimon=100緩解。

2.安裝前建議關閉伺服器自帶的防火牆與selinux功能(selinux重啟生效)。

相關文章