搭建cdh平台

简介

CDH:全称Cloudera’s Distribution Including Apache Hadoop,是Hadoop众多分支中的一种,由Cloudera维护,基于稳定版本的Apache Hadoop构建。
优点:

  • 版本划分清晰
  • 版本更新速度快
  • 支持Kerberos安全认证
  • 文档清晰
  • 支持多种安装方式(Cloudera Manager方式)

服务器信息

IP hostname
1.1.1.1 hostname1
2.2.2.2 hostname2
3.3.3.3 hostname3
4.4.4.4 hostname4
5.5.5.5 hostname5

搭建cdh平台

  1. 添加用户
    adduser cdh
    passwd cdh
  2. 赋予权限
    chmod u+w /etc/sudoers
    vim /etc/sudoers
    cdh ALL=(ALL) ALL
    chmod u-w /etc/sudoers
  3. 免密登录
ssh-keygen -t rsa
cat id_rsa.pub >> authorized_keys
ssh-copy-id -i ~/.ssh/id_rsa.pub  username@xxx.xxx.x.xxx ##将本机的公钥复制到远程机器的authorized_keys文件中.
scp authorized_keys clickhouse@10.101.104.139:/home/clickhouse/.ssh
chmod 600 ~/.ssh/authorized_keys
  1. 修改主机名
    vim /etc/hostname
  2. 修改hosts文件
vim /etc/hosts
#添加如下内容
1.1.1.1 hostname1
2.2.2.2 hostname2
3.3.3.3 hostname3
4.4.4.4 hostname4
5.5.5.5 hostname5
  1. 关闭防火墙
  2. 关闭selinux
#查看selinux的状态
/usr/sbin/sestatus -v
vim /etc/sysconfig/selinux
#修改如下行
SELINUX=disabled
  1. 安装jdk8+
  2. 安装ntp
    CDH要求各个节点时间同步,所以必须安装ntp服务。
#查看ntpd的状态
service ntpd status
#安装时钟服务ntp
yum -y install ntp
#启动ntp服务
service ntpd start
#设置开机自启
chkconfig ntpd on
  1. 优化交换分区
echo "vm.swappiness = 10" >> /etc/sysctl.conf
sysctl -p
  1. 禁用透明大页面压缩
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
  1. 安装mysql5+
    mysql用于存储元数据
    只需在主节点上安装即可
#安装mysql
//www.greatytc.com/p/276d59cbc529
#连接mysql
mysql -uroot -p
#创建存储元数据的数据库
create database scm default character set utf8 default collate utf8_general_ci;
create database amon default character set utf8 default collate utf8_general_ci;
create database rman default character set utf8 default collate utf8_general_ci;
create database hue default character set utf8 default collate utf8_general_ci;
create database metastore default character set utf8 default collate utf8_general_ci;
create database sentry default character set utf8 default collate utf8_general_ci;
create database nav default character set utf8 default collate utf8_general_ci;
create database navms default character set utf8 default collate utf8_general_ci;
create database oozie default character set utf8 default collate utf8_general_ci;
#创建用户
create user 'scm'@'%' identified with mysql_native_password by '123456';
create user 'amon'@'%' identified with mysql_native_password by '123456';
create user 'rman'@'%' identified with mysql_native_password by '123456';
create user 'hue'@'%' identified with mysql_native_password by '123456';
create user 'hive'@'%' identified with mysql_native_password by '123456';
create user 'sentry'@'%' identified with mysql_native_password by '123456';
create user 'nav'@'%' identified with mysql_native_password by '123456';
create user 'navms'@'%' identified with mysql_native_password by '123456';
create user 'oozie'@'%' identified with mysql_native_password by '123456';
#赋予权限
grant all on scm.* to 'scm'@'%' with grant option;
grant all on amon.* to 'amon'@'%' with grant option;
grant all on rman.* to 'rman'@'%' with grant option;
grant all on hue.* to 'hue'@'%' with grant option;
grant all on metastore.* to 'hive'@'%' with grant option;
grant all on sentry.* to 'sentry'@'%' with grant option;
grant all on nav.* to 'nav'@'%' with grant option;
grant all on navms.* to 'navms'@'%' with grant option;
#刷新权限
flush privileges;
  1. 安装mysql-connector
#下载connector
wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.48.tar.gz
#解压
tar -zxvf mysql-connector-java-5.1.48.tar.gz
#
cd mysql-connector-java-5.1.48
#若没有该目录,则创建
mkdir -p /usr/share/java
#复制,改名
cp mysql-connector-java-5.1.48.jar /usr/share/java/mysql-connector-java.jar
#远程复制到集群的其他节点
scp /opt/mysql-connector-java-5.1.48/mysql-connector-java-5.1.48.jar cdh@2.2.2.2:/usr/share/java/mysql-connector-java.jar
  1. 安装CM(cloudera manager)
    cloudera-manager-daemon 与 cloudera-manager-agent 是要在每台机器进行安装的,cloudera-manager-server 只需要在集群中想作为未来管理节点的机器上安装即可 。
