- 二、安装实践
- 新人第一次安装有一个偷懒(了解安装流程)的方法,在/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 statusservice iptables saveservice iptables offservice ip6tables statusservice ip6tables saveservice ip6tables off
4.关闭Selinux
vi /etc/selinux/config将SELINUX=enforcing 改为 SELINUX=disabledsetenforce 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.servicechkconfig –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/sdaecho '/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/enabledfi(3) 立即生效,需重启,或执行以下命令echo always > /sys/kernel/mm/transparent_hugepage/enabled其他操作系统设置为never,方法有两种:(1)修改/etc/grub.confvi /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/enabledfi若系统无/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解决