(可选)配置keytab和whitelist
安装OmniShuffle特性前,如果需要开启安全策略,则需要配置OmniShuffle特性所需的keytab和whitelist。配置keytab和whitelist之前,需要使用KDC服务器,建议为第三方服务器(非OmniShuffle集群服务器),请提前准备。
- 出于安全考虑,建议将各节点运维账户umask修改为077及以上。
- 如果在当前环境中以运维账户执行过kmc_tool相关操作,需要在集群环境中删除运维账户kmc信号量。
- 查询信号量。
1
ipcs -s -t
- 删除信号量。
1
ipcrm -S 0x20161316
- 查询信号量。
配置keytab、whitelist
- 登录OmniShuffle集群服务器,修改每台服务器的“/etc/hosts”文件。
在“hosts”文件中添加KDC服务器的“地址 主机名”映射关系。
IPaddress1 master
- 登入KDC服务器节点。
- 创建“kdc”文件夹。
- 将kdc_distribute.sh、kdc_kmc_encrypt_wt.sh、kdc_kmc_encrypt_zookeeper_kt.sh、kdc_kmc_encrypt_kt_client.sh、kdc_kmc_encrypt_kt_server.sh五个文件复制并保存到kdc文件夹。
- 在“kdc”文件夹下,创建node_list文件。
- 打开文件。
1
vi node_list
- 按“i”进入编辑模式,文件添加内容如下所示。
#xx.xx.xx.xx server1 1 #xx.xx.xx.xx agent1 0 #xx.xx.xx.xx agent2 0 #xx.xx.xx.xx agent3 0
- 该文件中不能存在空行,注意末尾也不能有空行。
- xx.xx.xx.xx以实际环境中对应的节点IP地址为准,0代表计算节点,1代表管理节点。
1
#xx.xx.xx.xx 0 or 1
- 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。
- 打开文件。
- 在zookeeper运行用户与提交Spark任务用户的${HOME}/.bashrc中新增OCK_HOME、OCK_VERSION、OCK_BINARY_TYPE环境变量。
- 打开文件。
vi ~/.bashrc
- 按“i”进入编辑模式,在文件中添加以下内容。
export OCK_HOME=/home/ockadmin/opt/ock export OCK_VERSION=23.0.0 export OCK_BINARY_TYPE=linux-aarch64
- 按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。
- 打开文件。
- 执行kdc_distribute.sh脚本,执行前执行set +o history命令关闭历史记录功能,执行完成后执行set -o history打开历史记录功能。
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”里面配置的一致)
- 执行kdc_distribute.sh脚本时,需要输入发送到远端的用户名和密码,同时需要输入当前kerberos域的域名。
- KDC脚本不包含在OmniShuffle软件安装包里,用户直接获取。
脚本执行后在每个节点生成如下文件。
ksfa、ksfb由KDC分发脚本调用kmc_tool工具时,kmc_tool自动生成于“${HOME}/tools/pmt”目录,如果已经生成,则再次执行就不会重复生成。脚本内会将文件拷贝至各节点指定位置。
- ock用户生成文件位于“${OCK_HOME}/security/”目录下。
├── authorization
│ └── whitelist_en
├── kdc
│ └── krb5-server_en.keytab
├── pmt
│ ├── master
│ ├── ksfa
│ └── standby
│ ├── ksfb
- 提交Spark任务用户生成文件位于用户“${HOME}/huawei/ock/security”目录下。
├── kdc
│ └── krb5-client_en.keytab
├── pmt
│ ├── master
│ ├── ksfa
│ └── standby
│ ├── ksfb
- zookeeper用户生成文件位于用户“${HOME}/huawei/ock/security”目录下。
├── kdc
│ └── zookeeper_en.keytab
├── pmt
│ ├── master
│ ├── ksfa
│ └── standby
│ ├── ksfb
父主题: SmartKit方式安装