安装OmniShuffle特性前,如果需要开启安全策略,则需要配置OmniShuffle特性所需的keytab和whitelist。配置keytab和whitelist之前,需要使用KDC服务器,建议为第三方服务器(非OmniShuffle集群服务器),请提前准备。
1 | ipcs -s -t |
1 | ipcrm -S 0x20161316 |
在“hosts”文件中添加KDC服务器的“地址 主机名”映射关系。
IPaddress1 master
1 | vi node_list
|
#xx.xx.xx.xx server1 1 #xx.xx.xx.xx agent1 0 #xx.xx.xx.xx agent2 0 #xx.xx.xx.xx agent3 0
1 | #xx.xx.xx.xx 0 or 1
|
vi ~/.bashrc
export OCK_HOME=/home/ockadmin/opt/ock export OCK_VERSION=23.0.0 export OCK_BINARY_TYPE=linux-aarch64
1 | sh kdc_distribute.sh
|
回显内容如下,参考如下提示输入相关信息。
Enter OPS_USER:#输入运维账户名 Enter OPS_PWD:#输入运维账户密码 Enter RUN_USER:#输入OmniShuffle运行账户名 Enter RUN_GROUP:#输入OmniShuffle运行账户属组 Enter SPARK_USER:#输入提交Spark任务账户名 Enter ZK_USER:#输入ZooKeeper运行账户名 OCK_HOME:#输入OmniShuffle安装的home路径,如“/home/ockadmin/opt/ock” Enter REALM:#输入域名,与KDC服务器搭建时设置的保持一致(即与“/etc/krb5.conf”里面配置的一致)
脚本执行后在每个节点生成如下文件。
ksfa、ksfb由KDC分发脚本调用kmc_tool工具时,kmc_tool自动生成于“${HOME}/tools/pmt”目录,如果已经生成,则再次执行就不会重复生成。脚本内会将文件拷贝至各节点指定位置。
├── authorization
│ └── whitelist_en
├── kdc
│ └── krb5-server_en.keytab
├── pmt
│ ├── master
│ ├── ksfa
│ └── standby
│ ├── ksfb
├── kdc
│ └── krb5-client_en.keytab
├── pmt
│ ├── master
│ ├── ksfa
│ └── standby
│ ├── ksfb
├── kdc
│ └── zookeeper_en.keytab
├── pmt
│ ├── master
│ ├── ksfa
│ └── standby
│ ├── ksfb