暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

gs_preinstall过程分析

原创 呵呵 2022-02-06
1732

预安装的命令:

/opt/soft/mogdb/script/gs_preinstall -U moguser -G mogdbgrp -X /opt/soft/mogdb/clusterconfig.xml

从/var/log/mogdb/omm/om的路径里面查看日志文件gs_local-2022-01-28_161218.log
分为一下几个步骤:
1 set_tool_env
包括清除一些omm用户下.bashrc文件里面的mogdb所需的环境变量,例如GPHOME
PATH,LD_LIBRARY_PATH,PYTHONPATH,GAUSSHOME,PATH,LD_LIBRARY_PATH,S3_CLIENT_CRT_FILE,GAUSS_VERSION,PGHOST,GAUSSLOG,GAUSS_ENV,GS_CLUSTER_NAME,上面存在2个path变量,分别为

  • export PATH=$ GPHOME/script/gspylib/pssh/bin:$ GPHOME/script:$PATH
  • exportPATH=$ GAUSSHOME/bin:$PATH,可以从后面所跟的路径判断出区别。
    1.png

2 check_os_user,检查os的的用户和组,比如我使用的是mogdbuser和mogdbgrp
1.png

3 prepare_user_sshd_service
使用om工具安装的时候,创建ssh互信
1.png

4 change_tool_env
针对第一次预安装失败之后,再次进行预安装,该步骤是对上一次预安装的环境变量的修改和纠正
1.png

5 check_os_software
检查bzip2 以及bzip2的位置
1.png

6 check_os_Version
主要作用是检查操作系统的版本,支持主流的linux操作系统,centos,redhat。
1.png

7 create_cluster_paths

  • 创建集群路径,创建日志路径,检查mogdb的日志目录,创建mogdb的app的安装路径。
  • Command to check if we have write permission for upper path
  • Creating temporary path
  • Creating data path
    1.png

8 gs_checkos and gaussdb_localcheck and LocalCheckOS
使用sysctl 命令设置参数的值,比如:
net.ipv4.tcp_max_tw_buckets
net.ipv4.tcp_tw_reuse
net.ipv4.tcp_tw_recycle
net.ipv4.tcp_keepalive_time
net.ipv4.tcp_keepalive_intvl
net.ipv4.tcp_retries2
net.ipv4.ip_local_reserved_ports
net.core.wmem_max
net.core.rmem_max
net.core.wmem_default
net.core.rmem_default
kernel.sem
net.ipv4.tcp_rmem
net.ipv4.tcp_wmem
vm.min_free_kbytes
net.core.netdev_max_backlog
net.ipv4.tcp_max_syn_backlog
net.core.somaxconn
kernel.shmall
kernel.shmmax
1.png

9 set_user_env
设置user的概要文件,即profile文件
1.png

10 set_library
设置omm的库文件,Setting Library
1.png

10 set_cgroup
设置和管理资源的分配、限制
1.png

11 fix_server_package_owner
修改/opt/soft/mogdb的mode,以及/mogdb/mogdb/tools和/opt/soft/mogdb/clusterconfig.xml的属主和属组,以及文件权限
1.png

12 set_finish_flag

  • Checking core_pattern
  • Checking RemoveIpc
  • Deleting user’s environmental variable
  • Seting user’s environmental variable
  • set daily alarm
  • Changing the owner of Gausslog
  • Changing the owner of GPHOME
  • Changing the owner of preinstall log path
  • The command of check permission is
  • Setting finish flag
    1.png

执行mogdb安装的命令
su - omm
/opt/soft/mogdb/script/gs_install -X /opt/soft/mogdb/clusterconfig.xml --gsinit-parameter="–locale=en_US.UTF-8" --gsinit-parameter="–encoding=UTF-8"

在gs_install 安装的阶段包括一下几个步骤
1 CheckInstall

  • Using installation program path: /mogdb/mogdb/app_01071903.
  • Using set configuration file parameters: [].
  • Checking old installation.
  • Checking SHA256.
  • Checking kernel parameters.
  • Checking directory.
  • Database program installation path available size 95150M.
  • Get the install path /mogdb/mogdb/app_01071903 user info.
  • Checking instance port and IP.
  • Checking preinstall enviroment value.

