配置并检查安装环境
操作场景
为了GaussDB 200能够稳定、高效运行,需要对现有的OS进行安装前适配和检查操作。若操作过程中出错需要查看安装日志,请参考查看安装日志。
该操作指导安装工程师完成以下动作,所有动作均通过脚本自动完成:
- “preinstall”过程:
- 适配OS:修改OS配置,使OS满足GaussDB 200的安装要求。
说明:
修改的OS配置项可参见OS参数设置检查基线列表,如需手动修改,请参见配置操作系统参数。
- 补齐RPM包:自动补齐OS缺失的RPM包。
说明:
GaussDB 200系统所需的RPM包列表请参见“/opt/FusionInsight_SetupTool/preinstall/script/function/add_packages/conf”下对应的操作系统列表文件(例如“redhat-6.4_must-rpms.lst”)。安装的RPM包可能带来安全风险,请用户对OS进行加固时考虑安装这些RPM包所带来的风险。
- 格式化分区:自动对服务器磁盘进行格式化,使磁盘满足GaussDB 200的分区要求。执行结果请参考 “preinstall”格式化分区执...。
- “preinstall”过程完成后会在所有节点的操作系统中创建一个statmon服务,用于收集操作系统运行时的状态,该服务在卸载掉集群和Manager后仍然存在于操作系统当中,不会影响集群的再次安装。
- “preinstall”过程完成后会在所有节点的操作系统中创建一个diskmgt进程。该进程用于磁盘管理,当节点中某一磁盘故障时,将该磁盘的任务自动切换到备用磁盘。该进程在卸载掉集群和Manager后仍然存在于操作系统当中。卸载方式请参考preinstall成功后需要调整磁盘规划,如何重新格式化磁盘。
- 适配OS:修改OS配置,使OS满足GaussDB 200的安装要求。
- “precheck”过程:
检查节点环境是否满足GaussDB 200的安装要求。包含的检查项请参考“precheck”主要检查项列表...。
前提条件
- 已经将所需文件配置完毕,并分别上传到指定位置,具体请参考生成配置文件(包括“preinstall”和“precheck”文件夹中所有文件)。
- 如果管理节点的ip_forward打开,会造成管理节点具备将外部网络包向集群内部转发的功能。为安全起见,请保持管理节点中“/proc/sys/net/ipv4/ip_forward”文件的参数值为0(默认为0),或“/etc/sysctl.conf”文件中“net.ipv4.ip_forward”的参数值为0(默认为0)。
- 如使用omm用户安装集群,需提前使用root用户进行预配置操作,详情请参见配置软件包。
- 如使用omm用户安装集群,需提前获取omm用户密码。
- 已提前挂载好操作系统镜像。
- 若同一节点上除OS盘外,同时存在多种RAID类型(例如管理节点和数据节点合布时,同一节点同时存在元数据盘RAID1和数据盘NonRAID两种配置),无法使用preinstall创建分区。此时请参考手动创建分区手动挂载该节点上所需要的分区,并在2中将“preinstall.ini”文件进行以下操作:
“g_hosts”参数值删除掉存在混合RAID类型的节点(如host0有混合模式,则删除“192.168.10.10”IP地址);“g_parted_conf”参数值删除掉存在混合RAID类型的节点(如host0有混合模式,则删除“192.168.10.10:host0.ini”)。
- 如果节点已安装过集群,且新集群又需要修改主机名(重新执行preinstall),请注意节点是否开启了本地DNS缓存,若开启请手动重启本地DNS服务清除缓存,否则可能会导致新集群在安装完成后部分服务无法正常启动。
操作步骤
- 使用PuTTY工具,以root用户登录主管理节点(如使用omm用户安装集群,请使用omm用户登录),执行以下命令,防止“PuTTY”超时退出。
TMOUT=0
说明:
如果在EulerOS下,需要执行以下操作防止超时退出:
- 执行vi /etc/profile打开配置文件,修改参数“export TMOUT=0”,保存退出,再执行source /etc/profile导入配置文件。
- 执行vi /etc/ssh/sshd_config打开配置文件,修改参数“ClientAliveInterval”为0 ,“ClientAliveCountMax”为3,保存退出,执行service sshd restart重启sshd服务。
- 断开PuTTY重新连接节点,配置生效。
- 进入安装脚本工具包的解压目录,例如“/opt/FusionInsight_SetupTool/preinstall”,检查配置规划工具生成的“preinstall.ini”是否已上传到此目录。如果没有或内容未更新,请参见生成配置文件并上传。请确保“g_parted_conf”对应节点中要格式化的分区内没有数据。
cd /opt/FusionInsight_SetupTool/preinstall
cat preinstall.ini
g_hosts="192.168.10.[10–20]" g_user_name="root" g_port=22 g_parted=2 g_parted_conf="192.168.10.10:host0.ini;192.168.10.11:host1.ini;192.168.10.12:host2.ini;192.168.10.13:host3.ini; 192.168.10.14:host4.ini;192.168.10.15:host5.ini;192.168.10.16:host6.ini;192.168.10.17:host7.ini; 192.168.10.18:host8.ini;192.168.10.19:host9.ini;192.168.10.20:host10.ini;" g_add_pkg=1 g_pkgs_dir="redhat-6.4:/media/" g_log_file="/tmp/fi-preinstall.log" g_debug=0 g_hostname_conf="192.168.10.10:192.168.20.10:host0;192.168.10.11:192.168.20.11:host1;192.168.10.12:192.168.20.12:host2;192.168.10.13:192.168.20.13:host3;192.168.10.14:192.168.20.14:host4;192.168.10.15:192.168.20.15:host5;192.168.10.16:192.168.20.16:host6;192.168.10.17:192.168.20.17:host7;192.168.10.18:192.168.20.18:host8;192.168.10.19:192.168.20.19:host9;192.168.10.20:192.168.20.20:host10;" g_swap_off=1 g_platform="x86_64"
- (可选)配置启用磁盘缓存。
- 针对配有超级电容RAID卡的局点,为提高磁盘性能,建议启用磁盘缓存,其他场景请跳过。
- 启用磁盘缓存,异常掉电场景下存在数据丢失的风险,请谨慎开启。
- 执行vi preinstall.ini打开preinstall配置文件。
- 在配置文件中增加g_wce_conf=1的参数。如下粗体显示。
g_hosts="192.168.10.[10–20]" g_user_name="root" g_port=22 g_parted=2 g_parted_conf="192.168.10.10:host0.ini;192.168.10.11:host1.ini;192.168.10.12:host2.ini;192.168.10.13:host3.ini; 192.168.10.14:host4.ini;192.168.10.15:host5.ini;192.168.10.16:host6.ini;192.168.10.17:host7.ini; 192.168.10.18:host8.ini;192.168.10.19:host9.ini;192.168.10.20:host10.ini;" g_add_pkg=1 g_pkgs_dir="redhat-6.4:/media/" g_log_file="/tmp/fi-preinstall.log" g_debug=0 g_hostname_conf="192.168.10.10:192.168.20.10:host0;192.168.10.11:192.168.20.11:host1;192.168.10.12:192.168.20.12:host2;192.168.10.13:192.168.20.13:host3;192.168.10.14:192.168.20.14:host4;192.168.10.15:192.168.20.15:host5;192.168.10.16:192.168.20.16:host6;192.168.10.17:192.168.20.17:host7;192.168.10.18:192.168.20.18:host8;192.168.10.19:192.168.20.19:host9;192.168.10.20:192.168.20.20:host10;" g_swap_off=1 g_platform="x86_64" g_wce_conf=1
- 按“Esc”键退出编辑,并输入:wq保存退出。
- (可选)开启core dump功能。
说明:
- 开启core dump功能后,当数据库进程发生异常导致退出时,操作系统会将进程当前的内存状况存储在core dump文件中,以便运维人员快速定位问题。
- 建议在安装过程开启,并指定core文件的统一存储目录,建议存储在“/var/log/core”目录下,请确保存储目录所在的“/var/log”分区下有足够容量,具体参见磁盘分区要求。
- 如果安装过程未开启,后续开启请参见开启和关闭core dump功能,但不支持指定单独的core文件存储目录。
- 如果是欧拉系统,需要先以root用户登陆每个节点执行如下命令清除系统的默认ulimit设置:
sed -i "/^ulimit -c.*/d" /etc/profile; echo "root soft core 0" >> /etc/security/limits.conf
- 打开“preinstall.ini”文件。
vi preinstall.ini
- 在配置文件增加两个参数g_core_dump=1和g_core_dump_dir="/var/log/core"。
- “g_core_dump”表示core dump功能开关,设置为1表示开启,0表示关闭。
- “g_core_dump_dir”表示core文件的存储目录,建议设置为“/var/log/core”。若为空,则表示不单独指定core文件存储目录,系统会默认将core文件生成于各进程的启动目录下。
- 如果不单独指定core文件存储目录,core文件会分散存储在各进程的启动目录下。core文件管理功能将不能监控到所有的core文件,也就不能自动清除部分core文件,磁盘有被core文件占满的风险。因此强烈建议配置单独的目录进行core文件的统一监控和生命周期管理。如果没有配置单独目录,请周期性的人工手动清除散落在各个目录的不能被监控到的core文件,清除方法详见3.9.5.21 手动清除分散的core文件。
g_hosts="192.168.10.[10–20]" g_user_name="root" g_port=22 g_parted=2 g_parted_conf="192.168.10.10:host0.ini;192.168.10.11:host1.ini;192.168.10.12:host2.ini;192.168.10.13:host3.ini; 192.168.10.14:host4.ini;192.168.10.15:host5.ini;192.168.10.16:host6.ini;192.168.10.17:host7.ini; 192.168.10.18:host8.ini;192.168.10.19:host9.ini;192.168.10.20:host10.ini;" g_add_pkg=1 g_pkgs_dir="redhat-6.4:/media/" g_log_file="/tmp/fi-preinstall.log" g_debug=0 g_hostname_conf="192.168.10.10:192.168.20.10:host0;192.168.10.11:192.168.20.11:host1;192.168.10.12:192.168.20.12:host2;192.168.10.13:192.168.20.13:host3;192.168.10.14:192.168.20.14:host4;192.168.10.15:192.168.20.15:host5;192.168.10.16:192.168.20.16:host6;192.168.10.17:192.168.20.17:host7;192.168.10.18:192.168.20.18:host8;192.168.10.19:192.168.20.19:host9;192.168.10.20:192.168.20.20:host10;" g_swap_off=1 g_platform="x86_64" g_wce_conf=1 g_core_dump=1 g_core_dump_dir="/var/log/core"
- 按“Esc”键退出编辑,并输入:wq保存退出。
- 执行安装前配置命令。输入root用户的密码(如使用omm用户安装集群,请输入omm用户密码),等待执行完毕。
cd /opt/FusionInsight_SetupTool
./setuptool.sh preinstall
说明:
- 默认情况下,执行完preinstall执行成功后会自动执行precheck。
- 使用“-n”参数时,执行完preinstall后不再执行precheck。
- 使用“-c”参数时,执行完preinstall后总是执行precheck。
Please enter cluster SSH password: #输入root或omm用户的密码 **FusionInsight PreInstall is starting... ********************************** *****FusionInsight Preinstall***** ********************************** ***** Time:60s ***** Running:0 ***** Success:10 ***** Failure:0 ***** Total:10 ***** Schedule:100%
说明:
配置节点系统若出现错误,可在“/tmp/fi-preinstall.log”路径下查看“preinstall”的日志文件,并进行相应处理。
下面列举了一些常见问题和处理方法:
- 配置节点的操作系统时很快提示失败,原因是禁用root用户的SSH权限
- 配置节点的操作系统时失败,提示“Disk format failed”
- “preinstall”过程结束后,默认会自动继续进行“precheck”过程。如下所示:
===========FusionInsight PreCheck is starting...=========== [INFO] start checking each hosts. [INFO] localhost: start parsing the configuration file. [INFO] localhost: parse the configuration file success. ...
结果如下所示。==========Summary Output============ Environment check failed,you can get more information from /opt/FusionInsight_SetupTool/precheck/log/precheck_failed.log You can get more information about the preinstall from /tmp/fi-preinstall.log and /tmp/diskmgt/autopart.log
- 使用以下命令,按照提示路径查看precheck错误日志,例如:
vi /opt/FusionInsight_SetupTool/precheck/log/precheck_failed.log
... [2019-02-07 16:13:31] [WARNING] 192.168.10.10: Nic 'eth2' invalid config, speed is Unknown!. [checkEnvironmentOnEachHost.sh(checkNics):518](154737) [2019-02-07 16:13:28] [ERROR] 192.168.10.15: The available space of the '/var/log' partition is '45' (GB). You are advised to allocate a partition with at least '130'(GB) for the log directory. [checkEnvironmentOnEachHost.sh(getPathinfo):464](73474) ...
说明:
所有信息请参考检查安装环境时产生的各种错误提示和解决办法进行处理。
“ERROR”级别必须在安装前解决,“WARNING”级别请根据实际情况审视。
处理完毕后,请执行以下动作:
- 执行以下命令重新执行precheck任务。
cd /opt/FusionInsight_SetupTool
./setuptool.sh precheck precheck/checkNodes.Config
- 输入各节点用于安装集群用户的密码,等待执行完成。
- 重新查看precheck错误日志,直至所有“ERROR”级别的项目全部处理完毕,且“WARNING”级别项目经审视对安装无影响为止。
附加信息
- “preinstall”格式化分区执行结果。
如下例(该节点上有7个盘符,OS独占一个盘符sda,其他分区各独占一个盘符,运行“preinstall”脚本前仅sda挂载到系统中):
- 运行脚本前的分区情况
[root@mgtomsdat-sh-3-01-1 ~]#df -h \\此命令在安装Manager前只能在root用户下执行 Filesystem Size Used Avail Use% Mounted on /dev/sda2 9.7G 1.8G 7.4G 20% / /dev/sda7 371G 15G 338G 5% /opt /dev/sda6 60G 15G 45G 25% /srv/BigData /dev/sda3 9.7G 152M 9.0G 2% /tmp /dev/sda5 9.7G 3.7G 5.5G 41% /var /dev/sda1 58G 1.9G 53G 4% /var/log
- 运行脚本后的分区情况
说明:
可使用ll /srv/BigData命令查看“/srv/BigData/LocalBackup”目录权限,请确保权限值为“700”,属组为“2000 wheel”。否则请执行以下命令进行处理:(数据存放路径可自定义,此处以默认值“/srv/BigData”举例。)
chmod 700 /srv/BigData/LocalBackup -R
chown 2000:wheel /srv/BigData/LocalBackup -R
[root@mgtomsdat-sh-3-01-1 ~]#df -h \\此命令在安装Manager前只能在root用户下执行 Filesystem Size Used Avail Use% Mounted on /dev/sda2 9.7G 1.8G 7.4G 20% / /dev/sda7 371G 15G 338G 5% /opt /dev/sda6 60G 15G 45G 25% /srv/BigData /dev/sda3 9.7G 152M 9.0G 2% /tmp /dev/sda5 9.7G 3.7G 5.5G 41% /var /dev/sda1 58G 1.9G 53G 4% /var/log /dev/sdb1 60G 744M 59G 2% /srv/BigData/dbdata_om /dev/sdb2 60G 744M 59G 2% /srv/BigData/LocalBackup /dev/sdb3 223G 188M 222G 1% /srv/BigData/mppdb/data1
- “precheck”主要检查项列表:
表1 主要检查项 检查类别
检查项
硬件
检查所有节点的CPU
检查所有节点的内存大小
检查所有节点的磁盘数量
检查所有节点的磁盘容量和磁盘挂载方式
- RedHat/CentOS/EulerOS挂载方式为“UUID”
- SUSE挂载方式为“by-id”
检查磁盘分区剩余空间
系统配置
检查所有节点的主机名
检查配置文件中的路径是否存在
检查“/etc/hosts”文件配置是否正确
检查主机名是否符合命名规范
使用root用户安装集群时,检查操作系统中是否包含omm用户或ID为2000的用户
检查ntp服务是否已经启动
检查系统默认或当前的共享内存是否满足GaussDB要求
检查“Swap”分区是否关闭
检查各节点服务器时区
说明:安装集群以后不支持修改服务器时区。
检查对Omm-j(包括GaussDB)的依赖
检查所有节点是否存在expect命令
检查“/etc/ntp.conf”文件内容是否为空
检查“/etc/sudoers”文件配置是否正确
检查操作系统中是否已安装其他版本的hadoop程序
检查omm用户安装集群时,omm用户是否有crontab运行权限
检查sysctl服务是否可以正常重启
RPM包
检查是否安装“python”
检查“python”版本配置是否正确
检查SSH是否安装
检查各组件依赖的RPM包
说明:详细列表可参见“/opt/FusionInsight_SetupTool/preinstall/script/function/add_packages/conf”下对应的操作系统列表文件(例如“redhat-6.4_must-rpms.lst”)。
检查对“lib64.so”的依赖
检查“nss-softokn”和“nss-util”RPM包是否安装,且版本是否符合要求
操作系统
检查操作系统版本
检查系统内核版本是否符合要求
检查NTP版本
查看更多:华为GaussDB 200 安装过程(手动安装) - 运行脚本后的分区情况
- 运行脚本前的分区情况
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」关注作者【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。评论
- (可选)配置启用磁盘缓存。