Sign inSign up

tonychen0716/hadoop

By tonychen0716

•Updated over 5 years ago

Image
0

178

tonychen0716/hadoop repository overview

##hadoop-pseudo-distributed.yaml

---
apiVersion: v1
kind: ConfigMap
metadata:
  name: hadoop-custom-config-cm
  labels:
    app: hadoop
data:
  bootstrap.sh: |+
    #!/usr/bin/env bash

    # K8s将 shell 和 *-site.xml都挂载到 /root/bootstrap 下
    cd /root/bootstrap

    # Don't override slaves、core-site.xml and yarn-site.xml
    rm -f "$HADOOP_HOME"/etc/hadoop/slaves "$HADOOP_HOME"/etc/hadoop/core-site.xml "$HADOOP_HOME"/etc/hadoop/yarn-site.xml

    # Copy hadoop file to $HADOOP_CONF_DIR
    #chmod +w -R "$HADOOP_CONF_DIR"
    #cp -f /root/bootstrap/*.xml "$HADOOP_CONF_DIR"
    #chmod +w -R "$HADOOP_CONF_DIR"

    # Get this node's FQDN
    # FQDN:(Fully Qualified Domain Name)全限定域名:同时带有主机名和域名的名称。(通过符号“.”)
    FQDN=$(ping "$HOSTNAME" -c 1 | grep PING | awk '{print $2}')

    # Apply custom config file context
    # Copy hadoop file to $HADOOP_CONF_DIR
    for cfg in ./*; do
      if [[ ! "$cfg" =~ bootstrap.sh ]]; then
        cat "$cfg" > "$HADOOP_CONF_DIR"/"${cfg##*/}"
      fi
    done

    # Set nameNode's FQDN to file
    echo "$NAME_NODE_FQDN" > "$HADOOP_CONF_DIR"/NameNode
    echo "Set nameNode's FQDN( $NAME_NODE_FQDN ) to $HADOOP_CONF_DIR/NameNode"

    # Replace nameNode's FQDN
    sed -i 's/${NAME_NODE_FQDN}/'"$NAME_NODE_FQDN"'/g' $(grep '${NAME_NODE_FQDN}' -rl "$HADOOP_CONF_DIR")
    echo "Replace nameNode's FQDN( $NAME_NODE_FQDN ) to $(grep '${NAME_NODE_FQDN}' -rl "$HADOOP_CONF_DIR")"

    # Set dataNode's FQDN to "$HADOOP_CONF_DIR"/slaves
    SLAVE_NODES=( "${SLAVE_NODES_FQDN//,/ }" )
    # shellcheck disable=SC2068
    for SLAVE_NODE in ${SLAVE_NODES[@]}
    do
      if [[ -e "$HADOOP_CONF_DIR"/slaves ]]; then
        # 避免重复,如果文件存在,首先尝试删除
        sed -i '/'"$SLAVE_NODE"'/d' "$HADOOP_CONF_DIR"/slaves
      fi
      echo "$SLAVE_NODE" >> "$HADOOP_CONF_DIR"/slaves
      echo "Set slaveNode's FQDN( $SLAVE_NODE ) to $HADOOP_CONF_DIR/slaves"
    done

    # If this node is nameNode, set it's FQDN to core-site.xml file and yarn-site.xml file
    if [[ "$NODE_TYPE" =~ "NN" ]]; then
      # Format HDFS if not formatted yet
      # 前提: nfs共享了配置文件夹,可以将 hdfs-namenode-format.out 持久化
      if [[ ! -e $HADOOP_CONF_DIR/hdfs-namenode-format.out ]]; then
        "$HADOOP_HOME"/bin/hdfs namenode -format -force -nonInteractive &> "$HADOOP_CONF_DIR"/hdfs-namenode-format.out
        "$HADOOP_HOME"/bin/hdfs namenode -format -force -nonInteractive &> "$HADOOP_CONF_DIR"/hdfs-namenode-format.out
      fi

      # Start hadoop nameNode daemon
      "$HADOOP_HOME"/sbin/hadoop-daemon.sh start namenode
    fi

    # If this node is ResourceManager
    if [[ "$NODE_TYPE" =~ "RM" ]]; then
      "$HADOOP_HOME"/sbin/yarn-daemon.sh start resourcemanager
    fi

    # If this node is nodeManager, add it to slave
    if [[ "$NODE_TYPE" =~ "NM" ]]; then
      # Waiting nameNode set NAME_NODE_FQDN
      while [[ "200" != $(curl -I -m 10 -o /dev/null -s -w %\{http_code\} -X GET "$NAME_NODE_FQDN:50070") ]]; do
        echo "Waiting for nameNode: $NAME_NODE_FQDN";
        sleep 2;
      done;

      # Start hadoop nodeManager daemon
      #while [[ -z $(curl -sf http://"$NAME_NODE_FQDN":8088/ws/v1/cluster/info) ]]; do
      #  echo "Waiting for nodeManager: $FQDN" && sleep 2
      #done
      "$HADOOP_HOME"/sbin/yarn-daemon.sh start nodemanager
    fi

    # If this node is dataNode, add it to slave
    if [[ "$NODE_TYPE" =~ "DN" ]]; then
      # Waiting nameNode set NAME_NODE_FQDN
      while [[ "200" != $(curl -I -m 10 -o /dev/null -s -w %\{http_code\} -X GET "$NAME_NODE_FQDN:50070") ]]; do
        echo "Waiting for nameNode: $NAME_NODE_FQDN";
        sleep 2;
      done;

      # Start hadoop dataNode daemon
      while [[ -z $(curl -sf http://"$NAME_NODE_FQDN":50070) ]]; do
        echo "Waiting for $NAME_NODE_FQDN" && sleep 2
      done
      "$HADOOP_HOME"/sbin/hadoop-daemon.sh start datanode
    fi

    # keep container running
    sleep infinity
  hdfs-site.xml: |+
    <?xml version="1.0" encoding="UTF-8"?>
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
    <configuration>
      <property>
        <name>dfs.name.dir</name>
        <value>/root/hadoop/dfs/name</value>
      </property>
      <property>
        <name>dfs.data.dir</name>
        <value>/root/hadoop/dfs/data</value>
      </property>
      <property>
        <name>dfs.replication</name>
        <value>3</value>
      </property>
      <property>
        <name>dfs.rpc-bind-host</name>
        <value>0.0.0.0</value>
      </property>
      <property>
        <name>dfs.servicerpc-bind-host</name>
        <value>0.0.0.0</value>
      </property>
    </configuration>
  core-site.xml: |+
    <?xml version="1.0" encoding="UTF-8"?>
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
    <configuration>
      <property>
        <name>fs.defaultFS</name>
        <value>hdfs://${NAME_NODE_FQDN}:9000</value>
      </property>
      <property>
        <name>hadoop.tmp.dir</name>
        <value>/root/hadoop/tmp</value>
      </property>
    </configuration>
  mapred-site.xml: |+
    <?xml version="1.0"?>
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
    <configuration>
      <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
      </property>
    </configuration>
  yarn-site.xml: |+
    <?xml version="1.0"?>
    <configuration>
      <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>${NAME_NODE_FQDN}</value>
      </property>
      <property>
        <name>yarn.resourcemanager.bind-host</name>
        <value>0.0.0.0</value>
      </property>
      <property>
        <name>yarn.nodemanager.bind-host</name>
        <value>0.0.0.0</value>
      </property>
      <property>
        <name>yarn.timeline-service.bind-host</name>
        <value>0.0.0.0</value>
      </property>
      <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
      </property>
      <property>
        <name>yarn.nodemanager.aux-services.mapreduce_shuffle.class</name>
        <value>org.apache.hadoop.mapred.ShuffleHandler</value>
      </property>
      <property>
        <name>yarn.nodemanager.vmem-check-enabled</name>
        <value>false</value>
      </property>
    </configuration>
---
apiVersion: v1
kind: Service
metadata:
  name: hadoop-ui-service
  labels:
    app: hadoop-nn
spec:
  ports:
    - port: 8088
      nodePort: 8088
      targetPort: 8088
      name: resource-manager
    - port: 50070
      nodePort: 50070
      targetPort: 50070
      name: name-node
  selector:
    app: hadoop-nn
  type: NodePort
---
apiVersion: v1
kind: Service
metadata:
  name: hadoop-rpc-service
  labels:
    app: hadoop-nn
spec:
  ports:
    - port: 9000
      targetPort: 9000
      nodePort: 9000
      name: hdfs
    - port: 50010
      targetPort: 50010
      nodePort: 50010
      name: data-node-trans
  selector:
    app: hadoop-nn
  type: NodePort
---
apiVersion: v1
kind: Service
metadata:
  name: hadoop-nn-service
  labels:
    app: hadoop-nn
spec:
  ports:
    - port: 9000
      name: hdfs
    - port: 50070
      name: name-node
  clusterIP: None
  selector:
    app: hadoop-nn
---
apiVersion: v1
kind: Service
metadata:
  name: hadoop-dn-service
  labels:
    app: hadoop-dn
spec:
  ports:
    - port: 9000
      name: hdfs
    - port: 50010
      name: data-node-trans
    - port: 50075
      name: data-node-http
  clusterIP: None
  selector:
    app: hadoop-nn
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: hadoop-nn
spec:
  replicas: 1
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      app: hadoop-nn
  serviceName: hadoop-nn-service
  template:
    metadata:
      labels:
        app: hadoop-nn
    spec:
      containers:
        - name: hadoop-nn
          image: tonychen0716/hadoop:2.7.7-java-8
          command: [ "bash", "-c", "bash /root/bootstrap/bootstrap.sh" ]
          env:
            - name: HADOOP_CONF_DIR
              value: /etc/hadoop
            - name: NODE_TYPE
              value: NN,RM,DN,NM
            - name: NAME_NODE_FQDN
              value: hadoop-nn-0.hadoop-nn-service.default.svc.cluster.local
            - name: SLAVE_NODES_FQDN
              value: hadoop-nn-0.hadoop-nn-service.default.svc.cluster.local
          volumeMounts:
            - name: hadoop-config-volume
              mountPath: /etc/hadoop
            - name: hadoop-custom-config-volume
              mountPath: /root/bootstrap
            - name: dfs-name-dir-volume
              mountPath: /root/hadoop/dfs/name
            - name: dfs-data-dir-volume
              mountPath: /root/hadoop/dfs/data
            - name: hadoop-tmp-dir-volume
              mountPath: /root/hadoop/tmp
      volumes:
        - name: hadoop-config-volume
          emptyDir: { }
        #          persistentVolumeClaim:
        #            claimName: hadoop-config-nfs-pvc
        - name: hadoop-custom-config-volume
          configMap:
            name: hadoop-custom-config-cm
        - name: dfs-name-dir-volume
          emptyDir: { }
        - name: dfs-data-dir-volume
          emptyDir: { }
        - name: hadoop-tmp-dir-volume
          emptyDir: { }

##hadoop-distributed.yaml

#---
#apiVersion: v1
#kind: PersistentVolume
#metadata:
#  name: hadoop-config-nfs-pv
#  labels:
#    release: hadoop-config
#spec:
#  capacity:
#    storage: 16Mi
#  accessModes:
#    - ReadWriteMany
#  persistentVolumeReclaimPolicy: Retain
#  nfs:
#    path: /home/nfs/data/hadoop-config
#    server: 192.168.112.240
#---
#apiVersion: v1
#kind: PersistentVolumeClaim
#metadata:
#  name: hadoop-config-nfs-pvc
#spec:
#  accessModes:
#    - ReadWriteMany
#  resources:
#    requests:
#      storage: 16Mi
#  selector:
#    matchLabels:
#      release: hadoop-config
---
apiVersion: v1
kind: ConfigMap
metadata:
  name: hadoop-custom-config-cm
  labels:
    app: hadoop
data:
  bootstrap.sh: |+
    #!/usr/bin/env bash

    # K8s将 shell 和 *-site.xml都挂载到 /root/bootstrap 下
    cd /root/bootstrap

    # Don't override slaves、core-site.xml and yarn-site.xml
    rm -f "$HADOOP_HOME"/etc/hadoop/slaves "$HADOOP_HOME"/etc/hadoop/core-site.xml "$HADOOP_HOME"/etc/hadoop/yarn-site.xml

    # Copy hadoop file to $HADOOP_CONF_DIR
    #chmod +w -R "$HADOOP_CONF_DIR"
    #cp -f /root/bootstrap/*.xml "$HADOOP_CONF_DIR"
    #chmod +w -R "$HADOOP_CONF_DIR"

    # Get this node's FQDN
    # FQDN:(Fully Qualified Domain Name)全限定域名:同时带有主机名和域名的名称。(通过符号“.”)
    FQDN=$(ping "$HOSTNAME" -c 1 | grep PING | awk '{print $2}')

    # Apply custom config file context
    # Copy hadoop file to $HADOOP_CONF_DIR
    for cfg in ./*; do
      if [[ ! "$cfg" =~ bootstrap.sh ]]; then
        cat "$cfg" > "$HADOOP_CONF_DIR"/"${cfg##*/}"
      fi
    done

    # Set nameNode's FQDN to file
    echo "$NAME_NODE_FQDN" > "$HADOOP_CONF_DIR"/NameNode
    echo "Set nameNode's FQDN( $NAME_NODE_FQDN ) to $HADOOP_CONF_DIR/NameNode"

    # Replace nameNode's FQDN
    sed -i 's/${NAME_NODE_FQDN}/'"$NAME_NODE_FQDN"'/g' $(grep '${NAME_NODE_FQDN}' -rl "$HADOOP_CONF_DIR")
    echo "Replace nameNode's FQDN( $NAME_NODE_FQDN ) to $(grep '${NAME_NODE_FQDN}' -rl "$HADOOP_CONF_DIR")"

    # Set dataNode's FQDN to "$HADOOP_CONF_DIR"/slaves
    SLAVE_NODES=( "${SLAVE_NODES_FQDN//,/ }" )
    # shellcheck disable=SC2068
    for SLAVE_NODE in ${SLAVE_NODES[@]}
    do
      if [[ -e "$HADOOP_CONF_DIR"/slaves ]]; then
        # 避免重复,如果文件存在,首先尝试删除
        sed -i '/'"$SLAVE_NODE"'/d' "$HADOOP_CONF_DIR"/slaves
      fi
      echo "$SLAVE_NODE" >> "$HADOOP_CONF_DIR"/slaves
      echo "Set slaveNode's FQDN( $SLAVE_NODE ) to $HADOOP_CONF_DIR/slaves"
    done

    # If this node is nameNode, set it's FQDN to core-site.xml file and yarn-site.xml file
    if [[ "$NODE_TYPE" =~ "NN" ]]; then
      # Format HDFS if not formatted yet
      # 前提: nfs共享了配置文件夹,可以将 hdfs-namenode-format.out 持久化
      if [[ ! -e $HADOOP_CONF_DIR/hdfs-namenode-format.out ]]; then
        "$HADOOP_HOME"/bin/hdfs namenode -format -force -nonInteractive &> "$HADOOP_CONF_DIR"/hdfs-namenode-format.out
        "$HADOOP_HOME"/bin/hdfs namenode -format -force -nonInteractive &> "$HADOOP_CONF_DIR"/hdfs-namenode-format.out
      fi

      # Start hadoop nameNode daemon
      "$HADOOP_HOME"/sbin/hadoop-daemon.sh start namenode
    fi

    # If this node is ResourceManager
    if [[ "$NODE_TYPE" =~ "RM" ]]; then
      "$HADOOP_HOME"/sbin/yarn-daemon.sh start resourcemanager
    fi

    # If this node is nodeManager, add it to slave
    if [[ "$NODE_TYPE" =~ "NM" ]]; then
      # Waiting nameNode set NAME_NODE_FQDN
      while [[ "200" != $(curl -I -m 10 -o /dev/null -s -w %\{http_code\} -X GET "$NAME_NODE_FQDN:50070") ]]; do
        echo "Waiting for nameNode: $NAME_NODE_FQDN";
        sleep 2;
      done;

      # Start hadoop nodeManager daemon
      #while [[ -z $(curl -sf http://"$NAME_NODE_FQDN":8088/ws/v1/cluster/info) ]]; do
      #  echo "Waiting for nodeManager: $FQDN" && sleep 2
      #done
      "$HADOOP_HOME"/sbin/yarn-daemon.sh start nodemanager
    fi

    # If this node is dataNode, add it to slave
    if [[ "$NODE_TYPE" =~ "DN" ]]; then
      # Waiting nameNode set NAME_NODE_FQDN
      while [[ "200" != $(curl -I -m 10 -o /dev/null -s -w %\{http_code\} -X GET "$NAME_NODE_FQDN:50070") ]]; do
        echo "Waiting for nameNode: $NAME_NODE_FQDN";
        sleep 2;
      done;

      # Start hadoop dataNode daemon
      while [[ -z $(curl -sf http://"$NAME_NODE_FQDN":50070) ]]; do
        echo "Waiting for $NAME_NODE_FQDN" && sleep 2
      done
      "$HADOOP_HOME"/sbin/hadoop-daemon.sh start datanode
    fi

    # keep container running
    sleep infinity
  hdfs-site.xml: |+
    <?xml version="1.0" encoding="UTF-8"?>
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
    <configuration>
      <property>
        <name>dfs.name.dir</name>
        <value>/root/hadoop/dfs/name</value>
      </property>
      <property>
        <name>dfs.data.dir</name>
        <value>/root/hadoop/dfs/data</value>
      </property>
      <property>
        <name>dfs.replication</name>
        <value>3</value>
      </property>
      <property>
        <name>dfs.rpc-bind-host</name>
        <value>0.0.0.0</value>
      </property>
      <property>
        <name>dfs.servicerpc-bind-host</name>
        <value>0.0.0.0</value>
      </property>
    </configuration>
  core-site.xml: |+
    <?xml version="1.0" encoding="UTF-8"?>
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
    <configuration>
      <property>
        <name>fs.defaultFS</name>
        <value>hdfs://${NAME_NODE_FQDN}:9000</value>
      </property>
      <property>
        <name>hadoop.tmp.dir</name>
        <value>/root/hadoop/tmp</value>
      </property>
    </configuration>
  mapred-site.xml: |+
    <?xml version="1.0"?>
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
    <configuration>
      <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
      </property>
    </configuration>
  yarn-site.xml: |+
    <?xml version="1.0"?>
    <configuration>
      <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>${NAME_NODE_FQDN}</value>
      </property>
      <property>
        <name>yarn.resourcemanager.bind-host</name>
        <value>0.0.0.0</value>
      </property>
      <property>
        <name>yarn.nodemanager.bind-host</name>
        <value>0.0.0.0</value>
      </property>
      <property>
        <name>yarn.timeline-service.bind-host</name>
        <value>0.0.0.0</value>
      </property>
      <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
      </property>
      <property>
        <name>yarn.nodemanager.aux-services.mapreduce_shuffle.class</name>
        <value>org.apache.hadoop.mapred.ShuffleHandler</value>
      </property>
      <property>
        <name>yarn.nodemanager.vmem-check-enabled</name>
        <value>false</value>
      </property>
    </configuration>
---
apiVersion: v1
kind: Service
metadata:
  name: hadoop-ui-service
  labels:
    app: hadoop-nn
spec:
  ports:
    - port: 8088
      nodePort: 8088
      targetPort: 8088
      name: resource-manager
    - port: 50070
      nodePort: 50070
      targetPort: 50070
      name: name-node
  selector:
    app: hadoop-nn
  type: NodePort
---
apiVersion: v1
kind: Service
metadata:
  name: hadoop-rpc-service
  labels:
    app: hadoop-nn
spec:
  ports:
    - port: 9000
      targetPort: 9000
      nodePort: 9000
      name: hdfs-rpc
  selector:
    app: hadoop-nn
  type: NodePort
---
apiVersion: v1
kind: Service
metadata:
  name: hadoop-nn-service
  labels:
    app: hadoop-nn
spec:
  ports:
    - port: 9000
      name: hdfs
    - port: 50070
      name: name-node
  clusterIP: None
  selector:
    app: hadoop-nn
---
apiVersion: v1
kind: Service
metadata:
  name: hadoop-dn-service
  labels:
    app: hadoop-dn
spec:
  ports:
    - port: 9000
      name: hdfs
    - port: 50010
      name: data-node-trans
    - port: 50075
      name: data-node-http
  clusterIP: None
  selector:
    app: hadoop-dn
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: hadoop-nn
spec:
  replicas: 1
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      app: hadoop-nn
  serviceName: hadoop-nn-service
  template:
    metadata:
      labels:
        app: hadoop-nn
    spec:
      containers:
        - name: hadoop-nn
          image: tonychen0716/hadoop:2.7.7-java-8
          command: [ "bash", "-c", "bash /root/bootstrap/bootstrap.sh" ]
          env:
            - name: HADOOP_CONF_DIR
              value: /etc/hadoop
            - name: NODE_TYPE
              value: NN,RM
            - name: NAME_NODE_FQDN
              value: hadoop-nn-0.hadoop-nn-service.default.svc.cluster.local
            - name: SLAVE_NODES_FQDN
              value: hadoop-dn-0.hadoop-dn-service.default.svc.cluster.local,hadoop-dn-1.hadoop-dn-service.default.svc.cluster.local,hadoop-dn-2.hadoop-dn-service.default.svc.cluster.local
          volumeMounts:
            - name: hadoop-config-volume
              mountPath: /etc/hadoop
            - name: hadoop-custom-config-volume
              mountPath: /root/bootstrap
            - name: dfs-name-dir-volume
              mountPath: /root/hadoop/dfs/name
            - name: dfs-data-dir-volume
              mountPath: /root/hadoop/dfs/data
            - name: hadoop-tmp-dir-volume
              mountPath: /root/hadoop/tmp
      volumes:
        - name: hadoop-config-volume
          emptyDir: { }
        #          persistentVolumeClaim:
        #            claimName: hadoop-config-nfs-pvc
        - name: hadoop-custom-config-volume
          configMap:
            name: hadoop-custom-config-cm
        - name: dfs-name-dir-volume
          emptyDir: { }
        - name: dfs-data-dir-volume
          emptyDir: { }
        - name: hadoop-tmp-dir-volume
          emptyDir: { }
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: hadoop-dn
spec:
  replicas: 3
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      app: hadoop-dn
  serviceName: hadoop-dn-service
  template:
    metadata:
      labels:
        app: hadoop-dn
    spec:
      containers:
        - name: hadoop-dn
          image: tonychen0716/hadoop:2.7.7-java-8
          command: [ "bash", "-c", "bash /root/bootstrap/bootstrap.sh" ]
          env:
            - name: HADOOP_CONF_DIR
              value: /etc/hadoop
            - name: NODE_TYPE
              value: DN,NM
            - name: NAME_NODE_FQDN
              value: hadoop-nn-0.hadoop-nn-service.default.svc.cluster.local
            - name: SLAVE_NODES_FQDN
              value: hadoop-dn-0.hadoop-dn-service.default.svc.cluster.local,hadoop-dn-1.hadoop-dn-service.default.svc.cluster.local,hadoop-dn-2.hadoop-dn-service.default.svc.cluster.local
          volumeMounts:
            - name: hadoop-config-volume
              mountPath: /etc/hadoop
            - name: hadoop-custom-config-volume
              mountPath: /root/bootstrap
            - name: dfs-name-dir-volume
              mountPath: /root/hadoop/dfs/name
            - name: dfs-data-dir-volume
              mountPath: /root/hadoop/dfs/data
            - name: hadoop-tmp-dir-volume
              mountPath: /root/hadoop/tmp
      volumes:
        - name: hadoop-config-volume
          emptyDir: { }
        #          persistentVolumeClaim:
        #            claimName: hadoop-config-nfs-pvc
        - name: hadoop-custom-config-volume
          configMap:
            name: hadoop-custom-config-cm
        - name: dfs-name-dir-volume
          emptyDir: { }
        - name: dfs-data-dir-volume
          emptyDir: { }
        - name: hadoop-tmp-dir-volume
          emptyDir: { }

Tag summary

Content type

Image

Digest

Size

486.1 MB

Last updated

over 5 years ago

docker pull tonychen0716/hadoop:3.1.4-java-8