kudu集群高可用搭建
首先咱得有KUDU安装包
这里就不提供直接下载地址了(因为有5G,我 的服务器网卡只有4M,你们下的很慢)
这里使用的是CDH版本
官方下载地址http://archive.cloudera.com/cdh5/
我这里有3个节点node01,node02,node03。这里上传到node03中
这里与imapa做整合了,绿色的为整合部分可以不看
首先上传到/export/data/ 下(没有的同学请创建mkdir /export/data)
到此目录下
cd /export/data
解压在当前目录
tar -zxvf cdh5.14.0-centos6.tar.gz
制作本地yum源(方便duku自己去寻找)
yum -y install httpd
安装完成
启动
service httpd start
进入
cd /etc/yum.repos.d
该安装目录下,并且打开localimp.repo
vim localimp.repo
修改为
创建apache httpd的读取连接
ln -s /export/data/cdh/5.14.0 /var/www/html/5.14fuckKudu(配置外网访问路径)
去var/www/html查看
cd /var/www/html ll
访问http://node03/5.14fuckKudu
解释:ln -s 建立软连接,想当于5.14.0与后面的fuckKudu关联
localimp中的url会寻找/var/www/html下是否哟fuckKudu,寻找到及可以访问,不配置也能访问5.14fuckKudu,这个和impala右关
如果var/www/html不写路径,默认取5.14.0(磁盘被映射文件名)
impala分发到其它节点node02,node03
cd /etc/yum.repos.d/
scp localimp.repo node02:$PWD
scp localimp.repo node01:$PWD
3个节点安装kudu
yum install -y kudu kudu-master kudu-tserver kudu-client0 kudu-client-devel
成功
配置(修改3台)
进入/etc/kudu/conf
cd /etc/kudu/conf
master日志
vim /etc/default/kudu-master
修改成自己的节点映射或ip(这里是节点映射)
修改master
vim /etc/kudu/conf/master.gflagfile
添加
--fromenv=rpc_bind_addresses
--fromenv=log_dir
--fs_wal_dir=/export/servers/kudu/master
--fs_data_dirs=/export/servers/kudu/master
--master_addresses=node:7051,node02:7051,node03:7051
每台都要改(改成当前节点的)
tserver日志
修改rpc地址为自己的节点
vim /etc/default/kudu-tserver
修改tserver
vim /etc/kudu/conf/tserver.gflagfile
去掉默认的
添加
--fromenv=rpc_bind_addresses
--fromenv=log_dir
--fs_wal_dir=/export/servers/kudu/tserver
--fs_data_dirs=/export/servers/kudu/tserver
--tserver_master_addrs=node01:7051,node02:7051,node03:7051
因为没有这个dir文件夹,所以需要创建
在三台节点上创建
mkdir -p /export/servers/kudu/tserver
mkdir -p /export/servers/kudu/master
kudu的默认权限是kudu用户组。所以需要改变权限为kudu
chown -R kudu:kudu kudu/
kudu非常依赖时间同步,为了确保万一,进行时间同步
/etc/init.d/ntpd restart
启动测试
sudo service kudu-master start
失败,去日志查看
vim /var/log/kudu/此日志文件名
发现master配置疑似多个了空格
vim /etc/kudu/conf/master.gflagfile
删除空格
重新测试sudo service kudu-master start
还是FAILED
查看日志
发现是更改kudu后,但是没有加-R,所以文件夹的内部文件夹还是root
重写chown -R kudu:kudu kudu/
重新测试
发现还是失败,查看日志,不一样了,说明之前的问题解决了,这是个新问题
妈的,端口无效,我居然写了个::端口
修改vim /etc/default/kudu-master
重新测试sudo service kudu-master start
查看日志
原因是我的node01时间不一致,时间修改不了,我去问问那些10年工作经验的大神们.
十年开发经验的大神改了允许默认修改,并且映射了其它机器的时间,现在在来重试一下
启动
service kudu-master start
失败,所有节点全部先启动service ntpd start
然后在启动kudu-master start 成功
启动sudo service kudu-tserver start
需要启动3台节点
访问页面
kudu很不稳定,容易掉(依赖ntpd),开发建议不用,优点高可用,OPAL计算,天生和imapa结合。