kudu安装部署

摘要:
安装部署节点规划节点kudu-masterkudu-tservernode01是是node02是是node03是是配置本地Yum的Repository下载kudu安装yum源。

安装部署节点规划

节点

kudu-master

kudu-tserver

node01

node02

node03

配置本地Yum的Repository

下载kudu安装yum源。并配置安装yum源

[root@hadoop03soft]# wget http://archive.cloudera.com/cdh5/repo-as-tarball/5.14.0/cdh5.14.0-centos6.tar.gz

解压yum源文件到指定目录

[root@hadoop03soft]# tar zxvf cdh5.14.0-centos6.tar.gz -C /usr/local/

镜像源是centos当中下载相关软件的地址,我们可以通过制作我们自己的镜像源指定我们去哪里下载kudu的rpm包,这里我们使用httpd这个软件来作为服务端,启动httpd的服务来作为我们镜像源的下载地址 这里我们选用第三台机器作为镜像源的服务端node3机器上执行以下命令:

[root@hadoop03soft]# yum install -y httpd

[root@hadoop03soft]# service httpd start

[root@hadoop03soft]# cd /etc/yum.repos.d

[root@hadoop03yum.repos.d]# vim localimp.repo

[localimp]

name=localimp

baseurl=http://node03/cdh5.14.0

gpgcheck=0

enabled=1

将node3上制作好的localimp配置文件发放到所有需要kudu的节点上去

[root@hadoop03yum.repos.d]# scp -r localimp.repo node01:$PWD

[root@hadoop03yum.repos.d]# scp -r localimp.repo node02:$PWD

创建apache httpd的读取连接

[root@hadoop03~]# ln -s /usr/local/cdh/5.14.0 /var/www/html/cdh5.14.0

页面访问本地yum源,出现这个界面表示本地yum源制作成功 访问http://node03/cdh5.14.0

kudu安装部署第1张

安装kudu

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

[root@hadoop01~]# yum install -y kudu kudu-master kudu-tserver kudu-client0 kudu-client-devel

[root@hadoop02~]# yum install -y kudu kudu-master kudu-tserver kudu-client0 kudu-client-devel

[root@hadoop03~]# yum install -y kudu kudu-master kudu-tserver kudu-client0 kudu-client-devel

命令说明:

yum install kudu # Kudu的基本包

yum install kudu-master # KuduMaster

yum install kudu-tserver # KuduTserver

yum install kudu-client0 #Kudu C ++客户端共享库

yum install kudu-client-devel # Kudu C ++客户端共享库SDK

配置master和tserver节点

[root@hadoop01kudu]# cd /etc/kudu/conf/

修改master.gflagfile

[root@hadoop01conf]# vim 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=node01:7051,node02:7051,node03:7051

修改tserver.gflagfile

[root@hadoop01conf]# vim 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=node01:7051,node02:7051,node03:7051

修改 /etc/default/kudu-master

[root@hadoop01conf]# vim /etc/default/kudu-master

export FLAGS_log_dir=/var/log/kudu

#每台机器的master地址要与主机名一致,这里是在node01

export FLAGS_rpc_bind_addresses=node01:7051

修改 /etc/default/kudu-tserver

[root@hadoop01conf]# vim /etc/default/kudu-tserver

export FLAGS_log_dir=/var/log/kudu

#每台机器的tserver地址要与主机名一致,这里是在node01

export FLAGS_rpc_bind_addresses=node01:7050

修改完成后的上述配置文件分发到其他服务器上

[root@hadoop01default]# cd /etc/kudu/conf

[root@hadoop01conf]# scp -r master.gflagfile tserver.gflagfile node02:$PWD

[root@hadoop01conf]# scp -r master.gflagfile tserver.gflagfile node03:$PWD

[root@hadoop01conf]# cd /etc/default/

[root@hadoop01default]# scp -r kudu-master kudu-tserver node02:$PWD

[root@hadoop01default]# scp -r kudu-master kudu-tserver node03:$PWD

修改node02服务器上的配置文件

[root@hadoop02conf]# cd /etc/default/

[root@hadoop02default]# vim kudu-master

export FLAGS_log_dir=/var/log/kudu

export FLAGS_rpc_bind_addresses=node02:7051

[root@hadoop02default]# vim kudu-tserver

export FLAGS_log_dir=/var/log/kudu

export FLAGS_rpc_bind_addresses=node02:7050

修改node03服务其上的配置文件

[root@hadoop03~]# cd /etc/default/

[root@hadoop03default]# vim kudu-master

export FLAGS_log_dir=/var/log/kudu

export FLAGS_rpc_bind_addresses=node03:7051

[root@hadoop03default]# vim kudu-tserver

export FLAGS_log_dir=/var/log/kudu

export FLAGS_rpc_bind_addresses=node03:7050

在三台服务器上分别创建配置存储数据目录并修改权限

[root@hadoop01default]# mkdir -p /var/lib/kudu

[root@hadoop01default]# chmod –R kudu:kudu /var/lib/kudu

[root@hadoop02default]# mkdir -p /var/lib/kudu

[root@hadoop02default]# chmod –R kudu:kudu /var/lib/kudu

[root@hadoop03default]# mkdir -p /var/lib/kudu

[root@hadoop03default]# chmod –R kudu:kudu /var/lib/kudu

