Hadoop 2.0 详细配置教程

原创
2016/08/02 15:43
阅读数 192

修改主机名 修改主机名,所有 节点均一样配置 1 , 连接到主节点 192.168.1.201 ,修改 network , 执行 vim /etc/sysconfig/network ,修改 HOSTNAME=hadoop1 2 ,修改 hosts 文件, 执行 cd /etc 命令后 执行 vi hosts ,在行末尾添加 : 192.168.1.201 hadoop1 192.168.1.202 hadoop2 192.168.1.203 hadoop3 192.168.1.204 hadoop4 3 , 执行 hostname hadoop1 4 , 执行 exit 后重新 连接可看到主机名以修改 OK 其他 节点 也修改主机名后添加 Host, 或者 host 文件可以在后面 执行 scp 覆盖操作

配置SSH无密码登陆 SSH 无密 码原理简介 : 首先在 hadoop1 上生成一个密 钥对,包括一个公钥和一个私钥,并将公钥复制到所有的 slave(hadoop2-hadoop4) 上。 然后当 master 通 过 SSH 连接 slave 时, slave 就会生成一个随机数并用 master 的公 钥对随机数进行加密,并发送给 master 。 最后 master 收到加密数之后再用私 钥解密,并将解密数回传给 slave , slave 确 认解密数无误之后就允许 master 不 输入密码进行连接了 2 ,具体步 骤(在root用户和hadoop用户登陆情况下执行) 1 、 执行命令 ssh-keygen -t rsa 之后一路回 车,查看刚生成的无密码钥对: cd .ssh 后 执行 ll 2 、把 id_rsa.pub 追加到授权的 key 里面去。 执行命令 cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys 3 、修改权限: 执行 chmod 600 ~/.ssh/authorized_keys 4 、确保 cat /etc/ssh/sshd_config 中存在如下内容 RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys 如需修改, 则在修改后执行重启 SSH 服 务命令使其生效 :service sshd restart 5 、将公 钥复制到所有的 slave 机器上 :scp ~/.ssh/id_rsa.pub 192.168.1.203 : ~/ 然后 输入 yes ,最后 输入 slave 机器的密 码 6 、在 slave 机器上 创建 .ssh 文件夹 :mkdir ~/.ssh 然后 执行 chmod 700 ~/.ssh (若文件夹以存在 则不需要创建) 7 、追加到授权文件 authorized_keys 执行命令 :cat ~/id_rsa.pub >> ~/.ssh/authorized_keys 然后 执行 chmod 600 ~/.ssh/authorized_keys 8 、重复第 4 步 9 、 验证命令 : 在 master 机器上 执行 ssh 192.168.1.203 发现主机名由 hadoop1 变成 hadoop3 即成功,最后 删除 id_rsa.pub 文件 :rm -r id_rsa.pub 按照以上步 骤分别配置 hadoop1,hadoop2,hadoop3,hadoop4 ,要求每个都可以无密 码登录

源码下载 HADOOP 版本 最新版本 hadoop-2.0.0-alpha 安装包 为 hadoop-2.0.0-alpha.tar.gz 下 载官网地址 :http://www.apache.org/dyn/closer.cgi/hadoop/common/ 下 载到 /home/hadoop/source 目录下 wget http://ftp.riken.jp/net/apache/hadoop/common/hadoop-2.0.0-alpha/hadoop-2.0.0-alpha.tar.gz 解压目录 tar zxvf hadoop-2.0.0-alpha.tar.gz 创建软连接 cd /home/hadoop ln -s /home/hadoop/source/hadoop-2.0.0-alpha/ ./hadoop

源码配置修改 /etc/profile 配置 环境变量: vim /etc/profile 添加 export HADOOP_DEV_HOME=/home/hadoop/hadoop export PATH=$PATH:$HADOOP_DEV_HOME/bin export PATH=$PATH:$HADOOP_DEV_HOME/sbin export HADOOP_MAPARED_HOME=${HADOOP_DEV_HOME} export HADOOP_COMMON_HOME=${HADOOP_DEV_HOME} export HADOOP_HDFS_HOME=${HADOOP_DEV_HOME} export YARN_HOME=${HADOOP_DEV_HOME} export HADOOP_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop export HDFS_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop export YARN_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop

