OpenStack
文章平均质量分 80
Benzenene!
这个作者很懒,什么都没留下…
展开
-
OpenStack源码分析【2021-12-25】
2021SC@SDUSC为什么有人圣诞节还要写作业啊概述Neutron dhcp实现了为虚机提供动态分配IP的服务,dhcp功能由neutron-server和dhcp-agent配合实现。其中server负责接收请求并向agent发送网络、子网、端口等数据;agent接收数据,创建、配置dhcp实例。社区的dhcp功能由dnsmasq软件实现,即由该软件充当dhcp server。(Neutron dhcp实现)聚焦源码neutron-18.1.1/neutron/scheduler/dhcp_原创 2021-12-25 16:27:17 · 350 阅读 · 0 评论 -
OpenStack源码分析【2021-12-18】
L2Agent运行机制原创 2021-12-18 18:54:16 · 730 阅读 · 0 评论 -
OpenStack源码分析【2021-12-13】
2021SC@SDUSC今天我们聚焦Neutron的iptables基础概念iptables的工作是网络的准入控制,主要完成封包过滤、封包重定向和网络地址转换(NAT)等功能。iptables的核心数据结构是表->链->规则,它们的关系在博客iptables详解(1):iptables概念中讲得非常清晰。阅读本文前推荐看一遍这篇博客。这里我主要从源代码出发展示这些关系是如何被实现的。agent/linux/iptables_manager.py这个文件是iptables的根据地,核原创 2021-12-13 22:40:26 · 682 阅读 · 0 评论 -
OpenStack源码分析【2021-12-06】
2021SC@SDUSCNeutron初探What is Neutron?According to OpenStack Document,Neutron is a networking project focused on deliveringNetworking-as-a-Service(NaaS) in virtual compute environments.Other says,Networking project in OpenStack Sets up virtual net原创 2021-12-06 22:12:46 · 2159 阅读 · 0 评论 -
OpenStack源码分析【2021-11-29】
2021SC@SDUSCKeyStone概述身份服务通常是用户与之交互的第一个服务。通过身份验证后,最终用户可以使用他们的身份访问其他 OpenStack 服务。同样,其他 OpenStack 服务利用身份服务来确保用户是他们所声称的人,并发现其他服务在部署中的位置。 Identity 服务还可以与一些外部用户管理系统(例如 LDAP)集成。用户和服务可以使用由 Identity 服务管理的服务目录来定位其他服务。顾名思义,服务目录是 OpenStack 部署中可用服务的集合。每个服务可以有一个或多个原创 2021-11-29 22:36:17 · 1338 阅读 · 0 评论 -
OpenStack源码分析【2021-11-21】
2021SC@SDUSC原创 2021-11-21 23:39:06 · 519 阅读 · 0 评论 -
OpenStack源码分析【2021-11-15】
2021SC@SDUSC今天顿悟组件结构!每个组件(也是一个service)的文件夹中,单出来的几个文件,都包括api.py, manager.py, rpcapi.py三个重要文件。以conductor为例,api.py和rpcapi.py虽然在conductor文件夹中,但它并不在这个组件的”核心组织“中。打个比方,一个北京的互联网公司A给济南的B企业做了一款产品,往往会派一个小团队常驻B企业,以便及时获取产品使用反馈。当甲方爸爸(B企业)提出新需求时,这个小团队会将这些信息通过E-mail发给北原创 2021-11-15 21:25:28 · 447 阅读 · 0 评论 -
OpenStack源码分析【2021-11-07】
2021SC@SDUSC原创 2021-11-07 23:15:53 · 369 阅读 · 0 评论 -
OpenStack源码分析【2021-11-01】
2021SC@SDUSCnova/compute/manager.pyComputeManager概述:用于处理与创建实例(guest vms)相关的RPC调用,它负责:① 创建磁盘镜像② 通过底层的虚拟化驱动launch it③ 回复查看磁盘镜像状态的调用(原文: responding to calls to check its state)④ 附加持久化存储(原文:attaching persistent storage)⑤ 结束磁盘镜像核心源码分析:class ComputeMana原创 2021-11-01 14:00:00 · 458 阅读 · 0 评论 -
OpenStack源码阅读【2021-10-24】
本期代码聚焦:nova的启动流程nova-api启动代码:(nova/cmd/api.py)def main():# =======做一些常规操作,如解析参数,设置logger,注册对象,开版本缓存,初始化报告等========== config.parse_args(sys.argv) logging.setup(CONF, "nova") objects.register_all() gmr_opts.set_defaults(CONF) if 'osapi原创 2021-10-24 21:59:42 · 184 阅读 · 0 评论 -
OpenStack源码分析【2021-10-24】程序员节快乐!
2021SC@SDUSC细嚼慢咽读源码前置知识:Services概念:Services是由Nova组件提供的。一般来说,一个Nova组件作为一个进程运行在controller或compute节点来提供服务。这些services中是有面向最终使用者的,比如REST API service,但绝大部分是来和其它Nova services协同工作的。每个service状态由Nova监控,如果service它无法正常响应,Nova将调整它的状态,这样请求就不会再发给它。service也可以呗Administ原创 2021-10-24 21:58:04 · 195 阅读 · 0 评论 -
OpenStack源码分析【2021-10-23】
2021SC@SDUSC关于nova-api:nova-api中有3个独立的py文件(__ init __是空的,不算),它们都充当“中间件”角色:auth.py用于创建一个nova到keystone的request上下文。compute_req_id.py中定义了一个ComputeReqIdMiddleware类,继承自RequestId,但我觉得它没什么用,nova中唯一一次使用这个类是test_compute_req_id.py中。wsgi.py中定义了几个非常fundamental的类(原创 2021-10-23 22:17:20 · 238 阅读 · 0 评论 -
OpenStack源码分析【2021-10-17】
nova简介:nova负责建虚拟机horizon->nova(api)nova内部分为4个部分(组件):控制节点:nova api: 接收外部请求nova scheduler: 调度计算节点:nova compute: 具体干活:调虚拟化驱动建虚拟机,虚拟化驱动帮你建出一台虚拟机,这台虚拟机就存活于本计算节点这台机器上。该节点上还需要装虚拟化软件(xen,kvm…)nova conductor流程:horizon把请求发给nova-api(通过restful api),请求包含原创 2021-10-18 00:03:04 · 194 阅读 · 0 评论 -
OpenStack源码分析【2021-10-17】
2021SC@SDUSCnova\api\metadata\handler.pybasic functions:get_metadata_by_remote_address(self, address)get_metadata_by_instance_id(self, instance_id, address)The logic of them are same:First, search the cache according to “metadata-address/instance_id”原创 2021-10-17 11:14:18 · 151 阅读 · 0 评论 -
OpenStack源码分析【2021.10.08】
This function is said to be the entry of the whole nova service. The main purpose of the function is analyse arguements from command line and complete some routine works for the application, such as setting logger, ensure root privilege, etc. This function原创 2021-10-08 23:12:02 · 236 阅读 · 0 评论