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

 
Thuật toán tìm kiếm của Google bị thách thức

Thuật toán tìm kiếm của Google bị thách thức

Từ giờ tới cuối năm, thị trường tìm kiếm sẽ đón nhận một công cụ tìm kiếm mới đầy triển vọng, sẵn sàng đối đầu với thuật toán tìm kiếm của Google.

Asus Transformer giá còn gần 9 triệu đồng, trong khi giá trước đó là hơn 11 triệu

Giá iPad 2 chính hãng tại Việt Nam chỉ còn 9,4 triệu đồng

Ngoài iPad 2, máy tính bảng cao cấp của Asus, HTC, Samsung vừa có đợt điều chỉnh giá. Thị trường MTB sau giai đoạn iPad 3 xuất hiện bắt đầu trầm lắng trở lại.

iPhone sẽ có thêm tính năng nhận dạng khuôn mặt (Face Unlock)

iPhone sẽ có thêm tính năng nhận dạng khuôn mặt (Face Unlock)

Theo Patently Apple thì Apple đã gửi đơn xin đăng ký bằng sáng chế cho công nghệ nhận diện khuôn mặt trên các thiết bị di động...

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

 

Diet con trung