您好,登录后才能下订单哦!
今天就跟大家聊聊有关如何进行nova源码整体文件结构分析 ,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
以下是本人通过阅读Grizzly版OpenStack源码,整理的简要的Nova模块源码结构。
/bin:Nova各个服务的启动脚本
/nova/api/auth.py:通用身份验证的中间件,访问keystone;
/nova/api/manager.py:Metadata管理初始化;
/nova/api/sizelimit.py:limit中间件的实现;
/nova/api/validator.py:一些参数的验证;
/nova/api/ec2/__init__.py:Amazon EC2 API绑定,路由EC2请求的起点;
/nova/api/ec2/apirequest.py:APIRequest类;
/nova/api/ec2/cloud.py:云控制器:执行EC2 REST API的调用,这个调用是通过AMQP RPC分派到其他节点;
/nova/api/ec2/ec2utils.py:ec2相关的实用程序;
/nova/api/ec2/faults.py:捕获异常并返回REST响应;
/nova/api/ec2/inst_state.py:状态信息的设置;
/nova/api/metadata/__init__.py:Nova元数据服务;
/nova/api/metadata/base.py:实例元数据相关信息;
/nova/api/metadata/handler.py:Metadata请求处理程序;
/nova/api/metadata/password.py:元数据相关的密码处理程序;
/nova/api/openstack/__init__.py:OpenStack API控制器的WSGI中间件;
/nova/api/openstack/auth.py:身份验证;
/nova/api/openstack/common.py:一些通用管理程序;
/nova/api/openstack/extensions.py:模块扩展相关;
/nova/api/openstack/urlmap.py:urlmap相关;
/nova/api/openstack/wsgi.py:wsgi的一些应用;
/nova/api/openstack/xmlutil.py:处理xml的实用程序;
/nova/api/openstack/compute/__init__.py:OpenStack Compute API的WSGI中间件;
/nova/api/openstack/compute/consoles.py:OpenStack Compute API控制台;
/nova/api/openstack/compute/extensions.py:扩展管理;
/nova/api/openstack/compute/flavors.py:OpenStack Compute API的flavors控制器;
/nova/api/openstack/compute/image_metadata.py:OpenStack Compute API的镜像源文件API控制器;
/nova/api/openstack/compute/images.py:用于检索/显示镜像的基本控制器;
/nova/api/openstack/compute/ips.py:OpenStack API的服务IP地址API控制器;
/nova/api/openstack/compute/limits.py:limit中间件相关;
/nova/api/openstack/compute/server_metadata.py:OpenStack API的服务元数据API控制器;
/nova/api/openstack/compute/servers.py:server的模板类以及控制类API实现;
/nova/api/openstack/compute/versions.py:版本相关;
/nova/api/openstack/compute/contrib/__init__.py:
/nova/api/openstack/compute/contrib/admin_actions.py:定义了若干管理员权限运行的管理虚拟机的操作;
/nova/api/openstack/compute/contrib/agents.py:主要实现对代理器的处理;
注:代理主要指的是来宾(guest)的代理。主机可以使用代理来实现在来宾系统(guest)上访问磁盘文件、配置网络以及运行其他程序或脚本。
/nova/api/openstack/compute/contrib/aggregates.py:管理员Aggregate API操作扩展;
/nova/api/openstack/compute/contrib/attach_interfaces.py:实例接口扩展;(应该看看)
/nova/api/openstack/compute/contrib/availability_zone.py:对可用的zone的处理的API集合;
/nova/api/openstack/compute/contrib/baremetal_nodes.py:裸机节点管理员操作API扩展;
/nova/api/openstack/compute/contrib/cells.py:cell操作扩展API;
/nova/api/openstack/compute/contrib/certificates.py:OpenStack API的x509数字认证操作API;
/nova/api/openstack/compute/contrib/cloudpipe_update.py:为cloudpipe实例处理更新vpn ip/port;
/nova/api/openstack/compute/contrib/cloudpipe.py:通过cloudpipes连接vlan到外网;
/nova/api/openstack/compute/contrib/config_drive.py:配置驱动扩展;
/nova/api/openstack/compute/contrib/console_output.py:控制台输出控制;
/nova/api/openstack/compute/contrib/consoles.py:控制台控制API;
/nova/api/openstack/compute/contrib/coverage_ext.py:Coverage报告API控制器;
/nova/api/openstack/compute/contrib/createserverext.py:扩展建立对服务v1.1 API的支持;
/nova/api/openstack/compute/contrib/deferred_delete.py:延期删除实例扩展;
/nova/api/openstack/compute/contrib/disk_config.py:磁盘配置扩展API;
/nova/api/openstack/compute/contrib/evacuate.py:允许管理员迁移一个服务从失败的主机到一个新的主机;
/nova/api/openstack/compute/contrib/extended_availability_zone.py:可用的zone状态API扩展;
/nova/api/openstack/compute/contrib/extended_ips.py:扩展IP API扩展;
/nova/api/openstack/compute/contrib/extended_server_attributes.py:扩展服务属性API扩展;
/nova/api/openstack/compute/contrib/extended_status.py:扩展实例状态的API;
/nova/api/openstack/compute/contrib/fixed_ips.py:固定IP操作API;
/nova/api/openstack/compute/contrib/flavor_access.py:OpenStack API的flavor访问操作API;
/nova/api/openstack/compute/contrib/flavor_disabled.py:OpenStack API的flavor禁用访问API;
/nova/api/openstack/compute/contrib/flavor_rxtx.py:OpenStack API的flavor Rxtx API;
/nova/api/openstack/compute/contrib/flavor_swap.py:OpenStack API的flavor Swap API扩展;
/nova/api/openstack/compute/contrib/flavorextradata.py:OpenStack API的flavor额外数据扩展;
/nova/api/openstack/compute/contrib/flavorextraspecs.py:实例类型额外规格扩展;
/nova/api/openstack/compute/contrib/flavormanage.py:flavor管理API;
/nova/api/openstack/compute/contrib/floating_ip_dns.py:浮动IP DNS支持;
/nova/api/openstack/compute/contrib/floating_ip_pools.py:浮动IP池;
/nova/api/openstack/compute/contrib/floating_ips_bulk.py:批量浮动IP支持;
/nova/api/openstack/compute/contrib/floating_ips.py:浮动IP控制器;
/nova/api/openstack/compute/contrib/fping.py:Fping控制器的实现;
/nova/api/openstack/compute/contrib/hide_server_addresses.py:特定的状态下隐藏服务地址;
/nova/api/openstack/compute/contrib/hosts.py:主机管理扩展;
/nova/api/openstack/compute/contrib/hypervisors.py:虚拟机管理程序管理的扩展;
/nova/api/openstack/compute/contrib/image_size.py:镜像大小管理;
/nova/api/openstack/compute/contrib/instance_actions.py:对实例操作的管理;
/nova/api/openstack/compute/contrib/instance_usage_audit_log.py:虚拟机实例应用的日志记录控制器;
/nova/api/openstack/compute/contrib/keypairs.py:密钥对API管理扩展;
/nova/api/openstack/compute/contrib/multinic.py:多网络支持扩展;
/nova/api/openstack/compute/contrib/networks_associate.py:Network Association支持;
/nova/api/openstack/compute/contrib/os_networks.py:管理员权限网络管理扩展;
/nova/api/openstack/compute/contrib/os_tenant_networks.py:基于租户的网络管理扩展;
/nova/api/openstack/compute/contrib/quota_classes.py:磁盘配额类管理支持;
/nova/api/openstack/compute/contrib/quotas.py:磁盘配额管理支持;
/nova/api/openstack/compute/contrib/rescue.py:实例救援模式扩展;
/nova/api/openstack/compute/contrib/scheduler_hints.py:传递任意的键值对到调度器;
/nova/api/openstack/compute/contrib/security_group_default_rules.py:安全组默认规则的支持;
/nova/api/openstack/compute/contrib/security_groups.py:安全组的扩展支持;
/nova/api/openstack/compute/contrib/server_diagnostics.py:服务器诊断的支持;
/nova/api/openstack/compute/contrib/server_password.py:server password扩展的支持;
/nova/api/openstack/compute/contrib/server_start_stop.py:虚拟机实例启动和停止的API支持;
/nova/api/openstack/compute/contrib/services.py:对service扩展的支持;
/nova/api/openstack/compute/contrib/simple_tenant_usage.py:简单的租户使用率的扩展;
/nova/api/openstack/compute/contrib/used_limits.py:有限使用资源的数据;
/nova/api/openstack/compute/contrib/virtual_interfaces.py:虚拟接口扩展;
/nova/api/openstack/compute/contrib/volumes.py:卷相关管理的扩展;
/nova/cells/driver.py:cell通讯驱动基类;
/nova/cells/manager.py:cell服务管理API,主要定义了类CellsManager;
/nova/cells/messaging.py:cell通信模块;
/nova/cells/opts.py:cell的全局配置选项;
/nova/cells/rpc_driver.py:cell RPC通信驱动,通过RPC实现cell的通信;
/nova/cells/rpcapi.py:nova-cells RPC客户端API,来实现与nova-cells服务的交流,主要就是Cell RPC API客户端类;
/nova/cells/scheduler.py:cell调度器实现;
/nova/cells/state.py:cell状态管理实现,包括一个CellState类(为一个特定的cell保存信息类)和一个CellStateManager类(cell状态管理类);
/nova/cells/utils.py:cell的实用方法;
/nova/cert/manager.py:x509数字认证的证书管理,主要包括一个类CertManager(认证管理类);
/nova/cert/rpcapi.py:认证管理RPC的客户端API;
/nova/cloudpipe/pipelib.py:CloudPipe - 建立一个用户数据加载zip文件,并根据它启动一个实例;
/nova/compute/api.py:处理关于计算资源的所有的请求;
/nova/compute/cells_api.py:通过cell执行的服务操作API;
/nova/compute/instance_actions.py:对一个实例的所有可能的操作;
/nova/compute/instance_types.py:对实例的内置属性的操作;
/nova/compute/manager.py:对实例相关的所有进程的处理(来宾虚拟机);
ComputeVirtAPI类:计算Virt API;
ComputeManager类:管理实例从建立到销毁的运行过程;
/nova/compute/power_state.py:Power state表示的是从一个特定的域调用virt driver时的状态;
/nova/compute/resource_tracker.py:跟踪计算主机的资源,例如内存和磁盘等,管理实例资源;
/nova/compute/rpcapi.py:compute RPC API客户端;
ComputeAPI类:compute rpc API的客户端类;
SecurityGroupAPI类:安全组RPC API客户端类;
/nova/compute/stats.py:用来更新计算节点工作量统计数据信息的操作;
/nova/compute/task_states.py:实例可能处于的任务状态;
/nova/compute/utils.py:计算相关的使用工具和辅助方法;
/nova/compute/vm_mode.py:实例可能的虚拟机模式;
/nova/compute/vm_states.py:实例可能的虚拟机状态;
/nova/conductor/__init__.py:这里简单解释一下nova conductor服务,在Grizzly版的Nova中,nova-conductor是在nova-compute之上的新的服务层,它使得nova-compute不再直接访问数据库;
/nova/conductor/api.py:处理conductor service所有的请求;
LocalAPI类:conductor API 的本地版本,这个类处理了本地数据库的更新,而不是通过RPC;
API类:通过RPC和ConductorManager类实现数据库的更新,实现Conductor的管理;
/nova/conductor/manager.py:处理来自其他nova服务的数据库请求;
注:主要实现就是ConductorManager类;
/nova/conductor/rpcapi.py:conductor RPC API客户端;
/nova/console/api.py:处理ConsoleProxy API请求;
/nova/console/fake.py:模拟ConsoleProxy driver用于测试;
/nova/console/manager.py:控制台代理服务;
/nova/console/rpcapi.py:console RPC API客户端;
/nova/console/vmrc_manager.py:VMRC控制台管理;
/nova/console/vmrc.py:VMRC控制台驱动;
/nova/console/websocketproxy.py:与OpenStack Nova相兼容的Websocket proxy;
/nova/console/xvp.py:Xenserver VNC Proxy驱动;
/nova/consoleauth/__init__.py:控制台身份验证模块;
/nova/consoleauth/manager.py:控制台的认证组组件;
/nova/consoleauth/rpcapi.py:控制台认证rpc API的客户端;
/nova/db/__init__.py:Nova数据库的抽象;
/nova/db/api.py:定义数据库访问接口;
/nova/db/base.py:需要模块化数据库访问基类;
/nova/db/migration.py:数据库设置和迁移命令;
/nova/db/sqlalchemy/api.py:SQLAlchemy后端的执行;
/nova/db/sqlalchemy/models.py:nova数据的SQLAlchemy模板;
/nova/db/sqlalchemy/types.py:自定义SQLAlchemy类型;
/nova/db/sqlalchemy/utils.py:SQLAlchemy实用程序;
/nova/image/glance.py:使用Glance作为后端的镜像服务的实现;
GlanceClientWrapper类:glance客户端包装类;
包括:建立一个glance客户端、调用一个glance客户端对象来获取image镜像等方法;
GlanceImageService类:这个glance镜像服务类提供了glance内部的磁盘镜像对象的存储和检索;
还有其他的一些glance镜像服务方法;
/nova/image/s3.py:从S3获取数据,建立镜像等相关方法;
/nova/network/api.py:API类:通过nova-network进行网络管理的API;
/nova/network/dns_driver.py:定义DNS管理器接口;
/nova/network/driver.py:加载网络驱动;
/nova/network/floating_ips.py:FloatingIP类:实现添加浮动IP的功能和相关管理;
/nova/network/l3.py:L3网络的实现和管理;
/nova/network/ldapdns.py:LdapDNS管理;
/nova/network/linux_net.py:linux应用程序实现vlans、bridges和iptables rules;
/nova/network/manager.py:建立IP地址和设置网络;
RPCAllocateFixedIP类:FlatDCHP的设置和VLAN网络管理;
NetworkManager类:实现通用的网络管理的方法集合类;
FlatManager类:不使用vlan的FLAN网络管理;
FlatDHCPManager类:DHCP FLAT网络管理;
VlanManager类:DHCP的VLAN网络管理;
/nova/network/minidns.py:用于测试的DNS驱动类;
/nova/network/model.py:定义网络模板;
Model类:定义了对于大多数的网络模型所必需的结构;
IP类:Nova中的一个IP地址;
FixedIP类:Nova中的一个浮动IP;
Route类:Nova中的一个IP路由;
Subnet类:Nova中的一个IP路由;
Network类:代表网络中的Network参数;
VIF类:虚拟的网络接口;
NetworkInfo类:为一个Nova实例存储和处理网络信息;
/nova/network/noop_dns_driver.py:Noop DNS管理方法的定义;
/nova/network/nova_ipam_lib.py:QuantumNovaIPAMLib类:应用本地Nova数据库来实现Quantum IP地址管理接口;
/nova/network/rpcapi.py:network RPC API客户端;
/nova/network/sg.py:实现对安全组的抽象和相关API;
/nova/network/quantumv2/__init__.py:获取quantum v2版客户端;
/nova/network/quantumv2/api.py:访问quantum 2.xAPI接口方法集合类;
/nova/network/security_group/openstack_driver.py:OpenStank安全组驱动相关;
/nova/network/security_group/quantum_driver.py:SecurityGroupAPI类:安全组相关的管理API;
/nova/network/security_group/security_group_base.py:SecurityGroupBase类:安全组基类;
/nova/objectstore/s3server.py:基于本地文件实现S3式的存储服务;
/nova/openstack/common/cliutils.py:命令行实用工具,确认所提供的用于调用方法的参数是充足的;
/nova/openstack/common/context.py:实现存储安全上下文信息的类;
/nova/openstack/common/eventlet_backdoor.py:eventlet后门程序;
/nova/openstack/common/excutils.py:异常相关的实用程序;
/nova/openstack/common/fileutils.py:文件相关的实用程序;
/nova/openstack/common/gettextutils.py:获取文本文件实用程序;
/nova/openstack/common/importutils.py:加载类的相关实用程序和辅助方法;
/nova/openstack/common/jsonutils.py:JSON相关实用程序;
/nova/openstack/common/local.py:Greenthread本地存储;
/nova/openstack/common/lockutils.py:锁相关的方法;
/nova/openstack/common/log.py:OpenStack日志处理程序;
/nova/openstack/common/memorycache.py:memcached客户端接口;
/nova/openstack/common/network_utils.py:network相关的实用程序和辅助方法;
parse_host_port方法:把address和default_port解析成host和port配对形式的字符串;
/nova/openstack/common/policy.py:policy机制就是用来控制某一个User在某个Tenant中的权限的机制;
/nova/openstack/common/processutils.py:系统级的实用程序和辅助方法;
/nova/openstack/common/setup.py:一些实用程序;
/nova/openstack/common/timeutils.py:time相关实用方法;
/nova/openstack/common/uuidutils.py:UUID相关实用方法;
/nova/openstack/common/version.py:版本信息;
/nova/openstack/common/db/api.py:多DB API的后端支持;
/nova/openstack/common/db/exception.py:DB相关的自定义异常;
/nova/openstack/common/db/sqlalchemy/models.py:SQLAlchemy模板;
/nova/openstack/common/db/sqlalchemy/session.py:SQLAlchemy后端的会话处理;
/nova/openstack/common/db/sqlalchemy/utils.py:分页查询的实现;
/nova/openstack/common/notifier/api.py:notifier(通知)功能实现的API;
/nova/openstack/common/notifier/log_notifier.py:实现确定系统日志记录器;
/nova/openstack/common/notifier/rabbit_notifier.py:在Grizzly版本中,不在应用rabbit来发送通知,而是使用rpc_notifier来进行发送,提示转到相关方法;
/nova/openstack/common/notifier/rpc_notifier.py:通过RPC发送一个通知;
/nova/openstack/common/notifier/rpc_notifier2.py:通过RPC发送一个通知;
/nova/openstack/common/plugin/callbackplugin.py:管理插件的callback功能;
/nova/openstack/common/plugin/plugin.py:为OpenStack增加插件定义接口;
/nova/openstack/common/plugin/pluginmanager.py:插件相关管理;
/nova/openstack/common/rootwrap/filters.py:命令行的各种过滤器的实现;
/nova/openstack/common/rootwrap/wrapper.py:实现过滤器的封装;
/nova/openstack/common/rpc/__init__.py:远程过程调用(rpc)的抽象实现;
/nova/openstack/common/rpc/amqp.py:基于openstack.common.rpc实现AMQP之间的代码共享,AMQP的实现;
/nova/openstack/common/rpc/common.py:RPC封装的实现;
/nova/openstack/common/rpc/dispatcher.py:RPC消息调度的代码实现;
/nova/openstack/common/rpc/impl_fake.py:虚拟RPC实现,直接调用代理方法而不用排队;
/nova/openstack/common/rpc/impl_kombu.py:系统默认的RPC实现;
/nova/openstack/common/rpc/impl_qpid.py:RPC实现之一;
/nova/openstack/common/rpc/impl_zmq.py:RPC实现之一;
/nova/openstack/common/rpc/matchmaker.py:MatchMaker类;
/nova/openstack/common/rpc/proxy.py:RPC客户端的辅助类;
/nova/openstack/common/rpc/service.py:运行在主机host上的服务对象;
/nova/scheduler/__init__.py:这个模块的功能是挑选一个计算节点来运行一个虚拟机实例;
/nova/scheduler/baremetal_host_manager.py:管理当前域中的主机;
/nova/scheduler/chance.py:随机调度实施方案;
/nova/scheduler/driver.py:所有调度器应该继承的调度基类;
/nova/scheduler/filter_scheduler.py:这个FilterScheduler类是为了创建本地的实例;
我们可以通过制定自己的主机过滤器(Host Filters)和权重函数(Weighing Functions)来自定义调度器;
/nova/scheduler/host_manager.py:管理当前域中的主机;
/nova/scheduler/manager.py:调度服务;
/nova/scheduler/multi.py:这个调度器原本是用来处理计算和卷之间关系的;
现在用于openstack扩展,使用nova调度器来调度需求到计算节点;
但是要提供它们自己的管理和主题;
/nova/scheduler/rpcapi.py:调度器管理RPC API的客户端;
/nova/scheduler/scheduler_options.py:SchedulerOptions检测本地的一个json文件的变化,有需要的话加载它;
这个文件被转换为一个数据结构,并且传递到过滤和权重函数;
可以实现它的动态设置;
/nova/scheduler/filters/__init__.py:调度主机过滤器;
/nova/scheduler/filters/aggregate_instance_extra_specs.py:AggregateInstanceExtraSpecsFilter主机过滤器的定义和实现;
/nova/scheduler/filters/aggregate_multitenancy_isolation.py:实现在特定的聚集中隔离租户;
/nova/scheduler/filters/all_hosts_filter.py:不经过过滤,返回所有主机host;
/nova/scheduler/filters/availability_zone_filter.py:通过可用的区域来过滤主机host;
/nova/scheduler/filters/compute_capabilities_filter.py:ComputeCapabilitiesFilter主机过滤器实现;
/nova/scheduler/filters/compute_filter.py:活跃的计算节点的过滤;
/nova/scheduler/filters/core_filter.py:基于核心CPU利用率的主机host过滤器;
/nova/scheduler/filters/disk_filter.py:基于磁盘使用率的主机host过滤;
/nova/scheduler/filters/extra_specs_ops.py:一些参数的设置;
/nova/scheduler/filters/image_props_filter.py:通过符合实例镜像属性来进行计算节点主机的过滤;
/nova/scheduler/filters/io_ops_filter.py:过滤掉有过多的I/O操作的主机host;
/nova/scheduler/filters/isolated_hosts_filter.py:IsolatedHostsFilter过滤器实现;
/nova/scheduler/filters/json_filter.py:JsonFilter过滤器的实现;
/nova/scheduler/filters/num_instances_filter.py:过滤掉已经有太多实例的主机host;
/nova/scheduler/filters/ram_filter.py:只返回有足够可使用的RAM主机host;
/nova/scheduler/filters/retry_filter.py:跳过已经尝试过的节点;
/nova/scheduler/filters/trusted_filter.py:根据可信计算池进行主机host过滤;
/nova/scheduler/filters/type_filter.py:TypeAffinityFilter过滤器的实现,它不允许一个主机上运行多余一种类型的虚拟机;
/nova/scheduler/weights/__init__.py:调度器中的主机权重;
/nova/scheduler/weights/least_cost.py:Least Cost是调度器中选择主机的一种算法;
/nova/scheduler/weights/ram.py:RAM权重;
/nova/servicegroup/api.py:定义servicegroup的入口API;
/nova/storage/linuxscsi.py:通用的linux scsi子系统实用程序;
/nova/virt/configdrive.py:构建配置驱动器;
/nova/virt/driver.py:计算驱动基类的实现;
/nova/virt/event.py:来自于虚拟机管理程序异步事件的通知;
/nova/virt/fake.py:用于测试的一个虚拟的hypervisor+api;
/nova/virt/firewall.py:虚拟机防火墙的定义和管理;
/nova/virt/images.py:处理虚拟机磁盘镜像;
/nova/virt/netutils.py:支持libvirt连接的网络相关实用程序;
/nova/virt/storage_users.py:实例存储相关;
/nova/virt/virtapi.py:Virt API抽象类;
/nova/virt/libvirt/blockinfo.py:处理块设备信息和块设备映射;
/nova/virt/libvirt/config.py:libvirt对象配置;
/nova/virt/libvirt/designer.py:libvirt对象配置策略;
/nova/virt/libvirt/driver.py:通过libvirt连接到虚拟机管理程序的实现,以及相关管理功能的实现;
/nova/virt/libvirt/firewall.py:libvirt防火墙相关;
/nova/virt/libvirt/imagebackend.py:通过libvirt实现后端镜像的管理操作;
/nova/virt/libvirt/imagecache.py:镜像高速缓存的管理实现;
/nova/virt/libvirt/utils.py:libvirt相关实用程序;
/nova/virt/libvirt/vif.py:libvirt的VIF驱动;
/nova/virt/libvirt/volume_nfs.py:不再应用的过时的实现;
/nova/virt/libvirt/volume.py:libvirt卷驱动实现;
/nova/virt/disk/__init__.py:磁盘上的实践包括:重定义大小,文件系统建立和文件注入等;
/nova/virt/disk/api.py:提供了调整、重新分区和修改磁盘镜像的方法以及文件注入等方法;
/nova/virt/disk/mount/__init__.py:支持挂载磁盘镜像到主机文件系统;
/nova/virt/disk/mount/api.py:支持挂载虚拟镜像文件;
/nova/virt/disk/mount/loop.py:支持回环设备挂载镜像;
/nova/virt/disk/mount/nbd.py:支持挂载磁盘镜像到qemu-nbd;
/nova/virt/disk/vfs/__init__.py:虚拟文件系统实践;
/nova/virt/disk/vfs/api.py:虚拟文件系统API;
/nova/virt/disk/vfs/guestfs.py:来宾虚拟文件系统;
/nova/virt/disk/vfs/localfs.py:本地虚拟文件系统;
/nova/virt/hyperv/basevolumeutils.py:卷管理相关业务的辅助方法以及存储的实现;
/nova/virt/hyperv/constants.py:ops类中使用的常量;
/nova/virt/hyperv/driver.py:Hyper-V Nova Compute driver
/nova/virt/hyperv/hostops.py:主机运作的管理类;
/nova/virt/hyperv/hostutils.py:主机运作的实用程序;
/nova/virt/hyperv/imagecache.py:镜像缓存和管理;
/nova/virt/hyperv/livemigrationops.py:实时迁移VM虚拟机业务管理类;
/nova/virt/hyperv/livemigrationutils.py:虚拟机实例实时迁移实用程序;
/nova/virt/hyperv/migrationops.py:迁移/调整大小操作管理类;
/nova/virt/hyperv/networkutils.py:网络相关业务实用程序类;
/nova/virt/hyperv/pathutils.py:路径相关实用程序;
/nova/virt/hyperv/snapshotops.py:虚拟机快照业务管理类;
/nova/virt/hyperv/vmops.py:基本VM虚拟机业务管理类;
/nova/virt/hyperv/vmutils.py:Hyper-V上的VM虚拟机相关业务实用程序类;
/nova/virt/hyperv/volumeops.py:存储相关方法管理类(附加,卸下等等);
/nova/virt/hyperv/volumeutils.py:卷的相关管理业务辅助类以及存储实现等;
/nova/virt/hyperv/volumeutilsv2.py:卷的相关管理业务辅助类以及在Windows Server 2012上存储实现等;
/nova/__init__.py:Nova HTTP服务;
/nova/availability_zones.py:可用zone的辅助方法;
/nova/context.py:关于请求信息上下文的一些方法
/nova/exception.py:Nova基本的异常处理,包括各种异常类及其类中提示的异常信息;
/nova/filters.py:滤波器支持,定义了所有滤波器类的基类和处理加载滤波器类的基类;
/nova/manager.py:基本管理类;
/nova/notifications.py:系统常见的多层次通知的相关方法;
/nova/policy.py:Nova的Policy引擎;
/nova/quota.py:实例配额和浮动ip;
/nova/service.py:主机上运行所有服务的通用节点基类;
/nova/test.py:单元测试的基类;
/nova/utils.py:实用工具和辅助方法;
/nova/weights.py:可插拔权重支持;
/nova/wsgi.py:WSGI服务工作的通用方法;
看完上述内容,你们对如何进行nova源码整体文件结构分析 有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。