hadoop集群管理软件CDH的安装(完全离线)

写于安装前

关于hadoop集群管理软件,我选择了cdh的免费版。本文参照官方文档、网上大神的帖子,加上自己几十次的搭建,踩了无数的坑总结而成。由于每个人的现场环境不同,参照本文档可能会出现报错情况,欢迎留言讨论交流。

1、基础环境

服务器配置:
24核48线程 64GB 600Gx2(raid1)
hadoop存储(4Tx10/每台机器)
目录-->/data1-->/data10

组建 版本 其他
OS centos7.4.1708 (64位 3.1内核)
CDH 5.13.0 安装目录:/opt/cm-5.13.0/
JDK oracle jdk1.8.0_152 安装目录:/usr/java/jdk1.8
mysql 5.7.20
角色 主机名 IP 备注
Hadoop cdh01 10.10.12.31
Hadoop cdh02 10.10.12.32
Hadoop cdh03 10.10.12.33
Hadoop cdh04 10.10.12.34
Hadoop cdh05 10.10.12.35
Mysql 待定 10.10.12.38 pwd

备注:mysql服务器复用计算调度

2、安装依赖

首先安装mysql
sudo su - root
yum install vim lvm2 ssl_mod chkconfig python bind-utils psmisc libxslt zlib sqlite fuse fuse-libs redhat-lsb cyrus-sasl-plain cyrus-sasl-gssapi pstree httpd rsync -y

3、准备离线包

cloudera-manager-centos7-cm5.13.0_x86_64.tar.gz
CDH-5.13.0-1.cdh5.13.0.p0.29-el7.parcel.sha1
CDH-5.13.0-1.cdh5.13.0.p0.29-el7.parcel
manifest.json
mysql-connector-java-5.1.44-bin.jar
oracle jdk 1.8.0_152

下载地址:
http://archive.cloudera.com/cm5/cm/5/
tttp://archive.cloudera.com/cdh5/parcels/latest/

4、 安装

4.1 所有节点

echo "*/20 * * * * /usr/sbin/ntpdate pool.ntp.org > /dev/null 2>&1" > /var/spool/cron/root
systemctl stop NetworkManager
systemctl disable NetworkManager
sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config
setenforce 0
systemctl stop firewalld
systemctl disable firewalld

cat >> /etc/hosts <<END
10.10.12.31 cdh01
10.10.12.32 cdh02
10.10.12.33 cdh03
10.10.12.34 cdh04
10.10.12.34 cdh05
END

优化hugepage

echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled

chmod +x /etc/rc.d/rc.local

cat >>/etc/rc.local<<EOF
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
EOF
echo "vm.swappiness = 0">> /etc/sysctl.conf
sysctl -p

4.2 配置主机名

###10.10.12.31
hostnamectl set-hostname cdh01
###10.10.12.32
hostnamectl set-hostname cdh02
###10.10.12.33
hostnamectl set-hostname cdh03
###10.10.12.34
hostnamectl set-hostname cdh04
###10.10.12.35
hostnamectl set-hostname cdh05

cat >> /etc/hosts <<END
10.10.12.31 cdh01
10.10.12.32 cdh02
10.10.12.33 cdh03
10.10.12.34 cdh04
10.10.12.35 cdh05
END

4.3 配置ssh免密登陆

