- 二、安装实践
- 新人第一次安装有一个偷懒(了解安装流程)的方法,在/etc/hosts中添加主机节点之后,直接执行18,19步骤,根据系统报错提示,一一去官网查找报错信息,根据报错信息,一一修改配置,在这个过程中,可以增加对vertica安装与部署流程的理解。
1. 创建管理账户vdbadmin(系统会默认创建一个,若不清楚操作,尽量不手动配)
useradd vdbadmin –u 123
passwd vdbadmin
2. 添加ip,修改主机名
vi /etc/hosts (修改或添加) 127.0.0.1 verticaServer (本地单节点部署模式)
也可添加:
192.168.1.12 host1
192.168.1.13 host2 (物理集群部署模式)
192.168.1.14 host3
3. 查看iptables、防火墙并关闭
service iptables status service iptables save service iptables off service ip6tables status service ip6tables save service ip6tables off
4.关闭Selinux
vi /etc/selinux/config 将SELINUX=enforcing 改为 SELINUX=disabled setenforce 0
5.检查端口
cat /etc/services |grep 5433
6.检测python和rsync
which python
7.检测rsync
which rsync
8.检测/dev/pts有无被加载
ls /dev |grep pts
9.安装依赖包
在安装之前检查系统是否已经安装好相应依赖,用rpm qa查看,如:Rpm –qa |grep 包名 需安装的依赖包如下: yum -y install pstack mcelog sysstat ntp (1) pstack 只要安装gdb就可,pstack包含在该包 yum install gdb 用 which pstack查看 (2) 安装mcelog
可以yum安装,也可以源码安装; 下载mcelog 包: git clone git://git.kernel.org/pub/scm/utils/cpu/mce/mcelog.git /home/vertica/mcelog 进入mcelog目录:先make再make install (3) 安装sysstat 可以yum安装,也可以源码安装,源码安装如下: 下载安装包并解压到指定路径; tar –zxvf sysstat-11.7.4.tar.gz -C /vol6/home/wusong/Vertica/sysstat/ 进入路径,执行./configure –-prefix= /vol6/home/wusong/Vertica/sysstat/,生成可执行文件,make make install编译安装文件 (4) 安装ntp 首先查看是否已安装;service ntpd status 若无,yum安装 重启该服务:/bin/systemctl restart ntpd.service chkconfig –level 3 5 tpd on
10.修改swappiness取值(未成功显示S0112错误)
编辑配置文件:/etc/sysctl.conf 添加: vm.swappiness = 1 检测是否成功:cat /proc/sys/vm/swappiness 若未成功,root命令行输入:echo 1 > /proc/sys/vm/swappiness
11.改变语言环境(对于集群配置,所有节点上都必须设置)
编辑配置文件:/etc/profile 添加:export LANG =”en_US.UTF-8” 利用source /etc/profile使其生效
12. 修改TZ环境设置(未做会产生S0305错误)(对于集群配置,每个节点都需要修改配置)
更新:yum update tzdata 编辑配置文件:/etc/profile 增加:export TZ=”Asia/Shanghai PRC” 利用source /etc/profile使其生效
13.配置Pam
所有系统手动配置,在/etc/pam.d/su文件中,添加如下语句, session required pam_limits.so
14.修改I/O scheduler(将Vertica存放数据的磁盘的schedulers设置为deadline)
https://my.vertica.com/docs/9.1.x/HTML/index.htm#Authoring/InstallationGuide/BeforeYouInstall/IOScheduling.htm?Highlight=cat%20%2Fsys%2Fblock%2Fsda%2Fqueue 查看当前调度策略: # cat /sys/block/sda/queue/scheduler 显示:noop deadline [cfq],表明当前调度方式为cfq
修改: # echo deadline > /sys/block/sda/queue/scheduler 再次查看: noop [deadline] cfq,表明修改成功。
15. 修改readahead磁盘参数
Linux内核的文件预读readahead:指Linux系统内核将指定文件的某 区域预读进页缓存起来,便于接下来对该区域进行读取时,不会因缺页(page fault)而阻塞。因为从内存读取比从磁盘读取要快很多。预读可以有效的减少磁盘的寻道次数和应用程序的I/O等待时间,是改进磁盘读I/O性能的重要 优化手段之一。
Vertica需根据硬件情况,将readahead参数设置在2048~8192之间。
修改/etc/rc.local文件,新增如下语句: /sbin/blockdev --setra 2048 /dev/sda echo '/sbin/blockdev --setra 2048 /dev/sda' >> /etc/rc.local
/* If you are using Red Hat 7.0 or CentOS 7.0 or higher, run the following command as root or sudo: $ chmod +x /etc/rc.d/rc.local */
16. Transparent hugepages
Centos7 、redhat7和Amazon2.0必须将该功能设置为always;
其他操作系统设置为关闭该功能或者设置为madvise或never。
对于centos7、Redhat7 和Amazon2.0,操作如下:
(1) 检测是否开启 Cat /sys/kernel/mm/transparent_hugepage/enabled (2) 修改/etc/rc.local文件 新增:if test -f /sys/kernel/mm/transparent_hugepage/enabled; then echo always > /sys/kernel/mm/transparent_hugepage/enabled fi (3) 立即生效,需重启,或执行以下命令 echo always > /sys/kernel/mm/transparent_hugepage/enabled 其他操作系统设置为never,方法有两种: (1)修改/etc/grub.conf vi /etc/grub.conf 添加:transparent_hugepage=never 使其立即生效:echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled (2) 编辑/etc/rc.local文件 新增:if test -f /sys/kernel/mm/transparent_hugepage/enabled; then echo never > /sys/kernel/mm/transparent_hugepage/enabled fi 若系统无/etc/rc.local文件,如SUSU系统,编辑/etc/init.d/after.local文件
17.对于集群配置,需新增ntp配置(集群配置,本地单节点模式不需配置)
Ntp必须在所有节点上都启动,保证所有节点的时间同步。
(1) 首先确认ntp是否开启; chkconfig --list ntpd (2) 然后,开启ntpd /sbin/service ntpd restart /sbin/chkconfig ntpd on (3) 验证ntp正确运行 对于centos与redhat系统: 输入:/usr/sbin/ntpq -c rv | grep stratum 结果显示stratum=16,表明NTP is not synchronizing correctly.配置完所有节点后,等待片刻,再查看ntp是否配置成功18。
18 . rpm –ivh /home/vertica/vertica-9.1.9-0.x86_64.RHEL6.rpm
显示需要dialog依赖包,可以用yum安装依赖包,也可以用源码安装。若是集群安装,则每个节点上都需要安装。
19. 脚本安装
(1)localhost安装,输入如下: /opt/vertica/sbin/install_vertica -s verticaServer --rpm /home/vdbadmin/vertica-8.1.1-16.x86_64.RHEL6.rpm --dba-user vdbadmin (2)多节点安装,输入如下: /opt/vertica/sbin/install_vertica -s nn0,dn3,dn4,dn5 --rpm /home/vdbadmin/vertica-8.1.1-16.x86_64.RHEL6.rpm --dba-user vdbadmin (nn0,dn3,dn4,dn5分别代表主节点和其他节点ip) 可以在最后添加--failure-threshold FAIL ,跳过错误提示。
20.错误集锦
(1) dbadmin user's group('verticadba') does not own its home directory(/home/vdbadmin ) chgrp –R verticadba /home/vdbadmin (2) 显示“用户不属于组成员,S0220错误” 用usermod –a –G verticadba vdbamin (3)用户组不属于默认verticadba,S0231错误: 因为不属于vertica指定group,用usermod –g verticadba vdadmin解决