FusionInsight 集群功能介绍-FTP-Server
基本原理
简介
FTP-Server是一个纯Java的、基于现有开放的FTP协议的FTP服务。FTP-Server支持 FTP、FTPS协议,每个服务都支持PORT、PASSIVE数据通信协议。用户或业务组件可 通过通用的FTP客户端、FTP协议对HDFS文件系统进行基本的操作,如:文件上传, 文件下载,目录查看,目录创建,目录删除,文件权限修改等。
● 支持FTPS协议,FTPS是基于SSL保护的FTP协议,数据进行加密传输,数据传输受 到保护。FTP协议存在安全风险,建议使用FTPS安全协议。
● 支持PORT、PASSIVE数据通信协议。
● 利用集群提供的kerberos认证服务进行用户鉴权认证。
结构
FTP-Server服务由多个FTP-Server进程或FTPS-Server进程组成。如图1-35所示。 FTP-Server服务可以部署在多个节点上,每个节点上只有一个FTP-Server实例,每个实 例只有一个FTP Server进程
图 1-35 FTP-Server 结构
FTP客户端(FTP Client)
FTP客户端用于接入FTP服务端,对数据进行上传、下载等操作。FTP客户端集成于业 务应用中。
FTP服务端(FTP Servers)
FTP服务端对外提供标准的FTP接口,用于支持FTP客户端访问HDFS文件系统,其提供 了大部分FTP协议命令。 FTP服务端底层服务基于FusionInsight HD的基本服务,用户管理基于Kerberos安全认 证服务,数据存储基于HDFS服务,服务配置基于OMS服务。
基础服务(Basic Servers)
FTP服务端使用的基础服务有三个,Kerberos安全服务,HDFS服务和OMS服务。
● Kerberos安全服务主要用于支持FTP用户管理和用户登录。
● HDFS服务主要用于数据存储。
● OMS服务主要用于FTP服务的参数配置和服务的启停。
原理
FTP-Server的数据方位流程介绍如图1-36所示。
图 1-36 FTP-Server 数据访问流程
FTP客户端使用FTP服务的IP、端口号,连接到FTP服务。
FTP服务端使用这些信息到Kerberos模块做用户认证。
认证通过后,FTP服务端访问HDFS,将文件信息返回给客户端。
客户端使用标准的FTP协议,上传、下载文件,管理HDFS文件目录。
安全
FTP协议通讯未做任何加密,通讯内容、用户的用户名、密码、传输数据容易被窃取, 因此在非可信的网络,推荐使用FTPS协议通讯。FusionInsight HD提供的FTP-Server 为支持企业、金融基本的应用,提供了FTPS加密协议,传输时对数据进行加密传输, 有效防止信息泄漏。客户端使用FTPS协议进行连接时,只支持隐式的FTP over TLS加 密方式。
FTP-Server默认关闭FTP协议的FTP-Server进程,管理员可通过FTP服务配置界面进行 配置,重启服务后才能连接(使用业务IP连接)。
每个节点默认支持16个FTP/FTPS(用户或客户端)连接。若对性能有要求,建议采用 FTPS协议,命令通道加密、数据通道不加密的方式。
与组件的关系
FTP-Server 与 HDFS 间的关系
HDFS是FTP-Server的存储系统,用户上传的数据全部存放在HDFS对应的目录中,用 户通过FTP命令对HDFS中的文件进行操作。
FTP-Server 与 Kerberos 间的关系
Kerberos Authentication Module是FTP-Server的鉴权模块,FTP-Client在进行连接时 需要将用户名和密码发送给FTP-Server,FTP-Server接收到用户名和密码之后利用 Kerberos服务进行鉴权认证,检查该用户的密码是否正确并检查该用户是否有权限连 接FTP-Server。
增强特性
支持 Kerberos 鉴权认证
Apache FTP Server的鉴权认证是将用户名和密码记录在文件中或者数据库。在分布式 的系统中,这种存储方式存在一定的缺陷。对于文件存储的方式,不适合使用在分布 式系统中,而对于数据库的存储方式,其和HDFS文件系统的用户管理的结合存在很大 的不同。因此,FusionInsight HD采用集群中的Kerberos服务进行鉴权认证,使用户管 理和集群用户管理和HDFS用户管理无缝集成。
FTP 传输文件到 HDFS 文件系统
以HDFS作为FTP-Server的存储文件系统,所有的数据都存放HDFS。
- 点赞
- 收藏
- 关注作者
评论(0)