设为首页 收藏本站
查看: 1196|回复: 0

[经验分享] Xen API简介

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-10-11 13:21:35 | 显示全部楼层 |阅读模式
  Xen提供两种接口:一种是由客户机使用的,一种是由工具使用的,前者就是熟知的Hypercall,后者被称之为Xen的API,有时候也被称之为Xen的管理API,Xen的API构建在XML-RPC之上,完整的API规范超过100页。Xen的API被用户空间组件使用,比如用来控制系统的xm命令行工具,Xend后台进程监听XML-RPC连接并执行一些管理功能。

  •   XML-RPC
    和绝大多数程序设计语言一样,XML-RPC定义了少量的元数据类型,然后允许他们结合起来形成符合数据类型。和Xen相关的有 int double,boolean,dateTime。这些走在抽象API中被用来标识int,float,bool,Datatime.这里就不在详细赘诉,感兴趣大家自行谷歌。
  •   Xen 的接口层次
    DSC0000.jpg
  •   xend的功能
    Xen后台程序负责在其他用户空间工具和内核接口直接提供接口。应为Xen的Hypercall只能运行在特权级别。内核导出一个具有标准接口的设备,由后台程序作为普通文件打开。Xend 的一个主要任务是访问控制。在本机上,这是通过和后台连接的套接字或者其他任何文件设置权限来确保访问特定的用户或者ubei的访问权限。不是所有的管理功能都需要直接和Hypervisor打交道,其中一些比如启动克重寻你驱动的后端,完全发生在用户空间,或者一些通过授权表建立的共享内存区域的少量的Hypervisor交互。如果xend完全建立在内核中,完成其中很多功能可能会非常空难。把xend设计为一个用户空间工具的另外一个主要原因是它使得将其他操作系统一直未Domain0变的更加加单。
  •   Xm命令行
    Xm(xen master)命令管理Xen的最简单方式,程序本身使用Python编写,每一个命令在一个单独的源文件中实现。Xen 3.1之前,xm是控制xen的唯一方法。
  •   Xen CIM提供者
    在为Xen开发稳定的API背后的一个驱动力就是最求适应不同管理接口的能力。通用信息模块(CIM)正是符合这一要求的接口。CIM指的是一组管理工具定义接口的标准。它们不局限于虚拟化,被广泛的用于一些管理任务,比如管理复杂的存储环境,简单讲,CIM提供者只是一种语言绑定,不同于libxen和pyxen等其他绑定,CIM提供者在Xen API 和另一种域先关非常高层语言之间转换。尽管用户可以使用C写一个使用libxen的工具,也可以使用自己悬着的一种通用编程语言编写和CIM提供者交互的东西。
  •   CIM VS libvirt
    咋看起来,CIM和libvirt似乎有相似的目的。二者都为编写工具提供了hypervisor无关的抽象层。但他们有一些大的区别:CIM是一个抽象模型,基于XML的重新表述,并且以语言无关的方式使用。相比之下libvirt非常精密的和C绑定。另外一个大区别在开发模型上。CIM标准的相关部分正在由一个代表多个接口。它任然更加贴近于Xen的处理方式。它也只是被设计来管理本机的虚拟化环境,而CIM管理工具通常被用来组织大量的计算机和其他设备。最后CIM是一个大的规范,虚拟化相关的部分相对来说较少。为一个支持CIM的管理工具添加旬计划的支持相对简单。
  •   Xen API类
DSC0001.jpg
         版权声明:本文为博主原创文章,未经博主允许不得转载。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-125466-1-1.html 上篇帖子: Xen 的整体架构和整体设计 下篇帖子: 在xen下调整基于文件的lvm大小
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表