Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

 

一、概览和检查清单


关键要点

  • 每个集群只能有一个运行中的数据库
  • 支持安装在1、2或更多节点上
  • 一个机器上只能运行一个实例
  • 在运行install_vertica脚本、添加、更新或删除节点时,必须使用root或具有sudo权限

安装场景

  • 单节点
  • 本地集群
  • 虚拟机(本地/云)

安装准备

  • 配置硬件、安装Linux
  • 配置网络

安装或升级

  • 备份
  • 下载、安装Vertica RPM包
  • 运行install_vertica脚本
  • (可选)创建静默安装配置文件

安装后任务

  • 安装许可
  • 验证kernel、用户参数配置正确
  • 在非集群主机上安装vsql客户端应用
  • 扩展配置期间,解决SLES 11.3问题
  • 熟悉Vertica文档
  • 安装客户端驱动
  • 使用Vertica软件包扩展安装
  • 安装或升级MC (Management Console)


二、Linux用户和权限


可以选择让安装脚本创建如下用户和组:
dbadmin - 超管账号
verticadba - DBA用户组

  • 安装前
    • 集群节点的配置保持相似,包括硬件、操作系统等
    • Vertica不能与其他软件共置。从群集主机中删除或禁用所有不必要的应用程序
  • 安装时
    • 配置dbadmin用户在集群间的免密认证。
    • 将dbadmin的shell设置为bash
    • 为如下目录设定读、写、可执行权限
      /opt/vertica/*
      /home/dbadmin  (数据库data和catlog的默认目录,可以通过安装脚本配置)
  • 安装后
    • 启动Vertica不需要root或sudo权限
    • dbadmin可以执行创建数据库、安装/更改许可、安装驱动等等任务
    • 只有dbadmin用户可以运行Administration tools

...

  • 所需平台及建议
    • RHEL 系列  6.x 、 7.x 
    • 必须使用bash
    • 需要有sudo命令
    • 安装硬件供应商提供的最新驱动
  • 准备硬盘存储
    • K对于设置K-safe=1的数据库,其主机硬盘使用率建议不能超过60%
    • 建议将临时空间与数据空间区分 , 临时空间用于hash join、排序等等
  • 配置网络
    • 内部通信网络
    • 外部访问网络
  • 操作系统配置
    • 安装perl 5 
    • 支持LVM
    • TZ 环境变量
      • 更新tzdata包  yum update -y tzdata
      • 设置默认时区  设置用户的(安装时可指定用户名,默认是dbadmin)默认时区   export  TZ="'Asia/shanghai"Shanghai'; export TZ   (tzselect命令选择时区)
    • LANG环境变量
      • export
      • LANG=en_US.
      UTF8
      • UTF-8
    • 包依赖
        openssh / which / dialog 支持的文件系统
        • yum install -y openssh   which   dialog 
      • 文件系统
        • ext3/ext4
        • NFS for backup
        • Amazon S3 for Eon mode
      • swap  >= 2G swap
      • 每个逻辑cpu至少对应1G内存
      • 4k

        block

        block    
        # blockdev --getbsz /dev/sda2

      • 安装程序自动设置一些参数
        • Nice Limits / min_free_kbytes / User open file limit / System open File limit / pam Limits / Address Space limit / File size limit / User process limit / maximum Memory Maps
      • 手动设置
        • Disk Readhead    2048 < n < 8192

          /sbin/blockdev

          --setra

          2048

          /dev/sda

          echo

          '/sbin/blockdev

          --setra

          2048

          /dev/sda'

          >>

          /etc/rc.local

        • NTP services , 必须启用并运行(除RHEL 7系,RHEL7系列需要启用并运行chrony)

          /sbin/service

        • ntpd

        • restart

        • /sbin/chkconfig

        • ntpd

        • on

          systemctl

        • enable

        • chronyd

        • (for

        • RHEL

        • 7)

        • 禁用SElinux
          vim /etc/selinux/config
    • 建议禁用CPU
        • 建议禁用CPU Frequency Scaling
          BIOS设置 how?
        • swappiness设置
          echo
        • 1
        • >
        • /proc/sys/vm/swappiness
        • Transparent Hugepages , 对于 RHEL 7系和Amazon Linux 2.0 , 必须将此参数设为always , 其他系统必须被禁用或设置为madvise或disabled

          echo

        • never

        • >

        • /sys/kernel/mm/

    • redhat_
        • transparent_hugepage/enabled

          echo 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' >> /etc/rc.local

        • 禁用defrag

          echo never > /sys/kernel/mm/transparent_hugepage/defrag

          vim /etc/rc.local

          if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
              echo never > /sys/kernel/mm/
    • redhat_
        • transparent_hugepage/defrag
          fi
        • I/O scheduler 必须被设置为deadline或noop

          echo

        • deadline

        • >

        • /sys/block/sda/queue/scheduler

          echo

        • 'echo

        • deadline

        • >

        • /sys/block/sda/queue/scheduler'

        • >>

        • /etc/rc.local

        • cat

        • /sys/block/sda/queue/scheduler

        • noop

        • [deadline]

        • cfq

          {   [mq-deadline] kyber bfq none  (redhat-8) }

        • 禁用tuning系统服务
          chkconfig
        • tuned
        • off
        • 其他支持工具 
          pstack
        • /
        • mcelog
        • /sysstat
        • (for
        • RHEL
        • 6
        • )
          gdb
        • /
        • mcelog
        • /sysstat
        • (for
        • RHEL
        • 7
        • )
      • 所需端口

    • Section
      • Port

        Protocol

        Service

        Notes

        22

        TCP

        sshd

        Required

    • by 
    •  and the Management Console Cluster Installation wizard
    • Vertica client
      • Vertica client (vsql, ODBC, JDBC, etc) port.

        5434

        TCP

        Vertica

        Intra- and inter-cluster communication.

    •  Vertica opens the Vertica client
      •  Vertica opens the Vertica client port +1 (5434 by default) for intra-cluster communication, such as during a plan. If the port +1 from the default client port is not available,

    • then Vertica opens
      • then Vertica opens a random port for intra-cluster communication.

        5433

        UDP

        Vertica

    • Vertica spread
      • Vertica spread monitoring.

        5444

        TCP

        Vertica


      • Management Console

        MC-to-node and node-to-node (agent) communications port.

    • See 

      • Management Console

        Port used to connect to MC from a web browser and allows communication from nodes to the MC application/web server.

    • See Connecting to Management
      • See Connecting to Management Console.

        4803

        TCP

        Spread

        Client connections.

        4803

        UDP

        Spread

        Daemon to daemon connections.

        4804

        UDP

        Spread

        Daemon to daemon connections.

        6543

        UDP

        Spread

        Monitor to daemon connection.

    四、安装

    ...


      • firewall-cmd --add-port=5433/tcp --permanent
        firewall-cmd --add-port=5434/tcp --permanent
        firewall-cmd --add-port=5433/udp --permanent
        firewall-cmd --add-port=5444/tcp --permanent
        firewall-cmd --add-port=5450/tcp --permanent
        firewall-cmd --add-port=4803/tcp --permanent
        firewall-cmd --add-port=4803/udp --permanent
        firewall-cmd --add-port=4804/udp --permanent
        firewall-cmd --add-port=6543/udp --permanent
        firewall-cmd --reload
        --以上开放端口,在安装时仍会报warn ( Threshold = WARN 时)
         
         
        systemctl stop firewalld
        systemctl disable firewalld


    四、安装

    1. 社区版至多支持三个节点,1TB数据。下载后上传至Administrator HOST
    2. 在Administrator Host 上执行安装命令 rpm -Uvh vertica-10.0.0-0.x86_64.RHEL6.rpm
    3. 在Administrator Host 上执行集群安装命令

      /opt/vertica/sbin/install_vertica

    ...

    1. --hosts

    ...

    1. vertica1,vertica2,

    ...

    1. vertica3  --rpm

    ...

    1. /tmp/vertica-10.0.0-0.x86_64.RHEL6.rpm

    ...

    1. --data-dir

    ...

    1. /vdata