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. xpath定位相邻元素方法

    在定位页面元素时,有时候需要根据某个元素特征,去定位其相邻元素/兄弟元素,或者定位其父元素的兄弟元素(或叔伯元素的子元素).这里引入xpath的两个定位方法: preceding-sibling fo ...

  2. C++解析(10):struct和class的区别

    0.目录 1.默认访问级别 2.默认继承方式 2.1 分别独立继承 2.2 struct继承class 2.3 class继承struct 3.小结 1.默认访问级别 在用struct定义类时,所有成 ...

  3. java中初始化块、静态初始化块和构造方法

    (所谓的初始化方法init()是另一回事, 在构造方法之后执行, 注意不要混淆) 在Java中,有两种初始化块:静态初始化块和非静态初始化块.它们都是定义在类中,用大括号{}括起来,静态代码块在大括号 ...

  4. Java进程配置文件Reload

    我们在开发Java程序的时候,很多常量信息都存在配置文件中,比如数据库连接信息.ip黑名单,事件的超时时间等等.当需要该这些配置的值时都需要重新启动进程,改动的配置才会生效,有时候线上的应用不能容忍这 ...

  5. 【CF55D】Beautiful numbers(动态规划)

    [CF55D]Beautiful numbers(动态规划) 题面 洛谷 CF 题解 数位\(dp\) 如果当前数能够被它所有数位整除,意味着它能够被所有数位的\(lcm\)整除. 所以\(dp\)的 ...

  6. 在华为eNSP中配置简单的DHCP

    拓扑图,如图1 图1 在AR1中的配置过程如图2 图2 通过PC1查看是否分配了地址,如图3 图3

  7. 【51Nod1386】双马尾机器人Description 解题报告

    [51Nod1386]双马尾机器人Description ​ 给定\(n\)和\(k\),我们要在\(1,2,3,...,n\)中选择若干的数,每一种选择的方案被称为选数方案. ​ 我们定义一种选数方 ...

  8. ssh后台执行

    1 执行scp命令,开始传输2 scp传输开始后,用ctrl+z,再以bg命令将其转入后台运行. 3以exit命令安全退出即可令scp继续执行,不受关闭shell的影响.

  9. 【BZOJ 1129】[POI2008]Per 二叉堆

    这个东西读完题之后,就能知道我们要逐位计算贡献.推一下式子,会发现,这一位的贡献,是当前剩余的数字形成的序列的总数,乘上所剩数字中小于s上这一位的数的个数与所剩数字的总数的比.所以我们维护“当前剩余的 ...

  10. Codeforces 526.D Om Nom and Necklace

    D. Om Nom and Necklace time limit per test 1 second memory limit per test 256 megabytes input standa ...