hadoop-2.0.0-cdh4.2.1安装手册
2013-06-21 10:45
183 查看
1. 角色分配:
ocdata16: 10.1.253.26 :NameNode JournalNode Zookeeper DFSZKFailoverControllerocdata17: 10.1.253.27 :NameNode JournalNode Zookeeper DFSZKFailoverController
ocdata18: 10.1.253.28 :DataNode JournalNode Zookeeper
ocdata19: 10.1.253.29 :DataNode
2. 添加SSH互信
登录10.1.253.26\10.1.253.27\10.1.253.28\10.1.253.29ssh-keygen -t rsa -P "" cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys chmod go-w $HOME $HOME/.ssh chmod 600 $HOME/.ssh/authorized_keys chown `whoami` $HOME/.ssh/authorized_keys
登录10.1.253.26,执行
ssh stream_dev@ocdata17 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys ssh stream_dev@ocdata18 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys ssh stream_dev@ocdata19 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys scp ~/.ssh/authorized_keys stream_dev@ocdata17:~/.ssh/authorized_keys scp ~/.ssh/authorized_keys stream_dev@ocdata18:~/.ssh/authorized_keys scp ~/.ssh/authorized_keys stream_dev@ocdata19:~/.ssh/authorized_keys
3. 安装
下载安装包wget http://archive.cloudera.com/cdh4/cdh/4/zookeeper-3.4.5-cdh4.2.1.tar.gz wget http://archive.cloudera.com/cdh4/cdh/4/hadoop-2.0.0-cdh4.2.1.tar.gz
解压,配置
配置zookeeper
cd /home/stream_dev/shaoaq/zookeeper-3.4.5-cdh4.2.1/conf cp zoo_sample.cfg zoo.cfg 修改: dataDir=/home/stream_dev/shaoaq/zookeeper clientPort=2183 server.16=ocdata16:2898:3898 server.17=ocdata17:2898:3898 server.18=ocdata18:2898:3898 在 ocdata16\ocdata17\ocdata18上, mkdir /home/stream_dev/shaoaq/zookeeper, 然后vim /home/stream_dev/shaoaq/zookeeper/myid,分别输入16,17,18
配置hadoop
hdfs-site.xml
<property> <name>dfs.nameservices</name> <value>mycluster</value> </property> <property> <name>dfs.ha.namenodes.mycluster</name> <value>nn1,nn2</value> </property> <property> <name>dfs.namenode.rpc-address.mycluster.nn1</name> <value>ocdata16:8020</value> </property> <property> <name>dfs.namenode.rpc-address.mycluster.nn2</name> <value>ocdata17:8020</value> </property> <property> <name>dfs.namenode.http-address.mycluster.nn1</name> <value>ocdata16:50070</value> </property> <property> <name>dfs.namenode.http-address.mycluster.nn2</name> <value>ocdata17:50070</value> </property> <property> <name>dfs.namenode.shared.edits.dir</name> <value>qjournal://ocdata16:9485;ocdata17:9485;ocdata18:9485/mycluster</value> </property> <property> <name>dfs.client.failover.proxy.provider.mycluster</name> <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value> </property> <property> <name>dfs.ha.fencing.methods</name> <value>shell(/bin/true)</value> </property> <property> <name>dfs.ha.fencing.ssh.connect-timeout</name> <value>10000</value> </property> <property> <name>dfs.journalnode.edits.dir</name> <value>/home/stream_dev/shaoaq/journal/node/local/data</value> </property> <property> <name>dfs.journalnode.http-address</name> <value>0.0.0.0:9480</value> </property> <property> <name>dfs.journalnode.rpc-address</name> <value>0.0.0.0:9485</value> </property> <property> <name>dfs.ha.automatic-failover.enabled</name> <value>true</value> </property> <property> <name>ha.zookeeper.quorum</name> <value>ocdata16:2183,ocdata17:2183,ocdata18:2183</value> </property>
core-site.xml
<property> <name>fs.defaultFS</name> <value>hdfs://mycluster</value> </property>
slaves
ocdata16 ocdata17 ocdata18 ocdata19
hadoop-env.sh
export JAVA_HOME=/home/stream_dev/stream/soft/jdk1.7.0_21
新建sbin/start-dfs-journalnode.sh
#!/usr/bin/env bash bin=`dirname "${BASH_SOURCE-$0}"` bin=`cd "$bin"; pwd` DEFAULT_LIBEXEC_DIR="$bin"/../libexec HADOOP_LIBEXEC_DIR=${HADOOP_LIBEXEC_DIR:-$DEFAULT_LIBEXEC_DIR} . $HADOOP_LIBEXEC_DIR/hdfs-config.sh #--------------------------------------------------------- # quorumjournal nodes (if any) SHARED_EDITS_DIR=$($HADOOP_PREFIX/bin/hdfs getconf -confKey dfs.namenode.shared.edits.dir 2>&-) case "$SHARED_EDITS_DIR" in qjournal://*) JOURNAL_NODES=$(echo "$SHARED_EDITS_DIR" | sed 's,qjournal://\([^/]*\)/.*,\1,g; s/;/ /g; s/:[0-9]*//g') echo "Starting journal nodes [$JOURNAL_NODES]" "$HADOOP_PREFIX/sbin/hadoop-daemons.sh" \ --config "$HADOOP_CONF_DIR" \ --hostnames "$JOURNAL_NODES" \ --script "$bin/hdfs" start journalnode ;; esac
新建sbin/stop-dfs-journalnode.sh
#!/usr/bin/env bash bin=`dirname "${BASH_SOURCE-$0}"` bin=`cd "$bin"; pwd` DEFAULT_LIBEXEC_DIR="$bin"/../libexec HADOOP_LIBEXEC_DIR=${HADOOP_LIBEXEC_DIR:-$DEFAULT_LIBEXEC_DIR} . $HADOOP_LIBEXEC_DIR/hdfs-config.sh #--------------------------------------------------------- # quorumjournal nodes (if any) SHARED_EDITS_DIR=$($HADOOP_PREFIX/bin/hdfs getconf -confKey dfs.namenode.shared.edits.dir 2>&-) case "$SHARED_EDITS_DIR" in qjournal://*) JOURNAL_NODES=$(echo "$SHARED_EDITS_DIR" | sed 's,qjournal://\([^/]*\)/.*,\1,g; s/;/ /g; s/:[0-9]*//g') echo "Stopping journal nodes [$JOURNAL_NODES]" "$HADOOP_PREFIX/sbin/hadoop-daemons.sh" \ --config "$HADOOP_CONF_DIR" \ --hostnames "$JOURNAL_NODES" \ --script "$bin/hdfs" stop journalnode ;; esac
分发到其他机器
scp -r ~/shaoaq stream_dev@ocdata17:~/ scp -r ~/shaoaq stream_dev@ocdata18:~/ scp -r ~/shaoaq stream_dev@ocdata19:~/
4. 初始化
启动HDFS登录ocdata16,执行
./hdfs namenode -format ./hdfs namenode
登录ocdata17,执行
./hdfs namenode -bootstrapStandby
在ocdata16上,ctrl+c 停止namenode
停止journalnode
./stop-dfs-journalnode.sh
5. 日常启动停止¶
启动Zookeeper分别在ocdata16\ocdata17\ocdata18上执行:
./zkServer.sh start
判断是否执行成功:
echo ruok | nc ocdata16 2183 echo ruok | nc ocdata17 2183 echo ruok | nc ocdata18 2183
如果都返回imok,则代表启动成功
启动HDFS
cd sbin ./start-dfs.sh
停止HDFS
cd sbin ./stop-dfs.sh
6. Yarn
mapred-site.xm
cp ../etc/hadoop/mapred-site.xml.template ../etc/hadoop/mapred-site.xm<property> <name>mapreduce.framework.name</name> <value>yarn</value> </property>
yarn-site.xml
<property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce.shuffle</value> </property> <property> <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name> <value>org.apache.hadoop.mapred.ShuffleHandler</value> </property> <property> <description>The address of the applications manager interface in the RM.</description> <name>yarn.resourcemanager.address</name> <value>ocnosql76:8032</value> </property> <property> <description>The address of the scheduler interface.</description> <name>yarn.resourcemanager.scheduler.address</name> <value>ocnosql76:8030</value> </property> <property> <description>The address of the RM web application.</description> <name>yarn.resourcemanager.webapp.address</name> <value>ocnosql76:8088</value> </property> <property> <name>yarn.resourcemanager.resource-tracker.address</name> <value>ocnosql76:8031</value> </property> <property> <description>The address of the RM admin interface.</description> <name>yarn.resourcemanager.admin.address</name> <value>ocnosql76:8033</value> </property>
Yarn的启动停止
cd sbin ./start-yarn.sh ./stop-yarn.sh
7. 其他
在安装前,最好在每台机器上确认hostname -i 返回该机器的IP地址在安装前,确保每个机器上hosts里包含其他机器的主机名和IP的对应关系
如果节点一直在备节点,而不是自动切换到主节点,请重新格式化zkfc:./hdfs zkfc -formatZK
注意:主机名不能含有下划线
相关文章推荐
- hadoop-2.0.0-cdh4.2.1安装手册
- HadoopCDH4.2.1 Pseudo-Distributed 安装过程
- centos6.4用cloudera manager安装hadoop2.0.0-cdh4.3.0集群(二)
- hadoop-2.0.0-cdh4.2.1源码编译总结
- CDH4.1(hadoop-2.0.0-cdh4.1.2)安装部署文档
- hadoop-2.0.0-cdh4.6.0 安装
- hadoop-2.0.0-cdh4.6.0、sqoop-1.4.3-cdh4.6.0、mahout-0.7-cdh4.6.0 安装笔记
- Hadoop 2.0.0-cdh4.5.0安装
- hadoop-2.0.0-cdh4.7.0伪分布式安装,mapreduce例子执行
- hadoop-2.0.0-mr1-cdh4.2.2 eclipse插件安装
- Hadoop cdh4.2.1 安装笔记
- centos6.4用cloudera manager安装hadoop2.0.0-cdh4.3.0集群(一)
- hadoop-2.0.0-cdh4.1.2.tar.gzl安装配置
- CDH4.1(hadoop-2.0.0-cdh4.1.2)安装部署文档
- CDH4.1(hadoop-2.0.0-cdh4.1.2)安装部署文档
- hadoop-2.0.0-cdh4.5.0安装
- spark 1.0 在hadoop-2.0.0-cdh4.2.0上面安装成功
- Hadoop 2.0.0-cdh4.5.0安装
- CDH4.1(hadoop-2.0.0-cdh4.1.2)安装部署文档
- CDH hadoop的安装