<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      docker安裝hadoop集群

      docker安裝hadoop集群?圖啥呢?不圖啥,就是圖好玩.本篇博客主要是來教大家如何搭建一個docker的hadoop集群.不要問

      為什么我要做這么無聊的事情,答案你也許知道,因為沒有女票.......

      好了,不多說這些沒有必要的東西了,首先,我們來安裝docker.

      一.docker的安裝

      sudo yum install -y docker-io

      sudo wget https://get.docker.com/builds/Linux/x86_64/docker-latest -O /usr/bin/docker

      我們來啟動我們的docker:

      sudo service docker start

      開機也自啟動docker
      sudo chkconfig docker on

      二.拉取一個鏡像

      如果我們要6.5的centos 版本,額,不要問我問什么用6.5的,因為宿主機是內核6.5的...

      sudo docker pull insaneworks/centos

      然后我們就可以去吃個飯喝壺茶了......反正你就就慢慢等吧.....

      .......

      ok,飯吃完了,我們來產生一個容器吧.

      sudo docker run -it insaneworks/centos /bin/bash

      ctrl+p ctrl+q可以幫助我們從容器返回宿主機.

      sudo docker ps 可以查看運行的容器.

      ok,我們不想要這個容器了,怎么辦呢?

      sudo docker stop b152861ef001

      同時再把容器刪除

      sudo docker rm b152861ef001

      三.制作一個hadoop鏡像

      這是這里最繁瑣的過程,不過,我們可以分解來做.少年郎,我夾你杠哦,你會了這個,就再也不用擔心hadoop

      不會裝了.走起!

      sudo docker run -it -h master --name master insaneworks/centos /bin/bash

      進入到容器里,我們第一步就是把gcc給我裝了.

      yum install -y gcc

      裝vim

      yum install -y vim

      裝lrzsz

      yum install -y lrzsz

      裝ssh:

      yum -y install openssh-server

      yum -y install openssh-clients

      注意,這里我們要改一下ssh的一些配置:vim /etc/ssh/sshd_config

      放開PermitEmptyPasswords no

      更改UsePAM no

      放開PermitRootLogin yes

      啟動sshd

      service sshd start

      然后我們要用到ssh密碼設置

      ssh-keygen -t rsa -P '' -f ~/.ssh/id_dsa

      cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

      這樣完了后呢,我們ssh連自己試試

      ssh master

      不錯,非常好使.

      接下來我們把java給裝了.

      通過rz將java rpm包給傳上去,好了,又該去喝一壺了........

      rpm -ivh jdk-7u75-linux-x64.rpm

      修改環境變量

       

      export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL
      export JAVA_HOME=/usr/java/jdk1.7.0_75
      export PATH=$JAVA_HOME/bin:$PATH
      export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

      source /etc/profile

      下面我們該裝hadoop了,激動吧,呵呵,先把tar給裝了先.

      yum install -y tar

      一樣,我們用rz把hadoop的tar包傳到容器內.事先埋個伏筆,之后會有一件很坑爹的事情,反正到時候你就知道了.

      嗯......等的真是好漫長..........

      咚咚噠噠呼嚕娃.......咚咚噠噠呼嚕娃.......

      好了,解壓:

      tar zxvf hadoop-2.6.0.tar.gz

      完美!

       

      配置環境變量
      export HADOOP_HOME=/home/hadoop/hadoop-2.6.0
      export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH

       

      然后又一件事情要做,這件事情看上去好像不用做,但老子試過n次,不做就是hadoop起不來.

      vim hadoop-env.sh 和 yarn-env.sh 在開頭添加如下環境變量(一定要添加切勿少了)
      export JAVA_HOME=/usr/java/jdk1.7.0_75

      哦,這個文件都在hadoop解壓目錄的etc中.

      下面我們來寫配置文件.

       

      修改hadoop core-site.xml文件
      <configuration>
      <property>
      <name>fs.defaultFS</name>
      <value>hdfs://master:9000</value>
      </property>
      <property>
      <name>io.file.buffer.size</name>
      <value>131702</value>
      </property>
      <property>
      <name>hadoop.tmp.dir</name>
      <value>file:/home/songfy/hadoop-2.6.0/tmp</value>
      </property>
      </configuration>

       

      修改hdfs-site.xml文件
      <configuration>
      <property>
      <name>dfs.namenode.name.dir</name>
      <value>file:/home/songfy/hadoop-2.6.0/dfs/name</value>
      </property>
      <property>
      <name>dfs.datanode.data.dir</name>
      <value>file:/home/songfy/hadoop-2.6.0/dfs/data</value>
      </property>
      <property>
      <name>dfs.replication</name>
      <value>2</value>
      </property>
      <property>
      <name>dfs.namenode.secondary.http-address</name>
      <value>master:9001</value>
      </property>
      <property>
      <name>dfs.webhdfs.enabled</name>
      <value>true</value>
      </property>
      </configuration>

      修改mapred-site.xml文件
      <configuration>
      <property>
      <name>mapreduce.framework.name</name>
      <value>yarn</value>
      </property>
      <property>
      <name>mapreduce.jobhistory.address</name>
      <value>master:10020</value>
      </property>
      <property>
      <name>mapreduce.jobhistory.webapp.address</name>
      <value>master:19888</value>
      </property>
      </configuration>

      修改yarn-site.xml
      <configuration>
      <property>
      <name>yarn.nodemanager.aux-services</name>
      <value>mapreduce_shuffle</value>
      </property>
      <property>
      <name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
      <value>org.apache.hadoop.mapred.ShuffleHandler</value>
      </property>
      <property>
      <name>yarn.resourcemanager.address</name>
      <value>master:8032</value>
      </property>
      <property>
      <name>yarn.resourcemanager.scheduler.address</name>
      <value>master:8030</value>
      </property>
      <property>
      <name>yarn.resourcemanager.resource-tracker.address</name>
      <value>master:8031</value>
      </property>
      <property>
      <name>yarn.resourcemanager.admin.address</name>
      <value>master:8033</value>
      </property>
      <property>
      <name>yarn.resourcemanager.webapp.address</name>
      <value>master:8088</value>
      </property>
      <property>
      <name>yarn.nodemanager.resource.memory-mb</name>
      <value>1024</value>
      </property>
      </configuration>

      在slaves文件中添加
      slave1
      slave2
      slave3

       

      似乎一切都好像搞定了,少年,別急,嚇死你!

      ldd /home/hadoop/hadoop-2.6.0/lib/native/libhadoop.so.1.0.0

      然后你會看到:

      /home/hadoop/hadoop-2.6.0/lib/native/libhadoop.so.1.0.0: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by /home/hadoop/hadoop-2.6.0/lib/native/libhadoop.so.1.0.0)
      linux-vdso.so.1 => (0x00007fff24dbc000)
      libdl.so.2 => /lib64/libdl.so.2 (0x00007ff8c6371000)
      libc.so.6 => /lib64/libc.so.6 (0x00007ff8c5fdc000)
      /lib64/ld-linux-x86-64.so.2 (0x00007ff8c679b000)

       

      人生是這樣的無情,人生是這樣的冷酷,之前有個小朋友問過我這個問題......我沒有理,現在,然我親手滅了這個問題!

      不過大家可能明白了為什么我一上來就裝個gcc了吧.

      yum install -y wget

      wget http://ftp.gnu.org/gnu/glibc/glibc-2.14.tar.gz

      tar zxvf glibc-2.14.tar.gz

      cd glibc-2.14

      mkdir build

      cd build

      ../configure --prefix=/usr/local/glibc-2.14

      make

      make install

      ln -sf /usr/local/glibc-2.14/lib/libc-2.14.so /lib64/libc.so.6

      此時,ldd /home/hadoop/hadoop-2.6.0/lib/native/libhadoop.so.1.0.0

      就沒有任何問題了

      linux-vdso.so.1 => (0x00007fff72b7c000)
      libdl.so.2 => /lib64/libdl.so.2 (0x00007fb996ce9000)
      libc.so.6 => /lib64/libc.so.6 (0x00007fb99695c000)
      /lib64/ld-linux-x86-64.so.2 (0x00007fb997113000

      這樣,我們的鏡像就可以commit了

      docker commit master songfy/hadoop

      我們可以用docker images來查看鏡像.

      REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
      songfy/hadoop latest 311318c0a407 42 seconds ago 1.781 GB

      insaneworks/centos latest 9d29fe7b2e52 9 days ago 121.1 MB

      下面我們來啟動hadoop集群

       

      三.啟動hadoop集群

      docker rm master

      sudo docker run -it -p 50070:50070 -p 19888:19888 -p 8088:8088 -h master --name master songfy/hadoop /bin/bash

      sudo docker run -it -h slave1 --name slave1 songfy/hadoop /bin/bash

      sudo docker run -it -h slave2 --name slave2 songfy/hadoop /bin/bash

      sudo docker run -it -h slave3 --name slave3 songfy/hadoop /bin/bash

       

      attach到每個節點上執行

      source /etc/profile

      service sshd start

      接下來我們還要給每臺機器配host

      docker inspect --format='{{.NetworkSettings.IPAddress}}' master

      這條語句可以查看ip

      172.17.0.4 master

      172.17.0.5 slave1

      172.17.0.6 slave2

      172.17.0.7 slave3

      用scp將hosts文件分發到各個node中.

       

      好了,我們終于要啟動hadoop了.

      hadoop namenode -format

      /home/hadoop/hadoop-2.6.0/sbin/start-dfs.sh

      /home/hadoop/hadoop-2.6.0/sbin/start-yarn.sh

      用jps查看,發現都起來了.

       

      下面我們簡單來對hdfs操作一下.

      hadoop fs -mkdir /input

      hadoop fs -ls /

      drwxr-xr-x   - root supergroup          0 2015-08-09 09:09 /input

       

      下面我們來運行一下大名鼎鼎的wordcount程序來看看.

      hadoop fs -put /home/hadoop/hadoop-2.6.0/etc/hadoop/* /input/

      hadoop jar /home/hadoop/hadoop-2.6.0/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0.jar wordcount /input/ /output/wordcount/

       

      不要以為一下就成功了.我們發現事實上,程序并沒有跑出來,查了下日志,看到:

      2015-08-09 09:23:23,481 WARN org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.LeafQueue: Node : slave1:41978 does not have sufficient resource for request : {Priority: 0, Capability: <memory:2048, vCores:1>, # Containers: 1, Location: *, Relax Locality: true} node total capability : <memory:1024, vCores:8>

      嗯,意思是內存不夠,我們就分2G過去.

      我們發現大名鼎鼎的hadoop運行的簡直奇慢無比........所以說,當你機器多,你會跑的很快,如果是docker,就歇了吧.

      當然,本人也試過多宿主機部署hadoop,不過因為沒有那么多實體機,因此是在多個vmvare虛擬機上部署的docker hadoop集群.

      這就是虛擬機上的云端hadoop........事實上,除了統計次數的時候,把其中一臺宿主虛擬機跑跪以外,幾乎沒什么軟用.......

      好了,結果出來了,我們來看看:

       

      policy 3
      port 5
      ports 2
      ports. 2
      potential 2
      preferred 3
      prefix. 1
      present, 1
      principal 4
      principal. 1
      printed 1
      priorities. 1
      priority 1
      privileged 2
      privileges 1
      privileges. 1
      properties 6
      property 11
      protocol 6
      protocol, 2

      不錯....好玩吧.......下次我們再選一個有趣的主題吧,嗯,那就hive或者storm吧......當然本人并不可靠,

      或許換成lda或者word2vec這種算法主題的,或者cuda異構計算也不一定,博主是個神經病,誰知道吶.

       

      posted @ 2015-08-09 21:39  逝雪  閱讀(4077)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 亚洲2022国产成人精品无码区| 深田えいみ禁欲后被隔壁人妻| 国产伦精品一区二区三区妓女下载| 国产自产在线视频一区| 欧美一区二区三区欧美日韩亚洲 | 国产欧美日韩亚洲一区二区三区| 色欧美片视频在线观看| 麻豆精品国产熟妇aⅴ一区| 国产一级av在线播放| 亚洲春色在线视频| 男女扒开双腿猛进入爽爽免费看| 亚洲av男人电影天堂热app| 欧美激情一区二区| 成人亚欧欧美激情在线观看| 中国女人大白屁股ass| 乱人伦人妻精品一区二区| 天天爽夜夜爱| 亚洲一区二区三区在线| 亚洲色偷偷色噜噜狠狠99| 亚洲欧美高清在线精品一区二区| 亚洲精品久久一区二区三区四区| 中文字幕国产在线精品| 精品国产乱弄九九99久久| 粗大的内捧猛烈进出小视频| 国产黄色一级片在线观看| 久久中文骚妇内射| 国产精品亚洲片夜色在线| 沙田区| 亚洲一区二区av偷偷| 库尔勒市| 中文字幕一区二区久久综合| 溆浦县| 国产精品中文字幕第一页| 亚洲男人AV天堂午夜在| 亚洲夜夜欢一区二区三区| 国产精品亚洲二区亚瑟| 国产av一区二区不卡| 华池县| 国产成人亚洲一区二区三区| 中文字幕av一区二区| 国产欧美日韩另类在线专区|