m6米乐安卓版下载-米乐app官网下载
暂无图片
3

进阶版:centos7.9 安装 vertica 11 社区版 3 节点集群(详细教程) -m6米乐安卓版下载

原创 lucifer三思而后行 2021-12-12
5959

在初体验 vertica 单机版之后,自然要体验一下集群版的,毕竟这才是使用最广泛的安装方式!

更多关于 vertica 可以参考下方文章:

🏆 作者写的 《vertica 技术文章合集》,欢迎阅读 👏🏻!

关于 vertica 的安装过程和注意点,在上一篇单机版中已经详细介绍过了,重复的部分我就不再过多赘述。

由于社区版最多只支持 3 节点集群和 1tb 数据量,因此只能演示 3 节点集群安装啦!

废话不多说,直接开装!

1、环境信息

大家手动创建 3 台一模一样的 centos7.9 主机即可,注意主机名和网络配置区分。

节点 主机版本 vertica 版本 主机名 ip 地址 内存 swap 磁盘容量
1节点 centos7.9 11.0.1 vertica1 192.168.56.150 4g 2g 50g
2节点 centos7.9 11.0.1 vertica2 192.168.56.151 4g 2g 50g
3节点 centos7.9 11.0.1 vertica3 192.168.56.152 4g 2g 50g

📢 注意: vertica 集群部分主次节点,每一个都可以作为主节点!

2、脚本介绍

👻 我作为一个懒人,就直接使用 vagrant 一键安装 3 台主机了 罒ω罒,需要源码的可以这里直接下载

🏅 后面我会出 vertica 单节点和3节点集群的 vagrant 一键安装脚本,到时候再公布完整脚本源码!

展示一下源码目录结构和 config/vagrant.yml

tree -n cat config/vagrant.yml

再分享一下环境一键配置脚本 env.sh

