CDH5.13.1 离线安装

踩了很多坑,具体多少我都忘记了。搞完之后弄个帖子一是记录,二是分享。

之所以选择离线安装,是因为公司的网络不太稳定,单下个CM都要好久,更别提后面的CDH了,而且还容易网络中断。

准备工作(一些简单且容易百度到的,就不赘述了):

1. 所有主机的/etc/hosts 文件的 ip  主机名绑定

2.所有主机之间免密码登录

3. 配置ntp服务,主节点对外同步时间,其他节点向主节点同步时间。

在主节点上

server 120.24.166.46   # 阿里云NTP Server

server 127.127.1.0     # 如果公网NTP不可用时,将使用Local时间作为NTP服务提供给NTP Client

restrict 10.0.0.0 mask 255.255.254.0 nomodify 

在从节点上直接 server master(主机名或者ip地址)就可以了。

4.安装mysql 和jdbc驱动包

apt-get install mysql-server  libmysql-java 

这里是官网的关于mysql配置的链接.

https://www.cloudera.com/documentation/enterprise/latest/topics/cm_ig_mysql.html#cmig_topic_5_5

安装后就是在 /etc/mysql/conf.d/下面新建 cloudera,将官网推荐的mysql配置copy过来就好了。(这里需要注意的是innodb的pool size 是4G)

官网推荐配置如下:

[mysqld]
transaction-isolation = READ-COMMITTED
# Disabling symbolic-links is recommended to prevent assorted security risks;
# to do so, uncomment this line:
# symbolic-links = 0

key_buffer_size = 32M
max_allowed_packet = 32M
thread_stack = 256K
thread_cache_size = 64
query_cache_limit = 8M
query_cache_size = 64M
query_cache_type = 1

max_connections = 550
#expire_logs_days = 10
#max_binlog_size = 100M

#log_bin should be on a disk with enough free space. Replace '/var/lib/mysql/mysql_binary_log' with an appropriate path for your system
#and chown the specified folder to the mysql user.
log_bin=/var/lib/mysql/mysql_binary_log

# For MySQL version 5.1.8 or later. For older versions, reference MySQL documentation for configuration help.
binlog_format = mixed

read_buffer_size = 2M
read_rnd_buffer_size = 16M
sort_buffer_size = 8M
join_buffer_size = 8M

# InnoDB settings
innodb_file_per_table = 1
innodb_flush_log_at_trx_commit = 2
innodb_log_buffer_size = 64M
innodb_buffer_pool_size = 4G
innodb_thread_concurrency = 8
innodb_flush_method = O_DIRECT
innodb_log_file_size = 512M

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

sql_mode=STRICT_ALL_TABLES

5.下载安装包

在这里下载对应系统CDH的parcel包和sha1结尾的文件,还有manifest.json 

http://archive.cloudera.com/cdh5/parcels/5.13.1/

CDH-5.13.1-1.cdh5.13.1.p0.2-trusty.parcel

CDH-5.13.1-1.cdh5.13.1.p0.2-trusty.parcel.sha1

manifest.json

在这里下载对应系统的CM包

http://archive.cloudera.com/cm5/cm/5/

6.参照官网的一些创建目录,用户的操作

在所有节点上:

mkdir /opt/cloudera-manager

tar xzf cloudera-manager*.tar.gz -C /opt/cloudera-manager

useradd --system --home=/opt/cloudera-manager/cm-5.6.0/run/cloudera-scm-server --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm

在主节点上:

mkdir /var/lib/cloudera-scm-server

chown cloudera-scm:cloudera-scm /var/lib/cloudera-scm-server

mkdir -p /opt/cloudera/parcel-repo
chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo

在从节点上:

mkdir -p /opt/cloudera/parcels
chown cloudera-scm:cloudera-scm /opt/cloudera/parcels

将下载好的 CDH的三个文件放在 /opt/cloudera/parcel-repo 下,执行 mv CDH-5.13.1-1.cdh5.13.1.p0.2-trusty.parcel.sha1 CDH-5.13.1-1.cdh5.13.1.p0.2-trusty.parcel.sha

7.在主节点上下载依赖包(这里给出的是ubuntu系统的依赖包)

ant apache2 debhelper gcc libfuse2 libsasl2-modules libsasl2-modules-gssapi-mit libsqlite3-0 libssl-dev libxslt1.1 lsb-base make openssl perl psmisc python-dev  python-mysqldb python-psycopg2 python-setuptools rpcbind swig zlib1g

这里是官网的各个系统的依赖包列表:

https://www.cloudera.com/documentation/enterprise/latest/topics/cm_ig_install_path_c.html#install_package_dependencies

8. 差点忘了所有节点配置jdk

下载解压啥的就不说了,修改/etc/profile

export JAVA_HOME=/usr/local/jdk1.8.0
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH

source /etc/profile 使修改即时生效。如果仍然每次打开新的窗口都没有 java 命令,那么在 ~/.bashrc 把这句加在最后。另外这里有一个坑,注意,CM找Java 不是从这里找的,它是按这个文件的配置来找的Java: /opt/cloudera-manager/cm-5.13.1/lib/cmf/service/common/cloudera-config.sh

它里面有这么一段:

local JAVA8_HOME_CANDIDATES=(
    '/usr/java/jdk1.8'
    '/usr/java/jre1.8'
    '/usr/lib/jvm/j2sdk1.8-oracle'
    '/usr/lib/jvm/j2sdk1.8-oracle/jre'
    '/usr/lib/jvm/java-8-oracle'
  )

如果在上面的路径没有找到,就会在后面安装的时候报错JAVA_HOME没有配置。所以要将实际的JAVA_HOME目录做一个软连接过去。ln -s /usr/local/jdk_1.8.0 /usr/java/jdk1.8 (记得创建一下/usr/java/目录)

9.初始化数据库

./opt/cloudera-manager/cm-5.13.1/share/cmf/schema/scm_prepare_database.sh mysql -hlocalhost -uroot -p123456 --scm-host localhost scm scm scm

创建数据库和账户:

--hive数据库
create database metastore DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
--oozie数据库
create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
--hue数据库
create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

对每一个库授权账户

grant all on db.* to username@'%' identified by 'password';


在这里关机,保存镜像吧大兄弟,相信我,不保存你会后悔的!!!

正式开始:

1./opt/cloudera-manager/cm-5.13.1/etc/init.d/cloudera-scm-server start

2./opt/cloudera-manager/cm-5.13.1/etc/init.d/cloudera-scm-agent start

后面我遇到的需要注意的是有时候它运行主机检查的时候提示某台主机时间不同步的时候,自己去主机上验证一下,如果没有问题就resume一下就会检查通过。

master机的内存要大于4G,小于4G就不要装所有服务,保不准会有什么幺蛾子。

其实最麻烦的是正式开始之后进入页面安装第一次不成功,第二次再去操作的时候最好还原镜像。不然超级麻烦。我遇到过的列举一下:选择主机的时候某一台主机出现两次,启动spark服务启动了一天一夜还没有启动,也没有报错,格式化tmp目录失败,已经存在该目录(然而我怎么找也找不到这个目录).....我的解决办法就是还原镜像。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值