ssh-keygen -f $HOME/.ssh/id_rsa -t rsa -N ''
cat /root/.ssh/id_rsa.pub >/root/.ssh/authorized_keys
rsync -av /root/.ssh/* cdh01:/root/.ssh/
rsync -av /root/.ssh/* cdh02:/root/.ssh/
rsync -av /root/.ssh/* cdh03:/root/.ssh/
rsync -av /root/.ssh/* cdh04:/root/.ssh/
rsync -av /root/.ssh/* cdh05:/root/.ssh/

4.4 所有节点安装oracle jdk 1.8

4.4.1 主节点

yum install mod_ssl

mkdir -p /usr/java/jdk1.8

tar zxvf jdk-8u152-linux-x64.tar.gz -C /usr/java/

mv /usr/java/jdk1.8.0_152/* /usr/java/jdk1.8/

sed -i '$a export JAVA_HOME=/usr/java/jdk1.8/' /etc/profile

sed -i '$a export PATH=$JAVA_HOME/bin:$PATH' /etc/profile

source /etc/profile

java -version

echo $JAVA_HOME

rsync -av jdk-8u152-linux-x64.tar.gz cdh02:/usr/local/
rsync -av jdk-8u152-linux-x64.tar.gz cdh03:/usr/local/
rsync -av jdk-8u152-linux-x64.tar.gz cdh04:/usr/local/
rsync -av jdk-8u152-linux-x64.tar.gz cdh05:/usr/local/

4.4.2 其他节点

`cd /usr/local`

`mkdir -p /usr/java/jdk1.8`

`tar zxvf jdk-8u152-linux-x64.tar.gz -C /usr/java/`

`mv /usr/java/jdk1.8.0_152/* /usr/java/jdk1.8/`

`sed -i '$a export JAVA_HOME=/usr/java/jdk1.8/' /etc/profile`

`sed -i '$a export PATH=$JAVA_HOME/bin:$PATH' /etc/profile`

`source /etc/profile`

`java -version`

`echo $JAVA_HOME`

4.4.3 安装mysql(两个实例3306 3307)

rpm -aq|grep mariadb|xargs rpm -e --nodeps
rpm -ivh http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
yum install mysql-server
vi /etc/my.cnf
binlog_format=mixed
systemctl restart mysqld

mysql授权

create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
grant all privileges on *.* to root@"localhost" identified by pwd;
grant all privileges on *.* to root@"%" identified by pwd;
grant all privileges on hive.* to hive@"localhost" identified by pwd;
grant all privileges on hive.* to hive@"%" identified by pwd;
grant all privileges on hue.* to hue@"localhost" identified by pwd;
grant all privileges on hue.* to hue@"%" identified by pwd;
grant all privileges on oozie.* to oozie@"localhost" identified by pwd;
grant all privileges on oozie.* to oozie@"%" identified by pwd;

grant all privileges on cm.* to scm@"%" identified by pwd;

主节点

mkdir -p /var/lib/cloudera-scm-server/
cd /root/app/
tar -zxvf cloudera-manager-centos7-cm5.13.0_x86_64.tar.gz -C /opt
cp mysql-connector-java-5.1.44-bin.jar /opt/cm-5.13.0/share/cmf/lib/

/opt/cm-5.13.0/share/cmf/schema/scm_prepare_database.sh mysql cm -hhost -uroot -ppwd--scm-host cdh01 scm scm scm
vi /opt/cm-5.13.0/etc/cloudera-scm-agent/config.ini 
server_host=cdh01
rsync -av /opt/cm-5.13.0 root@cdh02:/opt/
rsync -av /opt/cm-5.13.0 root@cdh03:/opt/
rsync -av /opt/cm-5.13.0 root@cdh04:/opt/
rsync -av /opt/cm-5.13.0 root@cdh05:/opt/

所有节点

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

主节点

mkdir -p /opt/cloudera/parcel-repo/
cp /root/app/CDH-5.13.0-1.cdh5.13.0.p0.29-el7.parcel /opt/cloudera/parcel-repo/
cp /root/app/CDH-5.13.0-1.cdh5.13.0.p0.29-el7.parcel.sha1 /opt/cloudera/parcel-repo/
cp /root/app/manifest.json /opt/cloudera/parcel-repo/
mv /opt/cloudera/parcel-repo/CDH-5.13.0-1.cdh5.13.0.p0.29-el7.parcel.sha1 /opt/cloudera/parcel-repo/CDH-5.13.0-1.cdh5.13.0.p0.29-el7.parcel.sha
mkdir -p /usr/share/java/
cp /root/app/mysql-connector-java-5.1.44-bin.jar  /usr/share/java/mysql-connector-java.jar
#cp /root/app/mysql-connector-java-5.1.44-bin.jar /opt/cloudera/parcels/CDH-5.13.0-1.cdh5.13.0.p0.29/lib/hive/lib/
/opt/cm-5.13.0/etc/init.d/cloudera-scm-server start
tailf /opt/cm-5.13.0/log/cloudera-scm-server/cloudera-scm-server.log

Table 'cm.CM_VERSION' doesn't exist

所有节点

/opt/cm-5.13.0/etc/init.d/cloudera-scm-agent start
/opt/cm-5.13.0/etc/init.d/cloudera-scm-agent restart
tailf /opt/cm-5.13.0/log/cloudera-scm-agent/cloudera-scm-agent.log

打开浏览器
http://10.10.12.31:7180

usermod -s /bin/bash hue
echo "hue ALL = (root) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/hue
chmod 0440 /etc/sudoers.d/hue

vi /opt/cm-5.13.0/lib64/cmf/service/hue/httpd.sh

add after line No. 129

sudo su - root -c "chown hue: $CLOUDERA_HTTPD_CONF_DIR/*.conf"

5、启用HDFS 的 High Availability

5.1 在HDFS上点击"启用High Availability"

5.2停止hive

更新 Hive Metastore NameNode

写于安装后

至此,hadoop集群能够完整运行。后续会写上spark、hive等组件的升级过程。本文侵删。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,772评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,458评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,610评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,640评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,657评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,590评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,962评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,631评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,870评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,611评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,704评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,386评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,969评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,944评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,179评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,742评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,440评论 2 342

推荐阅读更多精彩内容