hhdb数据库介绍(8-3)
部署
自动部署
实现免密登录说明
免密登录需要在两台服务器之间建立免密通道,具体操作如下:
以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重启生效)。