日韩av片子_国产自在自线午夜精品视频在_使劲快高潮了国语对白在线_久久免费毛片大全_激情丁香综合_欧美成人精品欧美一级乱黄码

中培偉業(yè)IT資訊頻道
您現(xiàn)在的位置:首頁(yè) > IT資訊 > 大數(shù)據(jù) > Hadoop集群部署(部署腳本,namenode高可用)

Hadoop集群部署(部署腳本,namenode高可用)

2015-11-06 10:50:31 | 來(lái)源:中培企業(yè)IT培訓(xùn)網(wǎng)

【中培偉業(yè)】本文的所有部署都基于cloudera公司的CDH4,CDH4是cloudera公司包裝好的hadoop生態(tài)圈一系列yum包,把CDH4放到自己的yum倉(cāng)庫(kù)中,能極大的提高h(yuǎn)adoop環(huán)境部署的簡(jiǎn)易性。
  前言
  折騰了一段時(shí)間hadoop的部署管理,寫(xiě)下此系列博客記錄一下。
  為了避免各位做部署這種重復(fù)性的勞動(dòng),我已經(jīng)把部署的步驟寫(xiě)成腳本,各位只需要按著本文把腳本執(zhí)行完,整個(gè)環(huán)境基本就部署完了。部署的腳本我放在了開(kāi)源中國(guó)的git倉(cāng)庫(kù)里。
  本文的所有部署都基于cloudera公司的CDH4,CDH4是cloudera公司包裝好的hadoop生態(tài)圈一系列yum包,把CDH4放到自己的yum倉(cāng)庫(kù)中,能極大的提高h(yuǎn)adoop環(huán)境部署的簡(jiǎn)易性。
  本文的部署過(guò)程中涵蓋了namenode的HA實(shí)現(xiàn),hadoop管理的解決方案(hadoop配置文件的同步,快速部署腳本等)。
  環(huán)境準(zhǔn)備
  一共用5臺(tái)機(jī)器作為硬件環(huán)境,全都是centos 6.4
  namenode & resourcemanager 主服務(wù)器: 192.168.1.1
  namenode & resourcemanager 備服務(wù)器: 192.168.1.2
  datanode & nodemanager 服務(wù)器: 192.168.1.100 192.168.1.101 192.168.1.102
  zookeeper 服務(wù)器集群(用于namenode 高可用的自動(dòng)切換): 192.168.1.100 192.168.1.101
  jobhistory 服務(wù)器(用于記錄mapreduce的日志): 192.168.1.1
  用于namenode HA的NFS: 192.168.1.100
  環(huán)境部署
  一、加入CDH4的YUM倉(cāng)庫(kù)
  1.最好的辦法是把cdh4的包放到自建的yum倉(cāng)庫(kù)中,如何自建yum倉(cāng)庫(kù)請(qǐng)看 自建YUM倉(cāng)庫(kù)
  2.如果不想自建yum倉(cāng)庫(kù),在所有的hadoop機(jī)器執(zhí)行以下操作加入cdn4的yum倉(cāng)庫(kù)
  wget http://archive.cloudera.com/cdh4/one-click-install/redhat/6/x86_64/cloudera-cdh-4-0.x86_64.rpm
  sudo yum --nogpgcheck localinstall cloudera-cdh-4-0.x86_64.rpm
  二、創(chuàng)建用于namenode HA的NFS服務(wù)器
  1.登錄192.168.1.100,執(zhí)行以下腳本createNFS.sh
  #!/bin/bash
       yum -y install rpc-bind nfs-utils
  mkdir -p /data/nn_ha/
  echo "/data/nn_ha  *(rw,root_squash,all_squash,sync)" >> /etc/exports
  /etc/init.d/rpcbind start
  /etc/init.d/nfs  start
  chkconfig  --level 234 rpcbind   on
  chkconfig  -level 234 nfs  on
  三、Hadoop Namenode & resourcemanager 主服務(wù)器 環(huán)境部署
  1.登錄192.168.1.1,創(chuàng)建腳本目錄,把腳本從git倉(cāng)庫(kù)復(fù)制下來(lái)
  yum –y install git
  mkdir –p /opt/
  cd /opt/
  git clone http://git.oschina.net/snake1361222/hadoop_scripts.git
  /etc/init.d/iptables stop
  2.修改hostname
  sh /opt/hadoop_scripts/deploy/AddHostname.sh
  3.修改部署腳本的配置文件
  vim /opt/kingsoft/hadoop_scripts/deploy/config
  #添加master服務(wù)器的地址,也就是namenode主服務(wù)器
  master="192.168.1.1"
  #添加nfs服務(wù)器地址
  nfsserver="192.168.1.100"
  4.編輯hosts文件(此文件會(huì)同步到hadoop集群所有機(jī)器)
  vim /opt/hadoop_scripts/share_data/resolv_host
  127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
  ::1    localhost localhost.localdomain localhost6 localhost6.localdomain6
  192.168.1.1 nn.dg.hadoop.cn
  192.168.1.2 nn2.dg.hadoop.cn
  192.168.1.100 dn100.dg.hadoop.cn
  192.168.1.101 dn101.dg.hadoop.cn
  192.168.1.102 dn102.dg.hadoop.cn
  5.執(zhí)行部署腳本CreateNamenode.sh
  sh /opt/hadoop_scripts/deploy/CreateNamenode.sh
  6.搭建saltstack master
  PS:類似于puppet的服務(wù)器管理開(kāi)源工具,比較輕量,在這里用于管理hadoop集群,調(diào)度datanode,關(guān)于saltstack的詳細(xì)請(qǐng)看 SaltStack部署與使用
  a.安裝
  yum -y install salt salt-master
  b.修改配置文件`/etc/salt/master`,下面標(biāo)志的是需要修改的項(xiàng)
  修改監(jiān)聽(tīng)I(yíng)P:
  interface: 0.0.0.0
  多線程池:
  worker_threads: 5
  開(kāi)啟任務(wù)緩存:(官方描敘開(kāi)啟緩存能承載5000minion)
  job_cache
  開(kāi)啟自動(dòng)認(rèn)證:
  auto_accept: True
  c.開(kāi)啟服務(wù)
  /etc/init.d/salt-master start
  chkconfig  salt-master on
  7.部署過(guò)程中已經(jīng)把我的sample配置復(fù)制過(guò)去了,所以只需要修改部分配置文件
  a. /etc/hadoop/conf/hdfs-site.xml (其實(shí)就是按實(shí)際修改主機(jī)名地址)
  <property>
  <name>dfs.namenode.rpc-address.mycluster.ns1</name>
  <value>nn.dg.hadoop.cn:8020</value>
  <description>定義ns1的rpc地址</description>
  </property>
  <property>
  <name>dfs.namenode.rpc-address.mycluster.ns2</name>
  <value>nn2.dg.hadoop.cn:8020</value>
  <description>定義ns2的rpc地址</description>
  </property>
  <property>
  <name>ha.zookeeper.quorum</name>
  <value>dn100.dg.hadoop.cn:2181,dn101.dg.hadoop.cn:2181,dn102.dg.hadoop.cn:2181,</value>
  <description>指定用于HA的ZooKeeper集群機(jī)器列表</description>
  </property>
  b. mapred-site.xml
  <property>
  <name>mapreduce.jobhistory.address</name>
  <value>nn.dg.hadoop.cn:10020</value>
  </property>
  <property>
  <name>mapreduce.jobhistory.webapp.address</name>
  <value>nn.dg.hadoop.cn:19888</value>
  </property>
  c. yarn-site.xml
  property>
  <name>yarn.resourcemanager.resource-tracker.address</name>
  <value>nn.dg.hadoop.cn:8031</value>
  </property>
  <property>
  <name>yarn.resourcemanager.address</name>
  <value>nn.dg.hadoop.cn:8032</value>
  </property>
  <property>
  <name>yarn.resourcemanager.scheduler.address</name>
  <value>nn.dg.hadoop.cn:8030</value>
  </property>
  <property>
  <name>yarn.resourcemanager.admin.address</name>
  <value>nn.dg.hadoop.cn:8033</value>
  </property>
  三、Hadoop Namenode & resourcemanager 備服務(wù)器 環(huán)境部署
  1.登錄192.168.1.2,創(chuàng)建腳本目錄,從主服務(wù)器把腳本同步過(guò)來(lái)
  /etc/init.d/iptables stop
  mkdir &ndash;p /opt/hadoop_scripts
  rsync &ndash;avz 192.168.1.1::hadoop_s   /opt/hadoop_scripts
  2.執(zhí)行部署腳本CreateNamenode.sh
  sh /opt/hadoop_scripts/deploy/CreateNamenode.sh
  3.同步hadoop配置文件
  rsync &ndash;avz 192.168.1.1::hadoop_conf  /etc/hadoop/conf
  4.部署saltstack客戶端
  sh /opt/hadoop_scripts/deploy/salt_minion.sh
  四、zookeeper服務(wù)器集群部署
  zookeeper是一個(gè)開(kāi)源分布式服務(wù),在這里用于namenode 的auto fail over功能。
  1.安裝
  yum install zookeeper zookeeper-server
  2.修改配置文件/etc/zookeeper/conf/zoo.cfg
  maxClientCnxns=50
  # The number of milliseconds of each tick
  tickTime=2000
  # The number of ticks that the initial
  # synchronization phase can take
  initLimit=10
  # The number of ticks that can pass between
  # sending a request and getting an acknowledgement
  syncLimit=5
  # the directory where the snapshot is stored.
  dataDir=/var/lib/zookeeper
  # the port at which the clients will connect
  clientPort=2181
  #這里指定zookeeper集群內(nèi)的所有機(jī)器,此配置集群內(nèi)機(jī)器都是一樣的
  server.1=dn100.dg.hadoop.cn :2888:3888
  server.2=dn101.dg.hadoop.cn:2888:3888
  3.指定當(dāng)前機(jī)器的id,并開(kāi)啟服務(wù)
  #譬如當(dāng)前機(jī)器是192.168.1.100(dn100.dg.hadoop.cn),它是server.1,id是1,SO:
  echo "1" >  /var/lib/zookeeper/myid
  chown -R zookeeper.zookeeper /var/lib/zookeeper/
  service zookeeper-server init
  /etc/init.d/zookeeper-server start
  chkconfig zookeeper-server on
  #如此類推,部署192.168.1.101
  五、datanode & nodemanager 服務(wù)器部署
  1.登錄datanode機(jī)器,創(chuàng)建腳本目錄,從主服務(wù)器把腳本同步過(guò)來(lái)
  /etc/init.d/iptables stop
  mkdir &ndash;p /opt/hadoop_scripts
  rsync &ndash;avz 192.168.1.1::hadoop_s   /opt/hadoop_scripts
  2.修改hostname,執(zhí)行部署腳本 CreateDatanode.sh
  sh /opt/hadoop_scripts/deploy/AddHostname.sh
  sh /opt/hadoop_scripts/deploy/CreateDatanode.sh
  集群初始化
  到這里,hadoop集群的環(huán)境已部署完畢,現(xiàn)在開(kāi)始初始化集群
  一、namenode的HA高可用初始化
  1.在namenode主服務(wù)器(192.168.1.1)執(zhí)行zookeeper的failover功能格式化
  sudo &ndash;u hdfs hdfs zkfc &ndash;formatZK
  2.把zookeeper集群服務(wù)啟動(dòng)(192.168.1.100  192.168.1.101 )
  /etc/init.d/zookeeper-server start
  3.把namenode主備服務(wù)器的zkfc服務(wù)起來(lái)(192.168.1.1  192.168.1.2)
  /etc/init.d/hadoop-hdfs-zkfc start
  4.在namenode主服務(wù)器(192.168.1.1)格式化hdfs
  #確保是用hdfs用戶格式化
  sudo -u hdfs hadoop namenode &ndash;format
  5.第一次搭建namenode高可用,需要把name.dir下面的數(shù)據(jù)復(fù)制到namenode備服務(wù)器(此坑花了好多時(shí)間)
  a.在主服務(wù)器(192.168.1.1)執(zhí)行
  tar -zcvPf /tmp/namedir.tar.gz /data/hadoop/dfs/name/
  nc -l 9999 < /tmp/namedir.tar.gz
  b.在備服務(wù)器(192.168.1.2)執(zhí)行
  wget 192.168.1.1:9999 -O /tmp/namedir.tar.gz
  tar -zxvPf /tmp/namedir.tar.gz
  6.主從服務(wù)都啟動(dòng)
  /etc/init.d/hadoop-hdfs-namenode start
  /etc/init.d/hadoop-yarn-resourcemanager start
  7.查看hdfs的web界面
  http://192.168.1.1:9080
  http://192.168.1.2:9080
  #如果在web界面看到兩個(gè)namenode都是backup狀態(tài),那就是auto fail over配置不成功
  #查看zkfc日志(/var/log/hadoop-hdfs/hadoop-hdfs-zkfc-nn.dg.s.kingsoft.net.log)
  #查看zookeeper集群的日志(/var/log/zookeeper/zookeeper.log)
  8.現(xiàn)在可以嘗試關(guān)閉namenode主服務(wù),看是否能主從切換
  二、hdfs集群開(kāi)啟
  到這里,所有hadoop部署已完成,現(xiàn)在開(kāi)始把集群?jiǎn)?dòng),驗(yàn)證效果
  1.把所有datanode服務(wù)器啟動(dòng)
  #還記得之前搭建的saltstack管理工具不,現(xiàn)在開(kāi)始發(fā)揮它的作用,登錄saltstack master(192.168.1.1)執(zhí)行
  salt -v "dn*" cmd.run "/etc/init.d/hadoop-hdfs-datanode start"
  2.查看hdfs web界面,看是否都成為live nodes
  3.如果沒(méi)有問(wèn)題,現(xiàn)在可以嘗試hdfs操作
  #創(chuàng)建一個(gè)tmp目錄
  sudo -u hdfs hdfs dfs -mkdir /tmp
  #創(chuàng)建一個(gè)10G大小的空文件,計(jì)算它的MD5值,并放入hdfs
  dd if=/dev/zero of=/data/test_10G_file bs=1G count=10
  md5sum /data/test_10G_file
  sudo -u hdfs hdfs dfs -put /data/test_10G_file  /tmp
  sudo -u hdfs hdfs dfs -ls /tmp
  #現(xiàn)在可以嘗試關(guān)閉一臺(tái)datanode,然后把剛才的測(cè)試文件拉取出來(lái),再算一次MD5看是否一樣
  sudo -u hdfs hdfs dfs -get /tmp/test_10G_file /tmp/
  md5sum /tmp/test_10G_file
  三、yarn集群開(kāi)啟
  hadoop除了hdfs用于大數(shù)據(jù)的分布式存儲(chǔ),還有更重要的組件,分布式計(jì)算(mapreduce)。現(xiàn)在我們來(lái)把mapreducev2 yarn集群?jiǎn)?dòng)
  1.在主服務(wù)器把resourcemanager服務(wù)起來(lái)(192.168.1.1)
  /etc/init.d/hadoop-yarn-resourcemanager start
  2.把所有nodemanager服務(wù)啟動(dòng)
  #還是登陸saltstack master,執(zhí)行
  salt -v "dn*" cmd.run "/etc/init.d/hadoop-yarn-nodemanager start"
  3.查看yarn 任務(wù)追蹤界面(http://192.168.1.1:9081/),看是否所有nodes都已加入
  4.hadoop自帶有基準(zhǔn)測(cè)試的mapreduce實(shí)例,我們利用它來(lái)測(cè)試yarn環(huán)境是否正常
  #TestDFSIO測(cè)試HDFS的讀寫(xiě)性能,寫(xiě)10個(gè)文件,每個(gè)文件1G.
  su hdfs -
  hadoop jar /usr/lib/hadoop-mapreduce/hadoop-mapreduce-client-jobclient-2.0.0-cdh4.2.1-tests.jar TestDFSIO  -write -nrFiles 10 -fileSize 1000
  #Sort測(cè)試MapReduce
  ##向random-data目錄輸出數(shù)據(jù)
  hadoop jar /usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar randomwriter  random-data
  ##運(yùn)行sort程序
  hadoop jar /usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar sort random-data sorted-data
  ##驗(yàn)證sorted-data 文件是否排好序
  hadoop jar /usr/lib/hadoop-mapreduce/hadoop-mapreduce-client-jobclient-2.0.0-cdh4.2.1-tests.jar testmapredsort -sortInput random-data
  -sortOutput sorted-data
  總結(jié)
  在折騰hadoop集群的部署是還是遇到了很多坑,打算下篇寫(xiě)自己所遭遇的問(wèn)題。通過(guò)本文部署遇到問(wèn)題的可以聯(lián)系一下我,互相交流一下。當(dāng)然也歡迎大家一起修改部署的腳本。

標(biāo)簽: hadoop
主站蜘蛛池模板: 国产三区二区一区 | 少妇秘书调教在线91 | 天堂а在线中文在线新版 | 久久久久久中文字幕av | 欧美高清一级 | 色多多A级毛片免费看 | 无人影院在线播放视频 | 99视频在线观看免费 | 伊人久久精品一区二区三区 | 国产精品久久久久永久免费看 | 日本三级免费 | 亚洲AV无限在线观看 | 看一级黄色毛片 | 国产成人亚洲综合无码精品 | 黄色一级片免费 | 国产视频精品xxxx | xxxxxhd日本xxxx47| 亚洲欧美在线一区 | 丰满少妇被猛烈进入毛片 | 欧美视频无砖专区一中文字目 | 欧美视频精品在线观看 | 国内偷拍久久 | 少妇AB又爽又紧无码网站 | 九九99热久久精品66中文字幕 | 国产00高中生在线无套进入 | 各种场合大胆露出在线看 | 欧美爱视频 | 日本伊人中文字幕 | 暖暖视频免费高清日本 | 国产91视频免费 | 狠狠干网站| 好紧好滑好湿好爽免费视频 | 国产精品人人妻人人爽 | 少妇的丰满2中文字幕 | 日本一级黄色毛片 | A级一男一女牲交 | 天天做天天爱夜夜爽少妇 | 不付费看污软件片 | 亚洲激情国产精品 | 97影院手机版 | 久操一区|