https://www.bbsmax.com/A/n2d9QNb6dD/ cloudera manager(CDH)实践
http://www.aidnoob.com/cdh/cdh5/ CDH5离线安装文档
上面是另外部署cdh的几种方式
环境:ContOS6.7 安装docker
1.虚拟机安装CentOS6.7
2.安装docker
yum install -y epel-release
yum install docker-io
如果安装失败,确保yum库是最新的:
yum -y update
如果出现No package docker-io available.这种错误yum没有找到docker包,更新epel第三方软件库,运行命令:sudo yum install epel-release ,之后再执行:sudo yum install docker
启动docker
service docker start 或者 systemctl start docker
运行helloworld程序测试
docker run hello-world
3.docker安装cloudera
(1)给docker更换镜像源
docker拉取国外的镜像速度简直难以忍受,因此配置国内的阿里云加速服务拉取镜像。
在/etc/docker目录下新建daemon.json文件,并写入一下内容
{
“registry-mirrors”: [“https://2elq31uu.mirror.aliyuncs.com”]
}
之后再拉取国内镜像的时候速度就会非常快了
docker pull cloudera/quickstart:latest
总共4个多G的文件,拉取下来之后,启动容器
(2)拉取镜像源,大概4.4G,VMware虚拟机一定要是桥接网络才行
docker pull cloudera/quickstart:latest
并且服务器尽量关闭防火墙或放行端口,下面用centos7做例子
查看防火墙状态:firewall-cmd --state或者systemctl status firewalld
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
firewall-cmd --reload 重启防火墙
【
netstat -nltp 查看占用的端口
开启端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
命令含义
--zone #作用域
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
】
【
如果要修改防火墙配置,如增加防火墙端口3306
vi /etc/sysconfig/iptables
增加规则
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
保存退出后
systemctl restart iptables.service #重启防火墙使配置生效
systemctl enable iptables.service #设置防火墙开机启动
】
尽量关闭内存交换,下面用centos7做例子
第一步关闭swap分区:
swapoff /mnt/swap
第二步修改配置文件 - /etc/fstab
删除 /mnt/swap swap swap defaults 0 0 这一行或者注释掉这一行
第三步确认swap已经关闭
free -m
若都显示 0 则表示关闭成功
第四步调整 swappiness 参数
echo 0 > /proc/sys/vm/swappiness # 临时生效
vim /etc/sysctl.conf # 永久生效
# 修改 vm.swappiness 的修改为 0
vm.swappiness=0
sysctl -p # 使配置生效
或者
1.暂时关闭SWAP,重启后恢复
swapoff -a
2. 永久关闭SWAP
vim /etc/fstab
# swap was on /dev/sda11 during installation
#UUID=0a55fdb5-a9d8-4215-80f7-f42f75644f69 none swap sw 0 0
注释掉SWAP分区项,即可
Cloudera 的 docker 版本分成两部分启动。一方面是大礼包的启动 /usr/bin/docker-quickstart,一方面是 Cloudera manager 本身的启动 /home/cloudera/cloudera-manager
这里我们使用命令
任选其一
docker run -d --name cdh --hostname=quickstart.cloudera --privileged=true -t -i -p 8020:8020 -p 8022:8022 -p 7180:7180 -p 21050:21050 -p 50070:50070 -p 50075:50075 -p 50010:50010 -p 50020:50020 -p 8890:8890 -p 60010:60010 -p 10002:10002 -p 25010:25010 -p 25020:25020 -p 18088:18088 -p 8088:8088 -p 19888:19888 -p 7187:7187 -p 11000:11000 -p 7182:7182 -p 7077:7077 -p 8080:8080 -p 8081:8081 -p 4040:4040 -p 18080:18080 -p 6379:6379 -p 8888:8888 -p 9092:9092 -p 3888:3888 -p 2888:2888 -p 10000:10000 -p 9083:9083 -p 2181:2181 -p 60030:60030 -p 60020:60020 -p 60000:60000 -p 10020:10020 -p 8041:8041 -p 8042:8042 -p 8040:8040 -p 8033:8033 -p 8031:8031 -p 8030:8030 -p 8032:8032 -p 8019:8019 -p 8480:8480 -p 8485:8485 -p 50470:50470 -p 50475:50475 -p 9000:9000 cloudera/quickstart /bin/bash -c '/usr/bin/docker-quickstart && /home/cloudera/cloudera-manager --express && service ntpd start'
如果执行下面这行语句不行的话,就执行上面这行语句
任选其一
docker run -d --name mycdh --memory-swap -1 --hostname=quickstart.cloudera --privileged=true -m 24576M -t -i -p 8020:8020 -p 8022:8022 -p 7180:7180 -p 21050:21050 -p 50070:50070 -p 50075:50075 -p 50010:50010 -p 50020:50020 -p 8890:8890 -p 60010:60010 -p 10002:10002 -p 25010:25010 -p 25020:25020 -p 18088:18088 -p 8088:8088 -p 19888:19888 -p 7187:7187 -p 11000:11000 -v /etc/localtime:/etc/localtime:ro cloudera/quickstart /bin/bash -c '/usr/bin/docker-quickstart && /home/cloudera/cloudera-manager --express && service ntpd start'
不知道为什么上面启动客户端无效,于是重新启动以后就可以了
注意,这是要进入容器里面执行的:
docker exec -it mycdh bash
如果不先执行这个,可能就访问不了web页面了
如果容器启动时候不自动执行下面这行代码就要自己手动执行,操作顺序A->B->C
操作A:
/usr/bin/docker-quickstart
执行下面代码时,如果不出现ok,如果提示内存不满足8g,就是内存不够时,操作顺序A->C,然后重启容器,A->B->C
操作B:
/etc/init.d/cloudera-scm-server restart
service cloudera-scm-server restart
service cloudera-scm-server status
这一步是启动agent用的
/etc/init.d/cloudera-scm-agent restart
service cloudera-scm-agent restart
service cloudera-scm-agent status
任选其一
sudo /home/cloudera/cloudera-manager --express --force
如果执行下面这行语句不行,就先执行上面的,然后重启容器,再执行下面的这行语句
任选其一
操作C
sudo /home/cloudera/cloudera-manager --force --enterprise
4.访问web
访问:http://192.168.48.137:7180
账号: cloudera
密码: cloudera
【添加集群/主机的常见错误和改正步骤
[修改被添加进去的主机名称
https://blog.csdn.net/xuheng8600/article/details/79983927
]
[安装Cloudera manager agent失败
https://www.cnblogs.com/yinzhengjie/p/9735451.html
https://blog.csdn.net/xiaoyutongxue6/article/details/83349330
]
[安装失败无法接收 Agent发出的检测信号
https://q.cnblogs.com/q/110190
https://www.cnblogs.com/gxgd/p/9583612.html
]
https://www.cnblogs.com/zhjh256/p/10740036.html CentOS 7离线安装CDH 5.16.1完全指南(含各种错误处理)
】
【时间同步服务器搭建
30 * * * * ntpdate time.windows.com;hwclock -w 将同步后的时间写入到bios(硬件时钟)中
https://www.bbsmax.com/A/o75NX10WzW/ cloudera-manager所有服务提示时钟偏差问题解决办法
https://cloud.tencent.com/developer/article/1476194 Cloudera Manager(简称CM)+CDH构建大数据平台
https://blog.csdn.net/qq_34795664/article/details/79546857
https://blog.csdn.net/weixin_30522183/article/details/97703126
https://www.cnblogs.com/nufangrensheng/archive/2013/12/12/3472120.html
】