更新时间:2024-09-30 GMT+08:00
开启Kerberos认证的集群如何访问Presto?
- 用root用户登录集群Master节点。
- 配置环境变量。
- 开启Kerberos认证的安全集群访问Presto。
- 登录Manager创建一个拥有“Hive Admin Privilege”权限的角色,例如prestorole。
- 创建一个属于“Presto”和“Hive”组的用户,同时为该用户绑定3.a中创建的角色,例如presto001。
- 认证当前用户。
- 下载用户认证凭据。
- MRS Manager界面操作:登录MRS Manager,选择“系统设置 > 用户管理 ”,单击新增用户所在行的“更多 > 下载认证凭据”。
图1 下载Presto用户认证凭据
- FusionInsight Manager界面操作:登录FusionInsight Manager,选择“系统 > 权限 > 用户”,单击新增用户所在行的“更多 > 下载认证凭据”。
- MRS Manager界面操作:登录MRS Manager,选择“系统设置 > 用户管理 ”,单击新增用户所在行的“更多 > 下载认证凭据”。
- 解压下载的用户凭证文件,得到“krb5.conf”和“user.keytab”两个文件并放入客户端目录,例如“/opt/client/Presto/”。
- 执行如下命令获取用户principal。
- 启用Kerberos认证的集群,执行以下命令连接本集群的Presto Server。
presto_cli.sh --krb5-config-path {krb5.conf文件路径} --krb5-principal {用户principal} --krb5-keytab-path {user.keytab文件路径} --user {presto用户名}
- krb5.conf文件路径:请替换为3.e中设置的文件存放路径,例如“/opt/client/Presto/krb5.conf”。
- user.keytab文件路径:请替换为3.e中设置的文件存放路径,例如“/opt/client/Presto/user.keytab”。
- 用户principal:请替换为3.f中返回的结果
- presto用户名:请替换为3.b中创建的用户名,例如“presto001”
例如:presto_cli.sh --krb5-config-path /opt/client/Presto/krb5.conf --krb5-principal prest001@xxx_xxx_xxx_xxx.COM --krb5-keytab-path /opt/client/Presto/user.keytab --user presto001
- 在Presto客户端中执行语句创建schema,例如:
CREATE SCHEMA hive.demo01 WITH (location = 'obs://presto-demo002/');
- 在该schema中建表,该表的数据即存储在OBS桶内,例如:
CREATE TABLE hive.demo01.demo_table WITH (format = 'ORC') AS SELECT * FROM tpch.sf1.customer;
图2 安全集群Presto验证返回结果
- 执行exit退出客户端。
父主题: Kerberos使用