概要描述
本文描述使用SLB的方式去配置集群外访问TDC的hdfs配置
详细描述
1 确认需要部署的hdfs的信息,创建相应个数的vip

kubectl -n {ns} get pod |grep datanode |grep {install.id} |grep -v http |grep -v jour | wc -l

登录ECO管理页面https://{IP}/tdc/eco/,在【基础设施】-【VIP】-【添加】入口创建VIP

和客户确认申请了集群节点同网段的ip地址

添加完成

外部服务器ping测试

2 配置SLB代理HDFS服务

在【SLB管理】创建namenode、secondarynamenode、datanode角色的端口映射
创建namenode0 8020端口的SLB映射

创建namenode1 8020端口的SLB映射

配置datanode的50010端口的SLB映射

3 tdc-client获取最新的配置文件并且copy到集群外节点

拷贝get_tdc_tenant_tdh_conf.sh 到集群master服务器上
chmod +x get_tdc_tenant_tdh_conf.sh
bash get_tdc_tenant_tdh_conf.sh --tenant_name jb-kgzh --cluster_name clus-1 --terminal_pod terminal-frlmb-0 --tdc_tdh_version transwarp-9.0.0-final
其中
–tenant_name jb-kgzh 指的是租户名
–cluster_name 指的是hdfs的部署的clus-x
— terminal_pod 指的是部署在这个实例的terminal的pod名字
–tdc_tdh_version 指的是版本号 这个版本号参照下图的对应关系(本环境是9.3所以这个值选择transwarp-9.0.0-final)



将这个conf文件夹拷贝到集群外服务器

放到集群外服务器tdc-client/conf

4 配置集群外/etc/hosts 文件
此处将配置的slb映射和svc地址进行配置

namenode的格式为{namenode的headlsess的svc name}.{ns}.svc.transwarp.local {namenode-hl-svc-name}.{ns}.svc.transwarp.local.
#namenode0
10.254.200.123 hdfsnamenode0-hl-swgh6.jb-kgzh.svc.transwarp.local hdfsnamenode0-hl-swgh6.jb-kgzh.svc.transwarp.local.
#namenode1
10.254.200.124 hdfsnamenode1-hl-swgh6.jb-kgzh.svc.transwarp.local hdfsnamenode1-hl-swgh6.jb-kgzh.svc.transwarp.local.
datanode的格式{datanode的pod name}.{datanode的svc name}.{ns}.svc.transwarp.local.

#datanode
10.254.200.123 hdfsdatanode-swgh6-0.jb-kgzh.pod.transwarp.local. hdfsdatanode-swgh6-0.jb-kgzh.svc.transwarp.local. hdfsdatanode-swgh6-0.hdfsdatanode-swgh6.jb-kgzh.svc.transwarp.local
10.254.200.124 hdfsdatanode-swgh6-1.jb-kgzh.pod.transwarp.local. hdfsdatanode-swgh6-1.jb-kgzh.svc.transwarp.local. hdfsdatanode-swgh6-1.hdfsdatanode-swgh6.jb-kgzh.svc.transwarp.local
10.254.200.125 hdfsdatanode-swgh6-2.jb-kgzh.pod.transwarp.local. hdfsdatanode-swgh6-2.jb-kgzh.svc.transwarp.local. hdfsdatanode-swgh6-2.hdfsdatanode-swgh6.jb-kgzh.svc.transwarp.local
10.254.200.126 hdfsdatanode-swgh6-3.jb-kgzh.pod.transwarp.local. hdfsdatanode-swgh6-3.jb-kgzh.svc.transwarp.local. hdfsdatanode-swgh6-3.hdfsdatanode-swgh6.jb-kgzh.svc.transwarp.local
10.254.200.127 hdfsdatanode-swgh6-4.jb-kgzh.pod.transwarp.local. hdfsdatanode-swgh6-4.jb-kgzh.svc.transwarp.local. hdfsdatanode-swgh6-4.hdfsdatanode-swgh6.jb-kgzh.svc.transwarp.local
10.254.200.128 hdfsdatanode-swgh6-5.jb-kgzh.pod.transwarp.local. hdfsdatanode-swgh6-5.jb-kgzh.svc.transwarp.local. hdfsdatanode-swgh6-5.hdfsdatanode-swgh6.jb-kgzh.svc.transwarp.local
10.254.200.129 hdfsdatanode-swgh6-6.jb-kgzh.pod.transwarp.local. hdfsdatanode-swgh6-6.jb-kgzh.svc.transwarp.local. hdfsdatanode-swgh6-6.hdfsdatanode-swgh6.jb-kgzh.svc.transwarp.local
10.254.200.130 hdfsdatanode-swgh6-7.jb-kgzh.pod.transwarp.local. hdfsdatanode-swgh6-7.jb-kgzh.svc.transwarp.local. hdfsdatanode-swgh6-7.hdfsdatanode-swgh6.jb-kgzh.svc.transwarp.local
10.254.200.131 hdfsdatanode-swgh6-8.jb-kgzh.pod.transwarp.local. hdfsdatanode-swgh6-8.jb-kgzh.svc.transwarp.local. hdfsdatanode-swgh6-8.hdfsdatanode-swgh6.jb-kgzh.svc.transwarp.local

5 初始化集群客户端
./tdc_client init_tdc

./tdc_client workon

You can follow the steps
*****************************************
1. cd /opt/download/tdc-client/scripts/../.env/jb-kgzh_clus-1
2. source ./env
*****************************************

然后就可以正常执行kinit 认证账号,执行hdfs命令了