Hadoop集群部署教程-P5

3 阅读1分钟

Hadoop集群部署教程-P5

Hadoop集群部署教程(续)

第十七章:安全增强配置

17.1 认证与授权

  1. Kerberos认证集成

    # 生成keytab文件
    kadmin -q "addprinc -randkey hdfs/master@EXAMPLE.COM"
    kadmin -q "xst -k hdfs.keytab hdfs/master@EXAMPLE.COM"
    
    # 配置core-site.xml
    <property>
      <name>hadoop.security.authentication</name>
      <value>kerberos</value>
    </property>
    
  2. 基于角色的访问控制

    # 创建HDFS目录并设置权限
    hdfs dfs -mkdir /data
    hdfs dfs -chown admin:admin /data
    hdfs dfs -chmod 750 /data
    

17.2 数据加密

  1. 传输层加密

    <!-- 在core-site.xml中 -->
    <property>
      <name>hadoop.ssl.enabled</name>
      <value>true</value>
    </property>
    
  2. 静态数据加密

    # 创建加密区域
    hdfs crypto -createZone -keyName mykey -path /secure
    

第十八章:资源调度优化

18.1 YARN队列配置

  1. 多队列资源分配

    <!-- 在capacity-scheduler.xml中 -->
    <property>
      <name>yarn.scheduler.capacity.root.queues</name>
      <value>prod,dev,test</value>
    </property>
    <property>
      <name>yarn.scheduler.capacity.root.prod.capacity</name>
      <value>60</value>
    </property>
    
  2. 动态资源调度

    # 启用资源自动调整
    yarn rmadmin -refreshQueues
    

18.2 容器资源分配

  1. 内存配置优化

    # 计算YARN容器内存分配
    Container Memory = min(
      yarn.nodemanager.resource.memory-mb / yarn.nodemanager.resource.cpu-vcores,
      yarn.scheduler.maximum-allocation-mb
    )
    

第十九章:高可用性架构

19.1 NameNode HA

  1. 故障转移配置

    <!-- 在hdfs-site.xml中 -->
    <property>
      <name>dfs.ha.automatic-failover.enabled</name>
      <value>true</value>
    </property>
    <property>
      <name>ha.zookeeper.quorum</name>
      <value>zk1:2181,zk2:2181,zk3:2181</value>
    </property>
    
  2. 监控HA状态

    hdfs haadmin -getServiceState nn1
    hdfs haadmin -failover nn1 nn2
    

19.2 ResourceManager HA

  1. 配置参数

    <!-- 在yarn-site.xml中 -->
    <property>
      <name>yarn.resourcemanager.ha.enabled</name>
      <value>true</value>
    </property>
    <property>
      <name>yarn.resourcemanager.cluster-id</name>
      <value>cluster1</value>
    </property>
    

第二十章:版本升级策略

20.1 滚动升级流程

  1. 升级前准备

    # 备份关键数据
    hdfs dfsadmin -fetchImage /backup/namenode
    hdfs dfs -get /user /backup/userdata
    
  2. 分阶段升级

    # 先升级Secondary NameNode
    # 然后升级DataNodes
    # 最后升级NameNode
    

20.2 回滚机制

  1. 回滚检查点

    # 停止服务
    # 恢复备份的fsimage和edits
    # 重启服务
    
  2. 版本兼容性矩阵

组件支持版本升级路径
HDFS2.7 → 3.2需经过2.9过渡
YARN2.8 → 3.3直接升级