Hướng dẫn cài đặt và sử dụng Hadoop

Hướng dẫn cài đặt và sử dụng Hadoop

Chuẩn bị:

+Cài đặt Vmware Workstation, máy ảo ubuntu và cài vmware tools

+Vm–>Settings–>chọn như hình sau:

Hướng dẫn cài đặt và sử dụng Hadoop

Trong hình SharedCloud là thư mục dùng chung của hệ điều hành của bạn và Ubuntu. Ubuntu sẽ tìm thấy folder SharedCloud trong /mnt/hgfs/

+Cài đặt ssh:

$ sudo apt-get install ssh

+Cài đặt Java: download jdk-6u23-linux-i586.bin  đặt trong thư mục dùng chung (SharedCloud)

$ cd /usr/java

$ /mnt/hgfs/SharedCloud/jdk-6u23-linux-i586.bin

+Cài đặt Hadoop: download hadoop-0.19.2.tar.gz đặt trong SharedCloud

$ tar –zxvf /mnt/hgfs/SharedCloud/hadoop-0.19.2.tar.gz

NB: phiên bản hadoop-0.21.0.tar.gz ko có gói ví dụ sắp được tiến hành trong bài này

+Edit conf/hadoop-env.sh: có thể dùng Text editor có sẵn trong Ubuntu hoặc dùng lệnh nano conf/hadoop-env.sh để sửa lại theo đường dẫn cài đặt của java

