2013-07-22 26 views
5

EDIT: Cuối cùng tôi đã tìm ra vấn đề là gì. Một số tệp có bộ nhân bản rất cao được thiết lập và tôi đã giảm cụm của mình thành 2 nút. Một khi tôi đã giảm yếu tố nhân rộng của mình vào các tệp đó, việc ngừng hoạt động đã kết thúc thành công một cách nhanh chóng.Nút Hadoop mất một thời gian dài để ngừng hoạt động

Tôi đã thêm các nút để được ngừng hoạt động trong dfs.hosts.excludemapred.hosts.exclude tập tin, và thực hiện lệnh này:

bin/hadoop dfsadmin -refreshNodes.

Trong giao diện người dùng NameNode, tôi thấy nút này dưới Decommissioning Nodes, nhưng mất quá nhiều thời gian và tôi không có nhiều dữ liệu trên nút bị ngừng hoạt động.

Có phải mất một thời gian rất lâu để các nút hủy hoặc có một số nơi tôi nên tìm không? Tôi không chắc chính xác những gì đang xảy ra.

Tôi không thấy bất kỳ khối hỏng cũng vào nút này:

$ ./hadoop/bin/hadoop fsck -blocks/
Total size: 157254687 B 
Total dirs: 201 
Total files: 189 (Files currently being written: 6) 
Total blocks (validated):  140 (avg. block size 1123247 B) (Total open file blocks (not validated): 1) 
Minimally replicated blocks: 140 (100.0 %) 
Over-replicated blocks:  6 (4.285714 %) 
Under-replicated blocks:  12 (8.571428 %) 
Mis-replicated blocks:   0 (0.0 %) 
Default replication factor: 2 
Average block replication:  1.9714285 
Corrupt blocks:    0 
Missing replicas:    88 (31.884058 %) 
Number of data-nodes:   3 
Number of racks:    1 
FSCK ended at Mon Jul 22 14:42:45 IST 2013 in 33 milliseconds 


The filesystem under path '/' is HEALTHY 

$ ./hadoop/bin/hadoop dfsadmin -report 
Configured Capacity: 25357025280 (23.62 GB) 
Present Capacity: 19756299789 (18.4 GB) 
DFS Remaining: 19366707200 (18.04 GB) 
DFS Used: 389592589 (371.54 MB) 
DFS Used%: 1.97% 
Under replicated blocks: 14 
Blocks with corrupt replicas: 0 
Missing blocks: 0 

------------------------------------------------- 
Datanodes available: 3 (3 total, 0 dead) 

Name: 10.40.11.107:50010 
Decommission Status : Decommission in progress 
Configured Capacity: 8452341760 (7.87 GB) 
DFS Used: 54947840 (52.4 MB) 
Non DFS Used: 1786830848 (1.66 GB) 
DFS Remaining: 6610563072(6.16 GB) 
DFS Used%: 0.65% 
DFS Remaining%: 78.21% 
Last contact: Mon Jul 22 14:29:37 IST 2013 


Name: 10.40.11.106:50010 
Decommission Status : Normal 
Configured Capacity: 8452341760 (7.87 GB) 
DFS Used: 167412428 (159.66 MB) 
Non DFS Used: 1953377588 (1.82 GB) 
DFS Remaining: 6331551744(5.9 GB) 
DFS Used%: 1.98% 
DFS Remaining%: 74.91% 
Last contact: Mon Jul 22 14:29:37 IST 2013 


Name: 10.40.11.108:50010 
Decommission Status : Normal 
Configured Capacity: 8452341760 (7.87 GB) 
DFS Used: 167232321 (159.49 MB) 
Non DFS Used: 1860517055 (1.73 GB) 
DFS Remaining: 6424592384(5.98 GB) 
DFS Used%: 1.98% 
DFS Remaining%: 76.01% 
Last contact: Mon Jul 22 14:29:38 IST 2013 

Trả lời

6

Tháo dỡ không phải là một quá trình ngay lập tức, ngay cả khi bạn không có nhiều dữ liệu. Trước tiên, khi bạn ngừng hoạt động có nghĩa là dữ liệu phải được sao chép khá nhiều khối (tùy thuộc vào kích thước khối của bạn lớn như thế nào) và điều này có thể dễ dàng áp đảo cụm của bạn và gây ra các vấn đề hoạt động, vì vậy tôi tin rằng đây là hơi bị giật.

Ngoài ra, tùy thuộc vào phiên bản Hadoop bạn sử dụng, luồng chỉ giám sát việc giải mã chỉ tỉnh dậy thường xuyên. Nó được sử dụng để được khoảng 5 phút trong các phiên bản trước của Hadoop, nhưng tôi tin rằng đây là mỗi phút hoặc ít hơn.

Quá trình ngừng hoạt động có nghĩa là các khối đang được nhân rộng, vì vậy tôi đoán điều này thực sự phụ thuộc vào số lượng dữ liệu bạn có và bạn phải đợi vì điều này sẽ không sử dụng cụm của bạn hoàn toàn cho tác vụ này.

+3

cảm ơn câu trả lời của bạn. Cuối cùng tôi đã tìm ra vấn đề là gì. Một số tệp có bộ nhân bản rất cao được thiết lập và tôi đã giảm cụm của mình thành 2 nút. Một khi tôi đã giảm yếu tố nhân rộng của mình vào các tệp đó, việc ngừng hoạt động đã kết thúc thành công một cách nhanh chóng. – Srikanth

1

Trong khi ngừng hoạt động, các tệp tạm thời hoặc dàn dựng được tự động làm sạch. Các tệp này hiện đang bị thiếu và hadoop không nhận ra cách mất tích. Vì vậy, quá trình ngừng hoạt động tiếp tục chờ đợi cho đến khi điều đó được giải quyết mặc dù việc ngừng hoạt động thực tế được thực hiện cho tất cả các tệp khác.

Trong giao diện Hadoop - nếu bạn nhận thấy thông số "Số lượng khối nhân bản" không giảm theo thời gian hoặc gần như không đổi thì đây là lý do có thể xảy ra.

Vì vậy, danh sách các tập tin sử dụng dưới lệnh

hadoop fsck/-files -blocks -racks

Nếu bạn thấy những tập tin tạm thời và không cần thiết sau đó xóa các tập tin hoặc thư mục

Ví dụ: hadoop fs -rmr /var/local/hadoop/hadoop/.staging/* (cung cấp đường dẫn chính xác tại đây)

Điều này sẽ giải quyết được vấn đề ngay lập tức. Các nút được ủy nhiệm sẽ chuyển sang Dead Nodes trong 5 phút.

0

Xin lưu ý rằng trạng thái sẽ không thay đổi hoặc sẽ mất độ tuổi (và cuối cùng không thành công) nếu bạn không có nhiều dữ liệu hoạt động hơn hệ số nhân bản ở cấp tệp hoặc cấp mặc định.

Các vấn đề liên quan