docker安裝hdfs

  1. 拉取Hadoop鏡像(可以在docker hub上找合適的鏡像):
docker pull singularities/hadoop
  1. 創(chuàng)建docker-compose.yml文件(可以在文本編輯器中寫好后,復(fù)制),內(nèi)容如下:
version: "2"

services:
  namenode:
    image: singularities/hadoop
    command: start-hadoop namenode
    environment:
      HDFS_USER: hdfsuser
    ports:
      - "8020:8020"
      - "14000:14000"
      - "50070:50070"
      - "10020:10020"
      - "13562:13562"
      - "19888:19888"
  datanode:
    image: signularities/hadoop
    command: start-hadoop datanode namenode
    environment:
      HDFS_USER: hdfsuser
    links:
      - namenode

基于yaml的語法,要注意空格,否則解析失敗。

  1. 創(chuàng)建hadoop,執(zhí)行如下命令
docker-compose up -d
docker ps
  1. 開啟多個(gè)datanode
docker-compose scale datanode=3
docker ps
  1. 查看hadoop控制面板。由于服務(wù)剛初始化,可能需要等一會(huì)。訪問類似如下url:
http://10.250.115.210:50070/dfshealth.html#tab-datanode
  1. 進(jìn)入任意hadoop相關(guān)容器,進(jìn)行hdfs基礎(chǔ)操作
    在任意datanode的容器中操作hdfs,會(huì)自動(dòng)同步到其他的datanode容器中。
# 查看所有命令
hadoop fs
# 創(chuàng)建目錄
hadoop fs -mkdir /hdfs #在根目錄下創(chuàng)建hdfs文件夾
# 查看目錄
hadoop fs -ls  /   #列出根目錄下的文件列表
# 創(chuàng)建多級(jí)目錄
hadoop fs -mkdir -p /hdfs/d1/d2
# 上傳文件到HDFS
echo "hello world" >> local.txt   #創(chuàng)建文件
hadoop fs -put local.txt /hdfs/   #上傳文件到hdfs
# 下載hdfs文件
hadoop fs -get /hdfs/local.txt
# 刪除hdfs中的文件
hadoop fs -rm /hdfs/local.txt
# 刪除hdfs中的目錄
hadoop fs -rmdir /hdfs/d1/d2
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容