文档章节

nova源码整体文件结构分析

tantexian
 tantexian
发布于 2016/02/29 16:32
字数 5066
阅读 57
收藏 0

以下是本人通过阅读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服务工作的通用方法;


© 著作权归作者所有

共有 人打赏支持
tantexian
粉丝 211
博文 515
码字总数 733589
作品 0
成都
架构师
私信 提问
openstack nova volume-attach 源码分析novaclient(一)

在openstack中,一个典型的操作是把存在的cinder volume指定给某个nova instance使用。这样nova instance才可以使用cinder的块存储服务。当我们运行nova volume-attach <server> <volume> [<......

crook
2014/04/22
0
0
openstack nova volume-attach 源码分析nova internal(二)

在第一篇中,novaclient最终会向nova发出下面的HTTP POST request。 POST /e40722e5e0c74a0b878c595c0afab5fd/servers/6a17e64d-23c7-46a3-9812-8409ad215e40/os-volume_attachments 和下面参......

crook
2014/04/24
0
0
扩展OpenStack的nova metadata api

场景 云计算环境中,当虚拟机启动时难免需要做一些初始化配置,这必然涉及到虚拟机如何获取数据,谁又提供这些数据的问题。当然,这里不得不提AWS,他们想到在虚拟机内使用一个固定的IP(htt...

无若
2016/01/15
1K
0
nova-scheduler模块调度过程分析

openstack在创建虚拟机或进行虚拟机的冷迁移时根据在nova.conf文件中schedulerdefaultfilters和scheduleravailablefilters配置的过滤器, 对主机进行筛选,选择合适的目的主机。 本文根据nov...

zrz11
2018/11/30
0
0
Launch和Shut Off操作详解 - 每天5分钟玩转 OpenStack(30)

本节详细分析 instance launch 和 shut off 操作,以及如何在日志中快速定位有用信息的技巧。 Launch Launch instance 应该算 Nova 最重要的操作。 仔细研究 lanuch 操作能够帮助我们充分理解...

CloudMAN
2016/05/06
375
3

没有更多内容

加载失败,请刷新页面

加载更多

Nginx反向代理

Nginx反向代理 应用场景 A 机器运行的nginx提供的web服务,只有一个内网地址192.168.254.128(内网) B机器有两块网卡,一个地址是192.168.254.137(内网),另一个是192.168.79.128(外网)...

李超小牛子
今天
2
0
数据库事务隔离级别

当数据库上有多个事务同时执行的时候,可能出现下面问题: 脏读(dirty read):指当一个事务正在访问数据,并且对数据进行了修改,而这种修改还没有提交到数据库中,这时,另外一个事务也访...

Jacktanger
今天
1
0
4.61 - 第二个JAVA应用 4.62/63 - Tomcat的管理功能

4.61 - 第二个JAVA应用 方法一:配置文件: /usr/local/tomcat/conf/server.xml <Host name="www.aminglinux.cc" appBase="/data/wwwroot/www.aminglinux.cc" unpackWARs="tr......

Champin
今天
0
0
MariaDB密码重置

MariaDB密码重置 如果记得root的密码: mysqladmin -uroot -paminglinux password "aming-linux" //用此方式将原密码aminglinux重置为aming-linux 如果不记得原密码: # vi /etc/my.cnf......

wzb88
昨天
1
0
印度封禁抖音,称导致该国年轻人“文化堕落”!

本文经授权转载自顶级程序员 (ID:TopCoding) 作者 | 江户川雨 责编 | https://weavi.com/13775725 https://weavi.com/13775726 https://weavi.com/13775724 https://weavi.com/13775723 ......

陈刚生
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部