Kudu——安装流程

1、节点规划

节点kudu-masterkudu-server
node1
node2
node3

2、本地yum源配置

2.1、cdh包下载

下载地址

2.2、上传解压

把 5 个 G 的压缩文件上传其中某一台服务器,作为本地 yum源服务器。

cd /cloudera_data
tar -zxvf cdh5.14.0-centos6.tar.gz

2.3、制作本地 yum

使用 Apache Server来充当 web 服务器,使得其他机器可以通过 http方式读取本地制作的 yum源软件。这里我们选用第三台机器(node-3)作为 yum源。执行以下命令安装 apache Server

yum -y install httpd
service httpd start

然后创建新增一个解析本地 yum源的配置文件:

cd /etc/yum.repos.d
vim localimp.repo
    [localimp]
    name=localimp
    baseurl=http://node-3/cdh5.14.0
    gpgcheck=0
    enabled=1

2.4、创建连接、启动 httpd

ln -s /export/servers/cdh/5.14.0 /var/www/html/cdh5.14.0

访问 http://node-3/cdh5.14.0 验证是否成功。

问题:如果出现访问异常:You don't have permission to access /cdh5.14.0/on this server,则需要关闭 Selinux 服务
  • 临时关闭:执行命令:setenforce 0

  • 永久关闭

vim /etc/sysconfig/selinux
SELINUX=enforcing 改为 SELINUX=disabled

# 重启服务 reboot
# 将 node-3 上制作好的 localimp 配置文件发放到所有需要 kudu 的节点上去
scp /etc/yum.repos.d/localimp.repo node-1:/etc/yum.repos.d
scp /etc/yum.repos.d/localimp.repo node-2:/etc/yum.repos.d

3、安装Kudu

使用 yum 命令,在不同的服务器下载对应的服务。

服务器安装命令
node-1yum install -y kudu kudu-master kudu-tserver kudu-client0 kudu-client-devel
node-2yum install -y kudu kudu-master kudu-tserver kudu-client0 kudu-client-devel
node-3yum install -y kudu kudu-master kudu-tserver kudu-client0 kudu-client-devel
# Kudu 的基本包
yum install kudu 
# KuduMaster
yum install kudu-master 
# KuduTserver
yum install kudu-tserver 
#Kudu C ++客户端共享库
yum install kudu-client0 
# Kudu C ++客户端共享库 SDK
yum install kudu-client-devel 

4、Kudu节点配置

安装完成之后。 需要在所有节点的/etc/kudu/conf 目录下有两个文件:master.gflagfiletserver.gflagfile

4.1、修改 master.gflagfile

# cat /etc/kudu/conf/master.gflagfile
# Do not modify these two lines. If you wish to change these variables,
# modify them in /etc/default/kudu-master.
--fromenv=rpc_bind_addresses
--fromenv=log_dir
--fs_wal_dir=/export/servers/kudu/master
--fs_data_dirs=/export/servers/kudu/master
--master_addresses=node-1:7051,node-2:7051,node-3:7051

4.2、修改 tserver.gflagfile

# Do not modify these two lines. If you wish to change these variables,
# modify them in /etc/default/kudu-tserver.
--fromenv=rpc_bind_addresses
--fromenv=log_dir
--fs_wal_dir=/export/servers/kudu/tserver
--fs_data_dirs=/export/servers/kudu/tserver
--tserver_master_addrs=node-1:7051,node-2:7051,node-3:7051

4.3、 修改/etc/default/kudu-master

export FLAGS_log_dir=/var/log/kudu
#每台机器的 master 地址要与主机名一致,这里是在 node-1 上
export FLAGS_rpc_bind_addresses=node-1:7051

4.4、修改 /etc/default/kudu-tserver

export FLAGS_log_dir=/var/log/kudu
#每台机器的 tserver 地址要与主机名一致,这里是在 node-1 上
export FLAGS_rpc_bind_addresses=node-1:7050

Kudu 默认用户就是 Kudu,所以需要将/export/servers/kudu 权限修改成Kudu

mkdir /export/servers/kudu
chown -R kudu:kudu /export/servers/kudu

(如果使用的是普通的用户,那么最好配置 sudo 权限)/etc/sudoers 文件中添加:

在这里插入图片描述

5、Kudu 集群启动和关闭

5.1、安装ntp服务

# 启动的时候要注意时间同步 安装 ntp 服务
yum -y install ntp
# 设置开机启动
service ntpd start
chkconfig ntpd on
# 可以在每台服务器执行
/etc/init.d/ntpd restart

5.2、启动 Kudu 集群

在每台服务器上都执行下面脚本

service kudu-master start
service kudu-tserver start

如果启动失败,请前往日志目录下查看输出日志信息进行排错。

在这里插入图片描述

5.3、关闭 Kudu 集群

在每台服务器上都执行下面脚本

service kudu-master stop
service kudu-tserver stop

6、Kudu web UI

Kuduweb 管理界面。 http://master 主机名:8051

在这里插入图片描述

6.1、Masterweb 地址

web

6.2、TServerweb地址

http://node1:8051/tablet-servers

在这里插入图片描述

7、安装注意事项

7.1、给普通用户授权sudo出错

# 问题
sudo: /etc/sudoers is world writable

# 解决方式:
pkexec chmod 555 /etc/sudoers

7.2、启动Kudu的时候报错


:<<LongComment
blockFailed to start Kudu Master Server. Return value: 1 [FAILED]
去日志文件中查看:
Service unavailable: Cannot initialize clock: Error reading clock. Clock considered
unsynchronized
LongComment

# 解决:
   ## 第一步:首先检查是否有安装 ntp:如果没有安装则使用以下命令安装:
yum -y install ntp
   ## 第二步:设置随机启动:
service ntpd start
chkconfig ntpd on

7.3、启动过程中报错

:<<Long
Invalid argument: Unable to initialize catalog manager: Failed to initialize sys
tables 
async: on-disk master list
Long
# 解决:
(1):停掉 master 和 tserver
(2):删除掉之前所有的/export/servers/kudu/master/*和/export/servers/kudu/tserver/*

7.4、启动过程中报错

:<<Long
error: Could not create new FS layout: unable to create file system roots: unable to
write instance metadata: Call to mkstemp() failed on name template
/export/servers/kudu/master/instance.kudutmp.XXXXXX: Permission denied (error 13)
Long

这是因为 kudu 默认使用 kudu 权限进行执行,可能遇到文件夹的权限不一致情况,更改文件夹权限即可
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值