Adding few troubleshooting guidelines for HDFS.
[demo.git] / vnfs / DAaaS / deploy / training-core / charts / kubernetes-HDFS / README.md
1 ---
2 layout: global
3 title: HDFS on Kubernetes
4 ---
5 # HDFS on Kubernetes
6 Repository holding helm charts for running Hadoop Distributed File System (HDFS)
7 on Kubernetes.
8
9 See [charts/README.md](charts/README.md) for how to run the charts.
10
11 See [tests/README.md](tests/README.md) for how to run integration tests for
12 HDFS on Kubernetes.
13
14
15 # Troubleshooting
16
17 In case some pods are in pending state, check by using kubectl describe command.
18 If describe shows :
19 ```
20   Type     Reason            Age                From               Message
21   ----     ------            ----               ----               -------
22   Warning  FailedScheduling  7s (x20 over 66s)  default-scheduler  pod has unbound immediate PersistentVolumeClaims (repeated 3 times)
23 ```
24
25 Then make sure you have the storage provisioner up and running.
26 In our case, its rook that we support.
27 So, rook should be up and be the default storage proviosner.
28
29 ```
30 NAME                        PROVISIONER          AGE
31 rook-ceph-block (default)   ceph.rook.io/block   132m
32 ```
33
34 Delete all the previous unbound PVCs like below :
35 ```
36 NAME                           STATUS    VOLUME   CAPACITY   ACCESS MODES   STORAGECLASS   AGE
37 data-hdfs1-zookeeper-0         Pending                                                     108m
38 editdir-hdfs1-journalnode-0    Pending                                                     108m
39 metadatadir-hdfs1-namenode-0   Pending                                                     108m
40 ```
41
42 ```
43 kubectl delete pvc/data-hdfs1-zookeeper-0
44 kubectl delete pvc/editdir-hdfs1-journalnode-0
45 kubectl delete pvc/metadatadir-hdfs1-namenode-0 
46 ```
47
48 #### If the dataNode restarts with the error:
49 ```
50 19/07/19 21:22:55 FATAL datanode.DataNode: Initialization failed for Block pool <registering> (Datanode Uuid unassigned) service to hdfs1-namenode-1.hdfs1-namenode.hdfs1.svc.cluster.local/XXX.YY.ZZ.KK:8020. Exiting. 
51 java.io.IOException: All specified directories are failed to load.
52         at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:478)
53         at org.apache.hadoop.hdfs.server.datanode.DataNode.initStorage(DataNode.java:1358)
54         at org.apache.hadoop.hdfs.server.datanode.DataNode.initBlockPool(DataNode.java:1323)
55         at org.apache.hadoop.hdfs.server.datanode.BPOfferService.verifyAndSetNamespaceInfo(BPOfferService.java:317)
56         at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.connectToNNAndHandshake(BPServiceActor.java:223)
57         at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.run(BPServiceActor.java:802)
58 ```
59
60 * SOLUTION:  Make sure that whatever host path you set for the dataNode is deleted and doesnt exist before you run the hdfs helm chart.
61 ```
62     - name: hdfs-data-0
63       hostPath:
64         path: /hdfs-data
65 ```
66 In case you are reinstalling the HDFS, delete the host path : /hdfs-data 
67 before you proceed or else the above error shall come.