资源描述:
《企业代理服务器技术》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、企业代理服务器技术1、相关定义1.1、分布式文件系统的概念分布式文件系统[5]是云存储系统的核心部分。所谓分布式文件系统,指的是与存储系统相关的物理资源并不位于本地节点,而是位于专门的存储节点中,本地节点即客户端通过计算机网络与存储节点相连,存取数据。存储节点本身就是一台完整的计算机,除了拥有以磁盘为代表的存储资源,还拥有专门的CPU、内存、网卡,内部运行着分布式文件系统软件。分布式文件系统软件是整个分布式系统的核心,管理着整个系统的运作,其架构的好坏决定了整个存储系统的优劣。近十年来,企业界、学术界推动分布式文件系统结构向着并行化、集群化方向发展,研制出大量新型的并行分布式文件系统。
2、并行分布式文件系统通常拥有如下特征:系统都采用集群方式来实现,集群通常包含两类节点:元数据服务器和数据服务器。元数据服务器通常只管理名字空间、权限等元数据信息,而底层的磁盘块分配释个人空间服务,运营商空间租赁等企事业单位或SMB实现数据备份,数据归档,集中存储,远程共享视频监控,IPTV等系统的集中存储,网站大容量在线存储等网络(广域网或互联网)接入,用户认证,权限管理公用API接口,应用软件,webservice等集群系统分布式文件系统网格计算内容分发P2P重复数据删除数据压缩数据加密数据备份数据容灾存储虚拟化,存储集中管理,状态监控,维护升级等存储设备(NFS,FC,iSCSI等)
3、访问层应用接口层基础管理层存储层上海交通大学申请硕士学位论文第一章引言5放则交由各个数据服务器单独管理。数据服务器提供给外界的是不同于传统磁盘块的数据对象的访问接口。客户端通常只在执行元数据操作(如打开、创建文件)时和元数据服务器交互,数据I/O操作则直接与数据服务器交互。该架构把磁盘块管理、数据I/O处理分散到多个数据服务器,从而提高了系统的可扩展性。由于集群包含成百上千个节点并采用廉价的商品硬件,所以节点故障经常发生。为了保证数据的完整性、系统的可用性,通常把数据冗余地存放在多个数据服务器,其中一些采用数据副本方式,另一些则采用诸如奇偶校验的擦除码方式。而且,当节点故障发生后,系统
4、还能自动修复受影响的数据。其他一些特征还包括了自动容错、性能的负载均衡等简化运维的功能。目前,新型的分布式文件系统主要分为两类:一类为通用性文件系统,如Lustre[6]、Panasas[7]、Ceph[8]等,其访问接口符合传统的POSIX标准,通用性较强;另一类则是非通用性文件系统,它们的访问接口通常是根据特殊应用定制、精简的,比如针对MapReduce[9]并行计算领域的GoogleFileSystem[10]和HDFS[11],针对云存储领域的OpenStackSwift[12]。1.2、交叉编译概念在一种计算机环境中运行的编译程序,能编译出在另外一种环境下运行的代码,就称为这
5、种编译器为交叉编译器,这个编译过程就叫交叉编译过程。交叉编译概念的出现和流行和嵌入式系统的广泛发展是同步的。我们常用的计算机软件,都需要通过编译的方式,把使用高级计算机语言编写的代码(比如C代码)编译成计算机可以识别和执行的二进制代码。比如,在Windows平台上,可使用VisualC++开发环境,编写程序并编译成可执行程序。这种方式下,我们使用PC平台上的Windows工具开发针对Windows本身的可执行程序,这种编译过程成为NaiveCompilation,中文可理解为本机编译。然而,在进行嵌入式开发的时,运行程序的目标平台通常具有有限的存储空间和运算能力,比如常见的ARM平台,
6、其一般的静态存储空间是16到64MB,而CPU的主频大概在33MHZ到500MHZ之间。这种情况下,在ARM平台上进行本机编译就不太可能了,这是因为一般的编译工具链需要很大的存储空间,并需要很强的CPU运算能力,为了解决这个问题,交叉编译工具就应运而生了。嵌入式开发一般采用HOST/TARGET模式,主机(HOST)一般为X86体系结构的PC,目标板(TARGET)一般为其它体系结构(比如ARM)的开发板,关键是在主机平台上生成目标平台上的可执行代码,这也就是所谓的交叉编译。要进行交叉编译,首先需要在主机平台安装相应的交叉编译工具链(CrossCompilationtoolchain)
7、,然后用交叉编译工具链编译源代码,最终生成可以在目标平台上运行的代码。21交叉编译工具链是一套集编译器、连接器和libc库等组成的开发环境。制作交叉编译工具链有几个主要步骤:1)下载源文件、补丁文件,建立编译目录;2)建立内核头文件;3)建立二进制工具binutils;4)建立初始编译器;5)建立C库;6)建立全套编译器;在本文中我们使用的交叉编译工具链版本是3.4.6,其内核、二进制工具、GCC编译器、以及库文件的搭配版本如表5-1所示,版本