Senaryo: Yerel HDFS, Azure HDInsight kümesinde güvenli modda takıldı
Bu makalede, Azure HDInsight kümeleriyle etkileşim kurarken karşılaşılan sorunlara yönelik sorun giderme adımları ve olası çözümler açıklanmaktadır.
Sorun
Yerel Apache Hadoop Dağıtılmış Dosya Sistemi (HDFS), HDInsight kümesinde güvenli modda takılıyor. Aşağıdakine benzer bir hata iletisi alırsınız:
hdiuser@spark2:~$ hdfs dfs -D "fs.default.name=hdfs://mycluster/" -mkdir /temp
17/04/05 16:20:52 WARN retry.RetryInvocationHandler: Exception while invoking ClientNamenodeProtocolTranslatorPB.mkdirs over spark2.2oyzcdm4sfjuzjmj5dnmvscjpg.dx.internal.cloudapp.net/10.0.0.22:8020. Not retrying because try once and fail.
org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.hdfs.server.namenode.SafeModeException): Cannot create directory /temp. Name node is in safe mode.
It was turned on manually. Use "hdfs dfsadmin -safemode leave" to turn safe mode off.
at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.checkNameNodeSafeMode(FSNamesystem.java:1359)
...
mkdir: Cannot create directory /temp. Name node is in safe mode.
Nedeni
HDInsight kümesinin ölçeği aşağıda çok az düğüme düşürüldü veya düğüm sayısı HDFS çoğaltma faktörüne yakın.
Çözüm
Aşağıdaki komutla HDInsight kümesinde HDFS'nin durumunu bildirin:
hdfs dfsadmin -D "fs.default.name=hdfs://mycluster/" -report
Aşağıdaki komutla HDInsight kümesinde HDFS'nin bütünlüğünü denetleyin:
hdiuser@spark2:~$ hdfs fsck -D "fs.default.name=hdfs://mycluster/" /
Eksik, bozuk veya çoğaltılmış blokların altında olmadığı belirlenirse veya bu bloklar yoksayılabilirse, ad düğümünü güvenli moddan çıkarmak için aşağıdaki komutu çalıştırın:
hdfs dfsadmin -D "fs.default.name=hdfs://mycluster/" -safemode leave
Sonraki adımlar
Sorununuzu görmediyseniz veya sorununuzu çözemiyorsanız daha fazla destek için aşağıdaki kanallardan birini ziyaret edin:
Azure Topluluk Desteği aracılığıyla Azure uzmanlarından yanıt alın.
müşteri deneyimini geliştirmek için resmi Microsoft Azure hesabı olan @AzureSupport ile bağlantı kurun. Azure topluluğunun doğru kaynaklara bağlanması: yanıtlar, destek ve uzmanlar.
Daha fazla yardıma ihtiyacınız varsa Azure portal bir destek isteği gönderebilirsiniz. Menü çubuğundan Destek'i seçin veya Yardım + destek hub'ını açın. Daha ayrıntılı bilgi için bkz. Azure desteği isteği oluşturma. Abonelik Yönetimi ve faturalama desteğine erişim, Microsoft Azure aboneliğinize dahildir ve Teknik Destek, Azure Destek Planlarından biri aracılığıyla sağlanır.