Hadoop是Apache软件基金会下一个开源分布式计算平台,以HDFS(Hadoop Distributed File System)、MapReduce(Hadoop2.0加入了YARN,Yarn是资源调度框架,能够细粒度的管理和调度任务,还能够支持其他的计算框架,比如spark)为核心的Hadoop为用户提供了系统底层细节透明的分布式基础架构。hdfs的高容错性、高伸缩性、高效性等优点让用户可以将Hadoop部署在低廉的硬件上,形成分布式系统。目前最新版本已经是3.x了,官方文档。

Hdfs

YARN

  1. 拉取镜像

到docker hub上拉取Hadoop镜像

[root@k8s-master]# docker pull kubeguide/hadoop:latest

[root@k8s-node1]# docker pull kubeguide/hadoop:latest

[root@k8s-node2]# docker pull kubeguide/hadoop:latest

或打包复制到其他节点:

# 打包镜像到本地

[root@k8s-master]# docker save e0af06208032 > hadoop.tar

# 发送到子节点

[root@k8s-master]# scp hadoop.tar k8s-node01:/root/hadoop

[root@k8s-master]# scp hadoop.tar k8s-node02:/root/hadoop

# 子节点构建镜像

[root@k8s-node1]# docker load --input hadoop.tar

[root@k8s-node2]# docker load --input hadoop.tar

  1. 编辑yaml文件

hadoop.yaml

hadoop-datanode.yaml

yarn-node.yaml

  1. 执行创建命令

[root@k8s-master]# kubectl create namespace dev

[root@k8s-master]# kubectl create -f hadoop.yaml

[root@k8s-master]# kubectl apply -f hadoop-datanode.yaml

[root@k8s-master]# kubectl apply -f yarn-node.yaml

  1. 创建完成后就可以通过浏览器看到熟悉的HDFS管理界面了

http://ip:32007】

http://ip:32088

  1. 测试验证

[root@k8s-master1 ~]# kubectl get pods,svc -n hadoop -owide

[root@k8s-master1 ~]# kubectl exec -it pod/hdfs-master-5946bb8ff4-c4cpm -n dev – bash

root@hdfs-master-5946bb8ff4-c4cpm:~# hdfs dfs -mkdir /tmp

root@hdfs-master-5946bb8ff4-c4cpm:~# hdfs dfs -ls /

Found 1 items

drwxr-xr-x   - root supergroup          0 2023-06-04 14:21 /tmp

root@hdfs-master-5946bb8ff4-c4cpm:~# echo "test hadoop" >test.txt

root@hdfs-master-5946bb8ff4-c4cpm:~#echo "test hadoop123456789" >/tmp/test.txt

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