1. 使用docker 启动4个centos 容器,(1 namenode+ 3 datanode)
2. 初始化4个容器.
1) 修改4个容器hostname, 分别为
name node:hadoop-master
data node:hadoop1, hadoop2, hadoop3
2) 安装ssh, 并将四个容器配置两两 互相免密码登录
3) 如果没有安装which命令, 请安装
4) 初始化 hadoop 使用的文件夹
3. 配置jdk1.8
4. 配置hadoop-master 的hadoop, 并同步到datanode
5. 启动hadoop 集群
6. 测试hadoop集群
docker run -it -d --name hadoop-master --hostname hadoop-master -P -p 50070:50070 -p 8088:8088 -v /sofware_shared/:/sofware_shared/ --privileged=true registry.cn-hangzhou.aliyuncs.com/acc/base-centos7
docker run -it -d --name hadoop1 --hostname hadoop1 -P -v /home/sofware_shared/:/sofware_shared/ --privileged=true registry.cn-hangzhou.aliyuncs.com/acc/base-centos7
docker run -it -d --name hadoop2 --hostname hadoop2 -P -v /home/sofware_shared/:/sofware_shared/ --privileged=true registry.cn-hangzhou.aliyuncs.com/acc/base-centos7
docker run -it -d --name hadoop3 --hostname hadoop3 -P -v /home/sofware_shared/:/sofware_shared/ --privileged=true registry.cn-hangzhou.aliyuncs.com/acc/base-centos7
1) 修改4个容器的hostname。 其实在运行容器的时候已经完成了
配置4个容器host, 使互相可以使用hostname访问
分别进入容器, 看看ip 使多少, 并记录 ip 与hostname组
172.17.0.2 hadoop-master
172.17.0.3 hadoop1
172.17.0.4 hadoop2
172.17.0.5 hadoop3
配置hadoop-master如下。 仿照这个, 配置hadoop1, haoop2,hadoop3
设置每个容器root帐号密码
2)安装ssh, 并将四个容器配置两两 互相免密码登录
进入hadoop-master, 安装ssh。 照样在hadoop1, hadoop2,hadoop3中做相同的操作
启动ssh
设置4个容器配置免密码登录
进入hadoop-master, 生成ssh密钥。 中间一路回车
设置ssh免密码登录hadoop1, hadoop2, hadoop3。 这里只操作hadoop-master, hadoop1. hadoop2, hadoop3 自己照样子做
3) 如果没有安装which命令, 请安装
yum install -y which
4) 初始化hadoop使用的文件夹
mkdir -p /home/hadoop/tmp
mkdir -p /home/hadoop/dfs/data
mkdir -p /home/hadoop/dfs/name
1)回到host 机器, 下载jdk8, 解压放在/home/sofware_shared/中(为啥, 问docker)
2)进入hadoop-master, 去/sofware_shared 目录中找jdk, 拷贝到/usr/local中, 并配置环境变量. hadoop1, hadoop2, hadoop3 一样操作
最后的结果使 hadoop-master, hadoop1, hadoop2, hadoop3 两两能免密码访问.
1. 在host主机上, 把下载好的hadoop文件拷贝到 /home/sofware_shared
2. 配置hadoop-master 上的hadoop
进入hadoop-master, 配置hadoop
1) 配置core-site.xml
2) 配置hdfs-site.xml
3) mapred-site.xml
4) 配置 yarn-site.xml(内存需要满足一定条件, 不然hadoop任务不能执行, 只能pending)(配置文件在:/usr/local/hadoop-2.9.0/etc/hadoop)
3. 修改vi hadoop-env.sh。 添加 JAVA_HOME
4. 修改 yarn-env.sh.添加 JAVA_HOME
5. 添加slave节点.
6. 拷贝配置好的hadoop到 hadoop1 , hadoop2, hadoop3
scp -r /usr/local/hadoop-2.9.0 hadoop1:/usr/local/
scp -r /usr/local/hadoop-2.9.0 hadoop2:/usr/local/
scp -r /usr/local/hadoop-2.9.0 hadoop3:/usr/local/
cd /usr/local/hadoop-2.9.0
1. 初始化name node
./bin/hdfs namenode -format
2. 启动 name node, data node
执行./sbin/start-all.sh,
启动后看 在master, slave上是否存在对应的进程
成功后访问 http://hadoop-master:8088/cluster (目前是不对的, 活动的datanode 应该要有3个的)
xxxxxxxxxxxxxxxxxxxxxxx
欢迎添加微信,互相学习↑↑↑ -_-
白老虎
programming is not only to solve problems, ways to think
grafana 级连 菜单 templating (variables) 配置
rocketmq 集群搭建 (2master + 2slave + 2namesrv)
AI 机器人 抓取 微信 聊天中的 百度网盘 分享地址和密码