注意

kudu默认用户就是KUDU,所以需要将/var/lib/kudu权限修改成kudu

[root@hadoop01conf]# chown -R kudu:kudu /var/lib/kudu

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

kudu安装部署第2张

kudu集群启动时需要ntp服务进行时间同步,在kudu启动前需要在三台服务器上安装ntp服务进行时间同步

[root@hadoop01~]# yum -y install ntp #安装ntp服务

[root@hadoop01~]# service ntpd start #启动ntp服务

[root@hadoop01~]# chkconfig ntpd on #设置开机启动

[root@hadoop02~]# yum -y install ntp #安装ntp服务

[root@hadoop02~]# service ntpd start #启动ntp服务

[root@hadoop02~]# chkconfig ntpd on #设置开机启动

[root@hadoop03~]# yum -y install ntp #安装ntp服务

[root@hadoop03~]# service ntpd start #启动ntp服务

[root@hadoop03~]# chkconfig ntpd on #设置开机启动

启动kudu集群

[root@hadoop01~]# service kudu-master start

[root@hadoop01~]# service kudu-tserver start

[root@hadoop02~]# service kudu-master start

[root@hadoop02~]# service kudu-tserver start

[root@hadoop03~]# service kudu-master start

[root@hadoop03~]# service kudu-tserver start

启动集群后访问地址http://node01:8051/显示下图所示

kudu安装部署第3张

关闭kudu集群

[root@hadoop01~]# service kudu-master stop

[root@hadoop01~]# service kudu-tserver stop

[root@hadoop02~]# service kudu-master stop

[root@hadoop02~]# service kudu-tserver stop

[root@hadoop03~]# service kudu-master stop

[root@hadoop03~]# service kudu-tserver stop

部署常见问题

启动kudu的时候报错

Failed to start Kudu Master Server. Return value: 1 [FAILED]

去日志文件中查看:

错误:F0810 09:04:08.354552 4866 master_main.cc:68] Check failed: _s.ok() Bad status:Service unavailable: Cannot initialize clock: Error reading clock. Clock considered

Unsynchronized

解决:

第一步:首先检查是否有安装ntp:如果没有安装则使用以下命令安装:

yum -y install ntp

第二步:设置随机启动:

service ntpd start

chkconfig ntpd on

启动过程中报错

F0810 21:31:12.620932 20143 master_main.cc:71] Check failed: _s.ok() Bad status:

Invalid argument: Unable to initialize catalog manager: Failed to initialize sys tables

async: on-disk master list

解决:

(1):停掉master和tserver

(2):删除掉之前所有的/export/servers/kudu/master/*和/export/servers/kudu/tserver/*

启动过程中报错

F0913 15:12:00.628237 20859 master_main.cc:74] Check failed: _s.ok() Bad status: IO

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)

这是因为kudu默认使用kudu权限进行执行,可能遇到文件夹的权限不一致情况,更改文件夹权限即可

免责声明:文章转载自《kudu安装部署》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇一致性hash算法CefSharp 初用遇到的一些问题及解决方法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Linux/CentOS系统同步网络时间的2种方法详解

方法一:用 ntpdate从时间服务器更新时间 如果系统没有 ntpdate 命令,可在线安装:       yum -y install ntp 安装完了之后,你不要做什么配置,也不需要,直接测试一下 [root@snsgou-pc src]# date 2015年 05月 20日 星期三 22:42:19CST [root@snsgou-pc src]...

Kudu1.1.0 、 Kudu1.2.0 Kudu1.3.0的版本信息异同比较

  不多说,直接上干货!  Kudu1.1.0 新特性 python API升级,具备JAVA C++client一样的功能(从0.3版本直接升级到1.1),主要的点如下: 1.1. 改进了Parial Row的语义 1.2. 增加了range partition支持 1.3. 提供了 scan api 1.4. 增强predicate支持 1.5. 支...

zabbix实现自定义监控

实现自定义监控项实例 1.创建主机组 2.创建主机 3.创建监控项 1.到需要监控的主机的agent中添加自定义的监控项目 cd /etc/zabbix/zabbix_agentd.d vi userparameter_mysql.conf UserParameter=监控项目名称,shell命名 UserParam...

Ansible介绍与安装使用

Ansible 介绍与安装 目录 Ansible 介绍与安装 Ansible的定义 Ansible的基础架构 Ansible的程序目录结构 Anisible特性 注意事项 安装Ansible 自定义清单(配置组内成员) Anisble实现管理方式 Ansible常用模块 ping 模块 user 模块 command/raw/shell 模块 scr...

CentOS 命令大全

系统 # uname -a               # 查看内核/操作系统/CPU信息 # head -n 1 /etc/issue   # 查看操作系统版本# cat /proc/cpuinfo      # 查看CPU信息# hostname               # 查看计算机名# lspci -tv              # 列...

git远程拉取代码基本操作

git 拉取远程代码 || 利用vscode编辑器自带了git,可在ctrl+~打开控制台拉取代码,非常好用哦~在实际项目开发过程中,往往是已经存在远程项目了,我们定义的需求是只需要简单的操作git,能够上传和下拉最新代码。模拟小白需求: 第一步:拉取远程代码git clone https://github.com/…/PrettyGirls.git 第...