export JAVA_HOME=/usr/java/jdk1.6.0_23 (nhớ bỏ dấu # đầu câu)

Tiến hành:

Hadoop cung cấp 3 cách hoạt động, thí nghiệm này dùng ví dụ sẵn có WordCount(thống kê tổng cộng tần số xuất hiện của từng chữ trong nhiều file) để minh họa cho 3 mô hình

+Chạy trên 1 máy (Single Node):

$ cd hadoop-0.19.2

$ mkdir input

$ cd input

$ echo “hello world”>text1.txt

$ echo “hello hadoop”>text2.txt

$ cd

$ bin/hadoop jar hadoop-0.19.2-examples.jar wordcount input ouput

$ cat output/*

+Phân bố giả(Pseudo-Distributed)

Cách này mô phỏng theo ứng dụng thật của Hadoop bằng cách tạo ra nhiều process (NameNode, DataNode, JobTracker, TaskTracker, Secondary NameNode) chạy trên cùng 1 máy.

Sửa file conf/hadoop-site.xml

<configuration>

<property>

<name>fs.default.name</name>

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

</property>

<property>

<name>mapred.job.tracker</name>

<value>localhost:9001</value>

</property>

<property>

<name>dfs.replication</name>

<value>1</value>

</property>

</configuration>

Tạo cặp mật mã :

$ ssh-keygen –t rsa

Sau đó cứ nhấn enter liên tiếp.

$ cd .ssh

$ cp id_rsa.pub authorized_keys

$ ssh localhost

$ cd

Chạy ví dụ:

$ bin/hadoop namenode –format

$ bin/start-all.sh

Có thể mở internet explorer ra xem trạng thái của distributed file system tại http://localhost:50070, của Jobtracker tại http://localhost:50030, của TaskTracker tại http://localhost:50060

Chạy tiếp các lệnh sau:

$ bin/hadoop fs –put input in

$ bin/hadoop jar hadoop-0.19.2-examples.jar wordcount in out

$ bin/hadoop fs –cat out/*

Kết thúc tất cả process:

$ bin/stop-all.sh

Notes:

Khi tạo new folder nếu báo lỗi không đủ quyền thì có thể đặt sudo trước lệnh tạo.

Để ý chữ thường hay chữ hoa, ví dụ bạn gõ sai thành bin/hadoop NameNode –format thì luôn báo lỗi

+Phân bố hoàn toàn (fully-distributed)

Cài thêm 2 máy ảo (ubuntu), cài gói java, sửa hostname lại thành ubuntu1, ubuntu2, ubuntu3

$ sudo hostname ubuntu1

$ sudo gedit /etc/hostname

Ubuntu1 sẽ làm NameNode, sửa file /etc/hosts theo địa chỉ ip của các máy:

127.0.0.1 localhost

192.168.1.31 ubuntu1

192.168.1.32 ubuntu2

192.168.1.33 ubuntu3

Máy ubuntu2 và ubuntu3 làm DataNode, cũng sửa /etc/hosts lại

127.0.0.1 localhost

192.168.1.31 ubuntu1

192.168.1.32 ubuntu2

127.0.0.1 localhost

192.168.1.31 ubuntu1

192.168.1.33 ubuntu3

Tạo user tên grid trên 3 máy:

$ useradd –m grid

$ passwd grid

Trên 3 máy đều tạo folder ssh

$ mkdir .ssh

Trên ubuntu1 tạo cặp mật mã và copy sang 2 máy còn lại

$ ssh-keygen –t rsa

$ cd .ssh

$ cp id_rsa.pub authorized_keys

$ scp authorized_keys ubuntu2:/home/grid/.ssh

$ scp authorized_keys ubuntu3:/home/grid/.ssh

Trên 3 máy

$ chmod 644 authoried_keys

Config hadoop

Trên ubuntu1

$ tar –zxvf  /mnt/hgfs/SharedCloud/hadoop-0.19.2.tar.gz

Sửa đường dẫn Java trong conf/hadoop-env.sh lại cho đúng

Sửa file conf/hadoop-site.xml

<property>

<name>fs.default.name</name>

<value>hdfs://ubuntu1:9000</value>

</property>

<property>

<name>mapred.job.tracker</name>

<value>ubutu1:9001</value>

</property>

<property>

<name>dfs.replication</name>

<value>3</value>

</property>

Sửa conf/master với nội dung ubuntu1; conf/slaves với nội dung ubuntu2 và ubuntu3

Copy hadoop từ ubuntu1 sang 2 máy còn lại:

$ scp –r hadoop-0.19.2 ubuntu2:/home/grid

$ scp –r hadoop-0.19.2 ubuntu3:/home/grid

Nếu các máy ubuntu2 và ubuntu3 sử dụng java có version khác với ubuntu1 hoặc cài java ở thư mục khác thì phải sửa lại conf/hadoop-env.sh cho phù hợp

Chạy hadoop

$ bin/hadoop namenode –format

$ bin/start-all.sh

Tạo folder input chứa 2 file như phần trước

$ bin/hadoop dfs –put input in

$ bin/hadoop jar hadoop-0.19.2-examples.jar wordcount in out

$ bin/hadoop dfs –cat out/*

Kết thúc

$ bin/stop-all.sh

Notes:

1/Sau khi start-all, bạn có thể xem status của hệ thống tại http://ubuntu1:50070, http://ubuntu1:50030

2/Khi muốn format lại NameNode thì làm như sau:

Dùng bin/stop-all.sh

Xóa folder HADOOP_HOME/tmp

Format lại NameNode

Khởi động lại

3/Sau khi start-all nhưng không kết nối được trang http://ubuntu1:50070, chứng tỏ NameNode chưa được khởi động đúng, nếu dùng lệnh stop-all thì báo là no namenode to stop, cần khởi động lại lần nữa

4/Khi dùng lệnh bin/hadoop dfs -put input in thì báo lỗi could only be replicated to 0 nodes, instead of 1, mở http://ubuntu1:50070 thì thấy livenodes: 0 (livenodes trường hợp này phải là 2 mới đúng), format lại NameNode có thể khắc phục lỗi này (nhưng không phải lúc nào cũng thành công).

5/Qua thí nghiệm nhận thấy, lệnh start-all thường không khởi động đầy đủ 5 processes (như 2 lỗi 3/ và 4/), trường hợp này có thể dùng bổ sung 2 lệnh

bin/start-dfs.sh (khởi động NameNode và DataNode)

bin/start-mapred.sh (khởi động JobTracker và TaskTracker)

Bạn thấy bài viết này như thế nào?: 
No votes yet
Ảnh của Tommy Tran

Tommy owner Express Magazine

Drupal Developer having 9+ year experience, implementation and having strong knowledge of technical specifications, workflow development. Ability to perform effectively and efficiently in team and individually. Always enthusiastic and interseted to study new technologies

  • Skype ID: tthanhthuy

Tìm kiếm bất động sản

 

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
Best To Do Apps for Android Phones

Best To Do Apps for Android Phones

Android phones are lovely little gadgets that make your life absolutely fun, simply because they can do so many things that other phones cannot.

Giá rẻ - Xu thế đang lên của tablet

Giá rẻ - Xu thế đang lên của tablet

Không phải là quá khó để chúng ta có thể nhận thấy việc tablet giá rẻ đang chiếm lĩnh trên thị trường hiện nay. Khởi đầu với Kindle Fire, chiếc tablet có mức giá chưa tới 200 USD (4 triệu đồng) của Amazon. Được bán ra với mức giá chấp nhận lỗ của Amazon để kiếm lợi từ những nội dung số, Kindle Fire thực sự là một cú hích lớn đối với tablet Android.

Một số điểm quan trọng khi sử dụng Drupal 8 Composer lưu ý

Một số điểm quan trọng khi sử dụng Drupal 8 Composer lưu ý

Whether you are familiar with Composer or not, using it to manage dependencies on a Drupal project entails its own unique set of best practices. In this article, we will start by getting a Composer-managed Drupal project set up

Công ty diệt chuột T&C

 

Diet con trung