title: HDFS Under replicated blocks
body: <p>I am using Cloudera Manager Free Edition on my "Cluster" with all services on my single machine. </p>
  
  <p>My machine acts as the datanode,namenode as well as the secondary namenode.</p>
  
  <p>Settings in HDFS related to replication,</p>
  
  <pre><code>dfs.replication                                   - 1
  dfs.replication.min, dfs.namenode.replication.min - 1
  dfs.replication.max                               - 1   
  </code></pre>
  
  <p>Still I get under-replicated blocks and hence Bad Health,</p>
  
  <p>The Namenode log says,</p>
  
  <pre><code>Requested replication 3 exceeds maximum 1
  java.io.IOException: file /tmp/.cloudera_health_monitoring_canary_files/.canary_file_2013_10_21-15_33_53 on client 111.222.333.444
  Requested replication 3 exceeds maximum 1
      at org.apache.hadoop.hdfs.server.blockmanagement.BlockManager.verifyReplication(BlockManager.java:858)
      at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.startFileInternal(FSNamesystem.java:1848)
      at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.startFileInt(FSNamesystem.java:1771)
      at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.startFile(FSNamesystem.java:1747)
      at org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.create(NameNodeRpcServer.java:439)
      at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB.create(ClientNamenodeProtocolServerSideTranslatorPB.java:207)
      at org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos$ClientNamenodeProtocol$2.callBlockingMethod(ClientNamenodeProtocolProtos.java:44942)
      at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:453)
      at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:1002)
      at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1751)
      at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:1747)
      at java.security.AccessController.doPrivileged(Native Method)
      at javax.security.auth.Subject.doAs(Subject.java:396)
      at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1408)
      at org.apache.hadoop.ipc.Server$Handler.run(Server.java:1745)
  </code></pre>
  
  <p>I have altered the values,saved, Deployed Client Configuration, Restarted too. It's still the same.</p>
  
  <p>What property do I need to set to make CM read replication factor as <code>1</code> instead of <code>3</code> ?</p>