#创建目录
mkdir /opt/cloudera-manager
cd /opt/cloudera-manager
#下载cm包
wget http://archive.cloudera.com/cm5/installer/5.14.4/cloudera-manager-installer.bin
wget http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/cloudera-manager.repo
wget http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.14.4/RPMS/x86_64/cloudera-manager-agent-5.14.4-1.cm5144.p0.3.el7.x86_64.rpm
wget http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.14.4/RPMS/x86_64/cloudera-manager-daemons-5.14.4-1.cm5144.p0.3.el7.x86_64.rpm
wget http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.14.4/RPMS/x86_64/cloudera-manager-server-5.14.4-1.cm5144.p0.3.el7.x86_64.rpm
wget http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.14.4/RPMS/x86_64/cloudera-manager-server-db-2-5.14.4-1.cm5144.p0.3.el7.x86_64.rpm
wget http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.14.4/RPMS/x86_64/enterprise-debuginfo-5.14.4-1.cm5144.p0.3.el7.x86_64.rpm
#复制cloudera-manager.repo到yum仓库
cp -v /opt/cloudera-manager/cloudera-manager.repo /etc/yum.repos.d/
#远程复制两个包到集群的其它节点下
scp cloudera-manager-agent-5.14.4-1.cm5144.p0.3.el7.x86_64.rpm cdh@2.2.2.2:/opt/cloudera-manager/
scp cloudera-manager-daemons-5.14.4-1.cm5144.p0.3.el7.x86_64.rpm root@2.2.2.2:/opt/cloudera-manager/
#在主节点上安装三个包
yum --nogpgcheck -y localinstall cloudera-manager-daemons-*.rpm
yum --nogpgcheck -y localinstall cloudera-manager-agent-*.rpm
yum --nogpgcheck -y localinstall cloudera-manager-server-*.rpm
#在远程节点上安装两个包
ssh -t cdh@2.2.2.2 'yum --nogpgcheck -y localinstall cloudera-manager-daemons-*.rpm'
ssh -t cdh@2.2.2.2 'yum --nogpgcheck -y localinstall cloudera-manager-agent-*.rpm'
#修改agent文件
vim /etc/cloudera-scm-agent/config.ini
#修改内容如下:hostname1为主节点名称
server_host=hostname1
#复制文件到集群的其他节点上
scp /etc/cloudera-scm-agent/config.ini cdh@2.2.2.2:/etc/cloudera-scm-agent/
#主节点创建目录
mkdir /var/lib/cloudera-scm-server
chown cloudera-scm:cloudera-scm /var/lib/cloudera-scm-server
#初始化
/usr/share/cmf/schema/scm_prepare_database.sh -hhostname1 -uroot -p123456 --scm-host hostname1 --force mysql scm scm 123456
  1. 安装cdh
    只在主节点上执行
#创建目录
mkdir -p /opt/cloudera/parcel-repo
cd /opt/cloudera/parcel-repo
#下载cdh包
wget http://archive.cloudera.com/cdh5/parcels/5.14.4/CDH-5.14.4-1.cdh5.14.4.p0.3-el7.parcel
wget http://archive.cloudera.com/cdh5/parcels/5.14.4/CDH-5.14.4-1.cdh5.14.4.p0.3-el7.parcel.sha1
wget http://archive.cloudera.com/cdh5/parcels/5.14.4/manifest.json
#重命名
mv CDH-5.14.4-1.cdh5.14.4.p0.3-el7.parcel.sha1 CDH-5.14.4-1.cdh5.14.4.p0.3-el7.parcel.sha
chown -R cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo  
  1. 启动cm
#启动server
#在主节点上启动
systemctl start cloudera-scm-server
#启动主节点上的agent
systemctl start cloudera-scm-agent
#远程启动集群其它服务器的agent
ssh -t cdh@2.2.2.2 'systemctl start cloudera-scm-agent'
#查看日志
tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log
#查看端口
netstat -tpnl | grep 7180
  1. 连接cm
    在浏览器输入地址:http://1.1.1.1:7180/
  2. 安装组件
    。。。
  3. 安装spark2
    默认cdh安装的spark版本是1.6.0,但是版本太低,可以额外安装spark2,两个版本可以共存。
cd /opt/cloudera
mkdir csd
cd csd
#下载csd包
wget SPARK2_ON_YARN-2.3.0.cloudera3.jar
cd ../parcel-repo
mv manifest.json manifest.json.old
#下载parcels
wget http://archive.cloudera.com/spark2/parcels/2.3.0.cloudera3/SPARK2-2.3.0.cloudera3-1.cdh5.13.3.p0.458809-el7.parcel
wget http://archive.cloudera.com/spark2/parcels/2.3.0.cloudera3/SPARK2-2.3.0.cloudera3-1.cdh5.13.3.p0.458809-el7.parcel.sha1
wget http://archive.cloudera.com/spark2/parcels/2.3.0.cloudera3/manifest.json
#重命名
mv SPARK2-2.3.0.cloudera3-1.cdh5.13.3.p0.458809-el7.parcel.sha1 SPARK2-2.3.0.cloudera3-1.cdh5.13.3.p0.458809-el7.parcel.sha
#重启agent和server
service cloudera-scm-server restart
service cloudera-scm-agent restart
#之后通过cm页面安装spark2
  1. 卸载cm
    //www.greatytc.com/p/79d1411aaa42

END

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