2 Install

  • Using omm:dbgrp to install database.
  • Using installation program path : /mogdb/mogdb/app
  • Created symbolic link to $GAUSSHOME with commitid.
  • Get the install path /mogdb/mogdb/app_01071903 user info.
  • Decompressing bin file.
  • Modifying Alarm configuration.
  • Modifying user’s environmental variable $GAUSS_ENV.
  • Successfully modified user’s environmental variable $GAUSS_ENV.
  • Fixing file permission.
  • Set Cgroup config file to appPath.
  • set cgroup at install step cmd: cp /mogdb/mogdb/tools/omm/etc/*
    /mogdb/mogdb/app/etc
  • Successfully Set Cgroup

3 CleanInstance

  • Get the install path /mogdb/mogdb/app_01071903 user info.
  • Cleaning instance.
  • Deleting instances.
  • Cleaning instance.
  • /mogdb/data/db1/pg_tblspc does not exists.
  • Deleting instances directories.
  • Successfully cleaned instances.
  • Deleting socket files.
  • Successfully cleaned socket files.
  • Successfully cleaned instances.
  • Successfully cleaned instance information.
  • Checking parameters for configuring DNs.
  • Instance information on local node

4 CheckNodeEnv

  • Checking MogDB log directory[/var/log/mogdb/omm].
  • Making user_profile_dir directory[/var/log/mogdb/omm/gs_profile] for database node user.
  • Making user_pg_log_dir directory[/var/log/mogdb/omm/pg_log] for database node user.
  • Making user_pg_audit_dir directory[/var/log/mogdb/omm/pg_audit] for database node user.
  • Making user_bin_dir directory[/var/log/mogdb/omm/bin] for database node user.
  • Making user_pg_log_dn_6001_dir directory[/var/log/mogdb/omm/pg_log/dn_6001] for database node user.
  • Making user_pg_audit_dn_6001_dir directory[/var/log/mogdb/omm/pg_audit/dn_6001] for database node user.
  • Command to find directory in directory[/var/log/mogdb/omm]
  • Command to find file in directory[/var/log/mogdb/omm]
  • Command to change the obs log setting.
  • Checking directory [/mogdb/mogdb/tools/omm_mppdb].
  • Checking database node configuration.
  • Checking directory [/mogdb/data/db1].
  • Checked the configuration file on node[mogdb-001] successfully.

5 initDbNode

  • Get the install path /mogdb/mogdb/app_01071903 user info.
  • Initializing instance.
  • Command for initializing database node instance: /mogdb/mogdb/app/bin/gs_initdb --locale=C -D /mogdb/data/db1 --nodename=dn_6001 --locale=en_US.UTF-8 --encoding=UTF-8 -C /mogdb/mogdb/app/bin
  • Successfully init instance information.

6 ConfigInstance

  • Get the install path /mogdb/mogdb/app_01071903 user info
  • Checking parameters for configuration database node.
  • Modifying Alarm configuration.
  • Modifying database node configuration.
  • Check if tmp_guc file exists.
  • set dynamic guc parameters for database node instances.

7 ConfigHba

  • Get the install path /mogdb/mogdb/app_01071903 user info.
  • Successfully configured all instances on node[mogdb-001].

8 Install

  • Get the install path /mogdb/mogdb/app_01071903 user info.
  • start cmd = /mogdb/mogdb/app/bin/gs_ctl start -D /mogdb/data/db1 -t 300
  • gs_ctl started,datadir is /mogdb/data/db1

9 gs_ctl

  • [gs_ctl]: waiting for server to start…

  • 0 LOG: [Alarm Module]can not read GAUSS_WARNING_TYPE env.

  • 0 LOG: [Alarm Module]Host Name: mogdb-001

  • 0 LOG: [Alarm Module]Host IP: 172.24.17.217

  • 0 LOG: [Alarm Module]Cluster Name: dbCluster

  • 0 LOG: bbox_dump_path is set to /mogdb/mogdb/corefile/

  • 2022-02-06 16:18:50.103 61ff846a.1 [unknown] 140112815449664 [unknown] 0
    dn_6001 DB010 0 [REDO] LOG: Recovery parallelism, cpu count = 2, max = 4,
    actual = 2

  • 2022-02-06 16:18:50.103 61ff846a.1 [unknown] 140112815449664 [unknown] 0
    dn_6001 DB010 0 [REDO] LOG: ConfigRecoveryParallelism,
    true_max_recovery_parallelism:4, max_recovery_parallelism:4

  • gaussdb.state does not exist, and skipt setting since it is optional.2022-

  • 。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

  • 。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

  • [gs_ctl] done

  • [gs_ctl]: server started (/mogdb/data/db1)

最后修改时间:2022-02-06 17:34:44
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论