第十一讲
1、配置Cygwin支持无密码SSH登陆
安装SSH
默认的Cygwin没有安装ssh,所以重新运行http://www.cygwin.com/setup.exe
在Select Packages的时候,在search输入ssh,选择openssh:The OpenSSH server and client programs
配置SSH服务(以管理员身份运行cygwin)
ssh-host-config
Should privilege separation be used? yes
Do you want to install sshd as a service? yes
默认确认
Do you want to use a different name? no
Create new privileged user account 'cyg_server'? yes
输入密码
cygrunsrv -S sshd
如果需要重新安装sshd服务,可以用cygrunsrv -R sshd
生成SSH Key
ssh-keygen -t rsa(密码为空,路径默认)
cp .ssh/id_rsa.pub .ssh/authorized_keys
登陆
ssh localhost
2、win上的HADOOP单机伪分布式
准备HADOOP运行环境
下载解压并拷贝到Cygwin的用户主目录
http://archive.apache.org/dist/hadoop/core/hadoop-0.20.2/hadoop-0.20.2.tar.gz
1.x版本有BUG,参考:
https://issues.apache.org/jira/browse/HADOOP-7682
https://issues.apache.org/jira/browse/HADOOP-8274
BUG修复请参考:
http://en.wikisource.org/wiki/User:Fkorning/Code/Hadoop-on-Cygwin
在/home/ysc/.bashrc 中追加:
export JAVA_HOME=/home/ysc/jdk1.7.0_17
export PATH=/home/ysc/hadoop-0.20.2/bin:$JAVA_HOME/bin:$PATH
在hadoop-0.20.2/conf/hadoop-evn.sh中追加
export JAVA_HOME=/home/ysc/jdk1.7.0_17
export HADOOP_LOG_DIR=/tmp/logs
创建符号链接
mklink /D C:\tmp C:\cygwin\tmp
重新登录就生效
ssh localhost
which hadoop
配置HADOOP运行参数
vi conf/core-site.xml
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
vi conf/hdfs-site.xml
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
vi conf/mapred-site.xml
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
<property>
<name>mapred.tasktracker.map.tasks.maximum</name>
<value>4</value>
</property>
<property>
<name>mapred.tasktracker.reduce.tasks.maximum</name>
<value>4</value>
</property>
格式化名称节点并启动集群
hadoop namenode -format
启动集群并查看WEB管理界面
start-all.sh
访问http://localhost:50030可以查看 JobTracker 的运行状态
访问http://localhost:50060可以查看 TaskTracker 的运行状态
访问http://localhost:50070可以查看 NameNode 以及整个分布式文件系统的状态,浏览分布式文件系统中的文件以及 log 等
停止集群
stop-all.sh停止集群
3、 执行wordcount命令
hadoop jar hadoop-0.20.2-examples.jar wordcount input output