

{"id":422,"date":"2016-06-13T13:41:31","date_gmt":"2016-06-13T13:41:31","guid":{"rendered":"http:\/\/data-flair.training\/blogs\/?p=422"},"modified":"2018-11-20T12:53:58","modified_gmt":"2018-11-20T07:23:58","slug":"install-pivotal-hadoop-v-2-cluster-in-production","status":"publish","type":"post","link":"https:\/\/data-flair.training\/blogs\/install-pivotal-hadoop-v-2-cluster-in-production\/","title":{"rendered":"Install Pivotal Hadoop v-2 Cluster in production"},"content":{"rendered":"<h1>1. Introduction<\/h1>\n<p>Install Hadoop (HDFS, YARN), Pig, Hive, HBase, Mahout, Zookeeper with production configurations.<\/p>\n<p>Deploy Pivotal Hadoop 2 Cluster with Pivotal Command centre and icm_client. PCC is the deployment, monitoring, management, maintenance tool which comes from Pivotal (EMC). The installation steps mentioned below is for the cluster we deployed in the production. We will setup namenode high-availability, so that if namenode crashes standby will take over automatically. Following installation will guide you for installation of Hadoop (HDFS, YARN), Pig, Hive, HBase, Mahout, Zookeeper.<\/p>\n<div id=\"attachment_42904\" style=\"width: 1210px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/06\/Pivotal-Hadoop-v-2-Cluster-in-Production-01.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-42904\" class=\"size-full wp-image-42904\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/06\/Pivotal-Hadoop-v-2-Cluster-in-Production-01.jpg\" alt=\"Install Pivotal Hadoop v-2 Cluster in production\" width=\"1200\" height=\"628\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/06\/Pivotal-Hadoop-v-2-Cluster-in-Production-01.jpg 1200w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/06\/Pivotal-Hadoop-v-2-Cluster-in-Production-01-150x79.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/06\/Pivotal-Hadoop-v-2-Cluster-in-Production-01-300x157.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/06\/Pivotal-Hadoop-v-2-Cluster-in-Production-01-768x402.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/06\/Pivotal-Hadoop-v-2-Cluster-in-Production-01-1024x536.jpg 1024w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/06\/Pivotal-Hadoop-v-2-Cluster-in-Production-01-520x272.jpg 520w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/a><p id=\"caption-attachment-42904\" class=\"wp-caption-text\">Install Pivotal Hadoop v-2 Cluster in production<\/p><\/div>\n<h1>2. Recommended Platform<\/h1>\n<p>During the installation we are using following platform:<br \/>\nA) CentOS 6.4 (You can use RHEL or other versions as well)<br \/>\nB) 14 node cluster with following details:<\/p>\n<ul>\n<li>1 master (or namenode) (it should be of higher configuration than slaves it is recommended to have more RAM (as it keeps all the meta-data in the memory), although less disk space is required on master)<\/li>\n<li>1 standby-master (configuration of master and standby-master must be same, when master crashes this standy-master will automatically become master)<\/li>\n<li>1 client node (where all the clients like Pig, Hive, HBase and Mahout libraries will be installed, we can access complete components (Hadoop and all the sub-projects of Hadoop) of the cluster from this client node. This would be useful also when you want to share your cluster with other teams, you do not need to share master instead of that share this client machine with them)<\/li>\n<li>10 slaves (DataNodes) (these servers can of less configuration (less RAM \/ CPU, but should have multiple disks with high capacity))<\/li>\n<li>1 admin node (we will install PCC (Pivotal command centre) and ICM (installation and configuration Manager) on this machine)<\/li>\n<\/ul>\n<p>C) PHD-2.X<\/p>\n<h1>3. Prerequisite:<\/h1>\n<div id=\"attachment_414\" style=\"width: 550px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/06\/Apache-Hadoop.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-414\" class=\"wp-image-414 size-full\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/06\/Apache-Hadoop.png\" alt=\"Apache Hadoop\" width=\"540\" height=\"262\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/06\/Apache-Hadoop.png 540w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/06\/Apache-Hadoop-150x73.png 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/06\/Apache-Hadoop-300x146.png 300w\" sizes=\"auto, (max-width: 540px) 100vw, 540px\" \/><\/a><p id=\"caption-attachment-414\" class=\"wp-caption-text\">Apache Hadoop<\/p><\/div>\n<h2>3.1. Install Java<\/h2>\n<p>Ensure that you are running Oracle JAVA JDK version 1.7 on the Admin node. Version 1.7 is required; version 1.7u15 is recommended.<br \/>\nIf you are not running the correct JDK, download a supported version from the Oracle site at http:\/\/www.oracle.com\/technetwork\/java\/javase\/downloads\/index.html<br \/>\n[php]\/usr\/java\/default\/bin\/java \u2013version[\/php]<br \/>\nThe output of this command should contain 1.7 (version number) and JavaHotSpot(TM) (Java version). For example:<br \/>\n[php]java version \u201c1.7.0_45\u2033Java(TM) SE Runtime Environment (build 1.7.0_45-b18)Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)[\/php]<br \/>\nNOTE: Make sure you are not running OpenJDK as your default JDK. If you are running OpenJDK, we recommend you to remove it.<\/p>\n<h2>3.2. Update hosts file<\/h2>\n<p>Add entry of all the machines in the hosts file of all the nodes. Edit the hosts file (nano \/etc\/hosts) and add following entries:<br \/>\n[php]admin.domain.com admin<br \/>\nclient.domain.com client<br \/>\nhdnn1.domain.com hdnn1<br \/>\nhdnn2.domain.com hdnn2<br \/>\nhddn1.domain.com hddn1<br \/>\n(do this for all the slaves ie hddn1, hddn2, hddn3\u2026. hddn10)[\/php]<\/p>\n<h2>3.3. Change system parameters<\/h2>\n<h3>3.3.1. Change hostname<\/h3>\n<p>If you have hostname in capital letters, change the hostname:<br \/>\nAvoid using hostnames that contain capital letters because Puppet has an issue generating certificates for domains with capital letters. Also avoid using underscores as they are invalid characters in hostnames.<br \/>\n[php]nano \/etc\/sysconfig\/networkHOSTNAME=admin.domain.com[\/php]<br \/>\nNOTE: Do this activity for all the machines in the cluster, make sure you provide corresponding hostname in the \/etc\/sysconfig\/network file<\/p>\n<h3>3.3.2. Disable SELinux:<\/h3>\n<p>[php]sestatus[\/php]<br \/>\nBut if the output is<br \/>\n[php]sestatus<br \/>\nSELinux status: enabled<br \/>\nSELinuxfs mount: \/selinux<br \/>\nCurrent mode: enforcing<br \/>\nMode from config file: enforcing<br \/>\nPolicy version: 24<br \/>\nPolicy from config file: targeted[\/php]<br \/>\nThen edit \/etc\/selinux\/config and add following entries:<br \/>\n[php]nano \/etc\/selinux\/configSELINUX=disabled[\/php]<\/p>\n<h3>3.3.3. Update Operating System Parameters<\/h3>\n<p>Add following configuration parameter of Operating system to get best performance:<\/p>\n<h4>3.3.3.1. Edit \/etc\/sysconfig\/cpuspeed<\/h4>\n<p>Edit \/etc\/sysconfig\/cpuspeed and add following parameter:<br \/>\n[php]nano \/etc\/sysconfig\/cpuspeedGOVERNOR=performance[\/php]<\/p>\n<h4>3.3.3.2. Stop cpuspeed service<\/h4>\n<p>[php]service cpuspeed stopDisabling ondemand cpu frequency scaling: [ OK ][\/php]<\/p>\n<h4>3.3.3.3. Stop iptables service<\/h4>\n<p>[php]service iptables stopiptables: Firewall is not running.[\/php]<\/p>\n<h4>3.3.3.4. Stop ip6tables service<\/h4>\n<p>[php]service ip6tables stop[\/php]<\/p>\n<h4>3.3.3.5. Stop iptables<\/h4>\n<p>[php]chkconfig iptables off[\/php]<\/p>\n<h4>3.3.3.6. Stop ip6tables<\/h4>\n<p>[php]chkconfig ip6tables off[\/php]<\/p>\n<h4>3.3.3.7. Stop cpuspeed<\/h4>\n<p>[php]chkconfig cpuspeed off[\/php]<\/p>\n<h4>3.3.3.8. Edit \/etc\/sysctl.conf (OPTIONAL)<\/h4>\n<p>Edit \/etc\/sysctl.conf and add following parameters<br \/>\n[php]nano \/etc\/sysctl.conf<br \/>\n# COMMENT FOLLOWING PARAMETERES:<br \/>\n# Disable netfilter on bridges.<br \/>\n#net.bridge.bridge-nf-call-ip6tables = 0<br \/>\n#net.bridge.bridge-nf-call-iptables = 0<br \/>\n#net.bridge.bridge-nf-call-arptables = 0# ADD FOLLOWING PARAMETERS:kernel.shmmax = 500000000<br \/>\nkernel.shmmni = 4096<br \/>\nkernel.shmall = 4000000000<br \/>\nkernel.sem = 250 512000 100 2048<br \/>\nkernel.sysrq = 1<br \/>\nkernel.core_uses_pid = 1<br \/>\nkernel.msgmnb = 65536<br \/>\nkernel.msgmax = 65536<br \/>\nkernel.msgmni = 2048<br \/>\nnet.ipv4.tcp_syncookies = 1<br \/>\nnet.ipv4.ip_forward = 0<br \/>\nnet.ipv4.conf.default.accept_source_route = 0<br \/>\nnet.ipv4.tcp_tw_recycle = 1<br \/>\nnet.ipv4.tcp_max_syn_backlog = 4096<br \/>\nnet.ipv4.conf.all.arp_filter = 1<br \/>\nnet.ipv4.ip_local_port_range = 1025 65535<br \/>\nnet.core.netdev_max_backlog = 10000<br \/>\nnet.core.rmem_max = 2097152<br \/>\nnet.core.wmem_max = 2097152<br \/>\nvm.overcommit_memory = 2[\/php]<\/p>\n<h4>3.3.3.9. Edit \/etc\/security\/limits.conf<\/h4>\n<p>Edit \/etc\/security\/limits.conf and add following parameter<br \/>\n[php]nano \/etc\/security\/limits.conf<br \/>\n# COMMENT FOLLOWING PARAMETERS:<br \/>\n#* soft nofile 65536<br \/>\n#* hard nofile 65536<br \/>\n#* soft nproc 131072<br \/>\n#* hard nproc 131072[\/php]<\/p>\n<h4>3.3.3.10. Edit \/etc\/security\/limits.d\/90-nproc.conf<\/h4>\n<p>Edit \/etc\/security\/limits.d\/90-nproc.conf and add following parameter<br \/>\n[php]nano \/etc\/security\/limits.d\/90-nproc.conf<br \/>\n# COMMENT FOLLOWING PARAMETERES<br \/>\n#root soft nproc unlimited# ADD FOLLOWING PARAMETERS:<br \/>\n* soft nofile 65536<br \/>\n* hard nofile 65536<br \/>\n* soft nproc 131072<br \/>\n* hard nproc 131072[\/php]<\/p>\n<h4>3.3.3.11. Edit \/etc\/rc.d\/rc.local<\/h4>\n<p>Edit \/etc\/rc.d\/rc.local and add following parameter<br \/>\n[php]nano \/etc\/rc.d\/rc.local<br \/>\nblockdev \u2013setra 16384 \/dev\/sd*[\/php]<\/p>\n<h2>3.4. Install Following packages<\/h2>\n<p>[php]yum install httpd mod_ssl postgresql postgresql-devel postgresql-server postgresql-jdbc createrepo sigar sudo[\/php]<\/p>\n<h1>4. Install PCC (Pivotal Command Centre)<\/h1>\n<p>NOTE: Configure FQDN on admin node by adding FQDN in \/etc\/hosts<br \/>\n[php]cat \/etc\/hosts | grep admin<br \/>\nadmin.domain.com admin<br \/>\n$hostname<br \/>\nadmin $hostname -f<br \/>\nadmin.domain.com[\/php]<br \/>\nUntar PCC:<br \/>\n[php]tar -xvf PCC-2.2.1-150.x86_64.tar[\/php]<br \/>\nInstall Pivotal Command Centre:<br \/>\n[php].\/install[\/php]<br \/>\nNOTE:<br \/>\n[php]facter \u2013puppet fqdn (output should not be blank)[\/php]<br \/>\nCheck whether the commander has started:<br \/>\n[php]service commander status[\/php]<\/p>\n<h1>5. Deploy Pivotal Hadoop<\/h1>\n<p><em>NOTE: RUN FOLLOWING COMMANDS AS \u201cgpadmin\u201d USER<\/em><br \/>\nUntar Hadoop:<br \/>\n[php]tar xzf PHD-2.0.1.0-148.tar[\/php]<br \/>\nImport the following tarballs for Pivotal HD:<br \/>\n[php]icm_client import -s PHD-2.0.1.0-148[\/php]<br \/>\nFetch the default cluster Configuration template:<br \/>\n[php]icm_client fetch-template -o ~\/ClusterConfigDir[\/php]<br \/>\nEdit clusterConfig.xml and set all the required parameters:<br \/>\n[php]nano clusterConfig.xml<br \/>\n# It should look like:<br \/>\n&lt;?xml version=\u201d1.0\u2033 encoding=\u201dUTF-8\u2033?&gt;<br \/>\n&lt;clusterConfig&gt;<br \/>\n&lt;!&#8211; Cluster Name. This will be used on command lines, so avoid spaces and special characters. &#8211;&gt;<br \/>\n&lt;clusterName&gt;my-hd-cluster&lt;\/clusterName&gt;<br \/>\n&lt;gphdStackVer&gt;PHD-2.0.1.0&lt;\/gphdStackVer&gt;<br \/>\n&lt;!&#8211; Comma separated list. Choices are: hdfs,yarn,zookeeper,hbase,hive,hawq,gpxf,pig,mahout &#8211;&gt;<br \/>\n&lt;!&#8211; services not meant to be installed can be deleted from the following list. &#8211;&gt;<br \/>\n&lt;!&#8211; &lt;services&gt;hdfs,yarn,zookeeper,hbase,hive,hawq,gpxf,pig,mahout&lt;\/services&gt; &#8211;&gt;<br \/>\n&lt;services&gt;hdfs,yarn,zookeeper,hbase,hive,pig,mahout&lt;\/services&gt;<br \/>\n&lt;!&#8211; Hostname of the machine which will be used as the client &#8211;&gt;<br \/>\n&lt;!&#8211; ICM will install Pig, Hive, HBase and Mahout libraries on this machine. &#8211;&gt;<br \/>\n&lt;client&gt;phdnn1.domain.com&lt;\/client&gt;<br \/>\n&lt;!&#8211; Comma separated list of fully qualified hostnames should be associated with each service role &#8211;&gt;<br \/>\n&lt;!&#8211; services (and corresponding roles) not meant to be installed can be deleted from the following list &#8211;&gt;<br \/>\n&lt;hostRoleMapping&gt;<br \/>\n&lt;hdfs&gt;<br \/>\n&lt;!&#8211; HDFS, NameNode role (mandatory) &#8211;&gt;<br \/>\n&lt;namenode&gt;phdnn1.domain.com&lt;\/namenode&gt;<br \/>\n&lt;!&#8211; HDFS, DataNode role (mandatory) ** list of one or more, comma separated,<br \/>\nnames must be resolvable ** &#8211;&gt;<br \/>\n&lt;datanode&gt;phddn1.domain.com,phddn2.domain.com,phddn3.domain.com,<br \/>\nphddn4.domain.com,phddn5.domain.com,phddn6.domain.com,phddn7.domain.com,<br \/>\nphddn8.domain.com,phddn9.domain.com,phddn10.domain.com&lt;\/datanode&gt;<br \/>\n&lt;!&#8211; HDFS, Secondary NameNode role (optional) \u2013 ** comment out XML tag if not<br \/>\nrequired ** &#8211;&gt;<br \/>\n&lt;!&#8211; &lt;secondarynamenode&gt;host.yourdomain.com&lt;\/secondarynamenode&gt; &#8211;&gt;<br \/>\n&lt;!&#8211; HDFS, Standby NameNode that acts as a failover when HA is enabled &#8211;&gt;<br \/>\n&lt;standbynamenode&gt;phdnn2.domain.com&lt;\/standbynamenode&gt;<br \/>\n&lt;!&#8211;specify quorum journal nodes used as common storage by both active and<br \/>\nstand-by namenode. list of one or more comma separated &#8211;&gt;<br \/>\n&lt;journalnode&gt;phdnn1.domain.com,phdnn2.domain.com,<br \/>\nphddn1.domain.com&lt;\/journalnode&gt;<br \/>\n&lt;\/hdfs&gt;<br \/>\n&lt;yarn&gt;<br \/>\n&lt;!&#8211; YARN, ResourceManager role (mandatory) &#8211;&gt;<br \/>\n&lt;yarn-resourcemanager&gt;phdnn1.domain.com&lt;\/yarn-resourcemanager&gt;<br \/>\n&lt;!&#8211; YARN, NodeManager role (mandatory) ** list of one or more,<br \/>\ncomma separated, generally takes on the DataNode element ** &#8211;&gt;<br \/>\n&lt;yarn-nodemanager&gt;phddn1.domain.com,phddn2.domain.com,phddn3.domain.com,<br \/>\nphddn4.domain.com,phddn5.domain.com,phddn6.domain.com,phddn7.domain.com,<br \/>\nphddn8.domain.com,phddn9.domain.com,phddn10.domain.com&lt;\/yarn-nodemanager&gt;<br \/>\n&lt;!&#8211; Generally runs on the ResourceManager (mandatory) &#8211;&gt;<br \/>\n&lt;mapreduce-historyserver&gt;phdnn1.domain.com&lt;\/mapreduce-historyserver&gt;<br \/>\n&lt;\/yarn&gt;<br \/>\n&lt;zookeeper&gt;<br \/>\n&lt;!&#8211; ZOOKEEPER, zookeeper-server role (required if using HBase) **<br \/>\nlist an *ODD NUMBER*, comma separated ** &#8211;&gt;<br \/>\n&lt;!&#8211; Options to run zookeepers: Master nodes like Secondary NameNode,<br \/>\nResourceManager, HAWQ Standby node,etc EXCEPT NameNode&#8211;&gt;<br \/>\n&lt;zookeeper-server&gt;phdnn1.domain.com,phdnn2.domain.com,<br \/>\nphddn1.domain.com&lt;\/zookeeper-server&gt;<br \/>\n&lt;\/zookeeper&gt;<br \/>\n&lt;hbase&gt;<br \/>\n&lt;!&#8211; HBASE, master role &#8211;&gt;<br \/>\n&lt;hbase-master&gt;phdnn1.domain.com&lt;\/hbase-master&gt;<br \/>\n&lt;!&#8211; HBASE, region server role ** list of one or more, comma separated ** &#8211;&gt;<br \/>\n&lt;!&#8211; HBase region servers are generally deployed on the DataNode hosts &#8211;&gt;<br \/>\n&lt;hbase-regionserver&gt;phddn1.domain.com,phddn2.domain.com,phddn3.domain.com,<br \/>\nphddn4.domain.com,phddn5.domain.com,phddn6.domain.com,phddn7.domain.com,<br \/>\nphddn8.domain.com,phddn9.domain.com,phddn10.domain.com&lt;\/hbase-regionserver&gt;<br \/>\n&lt;\/hbase&gt;<br \/>\n&lt;hive&gt;<br \/>\n&lt;!&#8211; HIVE, server role &#8211;&gt;<br \/>\n&lt;!&#8211; Hive thrift server would be running on this machine. &#8211;&gt;<br \/>\n&lt;hive-server&gt;phdnn1.domain.com&lt;\/hive-server&gt;<br \/>\n&lt;!&#8211; HIVE, metastore role. This host will run an instance of PostgreSQL. &#8211;&gt;<br \/>\n&lt;!&#8211; Postgres database is installed on this node to maintain Hive metadata. &#8211;&gt;<br \/>\n&lt;hive-metastore&gt;phdnn1.domain.com&lt;\/hive-metastore&gt;<br \/>\n&lt;\/hive&gt;<br \/>\n&lt;hawq&gt;<br \/>\n&lt;!&#8211; HAWQ, hawq master role (mandatory). This should be a different host<br \/>\nthan the NameNode host. &#8211;&gt;<br \/>\n&lt;!&#8211; &lt;hawq-master&gt;host.yourdomain.com&lt;\/hawq-master&gt; &#8211;&gt;<br \/>\n&lt;!&#8211; HAWQ, hawq standbymaster role (optional) \u2013 ** comment out XML tag if not required **&#8211;&gt;<br \/>\n&lt;!&#8211; &lt;hawq-standbymaster&gt;host.yourdomain.com&lt;\/hawq-standbymaster&gt; &#8211;&gt;<br \/>\n&lt;!&#8211; HAWQ, hawq segments (mandatory) ** list of one or more, comma separated ** &#8211;&gt;<br \/>\n&lt;!&#8211; In many configurations, this will be the same list as the DataNode role. &#8211;&gt;<br \/>\n&lt;!&#8211; &lt;hawq-segment&gt;host.yourdomain.com&lt;\/hawq-segment&gt; &#8211;&gt;<br \/>\n&lt;\/hawq&gt;<br \/>\n&lt;\/hostRoleMapping&gt;<br \/>\n&lt;servicesConfigGlobals&gt;<br \/>\n&lt;!&#8211; List of one or more, comma separated, disk mount points on slave<br \/>\nnodes (datanode\/nodemanager\/regionservers) &#8211;&gt;<br \/>\n&lt;datanode.disk.mount.points&gt;\/data1\/hdata,\/data2\/hdata,\/data3\/hdata,\/data4\/hdata,<br \/>\n\/data5\/hdata,\/data6\/hdata&lt;\/datanode.disk.mount.points&gt;<br \/>\n&lt;!&#8211; List of one or more, comma separated, disk mount points on NameNode. More than one can be configured for NameNode local data redundancy. &#8211;&gt;<br \/>\n&lt;namenode.disk.mount.points&gt;\/data1\/hdata&lt;\/namenode.disk.mount.points&gt;<br \/>\n&lt;!&#8211; List of one or more, comma separated disk mount points on secondary-namenode. More than one can be configured for secondary-namenode local data redundancy. &#8211;&gt;<br \/>\n&lt;!&#8211; &lt;secondary.namenode.disk.mount.points&gt;\/data\/secondary_nn<br \/>\n&lt;\/secondary.namenode.disk.mount.points&gt; &#8211;&gt;<br \/>\n&lt;!&#8211; Max. memory on nodemanager collectively available to all the task containers<br \/>\nincluding application master. &#8211;&gt;<br \/>\n&lt;yarn.nodemanager.resource.memory-mb&gt;49152&lt;\/yarn.nodemanager.resource.memory-mb&gt;<br \/>\n&lt;!&#8211; Min memory required for the task or application manager container &#8211;&gt;<br \/>\n&lt;yarn.scheduler.minimum-allocation-mb&gt;2048&lt;\/yarn.scheduler.minimum-allocation-mb&gt;<br \/>\n&lt;!&#8211; THIS IS THE \u201cNameNode port\u201d. &#8211;&gt;<br \/>\n&lt;dfs.port&gt;8020&lt;\/dfs.port&gt;<br \/>\n&lt;!&#8211; This syntax correlates to a bash array data structure. There are no commas seperating the values. It\u2019s just whitespace. If you enter multiple entries with the exact same value; each entry will result in a HAWQ segment placed on a host. If you want two segments per hosts make two entries with the same values; which may or may not be placed on the same disk within the host. WHICH MAY OR MAY NOT BE ON THE SAME DISK. BY CONVENTION, THE LAST PART OF THIS STRING IS In the example below, two segments will be created on every HAWQ segment host &#8211;&gt;<br \/>\n&lt;!&#8211; &lt;hawq.segment.directory&gt;(\/data1\/primary \/data1\/primary)&lt;\/hawq.segment.directory&gt; &#8211;&gt;<br \/>\n&lt;!&#8211; THIS IS A SINGLE VALUE, AND IDEALLY THE DIRECTORY SPECIFIED<br \/>\nCORRELATES WITH A RAID VOLUME, AS THE<br \/>\nMASTER DATA DIRECTORY CONTAINS IMPORTANT METADATA. &#8211;&gt;<br \/>\n&lt;!&#8211; &lt;hawq.master.directory&gt;\/data1\/master&lt;\/hawq.master.directory&gt; &#8211;&gt;<br \/>\n&lt;!&#8211; IDEALLY, THIS DIRECTORY IS ON ITS OWN DEVICE, TO MINIMIZE I\/O<br \/>\nCONTENTION BETWEEN ZOOKEEPER<br \/>\nAND OTHER PROCESSES. &#8211;&gt;<br \/>\n&lt;zookeeper.data.dir&gt;\/data1\/hdata\/zookeeper&lt;\/zookeeper.data.dir&gt;<br \/>\n&lt;!&#8211; Zookeeper Client Port &#8211;&gt;<br \/>\n&lt;zookeeper.client.port&gt;2181&lt;\/zookeeper.client.port&gt;<br \/>\n&lt;!&#8211; JAVA_HOME defaults to this. Update if you have java installed elsewhere &#8211;&gt;<br \/>\n&lt;cluster_java_home&gt;\/usr\/java\/latest\/&lt;\/cluster_java_home&gt;<br \/>\n&lt;!&#8211;maximum amount of HEAP to use. Default is 1024&#8211;&gt;<br \/>\n&lt;dfs.namenode.heapsize.mb&gt;4096&lt;\/dfs.namenode.heapsize.mb&gt;<br \/>\n&lt;dfs.datanode.heapsize.mb&gt;4096&lt;\/dfs.datanode.heapsize.mb&gt;<br \/>\n&lt;yarn.resourcemanager.heapsize.mb&gt;4096&lt;\/yarn.resourcemanager.heapsize.mb&gt;<br \/>\n&lt;yarn.nodemanager.heapsize.mb&gt;4096&lt;\/yarn.nodemanager.heapsize.mb&gt;<br \/>\n&lt;hbase.heapsize.mb&gt;4096&lt;\/hbase.heapsize.mb&gt;<br \/>\n&lt;dfs.datanode.failed.volumes.tolerated&gt;0&lt;\/dfs.datanode.failed.volumes.tolerated&gt;<br \/>\n&lt;!&#8211; Choose a logical name for HA nameservice, for example \u201ctest\u201d. The name<br \/>\nyou choose will be used both for configuration<br \/>\nand as the authority component of absolute HDFS paths in the cluster &#8211;&gt;<br \/>\n&lt;nameservices&gt;my-hd-cluster&lt;\/nameservices&gt;<br \/>\n&lt;!&#8211; Choose ids for the two namenodes being used. These ids will be used in the configuration of properties related to these namenodes &#8211;&gt;<br \/>\n&lt;namenode1id&gt;nn1&lt;\/namenode1id&gt;<br \/>\n&lt;namenode2id&gt;nn2&lt;\/namenode2id&gt;<br \/>\n&lt;!&#8211;specify the path on quorum journal nodes where the shared data is written &#8211;&gt;<br \/>\n&lt;journalpath&gt;\/data1\/hdata\/qjournal&lt;\/journalpath&gt;<br \/>\n&lt;!&#8211;specify the port where quorum journal nodes should be run&#8211;&gt;<br \/>\n&lt;journalport&gt;8485&lt;\/journalport&gt;<br \/>\n&lt;\/servicesConfigGlobals&gt;<br \/>\n&lt;\/clusterConfig&gt;[\/php]<br \/>\nCheck whether the xml formatting is correct:<br \/>\n[php]xmlwf clusterConfig.xml[\/php]<\/p>\n<h2>5.1. Enable namenode high-availability<\/h2>\n<p>To enable HA, you then need to make HA-specific edits to the following configuration files:<\/p>\n<ul>\n<li>clusterConfig.xml<\/li>\n<li>hdfs\/hdfs-site.xml<\/li>\n<li>hdfs\/core-site.xml<\/li>\n<li>hbase\/hbase-site.xml<\/li>\n<li>yarn\/yarn-site.xml<\/li>\n<\/ul>\n<p>NOTE: When specifying the nameservices in the clusterConfig.xml, do not use underscores (\u2018_\u2019), for example, phd_cluster<br \/>\na. Edit clusterConfig.xml as follows:<\/p>\n<ul>\n<li>Comment out secondarynamenode role in hdfs service<\/li>\n<li>Uncomment standbynamenode and journalnode roles in hdfs service<\/li>\n<li>Uncomment nameservices, namenode1id, namenode2id, journalpath, and journalport entries in serviceConfigGlobals<\/li>\n<\/ul>\n<p>b. Edit hdfs\/hdfs-site.xml as follows:<\/p>\n<ul>\n<li>Uncomment the following properties:<\/li>\n<\/ul>\n<p>[php]&lt;property&gt;<br \/>\n&lt;name&gt;dfs.nameservices&lt;\/name&gt;<br \/>\n&lt;value&gt;${nameservices}&lt;\/value&gt;<br \/>\n&lt;\/property&gt;&lt;property&gt;<br \/>\n&lt;name&gt;dfs.ha.namenodes.${nameservices}&lt;\/name&gt;<br \/>\n&lt;value&gt;${namenode1id},${namenode2id}&lt;\/value&gt;<br \/>\n&lt;\/property&gt;&lt;property&gt;<br \/>\n&lt;name&gt;dfs.namenode.rpc-address.${nameservices}.${namenode1id}&lt;\/name&gt;<br \/>\n&lt;value&gt;${namenode}:8020&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;dfs.namenode.rpc-address.${nameservices}.${namenode2id}&lt;\/name&gt;<br \/>\n&lt;value&gt;${standbynamenode}:8020&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;dfs.namenode.http-address.${nameservices}.${namenode1id}&lt;\/name&gt;<br \/>\n&lt;value&gt;${namenode}:50070&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;dfs.namenode.http-address.${nameservices}.${namenode2id}&lt;\/name&gt;<br \/>\n&lt;value&gt;${standbynamenode}:50070&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;dfs.namenode.shared.edits.dir&lt;\/name&gt;<br \/>\n&lt;value&gt;qjournal:\/\/${journalnode}\/${nameservices}&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;dfs.client.failover.proxy.provider.${nameservices}&lt;\/name&gt;<br \/>\n&lt;value&gt;org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;dfs.ha.fencing.methods&lt;\/name&gt;<br \/>\n&lt;value&gt;sshfence<br \/>\nshell(\/bin\/true)<br \/>\n&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;dfs.ha.fencing.ssh.private-key-files&lt;\/name&gt;<br \/>\n&lt;value&gt;\/home\/hdfs\/.ssh\/id_rsa&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;dfs.journalnode.edits.dir&lt;\/name&gt;<br \/>\n&lt;value&gt;${journalpath}&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;!&#8211; Namenode Auto HA related properties &#8211;&gt;<br \/>\n&lt;property&gt;<br \/>\n&lt;name&gt;dfs.ha.automatic-failover.enabled&lt;\/name&gt;<br \/>\n&lt;value&gt;true&lt;\/value&gt;<br \/>\n&lt;\/property&gt;<br \/>\n&lt;!&#8211; END Namenode Auto HA related properties &#8211;&gt;[\/php]<\/p>\n<ul>\n<li>Comment the following properties:<\/li>\n<\/ul>\n<p>[php]dfs.namenode.secondary.http-address<br \/>\n${secondarynamenode}:50090<br \/>\nThe secondary namenode http server address and port.[\/php]<br \/>\nc. Edit yarn\/yarn-site.xml:<br \/>\n[php]mapreduce.job.hdfs-servers<br \/>\nhdfs:\/\/${nameservices}[\/php]<br \/>\nd. Edit hdfs\/core-site.xml as follows:<\/p>\n<ul>\n<li>Set the following property key value:<\/li>\n<\/ul>\n<p>[php]fs.defaultFS<br \/>\nhdfs:\/\/${nameservices}<br \/>\nThe name of the default file system. A URI whosescheme and authority determine the FileSystem implementation. The uri\u2019s scheme determines the config property (fs.SCHEME.impl) naming the FileSystem implementation class. The uri\u2019s authority is used to determine the host, port, etc. for a filesystem.[\/php]<\/p>\n<ul>\n<li>Uncomment following property:<\/li>\n<\/ul>\n<p>[php]ha.zookeeper.quorum<br \/>\n${zookeeper-server}:${zookeeper.client.port}[\/php]<br \/>\ne. Edit hbase\/hbase-site.xml as follows:<br \/>\n[php]hbase.rootdir<br \/>\nhdfs:\/\/${nameservices}\/apps\/hbase\/data<br \/>\nThe directory shared by region servers and into which HBase persists. The URL should be \u2018fully-qualified\u2019 to include the filesystem scheme. For example, to specify the HDFS directory \u2018\/hbase\u2019 where the HDFS instance\u2019s namenode is running at namenode.example.org on port 9000, set this value to: hdfs:\/\/namenode.example.org:9000\/hbase. By default HBase writes into \/tmp. Change this configuration else all data will be lost on machine restart.[\/php]<\/p>\n<h1>6. Deploy the Cluster<\/h1>\n<p>Pivotal HD deploys clusters using input from the cluster configuration directory. This cluster configuration directory contains files that describes the topology and configuration for the cluster.<br \/>\n<em>NOTE: Deploy the cluster as gpadmin.<\/em><br \/>\n<strong>The deploy command internally does following steps:<\/strong><br \/>\nI. Prepares the cluster nodes with the prerequisites (internally runs preparehosts command)<br \/>\na) Creates the gpadmin user.<br \/>\nb) As gpadmin, sets up password-less SSH access from the Admin node.<br \/>\nc) Installs the provided Oracle Java JDK.<br \/>\nd) Disables SELinux across the cluster.<br \/>\ne) Optionally synchronizes the system clocks.<br \/>\nf) Installs Puppet version 2.7.20 (the one shipped with the PCC tarball, not the one from puppetlabs repo)<br \/>\ng) Installs sshpass.<br \/>\nII. Verifies the prerequisites (internally runs scanhosts command)<br \/>\nIII. Deploys the cluster<\/p>\n<h2>6.1. Troubleshooting<\/h2>\n<p>You can check the following log files to troubleshoot any failures:<br \/>\nOn Admin:<br \/>\n\/var\/log\/gphd\/gphdmgr\/GPHDClusterInstaller_XXX.log<br \/>\n\/var\/log\/gphd\/gphdmgr\/gphdmgr-webservices.log<br \/>\n\/var\/log\/messages<br \/>\n\/var\/log\/gphd\/gphdmgr\/installer.log<br \/>\nOn Cluster Nodes:<br \/>\n\/tmp\/GPHDNodeInstaller_XXX.log<br \/>\nDeploy Hadoop Cluster<br \/>\n[php]icm_client deploy -c ClusterConfigDir\/[\/php]<\/p>\n<h2>6.2. Start Hadoop Cluster<\/h2>\n<p>[php]icm_client start -l my-hd-cluster[\/php]<br \/>\nNow to check whether cluster is working correctly:<br \/>\nLogin to web-console:<br \/>\n[php]https:\/\/:5443<br \/>\nUserName: gpadmin<br \/>\nPassword: Gpadmin1[\/php]<\/p>\n<h2>6.3. Run sample program:<\/h2>\n<p>[php]# create input directory<br \/>\nhadoop fs -mkdir input# copy some file having text data to run word count<br \/>\nhadoop fs -copyFromLocal \/usr\/lib\/gphd\/hadoop\/CHANGES.txt input# run word count<br \/>\nhadoop jar \/usr\/lib\/gphd\/hadoop-mapreduce\/hadoop-mapreduce-examples.jar wordcount input output# dump output on console<br \/>\nhadoop fs -cat output\/part*[\/php]<\/p>\n<h1>7. Stop Hadoop Cluster:<\/h1>\n<p>[php]icm_client stop -l my-hd-cluster[\/php]<\/p>\n<h1>8. Related Links:<\/h1>\n<ul>\n<li><a href=\"http:\/\/data-flair.training\/blogs\/history-big-data\/\" target=\"_blank\" rel=\"noopener\">History of Big Data<\/a><\/li>\n<li><a href=\"http:\/\/data-flair.training\/blogs\/install-cloudera-hadoop-cdh5-ubuntu\/\" target=\"_blank\" rel=\"noopener\">Install Cloudera Hadoop CDH5 on Ubuntu<\/a><\/li>\n<li><a href=\"http:\/\/data-flair.training\/blogs\/play-with-hadoop-hdfs-using-commands-tutorial\/\" target=\"_blank\" rel=\"noopener\">Play with HDFS using Commands<\/a><\/li>\n<\/ul>\n<p>Reference: <a href=\"http:\/\/pivotal.io\/\" target=\"_blank\" rel=\"noopener\">Pivotal<\/a><span hidden class=\"__iawmlf-post-loop-links\" data-iawmlf-links=\"[{&quot;id&quot;:2473,&quot;href&quot;:&quot;http:\\\/\\\/pivotal.io&quot;,&quot;archived_href&quot;:&quot;http:\\\/\\\/web-wp.archive.org\\\/web\\\/20200309190425\\\/https:\\\/\\\/pivotal.io\\\/&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2025-12-11 06:56:57&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-01-01 21:55:01&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-01-07 15:24:08&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-06 03:08:34&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-03-03 11:32:46&quot;,&quot;http_code&quot;:503},{&quot;date&quot;:&quot;2026-07-02 06:52:02&quot;,&quot;http_code&quot;:503}],&quot;broken&quot;:true,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-07-02 06:52:02&quot;,&quot;http_code&quot;:503},&quot;process&quot;:&quot;done&quot;}]\"><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>1. Introduction Install Hadoop (HDFS, YARN), Pig, Hive, HBase, Mahout, Zookeeper with production configurations. Deploy Pivotal Hadoop 2 Cluster with Pivotal Command centre and icm_client. PCC is the deployment, monitoring, management, maintenance tool which&#46;&#46;&#46;<\/p>\n","protected":false},"author":6,"featured_media":42904,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[22],"tags":[5186,5201,5264,5267,5268,5310,5311,5341,9531],"class_list":["post-422","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-hadoop","tag-hadoop","tag-hadoop-admin","tag-hadoop-in-production","tag-hadoop-installation","tag-hadoop-installation-on-pivotal","tag-hadoop-production-configurations","tag-hadoop-production-params","tag-hadoop-training","tag-pivotal-hadoop-2-cluster"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Install Pivotal Hadoop v-2 Cluster in production - DataFlair<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/data-flair.training\/blogs\/install-pivotal-hadoop-v-2-cluster-in-production\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Install Pivotal Hadoop v-2 Cluster in production - DataFlair\" \/>\n<meta property=\"og:description\" content=\"1. Introduction Install Hadoop (HDFS, YARN), Pig, Hive, HBase, Mahout, Zookeeper with production configurations. Deploy Pivotal Hadoop 2 Cluster with Pivotal Command centre and icm_client. PCC is the deployment, monitoring, management, maintenance tool which&#046;&#046;&#046;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/data-flair.training\/blogs\/install-pivotal-hadoop-v-2-cluster-in-production\/\" \/>\n<meta property=\"og:site_name\" content=\"DataFlair\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/DataFlairWS\/\" \/>\n<meta property=\"article:published_time\" content=\"2016-06-13T13:41:31+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2018-11-20T07:23:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/06\/Pivotal-Hadoop-v-2-Cluster-in-Production-01.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"DataFlair Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:site\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"DataFlair Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"17 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Install Pivotal Hadoop v-2 Cluster in production - DataFlair","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/data-flair.training\/blogs\/install-pivotal-hadoop-v-2-cluster-in-production\/","og_locale":"en_US","og_type":"article","og_title":"Install Pivotal Hadoop v-2 Cluster in production - DataFlair","og_description":"1. Introduction Install Hadoop (HDFS, YARN), Pig, Hive, HBase, Mahout, Zookeeper with production configurations. Deploy Pivotal Hadoop 2 Cluster with Pivotal Command centre and icm_client. PCC is the deployment, monitoring, management, maintenance tool which&#46;&#46;&#46;","og_url":"https:\/\/data-flair.training\/blogs\/install-pivotal-hadoop-v-2-cluster-in-production\/","og_site_name":"DataFlair","article_publisher":"https:\/\/www.facebook.com\/DataFlairWS\/","article_published_time":"2016-06-13T13:41:31+00:00","article_modified_time":"2018-11-20T07:23:58+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/06\/Pivotal-Hadoop-v-2-Cluster-in-Production-01.jpg","type":"image\/jpeg"}],"author":"DataFlair Team","twitter_card":"summary_large_image","twitter_creator":"@DataFlairWS","twitter_site":"@DataFlairWS","twitter_misc":{"Written by":"DataFlair Team","Est. reading time":"17 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/data-flair.training\/blogs\/install-pivotal-hadoop-v-2-cluster-in-production\/#article","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/install-pivotal-hadoop-v-2-cluster-in-production\/"},"author":{"name":"DataFlair Team","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/2c58ecb4f73a39f0ef993f1ddfcd7b89"},"headline":"Install Pivotal Hadoop v-2 Cluster in production","datePublished":"2016-06-13T13:41:31+00:00","dateModified":"2018-11-20T07:23:58+00:00","mainEntityOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/install-pivotal-hadoop-v-2-cluster-in-production\/"},"wordCount":3451,"commentCount":0,"publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/install-pivotal-hadoop-v-2-cluster-in-production\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/06\/Pivotal-Hadoop-v-2-Cluster-in-Production-01.jpg","keywords":["hadoop","hadoop admin","Hadoop in Production","hadoop installation","Hadoop Installation on Pivotal","Hadoop Production Configurations","Hadoop Production Params","hadoop training","Pivotal Hadoop 2 Cluster"],"articleSection":["Hadoop Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/data-flair.training\/blogs\/install-pivotal-hadoop-v-2-cluster-in-production\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/data-flair.training\/blogs\/install-pivotal-hadoop-v-2-cluster-in-production\/","url":"https:\/\/data-flair.training\/blogs\/install-pivotal-hadoop-v-2-cluster-in-production\/","name":"Install Pivotal Hadoop v-2 Cluster in production - DataFlair","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/#website"},"primaryImageOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/install-pivotal-hadoop-v-2-cluster-in-production\/#primaryimage"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/install-pivotal-hadoop-v-2-cluster-in-production\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/06\/Pivotal-Hadoop-v-2-Cluster-in-Production-01.jpg","datePublished":"2016-06-13T13:41:31+00:00","dateModified":"2018-11-20T07:23:58+00:00","breadcrumb":{"@id":"https:\/\/data-flair.training\/blogs\/install-pivotal-hadoop-v-2-cluster-in-production\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/data-flair.training\/blogs\/install-pivotal-hadoop-v-2-cluster-in-production\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/install-pivotal-hadoop-v-2-cluster-in-production\/#primaryimage","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/06\/Pivotal-Hadoop-v-2-Cluster-in-Production-01.jpg","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/06\/Pivotal-Hadoop-v-2-Cluster-in-Production-01.jpg","width":1200,"height":628,"caption":"Install Pivotal Hadoop v-2 Cluster in production"},{"@type":"BreadcrumbList","@id":"https:\/\/data-flair.training\/blogs\/install-pivotal-hadoop-v-2-cluster-in-production\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog Home","item":"https:\/\/data-flair.training\/blogs\/"},{"@type":"ListItem","position":2,"name":"Hadoop Tutorials","item":"https:\/\/data-flair.training\/blogs\/category\/hadoop\/"},{"@type":"ListItem","position":3,"name":"Install Pivotal Hadoop v-2 Cluster in production"}]},{"@type":"WebSite","@id":"https:\/\/data-flair.training\/blogs\/#website","url":"https:\/\/data-flair.training\/blogs\/","name":"DataFlair","description":"Learn Today. Lead Tomorrow.","publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/data-flair.training\/blogs\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/data-flair.training\/blogs\/#organization","name":"DataFlair","url":"https:\/\/data-flair.training\/blogs\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","width":106,"height":48,"caption":"DataFlair"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/DataFlairWS\/","https:\/\/x.com\/DataFlairWS","https:\/\/www.linkedin.com\/company\/dataflair-web-services-pvt-ltd\/","https:\/\/www.youtube.com\/user\/DataFlairWS"]},{"@type":"Person","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/2c58ecb4f73a39f0ef993f1ddfcd7b89","name":"DataFlair Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/1ce4a0e3e542444fc73bbebf83e89e8b73e2d95ccb1fcee64da9945f078b97c5?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/1ce4a0e3e542444fc73bbebf83e89e8b73e2d95ccb1fcee64da9945f078b97c5?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1ce4a0e3e542444fc73bbebf83e89e8b73e2d95ccb1fcee64da9945f078b97c5?s=96&d=mm&r=g","caption":"DataFlair Team"},"description":"The DataFlair Team provides industry-driven content on programming, Java, Python, C++, DSA, AI, ML, data Science, Android, Flutter, MERN, Web Development, and technology. Our expert educators focus on delivering value-packed, easy-to-follow resources for tech enthusiasts and professionals.","url":"https:\/\/data-flair.training\/blogs\/author\/dfteam2\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/422","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/comments?post=422"}],"version-history":[{"count":6,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/422\/revisions"}],"predecessor-version":[{"id":42905,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/422\/revisions\/42905"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media\/42904"}],"wp:attachment":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media?parent=422"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/categories?post=422"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/tags?post=422"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}