1、安装Bash on Windows

  这个参考官网步骤,很容易安装,https://msdn.microsoft.com/en-us/commandline/wsl/install_guide

  安装过程很简单,主要是从应用商店下载bash的时候,比较容易失败,可能需要多试几次。

2、配置SSHD

  自带的命令行比较简陋,操作不方便。可以开启sshd,然后用xshell等终端登录。

  

/etc/ssh/
vim sshd_config #修改以下几项
Port #windows 10会默认占用22端口,所以这里需要换成22端口外的其他端口。
ListenAddress 0.0.0.0
UsePrivilegeSeparation no
PasswordAuthentication yes #运行
sudo ssh-keygen -A #测试可以使用ssh username@localhost -p 2222进行登录了 #编辑/etc/sudoers 添加下面一行(using sudo visudo for safety): %sudo ALL=(ALL) NOPASSWD: /usr/sbin/sshd -D#便于从外部启动sshd。

3、开启windows自动运行sshd

  

新建startssh.bat

cd C:\Windows\System32
bash.exe -c "sudo /usr/sbin/sshd -D" 新建 autostartssh.vbe set ws=wscript.createobject("wscript.shell")
ws.run "startssh.bat /start",0 双击autostartssh.vbe,启动sshd
将autostartssh.vbe加入windows自启动

4、创建hadoop用户

sudo useradd -m hadoop

sudo passwd hadoop

sudo adduser hadoop sudo

5、设置免密码登录

使用hadoop账号登录

   cd ~

   ssh-keygen -t rsa

cd .ssh

cat ./id_rsa.pub >> ./authorized_keys

6、配置java环境

vim ~/.bashrc

export JAVA_HOME=/home/hadoop/programs/jdk1.8.0_131

export PATH=$PATH:$JAVA_HOME/bin

source ~/.bashrc

7、安装hadoop

tar -zxf hadoop-2.8.0.tar.gz

cd hadoop-2.8.0

./bin/hadoop version

默认单机版,运行测试例子

mkdir ./input

