配置Spark2x Web UI ACL
配置场景
当Spark2x Web UI中有一些不允许其他用户看到的数据时,用户可能想对UI进行安全防护。用户一旦登入,Spark2x 可以比较与这个用户相对应的视图ACLs来确认是否授权用户访问 UI。
Spark2x存在两种类型的Web UI,一种为运行中任务的Web UI,可以通过Yarn原生页面的应用链接或者REST接口访问。一种为已结束任务的Web UI,可以通过Spark2x JobHistory服务或者REST接口访问。Spark2x与Spark的配置有不同。
- 运行中任务Web UI ACL配置。
    
    
- “spark.admin.acls”:指定Web UI的管理员列表。
 - “spark.admin.acls.groups”:指定管理员组列表。
 - “spark.ui.view.acls”:指定yarn界面的访问者列表。
 - “spark.modify.acls.groups”:指定yarn界面的访问者组列表。
 - “spark.modify.acls”:指定Web UI的修改者列表。
 - “spark.ui.view.acls.groups”:指定Web UI的修改者组列表。
 
 
- 运行结束后Web UI ACL配置。
    
运行结束的任务通过客户端的参数“spark.history.ui.acls.enable”控制是否开启ACL访问权限。
如果开启了ACL控制,由客户端的“spark.admin.acls”和s“park.admin.acls.groups”配置指定Web UI的管理员列表和管理员组列表,由客户端的“spark.ui.view.acls”和“spark.modify.acls.groups”配置指定查看Web UI任务明细的访问者列表和组列表,由客户端的“spark.modify.acls”和“spark.ui.view.acls.groups”配置指定修改Web UI任务明细的访问者列表和组列表。
 
配置描述
登录FusionInsight Manager系统,选择“集群 > 待操作集群的名称 > 服务 > Spark2x > 配置”,单击“全部配置”,搜索acl,在对应的JobHistory,JDBCServer,SparkResource和Spark界面修改以下参数。
| 
        参数  | 
      
        说明  | 
      
        默认值  | 
     
|---|---|---|
| 
        spark.history.ui.acls.enable  | 
      
        配置JobHistory是否支持单一任务的权限校验。  | 
      
        true  | 
     
| 
        spark.acls.enable  | 
      
        配置是否开启spark权限管理。 如果开启,将会检查用户是否有权限访问和修改任务信息。  | 
      
        true  | 
     
| 
        spark.admin.acls  | 
      
        配置spark管理员列表,列表中成员有权限管理所有spark任务,此处可以配置多个管理员用户,使用“,”分隔。  | 
      
        admin  | 
     
| 
        spark.admin.acls.groups  | 
      
        配置spark管理组列表,列表中的组有权限管理所有spark任务,此处可以配置多个管理组,使用“,”分隔。  | 
      
        -  | 
     
| 
        spark.modify.acls  | 
      
        配置有权限修改spark任务的成员列表。启动任务的用户默认有此权限,此处可以配置多个用户,使用“,”分隔。  | 
      
        -  | 
     
| 
        spark.modify.acls.groups  | 
      
        配置有权限修改spark任务的组列表,此处可以配置多个组,使用“,”分隔。  | 
      
        -  | 
     
| 
        spark.ui.view.acls  | 
      
        配置有权限访问spark任务的成员列表。启动任务的用户默认有此权限,此处可以配置多个用户,使用“,”分隔。  | 
      
        -  | 
     
| 
       
        spark.ui.view.acls.groups  | 
      
        配置有权限访问spark任务的组列表,此处可以配置多个组,使用“,”分隔。  | 
      
        -  | 
     
 
   若使用客户端提交任务,“spark.admin.acls”、“spark.admin.acls.groups”、“spark.modify.acls”、“spark.modify.acls.groups”、“spark.ui.view.acls”和“spark.ui.view.acls.groups”参数修改后需要重新下载客户端。