#!/bin/bash ##configure linux environment for opengauss echo vertica | passwd --stdin root sed -i 's/passwordauthentication no/passwordauthentication yes/g' /etc/ssh/sshd_config ## 1.disable firewalld service systemctl mask firewalld.service systemctl disable firewalld.service systemctl stop firewalld.service echo "firewalld " `systemctl status firewalld|grep active` echo "1.disable firewalld service completed." echo -e "\n" ## 2.disable selinux sed -i 's/selinux=enforcing/selinux=disabled/g' /etc/selinux/config setenforce 0 getenforce cat /etc/selinux/config|grep "selinux=disabled" echo "2.disable selinux completed." echo -e "\n" ## 3.检查 pts 是否挂载 df -th /dev/pts echo "3.check pts completed." echo -e "\n" ## 4.创建用户和组 groupadd -g 1001 verticadba useradd -u 1001 -g verticadba dbadmin echo "dbadmin" | passwd dbadmin --stdin id dbadmin echo "4.create group and user completed." echo -e "\n" ## 5.配置 disk readahead lsblk /sbin/blockdev --setra 8192 /dev/sda echo '/sbin/blockdev --setra 8192 /dev/sda' >> /etc/rc.local chmod x /etc/rc.d/rc.local echo "5.set disk readahead completed." echo -e "\n" ## 6. configure yum and install packages yum install -y gdb mcelog sysstat openssh which dialog chrony expect rpm -q gdb mcelog sysstat openssh which dialog chrony expect echo "6.configure yum and install packages completed." echo -e "\n" ## 7.配置透明大页 ## 默认为 always cat /sys/kernel/mm/transparent_hugepage/enabled ## 如果不是 always,通过以下命令设置 echo always > /sys/kernel/mm/transparent_hugepage/enabled ## 设置开机自启动设置 always cat<<eof>>/etc/rc.local if test -f /sys/kernel/mm/transparent_hugepage/enabled; then echo always > /sys/kernel/mm/transparent_hugepage/enabled fi eof ## redhat7 或 centos7 需要设置可执行权限 chmod x /etc/rc.d/rc.local echo "7.enable transparent_hugepage completed." echo -e "\n" ## 8.配置 i/o scheduler cat /sys/block/sda/queue/scheduler echo deadline > /sys/block/sda/queue/scheduler ## 加入开机自启 echo 'echo deadline > /sys/block/sda/queue/scheduler' >> /etc/rc.local chmod x /etc/rc.d/rc.local echo "8.set i/o scheduler completed." echo -e "\n" ## 9.配置 tz(timezone) yum update -y tzdata timedatectl set-timezone asia/shanghai echo "9.set tz completed." echo -e "\n" ## 10.配置环境变量 cat<<eof>>/home/dbadmin/.bash_profile export tz="asia/shanghai" export lang=en_us.utf-8 eof echo "10.set profile completed." echo -e "\n" ## 11.关闭 tuned systemctl stop tuned.service systemctl disable tuned.service systemctl status tuned.service echo "11.disable tuned completed." echo -e "\n" ## 12.配置 swapiness cat /proc/sys/vm/swappiness echo 0 > /proc/sys/vm/swappiness echo vm.swappiness=0 >>/etc/sysctl.conf sysctl -p echo "12.disable swappiness completed." echo -e "\n" ## 13.禁用 defrag(碎片整理) cat /sys/kernel/mm/transparent_hugepage/defrag echo never > /sys/kernel/mm/transparent_hugepage/defrag cat<<eof>>/etc/rc.local if test -f /sys/kernel/mm/transparent_hugepage/enabled; then echo never > /sys/kernel/mm/transparent_hugepage/defrag fi eof chmod x /etc/rc.d/rc.local echo "13.disable defrag completed." echo -e "\n" ## 14.配置 limits.conf cat<<eof>>/etc/security/limits.conf dbadmin - nice 0 dbadmin - nofile 65536 dbadmin - as unlimited dbadmin - fsize unlimited dbadmin - nproc 30152 eof echo "14.set limits completed." echo -e "\n" ## 15.配置 pam.d cat<<eof>>/etc/pam.d/su session required pam_limits.so eof echo "15.set pam.d completed." echo -e "\n" ## 16.配置 sysctl.conf cat<<eof>>/etc/sysctl.conf fs.file-max=65536 vm.min_free_kbytes=7980 kernel.pid_max=524288 vm.max_map_count=65536 eof sysctl -p echo "16.set sysctl completed." echo -e "\n" ## 17. configure ssh service sed -i '/banner/s/^/#/' /etc/ssh/sshd_config sed -i '/permitrootlogin/s/^/#/' /etc/ssh/sshd_config echo -e "\n" >> /etc/ssh/sshd_config echo "banner none " >> /etc/ssh/sshd_config echo "permitrootlogin yes" >> /etc/ssh/sshd_config cat /etc/ssh/sshd_config |grep -v ^#|grep -e 'permitroot|banner' echo "17.configure ssh service completed." echo -e "\n" ## 18.开启 chrony systemctl status chronyd systemctl enable chronyd chronyc tracking echo "18.enable chrony completed." echo -e "\n"

📢 注意: vagrant 安装包含 3 台主机和环境的配置,环境配置的脚本都写在 env.sh 中了,这里篇幅过长不过多展示!

3、环境安装配置

开始安装:

vagrant up

短暂等待几分钟之后,3 台主机就创建好了,并且环境配置都已经配置好了!

使用下面命令连接到 3 个节点检查一下环境配置情况:

vagrant ssh node1 vagrant ssh node2 vagrant ssh node3

3 台主机的 root 用户密码均为 verticadbadmin用户的密码为 dbadmin

环境检查脚本:

## 1.主机名 hostname ## 2.防火墙检查 systemctl status firewalld ## 3.selinux 检查 getenforce ## 4.rpm检查 rpm -q gdb mcelog sysstat openssh which dialog chrony ## 5.pts检查 df -th /dev/pts ## 6.用户和组检查 id dbadmin ## 7.disk readahead检查 /sbin/blockdev --getra /dev/sda ## 8.chrony检查 systemctl status chronyd ## 9.透明大页检查 cat /sys/kernel/mm/transparent_hugepage/enabled ## 10.i/o scheduler检查 cat /sys/block/sda/queue/scheduler ## 11.tz和lang检查 cat /home/dbadmin/.bash_profile ## 12.tuned检查 systemctl status tuned.service ## 13.检查swapiness cat /proc/sys/vm/swappiness ## 14.defrag检查 cat /sys/kernel/mm/transparent_hugepage/defrag ## 15.limits.conf检查 cat /etc/security/limits.conf ## 16.pam.d检查 cat /etc/pam.d/su ## 17.sysctl检查 sysctl -p

检查每一项都没问题之后就可以继续下一步了!

4、配置互信

分享一个一键配置互信的脚本:《linux 多台主机配置 ssh 互信脚本》

上传互信脚本后,执行互信:

## 前提是先安装 expect yum install -y expect cd /soft chmod x sshtrust.sh ## 填写需要互信的ip地址 cat<<eof>sshhostlist.cfg 192.168.56.150 192.168.56.151 192.168.56.152 eof ## 执行互信 sh sshtrust.sh root vertica /soft/sshhostlist.cfg ## 测试互信

互信配置完毕!

‼️ 正式开始安装前,强烈建议重启三台主机!💥

1、rpm 安装

安装介质已经上传到节点一的 /soft 目录下,在节点一执行 rpm 安装:

cd /soft rpm -ivh vertica-11.0.1-2.x86_64.rhel6.rpm

📢 注意: 这里 rpm 只需要在节点一执行即可,执行脚本安装时会拷贝到其他节点!

2、脚本静默安装

使用 /opt/vertica/sbin/install_vertica 脚本来静默安装!

1、创建静默安装配置文件

/opt/vertica/sbin/install_vertica --record-config /tmp/vertica-inst.prp --hosts 192.168.56.150,192.168.56.151,192.168.56.152 --accept-eula --ssh-password vertica --dba-user-password dbadmin --rpm /soft/vertica-11.0.1-2.x86_64.rhel6.rpm

2、查看配置文件

cat /tmp/vertica-inst.prp

确认信息没有错误后,开始安装!

3、开始静默安装

/opt/vertica/sbin/install_vertica --config-file /tmp/vertica-inst.prp

如图,先给其他节点安装 rpm 包:

继续等待几分钟时间,安装完成:

软件安装完成后,下面就可以开始创建数据库!

3、mc 创建集群

当然也可以使用 mc 创建集群,参考如下步骤!
1、填写关键信息 集群名密码

2、获取私钥文件

需要私钥文件才能完成 mc 集群安装向导,由于已经互信过,直接获取私钥:

cd /root/.ssh ls

将私钥 id_rsa 拷贝至打开 mc 的主机上!

3、选择私钥,继续创建

4、选择 vertca rpm 包

参考文章:《vertica 安装配置 mc(管理控制台)》 安装 mc 控制台!

1、导入集群

由于已经创建集群,这边可以直接导入集群,如果没有没有创建集群,也可以使用 mc 创建集群!

1、输入节点1的 ip 地址 192.168.56.150

2、获取节点1的 api key

cat /opt/vertica/config/apikeys.dat

3、填写 api key

4、确认导入

5、查看集群状态

至此,集群已经成功导入!

2、创建数据库

选择创建数据库:

选择企业模式:

数据库名 lucifer,密码为空:

确认信息没问题,开始创建:

等待创建结束即可,可能会报一个 license 相关的错误。

点击导入数据库 lucifer,然后查看:

总体来说,创建过程没有 admintools 创建来的顺滑,也算是一个尝鲜吧!

社区版 3 节点的集群,安装起来也不费劲,跟单机版其实差别不是很大,上手不难!至于关于如何管理集群和数据库,咱们后续文章再讲吧~

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

评论

网站地图