创建并配置hadoop-env.sh vim /usr/hadoop/hadoop-2.0.0-alpha/etc/hadoop/hadoop-env.sh 在末尾添加 export JAVA_HOME=/usr/java/jdk1.6.0_27 core-site.xml 在 configuration 节点 里面添加属性 <property> <name>hadoop.tmp.dir</name> <value>/hadoop/tmp</value> <description>A base for other temporary directories.</description> </property> <property> <name>fs.default.name</name> <value>hdfs://192.168.1.201:9000</value> </property> 添加 httpfs 的 选项 <property> <name>hadoop.proxyuser.root.hosts</name> <value>192.168.1.201</value> </property> <property> <name>hadoop.proxyuser.root.groups</name> <value>*</value> </property>

slave配置 vim /home/hadoop/hadoop/etc/hadoop/slaves 添加 slave 的 IP 192.168.1.202 192.168.1.203 192.168.1.204

配置hdfs-site.xml vim /home/hadoop/hadoop/etc/hadoop/hdfs-site.xml 添加 节点 <property> <name>dfs.replication</name> <value>3</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>file:/hadoop/hdfs/name</value> <final>true</final> </property> <property> <name>dfs.federation.nameservice.id</name> <value>ns1</value> </property> <property> <name>dfs.namenode.backup.address.ns1</name> <value>192.168.1.201:50100</value> </property> <property> <name>dfs.namenode.backup.http-address.ns1</name> <value>192.168.1.201:50105</value> </property> <property> <name>dfs.federation.nameservices</name> <value>ns1</value> </property> <property> <name>dfs.namenode.rpc-address.ns1</name> <value>192.168.1.201:9000</value> </property> <property> <name>dfs.namenode.rpc-address.ns2</name> <value>192.168.1.201:9000</value> </property> <property> <name>dfs.namenode.http-address.ns1</name> <value>192.168.1.201:23001</value> </property> <property> <name>dfs.namenode.http-address.ns2</name> <value>192.168.1.201:13001</value> </property> <property> <name>dfs.dataname.data.dir</name> <value>file:/hadoop/hdfs/data</value> <final>true</final> </property> <property> <name>dfs.namenode.secondary.http-address.ns1</name> <value>192.168.1.201:23002</value> </property> <property> <name>dfs.namenode.secondary.http-address.ns2</name> <value>192.168.1.201:23002</value> </property> <property> <name>dfs.namenode.secondary.http-address.ns1</name> <value>192.168.1.201:23003</value> </property> <property> <name>dfs.namenode.secondary.http-address.ns2</name> <value>192.168.1.201:23003</value> </property>

配置yarn-site.xml 添加 节点 <property> <name>yarn.resourcemanager.address</name> <value>192.168.1.201:18040</value> </property> <property> <name>yarn.resourcemanager.scheduler.address</name> <value>192.168.1.201:18030</value> </property> <property> <name>yarn.resourcemanager.webapp.address</name> <value>192.168.1.201:18088</value> </property> <property> <name>yarn.resourcemanager.resource-tracker.address</name> <value>192.168.1.201:18025</value> </property> <property> <name>yarn.resourcemanager.admin.address</name> <value>192.168.1.201:18141</value> </property> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce.shuffle</value> </property>

配置httpfs-site.xml 同步代码到其他机器 1.同步配置代 码 先在 slaves 的机器上也 创 建 mkdir -p /home/hadoop/source 部署hadoop代 码 , 创 建 软连接 ,然后只要同步修改 过 的etc/hadoop下的配置文件即可 2.同步 /etc/profile 3.同步 /etc/hosts scp -r /etc/profile root@hadoop2:/etc/profile scp -r /etc/hosts root@hadoop2:/etc/hosts 其他机器以此操作

Hadoop启动 格式化集群 hadoop namenode -format -clusterid clustername

启动hdfs 执行 start-dfs.sh 开 启 hadoop dfs服 务

启动Yarn 开 启 yarn 资 源管理服 务 start-yarn.sh 启动httpfs 开 启 httpfs 服 务 httpfs.sh start 使得 对外 可以提高 http 的restful接口服 务

展开阅读全文
打赏
0
2 收藏
分享
加载中
更多评论
打赏
0 评论
2 收藏
0
分享
返回顶部
顶部