下载cygwin的setup.exe,双击运行:
选择从Internet安装:
设置安装目录:
设置安装包目录:
设置“Internet Connection”的方式,选择“Direct Connection”:
选择一个下载站点:
“下一步”之后,可能会d出下图的“Setup Alert”对话做销框,直接“确定”即可
在“Select Packages”对话框中,必须保证“Net Category”下的“OpenSSL”被安装:
如果还打算在eclipse 上编译Hadoop,则还必须安装“Base Category”下的“sed”:
“Devel Category”下的subversion 建议安装:
下载并安装:
当下载完后,会自动进入到“setup”的对话框:
在上图所示的对话框中,选中“Create icon on Desktop”,以方便直接从桌面上启动
Cygwin,然后点击“完悄桐成”按钮。至此,Cgywin 已经安装完成。
2、配置环境变量
需要配置的环境变量包括PATH 和JAVA_HOME:将JDK 的bin 目录、Cygwin 的bin 目录
以及Cygwin 的usr\bin(sbin)目录都添加到PATH 环境变量中;JAVA_HOME 指向JRE 安装目录。
3、windows系统上运行hadoop集群,伪分布式模式安装步骤:
①启动纯运游cygwin,解压hadoop安装包。通过cygdrive(位于Cygwin根目录中)可以直接映射到windows下的各个逻辑磁盘分区。例如hadoop安装包放在分区D:\下,则解压的命令为$ tar -zxvf /cygdrive/d/hadoop-0.20.2.tar.gz,解压后可使用ls命令查看,如下图:
默认的解压目录为用户根目录,即D:\cygwin\home\lsq(用户帐户)。
②编辑conf/hadoop-env.sh文件,将JAVA_HOME变量设置为java的安装目录。例如java安装在目录C:\Program Files\java\jdk1.6.0_13,如果路径没空格,直接配置即可。存在空格,需将Program Files缩写成Progra_1,如下图:
③依次编辑conf目录下的core-site.xml、mapred-site.xml和hdfs-site.xml文件,如下图:
④安装配置SSH
点击桌面上的Cygwin图标,启动Cygwin,执行ssh-host-config命令,然后按下图上的选择输入:
当提示Do you want to use a different name?输入yes,这步是配置安装的sshd服务,以哪个用户登录,默认是cyg_server这个用户,这里就不事先新建cyg_server这个用户,用当前本机的超管本地用户:chenx,后续根据提示,2次输入这个账户的密码
出现Host configuration finished. Have fun! 一般安装顺利完成。如下图:
输入命令$ net start sshd,启动SSH,如下图:
注:sshd服务安装完之后,不会默认启动,如果启动报登录失败,不能启动,可在服务属性-Log On窗口手工修改,在前述的过程之中,cygwin不会校验密码是否正确,应该只是校验了2次的输入是否一致,然后再手工启动。不知道为什么,sshd服务如果选择local system的登录方式,后续会有问题,所以sshd服务最好设置成当前的登录用户。
⑤配置ssh登录
执行ssh-keygen命令生成密钥文件
输入如下命令:
cd ~/.ssh
ls -l
cat id_rsa.pub >>authorized_keys
完成上述 *** 作后,执行exit命令先退出Cygwin窗口,如果不执行这一步 *** 作,下面的 *** 作可能会遇到错误。接下来,重新运行Cygwin,执行ssh localhost命令,在第一次执行ssh localhost时,会有“are you sure you want to continue connection<yes/no>?”提示,输入yes,然后回车即可。当出现下图提示,即顺利完成该步:
⑥hadoop运行
格式化namenode
打开cygwin窗口,输入如下命令:
cd hadoop-0.20.2
mkdir logs
bin/hadoop namenode –format
启动Hadoop
在Cygwin 中,进入hadoop 的bin 目录,
运行./start-all.sh 启动hadoop;
可以执行./hadoop fs -ls /命令,查看hadoop 的根目录;
可以执行jps 查看相关进程;
如下图:(如果显示和下图类似,一般hadoop安装/启动成功)
环境 :
修改名称和存储位置即可。
1.3.1 查看你PC上为VMware分配的IP地址段、子网掩码和网关。打开终端,输入如下命令:答伏搏
more /Library/Preferences/VMware\ Fusion/vmnet8/dhcpd.conf
添加以下信息:
重启机器即可完成静态IP的清祥修改。记得 ping www.baidu.com 测试网络的连通性。
1.4.1 修改主机名称
sudo vim /etc/hostname
将文件修改为你的主机名,例如hadoop101
1.4.2 修改主机名和host的映射
sudo vim /etc/hosts
1.4.3 重启机器,并使用 ping hadoop10x 测试连通性。
如果你在第一台虚拟机上完成了伪分布模式的搭建,那么此时克隆的两台机器也同样拥有JDK和Hadoop。
scp命令
此时,如果只有一台机器完成了jdk和Hadoop的安装配置,我们可以使用 scp 命令完成数据的安全拷贝。
命令格式: scp -r 要拷贝的文件路径/名称 user@ip:目的路径/名称
rsync命令
与 scp 相同的还有一个命令时 rsync ,其主要用于备份和镜像。 rsync 做文件的复制要比 scp 的速度快, rsync 只对差异文件做更新。 scp 将所有文件都复制过去。使用方法和 scp 一样。
基本格式: rsync -rvl 源文件 目的路径
集群分发脚本
脚本sxync.sh可以更好的同步数据到其他机器上
这个很重要,后面的所有配置都是按照这个来的
3.2.1 配置hadoop-env.sh
3.2.2 配置hdfs-site.xml文件
3.3.1 配置yarn-env.sh
3.3.2 配置yarn-site.xml文件
3.4.1 配置mapred-env.sh
3.4.2 配置mapred-site.xml文件
xsync /opt/module/hadoop-x.x.x/
rm -rf data/ logs/
根据集群配置图,我们可以发现NameNode在hadoop102上,所以我们连接hadoop102,并执行如下命令:
bin/hdfs namenode -format
此时,不允许有任何错,否则格式化失败
4.4.1 在hadoop101上启动DataNode。
sbin/hadoop-daemon.sh start datanode
4.4.2 在hadoop102上启动NameNode和DataNode。
sbin/hadoop-daemon.sh start namenode
sbin/hadoop-daemon.sh start datanode
4.4.3 在hadoop101上启动DataNode和SecondaryNode
sbin/hadoop-daemon.sh start datanode
sbin/hadoop-daemon.sh start secondarynamenode
在浏览器中输入 http://hadoop102:50070 查看集群是否启动成功。如果本机的hosts里边没有Hadoop102到ip地址的映射,此时会无法访问,两种办法:第一,使用过ip:端厅迅口号访问;第二,在本机hosts文件里加入三个节点的主机名到ip地址的映射。
5.1.1 在hadoop101上使用指令ssh-keygen -t rsa生成公钥和密钥
6.2.1 在hadoop102上启动HDFS
sbin/start-dfs.sh
7.1 一个大文件个一个小文件
bin/hdfs dfs -put wcinput/wc.input /
bin/hdfs dfs -put /opt/software/hadoop-x.x.x.tar.gz
7.2 在浏览器中输入 http://hadoop102:50070 查看上传结果:
大功告成,告别从入门到放弃!
将配置的伪分布模式的虚拟机克隆两份并更名为centos_node2和centos_note3分别打开三个虚拟机,第一个基本不需要配置了,现在主要配置centos_note2和centos_note3的配置。
1. 首先修改IP地址和主机名
因为centos是hadoop1和192.168.100.11,在这里设置centos_note2和centos_note3的主机名和IP地址分别为:hadoop2/192.168.100.12和hadoop3/192.168.100.13。并把主机名和ip地址绑定
centos_note2的修改主机名:
#vim /etc/sysconfig/network 下的HOSTNAME=hadoop2,centos_note3的相应的改为hadoop3
再通过#hostname hadoop2。设置临时的主机名那么机器就不用重新启动了。
Note2的修改ip地址:在右上角点编辑链接,然后编辑将ipv4改为手动,地址192.168.100.12 掩码:255.255.255.0 网关:192.168.100.1。
Note3的改为相应的ip
绑定ip和主机名:
#vim /etc/hosts
Ip hostname
192.168.100.12 hadoop2
保存并重启网络服务:
#service network restart
在宿主机上ping以下看是否三台机器都能ping通。一般情况都能通的。只要和宿主机上的VMnet1网关在同一网段一般没问题。
通过pietty远程连接三台虚拟机,进行下一步的 *** 作
2. 将note2和note3中配置数据重置
a) 删掉远程连接ssh免登陆:
#rm –rf /root/.ssh/*
b) 删掉原来的hadoop安装程序
#rm –rf /usr/local/*(如果该目录下还有其他的有用数据,则只删除hadoop的即可)
c) 删掉环境变量中的hadoop和jdk的配置
#vim /etc/profile
将JAVA_HOME和HADOOP_HOM的那三行都删掉
#source /etc/profile 使得环境变量配置文件重新生效
3. 重新配置三台虚拟机,搭建集群环境前的系统环境
a) 配置每台机器上的ssh免密码登录(以主机名为hadoop1的centos为例)
#ssh-keygen –t rsa 一路回车,在/root/.ssh/下生成id_rsa.pub
生成公钥信息
#cp id_rsa.pub authorized_keys (不能写错否则就不能免密码登录了)
#登录本机,免密码登录
#ssh hadoop1 就能免密码登录了
其他两台也是同样的 *** 作
b) 三台机器间的免密码登录
将自己兄凯的公钥复制到允许需要免密码弊尘嫌登录的其他主机上
#ssh-copy-id -i hadoop2
输入hadoop2的密码
下次就可以免密码登录了。
如果主机名和ip没有绑定会出现这样的错误
在hadoop2和hadoop3上分别执行
##ssh-copy-id -i ip(hadoop1的ip)
完事后hadoop2和hadoop3就可以免密码登录hadoop1了。
将hadoop1下的ssh免密码许可文件复制到hadoop2和hadoop3上
#scp /root/.ssh/authorized_keys root@hadoop2:/root/.ssh/
如果之前做过hadoop1到相应主机的免密码登录就不需要密码,没做过就需要输入密码。分别复制完成后,现在三台虚拟机之间就可以互相免密码登录了,但还不能使用主机名登录,现在讲ip和主机名绑定的hosts文件租手也在三台虚拟机之间同步
#scp /etc/hostsroot@hadoop2:/etc/hosts
这样三台虚拟机之间就可以通过主机名相互免密码登录了。
c) 为hadoop2和hadoop3复制安装文件和配置文件
前提:为了保持干净和便于查找错误,将hadoop下的logs和tmp目录删除
#cd /usr/local/hadoop/
#rm –rf ./{logs/,tmp/}
将jdk和hadoop安装文件复制都hadoop2和hadoop3
# scp -r /usr/local/{jdk,hadoop} hadoop2:/usr/local/
# scp -r /usr/local/{jdk,hadoop} hadoop3:/usr/local/
将profile配置文件复制到hadoop2和hadoop3
# scp -r /etc/profile hadoop2:/etc/
在每个节点使profile生效:
#source /etc/profile
4. 搭建集群环境
a) 修改hadoop1下的hadoop的配置文件slaves,将另两台主机名加进去作为从节点,hadoop1作为主节点。每个主机名占一行
b) 启动hadoop集群环境
i. 先格式化namenode
#hadoop namenote –format
ii. 启动hadoop集群
#start-all start
这样在主节点上就启动了是哪个进程NameNode、JobTracker、SecondarynameNode。在从节点启动了DataNode和TaskTracker
点击Live Bodes
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)