国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

Hadoop1.2中配置偽分布式的實例

2019-11-26 15:31:29
字體:
來源:轉載
供稿:網友


1、設置ssh

安裝ssh相關軟件包:

復制代碼 代碼如下:
sudo apt-get install openssh-client openssh-server

然后使用下面兩個命令之一啟動/關閉sshd:
復制代碼 代碼如下:
sudo /etc/init.d/ssh start|stop
sudo service ssh start|stop

若成功啟動sshd,我們能看到如下類似結果:
復制代碼 代碼如下:
$ ps -e | grep ssh
 2766 ?        00:00:00 ssh-agent
10558 ?        00:00:00 sshd

這時候,如果運行如下ssh登錄本機的命令,會提示輸入密碼:
復制代碼 代碼如下:
ssh localhost

現在我們要做的就是讓它不需要輸入密碼:
復制代碼 代碼如下:
$ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa  #一個空密碼的SSH密鑰
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

這樣的話就行了。如果仍不湊效,可能是密鑰文件的權限設置不當。

2、配置hadoop

將hadoop-1.2.1解壓到~/下,同時在~/下建立目錄hadoop-env,繼續在hadoop-env下建立如下的目錄結構:

├── dfs
│   ├── checkpoint1
│   ├── data1
│   ├── data2
│   └── name1
└── test
    └── input
配置文件hadoop-1.2.1/conf/core-site.xml:

復制代碼 代碼如下:

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
  <property>
    <name>fs.default.name</name>
    <value>hdfs://localhost:9000</value>
    <final>true</final>
  </property>
</configuration>

fs.default.name來指定HDFS的uri,如果value中沒有提供端口,默認為8020。

配置文件hadoop-1.2.1/conf/hdfs-site.xml:

復制代碼 代碼如下:

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
  <property>
    <name>dfs.name.dir</name>
    <value>~/hadoop-env/dfs/name1</value>
    <final>true</final>
  </property>
  <property>
    <name>dfs.data.dir</name>
    <value>~/hadoop-env/dfs/data1,~/hadoop-env/dfs/data2</value>
    <final>true</final>
  </property>
  <property>
    <name>fs.checkpoint.dir</name>
    <value>~/hadoop-env/dfs/checkpoint1</value>
    <final>true</final>
  </property>
</configuration>

dfs.name.dir指定namenode存儲元數據的目錄,可以指定多個目錄,這些目錄要用逗號分開;dfs.data.dir指定datanode存放數據的目錄,可以指定多個目錄;fs.checkpoint.dir指定輔助namenode存放檢查點的目錄。

配置文件hadoop-1.2.1/conf/mapred-site.xml:

復制代碼 代碼如下:

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
  <property>
    <name>mapred.job.tracker</name>
    <value>localhost:9001</value>
    <final>true</final>
  </property>
</configuration>


3、測試

先格式化HDFS:

復制代碼 代碼如下:
./hadoop-1.2.1/bin/hadoop namenode -format

啟動HDFS和MapReduce進程:
復制代碼 代碼如下:

$ ./hadoop-1.2.1/bin/start-dfs.sh
$ ./hadoop-1.2.1/bin/start-mapred.sh

啟動時候如果報錯,例如localhost: Error: JAVA_HOME is not set.,需要在./hadoop-1.2.1/conf/hadoop-env.sh文件中export JAVA_HOME,例如:

export JAVA_HOME=~/jdk1.7.0_25
如何檢查是否成功啟動了: 第一種方法是使用jps命令(Java Virtual Machine Process Status Tool),應該有如下類似輸出:

復制代碼 代碼如下:

$ jps
13592 DataNode
13728 SecondaryNameNode
13837 JobTracker
12864 NameNode
13955 TaskTracker
16069 Jps

第二種方法是瀏覽器登錄http://localhost:50030查看jobtracker,http://localhost:50070查看namenode。如果在使用翻墻軟件,那么在訪問時可能會報錯,最簡單的解決方法是關掉翻墻軟件。 還有一種方法就是查看日志文件。

現在我們在~/hadoop-env/test/input目錄下建立兩個文件:

復制代碼 代碼如下:

$ echo "hello world" > test1.txt
$ echo "hi,world" > test2.txt

把這兩個文件導入HDFS:
復制代碼 代碼如下:

./hadoop-1.2.1/bin/hadoop dfs -put hadoop-env/test/input/  output/

查看:
復制代碼 代碼如下:

$ ./hadoop-1.2.1/bin/hadoop dfs -ls /
Found 2 items
drwxr-xr-x   - user supergroup          0 2013-10-22 22:07 /test
drwxr-xr-x   - user supergroup          0 2013-10-22 21:58 /tmp

$ ./hadoop-1.2.1/bin/hadoop dfs -ls /test
Found 2 items
-rw-r--r--   3 user supergroup         12 2013-10-22 22:07 /test/test1.txt
-rw-r--r--   3 user supergroup          9 2013-10-22 22:07 /test/test2.txt

OK,配置完成。

注:本文使用的系統是linux mint 15 64bit,hadoop使用的是1.2.1版本。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 石河子市| 聊城市| 石狮市| 柳州市| 齐齐哈尔市| 资溪县| 长春市| 六枝特区| 汉寿县| 西青区| 保定市| 肇东市| 二连浩特市| 湘阴县| 汶上县| 鄱阳县| 略阳县| 杭锦后旗| 盈江县| 平度市| 临邑县| 始兴县| 七台河市| 大渡口区| 湄潭县| 迭部县| 博湖县| 青冈县| 泾源县| 潼关县| 泗阳县| 通城县| 牙克石市| 常山县| 赤峰市| 沙雅县| 深泽县| 轮台县| 安西县| 商洛市| 沙湾县|