数据中心操作系统解构之系统接入子系统绿色数据中心
数据中心的操作系统由系统接入子系统、数据管理子系统、虚拟网络及网络管理子系统、虚拟运行环境子系统、用户管理和安全管理子系统五个子系统构成。
系统接入子系统
系统接入子系统主要的功能是向用户提供软件应用服务和数据信息服务。系统接入子系统是操作系统的中枢神经,是用户的可见入口点,以及做出全局决定的子系统。它负责处理由用户发起的请求或系统管理员发出的管理请求,做出高层的虚拟运行环境调度决定等操作,井且处理服务等级协议和维护系统及用户相关的元数据。该子系统由一组服务组成,这些服务用于处理用户请求,验证、维护系统及用户元数捆(虚拟运行环境镜像文件、用户权限信息等),并可管理和监视虚拟运行环境的运行。这些服务由企业服务总线来配置和管理,并通过企业服务总线进行服务发布等操作。
系统接入子系统强调透明度和简单性,以便促进操作系统的实验和扩展。为了达到这一要求,该系统的组件需包括虚拟运行环境调度器、SLA引擎、用户接口和管理接口等。它们是模块化的彼此独立的组件,对外提供定义良好的接口,企业服务总线ESB负责控制和管理它们之间的交互及有机配合。通过使用Web服务和Ammon的EC2查询接口与EC2的客户端工具进行交互操作。
在具体实现中,系统接入子系统可以通过多种方式实现。在这里,仅给出一种可行的实现方式 通过阻塞式框架(Tomcat)和非阻塞式框架实现,通过这些轻量级的web框架,实现普通用户、管理员对操作系统的访问,以及操作系统内部子系统之间的互联。
1.B/S架构的用户访问接口
在B/S架构的用户访问接口方面,可以采用GWT—一种Java开发框架,其优势在于简化AJAX应用程序的开发。GWT使开发人员可以使用常见的Java开发工具,开发及调试用Java开发的AJAX应用程序,并且把同一应用程序作为客户端HTML和JavaScript及服务器端Java来部署。GWT包括Java类库、名为窗口组仲 (widget)的AJAX风格的用户界面组件、基于RPC的请求/响应通信框架,以及集成调试环境。GWT提供了java.lang和Java.util程序包的子集,还提供了方便基于组件的GUl开发的Java API。开发后的程序被编译成HTML和JavaScript,做成war包后部署到Web服务器上,就可以通过测览器进行访问。
在Web Server方面,可以使用Jetty。Jetty是一个开源的serlet容器,可以为基于Java的Web内容 (如JSP和servlet)提供运行环境。Jetty的特点主要体现在以下两方面。
1)易用性
可方便地通过XML或API来对jetty进行配置:利用continuation机制来处理大量的用户请求及时间比较长的连接(这是因为使用了Ajax的Web2.0的应用程序,每个连接需要保持很长的会话时间)此外,Jetty设计了良好的接口,因此在Jetty的某种实现无法满足用户的需要时,用户可以非常方便地对Jetty 的某些实现进行修改,使Jetty满足特殊应用程序的需求。
2)易嵌入性
Jetty可以作为嵌入式服务器使用,由于其运行速度较快且轻最,因此在Java申可以通过test case控制其运行,从而可以使自动化测试不再依赖外部环境,顺利实现自动化测试。
2·操作系统管理及使用接口
在操作系统管理及使用接口方面,可以使用nctty提供的异步事件驱动的网络应用程序框架和工具,快速开发高性能、高可靠性的网络服务器和客户端程序。
3·操作系统元数据管理
在燥作系统管理元数据方面,最好使用关系型数据库对数据进行存储,并通过对象持久化技术,提供数据库访问接口。在存储方面,可以选择Hsqldb,它是一个开放源代码的Java数据库,具有标准的SQL语法和Java接口,可以自由使用和分发,十分简捷。在访问方面,可以选择Hibernate论这个开放源代码的对象关系映射框架,它对JDBC进行了非常轻最级的对象封装,使 Java程序员可以随心所欲地使用对象编程思想来操纵数据库。Hibernate适用于任何使用 JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,此外,Hibernate还可以在应用EJB的J2EE架构中取代CMp,完成数据持久化的重任。
4·子系统之间通信及互联机制
在子系统之间通信及互联方面,可以使用Webservice忧进行各个子系统之间的互联,使用Apache十Axis2C完成发布服务的功能。Apache源于NSCAhttpd服务器,经过多次修改,目前已经成为世界上最流行的Web服务器软件之一。Apache的特点是简单、速度快、性能稳定,并可作为代理服务器来使用。Axh2C采用名为AXIOM(Axis object model)的新核心XML处理模型,利用新的XML解析器具有的灵活性按需构造对象模型;支持不同的消息交换模式 (In-Only、Robust-In和In-Out),内置的Web服务寻址,以及HTTP、SMTP、JMS、TCP传输协议;提供阻塞和非阻塞客户端API。