cp ./etc/hadoop/*.xml ./input   # 将配置文件作为输入文件

./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep ./input ./output 'dfs[a-z.]+'

cat ./output/*

8、配置伪分布式

vim etc/hadoop/core-site.xml

#路径必须放在能设置linux权限的目录

修改为

<configuration>

<property>

<name>hadoop.tmp.dir</name>

<value>file:/home/hadoop/programs/hadoop-2.8.0/tmp</value>

<description>Abase for other temporary directories.</description>

</property>

<property>

<name>fs.defaultFS</name>

<value>hdfs://localhost:9000</value>

</property>

</configuration>

修改 etc/hadoop/hdfs-site.xml

<configuration>

<property>

<name>dfs.replication</name>

<value>1</value>

</property>

<property>

<name>dfs.namenode.name.dir</name>

<value>file:/home/hadoop/programs/hadoop-2.8.0/tmp/dfs/name</value>

</property>

<property>

<name>dfs.datanode.data.dir</name>

<value>file:/home/hadoop/programs/hadoop-2.8.0/tmp/dfs/data</value>

</property>

</configuration>

格式化hdfs

./bin/hdfs namenode -format

vim ~/.bashrc

export HADOOP_SSH_OPTS="-p 2222" #根据实际情况编写,ssh的端口设置

vim etc/hadoop/hadoop-env.sh

注释掉export JAVA_HOME=${JAVA_HOME}, 添加新的JAVA_HOME

#export JAVA_HOME=${JAVA_HOME}

export JAVA_HOME=/home/hadoop/programs/jdk1.8.0_131

启动

./sbin/start-dfs.sh

停止

./sbin/stop-dfs.sh

使用jps来判断是否启动成功, “NameNode”、”DataNode” 和 “SecondaryNameNode”

9、运行伪分布式例子

./bin/hdfs dfs -mkdir -p /user/hadoop

./bin/hdfs dfs -mkdir input

./bin/hdfs dfs -put ./etc/hadoop/*.xml input

./bin/hdfs dfs -ls input

./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep input output 'dfs[a-z.]+'

./bin/hdfs dfs -cat output/*

10、配置YARN

mv ./etc/hadoop/mapred-site.xml.template ./etc/hadoop/mapred-site.xml

vim etc/hadoop/mapred-site.xml

<configuration>

<property>

<name>mapreduce.framework.name</name>

<value>yarn</value>

</property>

</configuration>

vim etc/hadoop/yarn.site.xml

<configuration>

<property>

<name>yarn.nodemanager.aux-services</name>

<value>mapreduce_shuffle</value>

</property>

#如果出现running beyond virtual memory limits,添加下面这个配置

<property>

<name>yarn.nodemanager.vmem-check-enabled</name>

<value>false</value>

</property>

</configuration>

./sbin/start-yarn.sh      # 启动YARN

./sbin/mr-jobhistory-daemon.sh start historyserver  # 开启历史服务器,才能在Web中查看任务运行情况

运行jps

多了 NodeManager 和 ResourceManager 两个后台进程

windows 10开启bash on windows,配置sshd,部署hadoop的更多相关文章

  1. Windows 10 & git & bash

    Windows 10 & git & bash If you are on Windows, we recommend downloading Git for Windows and ...

  2. 背水一战 Windows 10 (122) - 其它: 通过 Windows.System.Profile 命名空间下的类获取信息, 查找指定类或接口的所在程序集的所有子类和子接口

    [源码下载] 背水一战 Windows 10 (122) - 其它: 通过 Windows.System.Profile 命名空间下的类获取信息, 查找指定类或接口的所在程序集的所有子类和子接口 作者 ...

  3. Windows 2016 & Windows 10 中IIS安装和配置PHP的步骤

    Windows 2016 和 Windows 10 内核是相同的,我们首先需要安装 Internet Information Services (IIS),当然 Win2016 跟 Win10 安装  ...

  4. Oracle 11gR2 客户端windows 10安装后PL/SQL配置

    操作系统:windows 10 软件:Oracle 11gR2 客户端 (64 bit) PLSQL Developer 13 (64 bit) 注意:PLSQL与oracle客户端版本要一致 1. ...

  5. Windows 10开启默认网络驱动器访问

    在Windows 10的系统策略中,驱动器盘符的网络访问是默认关闭的,用管理员权限打开注册表,找到HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Curre ...

  6. 使用Windows Azure的VM安装和配置CDH搭建Hadoop集群

    本文主要内容是使用Windows Azure的VIRTUAL MACHINES和NETWORKS服务安装CDH (Cloudera Distribution Including Apache Hado ...

  7. 【Windows 10 IoT - 3】Windows 10 RTM安装及新特性(树莓派 Pi2)

    在<[Window 10 IoT - 1]Window 10系统安装(树莓派 Pi2)>中,我们介绍了Windows 10 IoT预览版的安装,正式版Windows 10 IOT(OS版本 ...

  8. Windows 10 IoT Serials 3 - Windows 10 IoT Core Ardunio Wiring Mode

    Maker社区和智能硬件的朋友一定知道Arduino,很多3D打印机都是用它做的.为了迎合这一大块市场,微软在基于Intel Galileo的Windows 8.1 IoT中就是使用这种基于Ardui ...

  9. Windows 10 IoT Serials 2 - Windows 10 IoT RTM 升级教程

    7月29日,微软推出了Windows 10 for PC的正式版,其版本号是Build 10240.近两天官方说已经有4700万的下载安装量,同时这个数字还在不断攀升.另外,除了Windows 10 ...

随机推荐

  1. [CTSC2012]熟悉的文章 后缀自动机

    题面:洛谷 题解: 观察到L是可二分的,因此我们二分L,然后就只需要想办法判断这个L是否可行即可. 因为要尽量使L可行,因此我们需要求出对于给定L,这个串最多能匹配上多少字符. 如果我们可以对每个位置 ...

  2. Linux内核分析4

    周子轩原创作品转载请注明出处  <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 使用库函数API和C代码 ...

  3. MySQL数据库中tinyint字段值为1,读取出来为true的问题

    原文:https://blog.csdn.net/shuyou612/article/details/46788475 MySQL数据库中tinyint字段值为1,读取出来为true的问题   今天在 ...

  4. poj3613Cow Relays

    Cow Relays Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 7683   Accepted: 3017 Descri ...

  5. web项目中解决post乱码和get乱码的方法

    前提复习编码问题产生的原因: 1.  什么是URL编码. URL编码是一种浏览器用来打包表单输入的格式,浏览器从表单中获取所有的name和其对应的value,将他们以name/value编码方式作为U ...

  6. 类的起源与metaclass

    一.概述 我们知道类可以实例化出对象,那么类本身又是怎么产生的呢?我们就来追溯一下类的起源. 二.类的起源 2.1 创建一个类 class Foo(object): def __init__(self ...

  7. CDN问题积累

    我见到的CDN服务器只支持GET方法,只能以URL为索引来缓存内容. 有的时候我用相同的URL,相同的GET方法,但是不同Header参数时,后台对应的应该是不同的方法,返回不同的结果. 而这时候使用 ...

  8. extjs grid demo

    Ext.onReady(function () { var store = Ext.create('Ext.data.Store', { fields: ['id', 'name', 'account ...

  9. AbstractTransactionalJUnit4SpringContextTests事务回滚

    在单元测试中继承AbstractTransactionalJUnit4SpringContextTests类的 时候,会默认事务回滚. 需要照常执行的话,在执行的测试方法上添加@Rollback(fa ...

  10. cmd下常用命令汇总

    1.获得文件夹内所有文件的文件名列表 dir *.png /b>list.txt 其中: (1)*.png表示筛选后缀为.png的文件 (2)/b为输出的模式.如下: 引用 /b 只有文件名  ...