6

मुझे त्रुटि है "डिवाइस पर कोई स्थान नहीं छोड़ा गया" जब मैं अपने अमेज़ॅन ईएमआर नौकरियों को m1.large का उपयोग कर चला रहा हूं, उदाहरण के प्रकार के रूप में जॉबफ्लो द्वारा बनाए गए हैंडऑप उदाहरणों के लिए । नौकरी लगभग उत्पन्न करता है। अधिकतम 10 जीबी डेटा और एम 1 की क्षमता के बाद से 420 जीबी * 2 (EC2 instance types के अनुसार) माना जाता है। मैं उलझन में हूं कि कैसे केवल 10 जीबी डेटा एक "डिस्क स्पेस पूर्ण" संदेश का कारण बन सकता है। मुझे इस संभावना से अवगत है कि इस प्रकार की एक त्रुटि भी उत्पन्न की जा सकती है अगर हमने फाइल सिस्टम पर अनुमत कुल संख्याओं को पूरी तरह से समाप्त कर दिया है, लेकिन यह लाखों लोगों की बड़ी संख्या की तरह है और मुझे पूरा यकीन है कि मेरा काम नहीं है कई फाइलें पैदा कर रही हैं। मैंने देखा है कि जब मैं एम 1 के स्वतंत्र रूप से ईसी 2 उदाहरण बनाने की कोशिश करता हूं। डिफ़ॉल्ट रूप से इसे 8 जीबी की मूल मात्रा निर्दिष्ट करता है। क्या यह ईएमआर में उदाहरणों के प्रावधान के पीछे भी कारण हो सकता है? फिर, आकार 420 जीबी की डिस्क को आवृत्ति के लिए आवंटित कब किया जाता है?लगभग "डिवाइस पर कोई स्थान नहीं छोड़ा गया" प्राप्त करना। EMR m1.large उदाहरणों पर 10 जीबी डेटा

इसके अलावा, यहां "df हाय" और के का उत्पादन होता है "माउंट"

 
$ df -hi 
Filesystem   Inodes IUsed IFree IUse% Mounted on 
/dev/xvda1    640K 100K 541K 16%/
tmpfs     932K  3 932K 1% /lib/init/rw 
udev     930K  454 929K 1% /dev 
tmpfs     932K  3 932K 1% /dev/shm 
ip-10-182-182-151.ec2.internal:/mapr 
         100G  50G  50G 50% /mapr 

$ mount 
/dev/xvda1 on/type ext3 (rw,noatime) 
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755) 
proc on /proc type proc (rw,noexec,nosuid,nodev) 
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev) 
udev on /dev type tmpfs (rw,mode=0755) 
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev) 
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620) 
/var/run on /run type none (rw,bind) 
/var/lock on /run/lock type none (rw,bind) 
/dev/shm on /run/shm type none (rw,bind) 
rpc_pipefs on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw) 
ip-10-182-182-151.ec2.internal:/mapr on /mapr type nfs (rw,addr=10.182.182.151) 
 

$ lsblk 
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT 
xvda1 202:1 0 10G 0 disk/
xvdb 202:16 0 420G 0 disk 
xvdc 202:32 0 420G 0 disk 

+1

क्या आप 'df -hi' और' mount' – slayedbylucifer

+0

@slayedbylucifer का आउटपुट प्रदान कर सकते हैं - आपके द्वारा वांछित प्रश्न में आउटपुट जोड़ा है। –

+0

प्रत्येक 420 जी के दो ड्राइव 'fdisk -l' में दिखाए जाते हैं? यदि हां, तो शायद, वे आपके उदाहरण से जुड़े हुए हैं लेकिन अभी तक प्रारूपित नहीं हैं और कहीं भी घुड़सवार नहीं हैं। 'df -h' कुछ भी दिखाता है जो 100% उपयोग किया जाता है? – slayedbylucifer

उत्तर

2
@slayedbylucifer मैं इस समस्या की पहचान करने में सक्षम था की मदद से

था कि पूरा डिस्क स्थान डिफ़ॉल्ट रूप से क्लस्टर पर एचडीएफएस के लिए उपलब्ध कराया गया है। इसलिए, मशीन द्वारा स्थानीय उपयोग के लिए उपलब्ध 10 जीबी स्पेस पर उपलब्ध/उपलब्ध है। स्थानीय फाइल सिस्टम और एचडीएफएस के बीच डिस्क स्पेस के विभाजन को निर्दिष्ट करने के लिए --mfs-percentage नामक एक विकल्प है जिसका उपयोग किया जा सकता है (हैडोप के मानचित्र वितरण का उपयोग करते समय)। यह /var/tmp पर स्थानीय फाइल सिस्टम कोटा माउंट करता है। सुनिश्चित करें कि mapred.local.dir विकल्प /var/tmp के अंदर निर्देशिका में सेट है क्योंकि वह है जहां टास्कट्रैक प्रयासों के सभी लॉग बड़े नौकरियों के आकार में विशाल हो सकते हैं। मेरे मामले में लॉगिंग डिस्क स्थान त्रुटि उत्पन्न कर रहा था। मैंने --mfs-percentage से 60 का मान निर्धारित किया और इसके बाद सफलतापूर्वक नौकरी चलाने में सक्षम था।

संबंधित मुद्दे

 संबंधित मुद्दे